From: Tudor-Dan Ambarus Date: Fri, 23 Mar 2018 10:42:19 +0000 (+0200) Subject: crypto: caam/qi - don't leak pointers to authenc keys X-Git-Tag: v4.17-rc1~128^2~8 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cc4ccaafcbddb88d661143c779af08d4ed8798ae;p=thirdparty%2Fkernel%2Flinux.git crypto: caam/qi - don't leak pointers to authenc keys In caam/qi's aead_setkey we save pointers to the authenc keys in a local variable of type struct crypto_authenc_keys and we don't zeroize it after use. Fix this and don't leak pointers to the authenc keys. Signed-off-by: Tudor Ambarus Reviewed-by: Horia Geantă Signed-off-by: Herbert Xu --- diff --git a/drivers/crypto/caam/caamalg_qi.c b/drivers/crypto/caam/caamalg_qi.c index c2b5762d56a0a..cacda0831390c 100644 --- a/drivers/crypto/caam/caamalg_qi.c +++ b/drivers/crypto/caam/caamalg_qi.c @@ -278,9 +278,11 @@ skip_split_key: } } + memzero_explicit(&keys, sizeof(keys)); return ret; badkey: crypto_aead_set_flags(aead, CRYPTO_TFM_RES_BAD_KEY_LEN); + memzero_explicit(&keys, sizeof(keys)); return -EINVAL; }