OpenSSL: Fix memory leak in HMAC_CTX compatibility wrapper function
authorJouni Malinen <jouni@qca.qualcomm.com>
Tue, 16 Feb 2016 11:13:36 +0000 (13:13 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 16 Feb 2016 11:13:36 +0000 (13:13 +0200)
Commit 5c9a33702fd9e9ae9c349d6461a6621801d4f9cb ('OpenSSL: Clean up
crypto_hash_*() to use a single implementation') added a wrapper
function to allow the new OpenSSL API to be used with older OpenSSL
versions. However, the HMAC_CTX_free() wrapper was incorrectly skipping
the call to HMAC_CTX_cleanup() which is still needed to free the
resources OpenSSL allocated internally.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
src/crypto/crypto_openssl.c

index 7c36002..ee20b37 100644 (file)
@@ -47,6 +47,7 @@ static HMAC_CTX * HMAC_CTX_new(void)
 
 static void HMAC_CTX_free(HMAC_CTX *ctx)
 {
+       HMAC_CTX_cleanup(ctx);
        bin_clear_free(ctx, sizeof(*ctx));
 }