From: Dr. Stephen Henson Date: Sat, 14 Mar 2009 12:39:05 +0000 (+0000) Subject: PR: 1864 X-Git-Tag: OpenSSL_0_9_8k^2~9 X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff_plain;h=e39acc1c90f5a41916d857ace42c7b9a47f8e7a6 PR: 1864 Submitted by: Ger Hobbelt Reviewed by: steve@openssl.org Check return value. --- diff --git a/crypto/x509v3/v3_cpols.c b/crypto/x509v3/v3_cpols.c index 7573fec9b1..b452ac4e53 100644 --- a/crypto/x509v3/v3_cpols.c +++ b/crypto/x509v3/v3_cpols.c @@ -181,7 +181,11 @@ static STACK_OF(POLICYINFO) *r2i_certpol(X509V3_EXT_METHOD *method, pol = POLICYINFO_new(); pol->policyid = pobj; } - sk_POLICYINFO_push(pols, pol); + if (!sk_POLICYINFO_push(pols, pol)){ + POLICYINFO_free(pol); + X509V3err(X509V3_F_R2I_CERTPOL, ERR_R_MALLOC_FAILURE); + goto err; + } } sk_CONF_VALUE_pop_free(vals, X509V3_conf_free); return pols; @@ -447,3 +451,6 @@ void X509_POLICY_NODE_print(BIO *out, X509_POLICY_NODE *node, int indent) BIO_printf(out, "%*sNo Qualifiers\n", indent + 2, ""); } + +IMPLEMENT_STACK_OF(X509_POLICY_NODE) +