ktls_ocf: Fix a few places to not hardcode the GMAC hash length.

This is not a functional change as the Poly1305 hash is the same
length as the GMAC hash length.

Reviewed by:	gallatin, markj
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D30137
This commit is contained in:
John Baldwin 2021-05-25 16:59:18 -07:00
parent 883a0196b6
commit 4a92afae7f

View File

@ -416,11 +416,11 @@ ktls_ocf_tls12_aead_encrypt(struct ktls_session *tls,
/* Duplicate iovec and append vector for tag. */ /* Duplicate iovec and append vector for tag. */
memcpy(iov, tag_uio->uio_iov, outiovcnt * sizeof(struct iovec)); memcpy(iov, tag_uio->uio_iov, outiovcnt * sizeof(struct iovec));
iov[outiovcnt].iov_base = trailer; iov[outiovcnt].iov_base = trailer;
iov[outiovcnt].iov_len = AES_GMAC_HASH_LEN; iov[outiovcnt].iov_len = tls->params.tls_tlen;
tag_uio->uio_iov = iov; tag_uio->uio_iov = iov;
tag_uio->uio_iovcnt++; tag_uio->uio_iovcnt++;
crp.crp_digest_start = tag_uio->uio_resid; crp.crp_digest_start = tag_uio->uio_resid;
tag_uio->uio_resid += AES_GMAC_HASH_LEN; tag_uio->uio_resid += tls->params.tls_tlen;
crp.crp_op = CRYPTO_OP_ENCRYPT | CRYPTO_OP_COMPUTE_DIGEST; crp.crp_op = CRYPTO_OP_ENCRYPT | CRYPTO_OP_COMPUTE_DIGEST;
crp.crp_flags = CRYPTO_F_CBIMM | CRYPTO_F_IV_SEPARATE; crp.crp_flags = CRYPTO_F_CBIMM | CRYPTO_F_IV_SEPARATE;
@ -505,7 +505,7 @@ ktls_ocf_tls12_aead_decrypt(struct ktls_session *tls,
error = ktls_ocf_dispatch(os, &crp); error = ktls_ocf_dispatch(os, &crp);
crypto_destroyreq(&crp); crypto_destroyreq(&crp);
*trailer_len = AES_GMAC_HASH_LEN; *trailer_len = tls->params.tls_tlen;
return (error); return (error);
} }