summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-12-04 09:01:36 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-01-12 20:16:17 +0100
commit201d252bae349ab468d9c50ebfeba3e08f98e05f (patch)
tree981a1959733a5337b834815e5427036778caf241
parent0326960033d8904767aad7444bdf25acc9d31654 (diff)
downloadlinux-crypto-201d252bae349ab468d9c50ebfeba3e08f98e05f.tar.gz
linux-crypto-201d252bae349ab468d9c50ebfeba3e08f98e05f.zip
crypto: asym_tpm: correct zero out potential secrets
commit 26a5d10c7f4f9edc8a09f0301cc5ca55844db375 upstream. The function derive_pub_key() should be calling memzero_explicit() instead of memset() in case the complier decides to optimize away the call to memset() because it "knows" no one is going to touch the memory anymore. Cc: stable <stable@vger.kernel.org> Reported-by: Ilil Blum Shem-Tov <ilil.blum.shem-tov@intel.com> Tested-by: Ilil Blum Shem-Tov <ilil.blum.shem-tov@intel.com> Link: https://lore.kernel.org/r/X8ns4AfwjKudpyfe@kroah.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--crypto/asymmetric_keys/asym_tpm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/asymmetric_keys/asym_tpm.c b/crypto/asymmetric_keys/asym_tpm.c
index 5154e280..08baa10a 100644
--- a/crypto/asymmetric_keys/asym_tpm.c
+++ b/crypto/asymmetric_keys/asym_tpm.c
@@ -370,7 +370,7 @@ static uint32_t derive_pub_key(const void *pub_key, uint32_t len, uint8_t *buf)
memcpy(cur, e, sizeof(e));
cur += sizeof(e);
/* Zero parameters to satisfy set_pub_key ABI. */
- memset(cur, 0, SETKEY_PARAMS_SIZE);
+ memzero_explicit(cur, SETKEY_PARAMS_SIZE);
return cur - buf;
}