Avoid possible memory leak.

This commit is contained in:
Dr. Stephen Henson
2005-02-14 21:54:29 +00:00
parent b7fd453675
commit 2ecf923286

View File

@@ -325,10 +325,6 @@ STACK_OF(X509) *PKCS7_get0_signers(PKCS7 *p7, STACK_OF(X509) *certs, int flags)
PKCS7err(PKCS7_F_PKCS7_GET0_SIGNERS,PKCS7_R_WRONG_CONTENT_TYPE); PKCS7err(PKCS7_F_PKCS7_GET0_SIGNERS,PKCS7_R_WRONG_CONTENT_TYPE);
return NULL; return NULL;
} }
if(!(signers = sk_X509_new_null())) {
PKCS7err(PKCS7_F_PKCS7_GET0_SIGNERS,ERR_R_MALLOC_FAILURE);
return NULL;
}
/* Collect all the signers together */ /* Collect all the signers together */
@@ -339,6 +335,11 @@ STACK_OF(X509) *PKCS7_get0_signers(PKCS7 *p7, STACK_OF(X509) *certs, int flags)
return 0; return 0;
} }
if(!(signers = sk_X509_new_null())) {
PKCS7err(PKCS7_F_PKCS7_GET0_SIGNERS,ERR_R_MALLOC_FAILURE);
return NULL;
}
for (i = 0; i < sk_PKCS7_SIGNER_INFO_num(sinfos); i++) for (i = 0; i < sk_PKCS7_SIGNER_INFO_num(sinfos); i++)
{ {
si = sk_PKCS7_SIGNER_INFO_value(sinfos, i); si = sk_PKCS7_SIGNER_INFO_value(sinfos, i);