]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
lib/crypto: aes-cmac: Use __cleanup() instead of memzero_explicit()
authorThomas Huth <thuth@redhat.com>
Fri, 7 Aug 2026 12:58:42 +0000 (14:58 +0200)
committerEric Biggers <ebiggers@kernel.org>
Tue, 11 Aug 2026 03:17:56 +0000 (20:17 -0700)
By using __cleanup(aes_cmac_zeroize_key) for clearing the key data, we
can save one line of code here.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Link: https://patch.msgid.link/20260807125845.1477067-6-thuth@redhat.com
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
lib/crypto/aes.c

index 41aaa82cb1a1cc132ea1a36499294a8f3114471d..f1549839b3de0c3e46f23b14fbc0fd3480d164d3 100644 (file)
@@ -740,7 +740,7 @@ EXPORT_SYMBOL_NS_GPL(aes_cbcmac_final, "CRYPTO_INTERNAL");
 /* FIPS cryptographic algorithm self-test for AES-CMAC */
 static void __init aes_cmac_fips_test(void)
 {
-       struct aes_cmac_key key;
+       struct aes_cmac_key key __cleanup(aes_cmac_zeroize_key);
        u8 mac[AES_BLOCK_SIZE];
 
        if (aes_cmac_preparekey(&key, fips_test_key, sizeof(fips_test_key)) !=
@@ -749,7 +749,6 @@ static void __init aes_cmac_fips_test(void)
        aes_cmac(&key, fips_test_data, sizeof(fips_test_data), mac);
        if (memcmp(fips_test_aes_cmac_value, mac, sizeof(mac)) != 0)
                panic("aes: CMAC FIPS self-test failed (wrong MAC)\n");
-       memzero_explicit(&key, sizeof(key));
 }
 #else /* CONFIG_CRYPTO_LIB_AES_CBC_MACS */
 static inline void aes_cmac_fips_test(void)