diff options
author | pjd <pjd@FreeBSD.org> | 2006-06-04 22:17:25 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2006-06-04 22:17:25 +0000 |
commit | 36f6d629b7291704eaedd81a0e36747e1f0fc119 (patch) | |
tree | 878181f1a5267ea4f91f06c287607f8ab57020e2 /sys/dev/safe/safe.c | |
parent | f055dbf32be7adc2e1a1c946748849d8bc8817cb (diff) | |
download | FreeBSD-src-36f6d629b7291704eaedd81a0e36747e1f0fc119.zip FreeBSD-src-36f6d629b7291704eaedd81a0e36747e1f0fc119.tar.gz |
Use newly added functions to simplify the code.
Diffstat (limited to 'sys/dev/safe/safe.c')
-rw-r--r-- | sys/dev/safe/safe.c | 52 |
1 files changed, 15 insertions, 37 deletions
diff --git a/sys/dev/safe/safe.c b/sys/dev/safe/safe.c index 0908b23..ff0a029 100644 --- a/sys/dev/safe/safe.c +++ b/sys/dev/safe/safe.c @@ -1016,12 +1016,8 @@ safe_process(void *arg, struct cryptop *crp, int hint) else iv = (caddr_t) ses->ses_iv; if ((enccrd->crd_flags & CRD_F_IV_PRESENT) == 0) { - if (crp->crp_flags & CRYPTO_F_IMBUF) - m_copyback(re->re_src_m, - enccrd->crd_inject, ivsize, iv); - else if (crp->crp_flags & CRYPTO_F_IOV) - cuio_copyback(re->re_src_io, - enccrd->crd_inject, ivsize, iv); + crypto_copyback(crp->crp_flags, crp->crp_buf, + enccrd->crd_inject, ivsize, iv); } bcopy(iv, re->re_sastate.sa_saved_iv, ivsize); cmd0 |= SAFE_SA_CMD0_IVLD_STATE | SAFE_SA_CMD0_SAVEIV; @@ -1029,17 +1025,14 @@ safe_process(void *arg, struct cryptop *crp, int hint) } else { cmd0 |= SAFE_SA_CMD0_INBOUND; - if (enccrd->crd_flags & CRD_F_IV_EXPLICIT) + if (enccrd->crd_flags & CRD_F_IV_EXPLICIT) { bcopy(enccrd->crd_iv, re->re_sastate.sa_saved_iv, ivsize); - else if (crp->crp_flags & CRYPTO_F_IMBUF) - m_copydata(re->re_src_m, enccrd->crd_inject, - ivsize, - (caddr_t)re->re_sastate.sa_saved_iv); - else if (crp->crp_flags & CRYPTO_F_IOV) - cuio_copydata(re->re_src_io, enccrd->crd_inject, - ivsize, - (caddr_t)re->re_sastate.sa_saved_iv); + } else { + crypto_copydata(crp->crp_flags, crp->crp_buf, + enccrd->crd_inject, ivsize, + (caddr_t)re->re_sastate.sa_saved_iv); + } cmd0 |= SAFE_SA_CMD0_IVLD_STATE; } /* @@ -1567,17 +1560,9 @@ safe_callback(struct safe_softc *sc, struct safe_ringentry *re) ivsize = 4*sizeof(u_int32_t); } else continue; - if (crp->crp_flags & CRYPTO_F_IMBUF) { - m_copydata((struct mbuf *)crp->crp_buf, - crd->crd_skip + crd->crd_len - ivsize, - ivsize, - (caddr_t) sc->sc_sessions[re->re_sesn].ses_iv); - } else if (crp->crp_flags & CRYPTO_F_IOV) { - cuio_copydata((struct uio *)crp->crp_buf, - crd->crd_skip + crd->crd_len - ivsize, - ivsize, - (caddr_t)sc->sc_sessions[re->re_sesn].ses_iv); - } + crypto_copydata(crp->crp_flags, crp->crp_buf, + crd->crd_skip + crd->crd_len - ivsize, ivsize, + (caddr_t)sc->sc_sessions[re->re_sesn].ses_iv); break; } } @@ -1598,17 +1583,10 @@ safe_callback(struct safe_softc *sc, struct safe_ringentry *re) bswap32(re->re_sastate.sa_saved_indigest[1]); bswap32(re->re_sastate.sa_saved_indigest[2]); } - if (crp->crp_flags & CRYPTO_F_IMBUF) { - m_copyback((struct mbuf *)crp->crp_buf, - crd->crd_inject, - sc->sc_sessions[re->re_sesn].ses_mlen, - (caddr_t)re->re_sastate.sa_saved_indigest); - } else if (crp->crp_flags & CRYPTO_F_IOV) { - cuio_copyback((struct uio *)crp->crp_buf, - crd->crd_inject, - sc->sc_sessions[re->re_sesn].ses_mlen, - (caddr_t)re->re_sastate.sa_saved_indigest); - } + crypto_copyback(crp->crp_flags, crp->crp_buf, + crd->crd_inject, + sc->sc_sessions[re->re_sesn].ses_mlen, + (caddr_t)re->re_sastate.sa_saved_indigest); break; } } |