check for error when creating PKCS#8 structure
authorDr. Stephen Henson <steve@openssl.org>
Thu, 28 May 2015 14:44:20 +0000 (15:44 +0100)
committerDr. Stephen Henson <steve@openssl.org>
Thu, 28 May 2015 16:58:03 +0000 (17:58 +0100)
Reviewed-by: Rich Salz <rsalz@openssl.org>
crypto/pem/pem_pk8.c

index 4534eb1ec4ab482bfb8b84d3b0cf2bb917b1f3c8..ef5131fa2939a7a57feed073a6a3c15d5476ac8e 100644 (file)
@@ -139,6 +139,8 @@ static int do_pk8pkey(BIO *bp, EVP_PKEY *x, int isder, int nid,
         if (kstr == buf)
             OPENSSL_cleanse(buf, klen);
         PKCS8_PRIV_KEY_INFO_free(p8inf);
         if (kstr == buf)
             OPENSSL_cleanse(buf, klen);
         PKCS8_PRIV_KEY_INFO_free(p8inf);
+        if (p8 == NULL)
+            return 0;
         if (isder)
             ret = i2d_PKCS8_bio(bp, p8);
         else
         if (isder)
             ret = i2d_PKCS8_bio(bp, p8);
         else