diff --git a/src/file_analysis/analyzer/x509/functions.bif b/src/file_analysis/analyzer/x509/functions.bif index 80fc3bb9af..478332aecf 100644 --- a/src/file_analysis/analyzer/x509/functions.bif +++ b/src/file_analysis/analyzer/x509/functions.bif @@ -695,12 +695,15 @@ function sct_verify%(cert: opaque of x509, logid: string, log_key: string, signa success = EVP_DigestVerifyFinal(mdctx, (unsigned char*) signature->Bytes(), signature->Len()); #endif EVP_MD_CTX_destroy(mdctx); + EVP_PKEY_free(key); return new Val(success, TYPE_BOOL); sct_verify_err: if (mdctx) EVP_MD_CTX_destroy(mdctx); + if (key) + EVP_PKEY_free(key); cerr << errstr << endl; reporter->Error("%s", errstr.c_str()); return new Val(0, TYPE_BOOL);