]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - providers/common/kdfs/tls1_prf.c
Fix memleaks in KDF implementations
[thirdparty/openssl.git] / providers / common / kdfs / tls1_prf.c
index 5d7e599e64e0030fa1a22a25411805806f4fe6cb..38dbaddbf05c6b243c49e37c039ace3364963096 100644 (file)
@@ -104,8 +104,6 @@ static void kdf_tls1_prf_free(void *vctx)
     TLS1_PRF *ctx = (TLS1_PRF *)vctx;
 
     kdf_tls1_prf_reset(ctx);
-    EVP_MD_meth_free(ctx->sha1);
-    EVP_MD_meth_free(ctx->md);
     OPENSSL_free(ctx);
 }
 
@@ -113,6 +111,8 @@ static void kdf_tls1_prf_reset(void *vctx)
 {
     TLS1_PRF *ctx = (TLS1_PRF *)vctx;
 
+    EVP_MD_meth_free(ctx->sha1);
+    EVP_MD_meth_free(ctx->md);
     OPENSSL_clear_free(ctx->sec, ctx->seclen);
     OPENSSL_cleanse(ctx->seed, ctx->seedlen);
     memset(ctx, 0, sizeof(*ctx));