git: a10020cfe283 - main - cryptosoft: Support per-op keys for AES-GCM and AES-CCM.

John Baldwin jhb at FreeBSD.org
Thu Feb 18 17:54:43 UTC 2021


The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=a10020cfe2830e9626ac58ae97ecd12afb3553be

commit a10020cfe2830e9626ac58ae97ecd12afb3553be
Author:     John Baldwin <jhb at FreeBSD.org>
AuthorDate: 2021-02-18 17:24:35 +0000
Commit:     John Baldwin <jhb at FreeBSD.org>
CommitDate: 2021-02-18 17:53:25 +0000

    cryptosoft: Support per-op keys for AES-GCM and AES-CCM.
    
    Reviewed by:    cem
    Sponsored by:   Netflix
    Differential Revision:  https://reviews.freebsd.org/D28752
---
 sys/opencrypto/cryptosoft.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sys/opencrypto/cryptosoft.c b/sys/opencrypto/cryptosoft.c
index b92e25e86f76..947f27a388d1 100644
--- a/sys/opencrypto/cryptosoft.c
+++ b/sys/opencrypto/cryptosoft.c
@@ -537,6 +537,9 @@ swcr_gcm(struct swcr_session *ses, struct cryptop *crp)
 		}
 	}
 
+	if (crp->crp_cipher_key != NULL)
+		exf->setkey(swe->sw_kschedule, crp->crp_cipher_key,
+		    crypto_get_params(crp->crp_session)->csp_cipher_klen);
 	exf->reinit(swe->sw_kschedule, iv);
 
 	/* Do encryption with MAC */
@@ -755,6 +758,9 @@ swcr_ccm(struct swcr_session *ses, struct cryptop *crp)
 	if (error)
 		return (error);
 
+	if (crp->crp_cipher_key != NULL)
+		exf->setkey(swe->sw_kschedule, crp->crp_cipher_key,
+		    crypto_get_params(crp->crp_session)->csp_cipher_klen);
 	exf->reinit(swe->sw_kschedule, iv);
 
 	/* Do encryption/decryption with MAC */


More information about the dev-commits-src-all mailing list