diff options
author | pjd <pjd@FreeBSD.org> | 2006-05-22 16:18:21 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2006-05-22 16:18:21 +0000 |
commit | 155cfd3b00fc73c049bdd8fe93c5da4cba282db7 (patch) | |
tree | 7432642b15ea49459a3333b4305fbcb06ffd914a /sys/dev/ubsec/ubsec.c | |
parent | 7e1b4e4454710664559170141070ba953f162d46 (diff) | |
download | FreeBSD-src-155cfd3b00fc73c049bdd8fe93c5da4cba282db7.zip FreeBSD-src-155cfd3b00fc73c049bdd8fe93c5da4cba282db7.tar.gz |
Fix HMACs handling with uio's by not using crp_mac for storing calculated
HMAC. crp_mac is going to be removed.
Diffstat (limited to 'sys/dev/ubsec/ubsec.c')
-rw-r--r-- | sys/dev/ubsec/ubsec.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/dev/ubsec/ubsec.c b/sys/dev/ubsec/ubsec.c index 4a56560..151cd02 100644 --- a/sys/dev/ubsec/ubsec.c +++ b/sys/dev/ubsec/ubsec.c @@ -1622,10 +1622,11 @@ ubsec_callback(struct ubsec_softc *sc, struct ubsec_q *q) crd->crd_inject, sc->sc_sessions[q->q_sesn].ses_mlen, (caddr_t)dmap->d_dma->d_macbuf); - else if (crp->crp_flags & CRYPTO_F_IOV && crp->crp_mac) - bcopy((caddr_t)dmap->d_dma->d_macbuf, - crp->crp_mac, - sc->sc_sessions[q->q_sesn].ses_mlen); + else if (crp->crp_flags & CRYPTO_F_IOV) + cuio_copyback((struct uio *)crp->crp_buf, + crd->crd_inject, + sc->sc_sessions[q->q_sesn].ses_mlen, + (caddr_t)dmap->d_dma->d_macbuf); break; } mtx_lock(&sc->sc_freeqlock); |