From: Torsten Duwe <duwe@suse.de>
Subject: s390 crypto: explicitly memzero stack key material in aes_s390.c
Patch-mainline: v5.7-rc1
Git-commit: 4a559cd15dbc79958fa9b18ad4e8afe4a0bf4744
References: bsc#1163459
s390 crypto: explicitly memzero stack key material in aes_s390.c
aes_s390.c has several functions which allocate space for key material on
the stack and leave the used keys there. It is considered good practice
to clean these locations before the function returns.
Signed-off-by: Torsten Duwe <duwe@suse.de>
--- a/arch/s390/crypto/aes_s390.c
+++ b/arch/s390/crypto/aes_s390.c
@@ -392,6 +392,7 @@ static int cbc_aes_crypt(struct blkciphe
ret = blkcipher_walk_done(desc, walk, nbytes - n);
}
memcpy(walk->iv, param.iv, AES_BLOCK_SIZE);
+ memzero_explicit(¶m, sizeof(param));
return ret;
}
@@ -576,6 +577,8 @@ static int xts_aes_crypt(struct blkciphe
walk->dst.virt.addr, walk->src.virt.addr, n);
ret = blkcipher_walk_done(desc, walk, nbytes - n);
}
+ memzero_explicit(&pcc_param, sizeof(pcc_param));
+ memzero_explicit(&xts_param, sizeof(xts_param));
return ret;
}