summaryrefslogtreecommitdiff
path: root/crypto
diff options
context:
space:
mode:
authorTudor-Dan Ambarus <tudor.ambarus@microchip.com>2018-04-03 09:39:00 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-08-03 07:50:40 +0200
commit09740f513e3fab823bce5daecc6caf00f1d0b82c (patch)
tree69c057b4d1e2285e832d8b8de7644325b43a0023 /crypto
parenta07fc8dd2bd4f790940c9a5ac3b7fae1e6738800 (diff)
downloadlinux-exynos-09740f513e3fab823bce5daecc6caf00f1d0b82c.tar.gz
linux-exynos-09740f513e3fab823bce5daecc6caf00f1d0b82c.tar.bz2
linux-exynos-09740f513e3fab823bce5daecc6caf00f1d0b82c.zip
crypto: authenc - don't leak pointers to authenc keys
[ Upstream commit ad2fdcdf75d169e7a5aec6c7cb421c0bec8ec711 ] In crypto_authenc_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 <tudor.ambarus@microchip.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/authenc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/crypto/authenc.c b/crypto/authenc.c
index 875470b0e026..0db344d5a01a 100644
--- a/crypto/authenc.c
+++ b/crypto/authenc.c
@@ -108,6 +108,7 @@ static int crypto_authenc_setkey(struct crypto_aead *authenc, const u8 *key,
CRYPTO_TFM_RES_MASK);
out:
+ memzero_explicit(&keys, sizeof(keys));
return err;
badkey: