From: Dr. Stephen Henson Date: Mon, 31 Jan 2005 01:40:39 +0000 (+0000) Subject: Avoid memory leak. X-Git-Tag: OpenSSL_0_9_7f~30 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=66d68327cb8640ac29a6b474fe1d9e7e0d73acbd;p=openssl Avoid memory leak. --- diff --git a/crypto/asn1/a_verify.c b/crypto/asn1/a_verify.c index b91678a9f6..18ef0acf00 100644 --- a/crypto/asn1/a_verify.c +++ b/crypto/asn1/a_verify.c @@ -142,6 +142,13 @@ int ASN1_item_verify(const ASN1_ITEM *it, X509_ALGOR *a, ASN1_BIT_STRING *signat goto err; } + if (!EVP_VerifyInit_ex(&ctx,type, NULL)) + { + ASN1err(ASN1_F_ASN1_VERIFY,ERR_R_EVP_LIB); + ret=0; + goto err; + } + inl = ASN1_item_i2d(asn, &buf_in, it); if (buf_in == NULL) @@ -150,12 +157,6 @@ int ASN1_item_verify(const ASN1_ITEM *it, X509_ALGOR *a, ASN1_BIT_STRING *signat goto err; } - if (!EVP_VerifyInit_ex(&ctx,type, NULL)) - { - ASN1err(ASN1_F_ASN1_VERIFY,ERR_R_EVP_LIB); - ret=0; - goto err; - } EVP_VerifyUpdate(&ctx,(unsigned char *)buf_in,inl); OPENSSL_cleanse(buf_in,(unsigned int)inl);