Commit 59a56c4c authored by Richard Levitte's avatar Richard Levitte
Browse files

Add NULL check in i2d_PrivateKey()



Originally submitted by Kurt Cancemi <kurt@x64architecture.com>

Closes RT#4533

Reviewed-by: default avatarMatt Caswell <matt@openssl.org>
parent f7aa3185
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -69,10 +69,13 @@ int i2d_PrivateKey(EVP_PKEY *a, unsigned char **pp)
    }
    if (a->ameth && a->ameth->priv_encode) {
        PKCS8_PRIV_KEY_INFO *p8 = EVP_PKEY2PKCS8(a);
        int ret = i2d_PKCS8_PRIV_KEY_INFO(p8, pp);
        int ret = 0;
        if (p8 != NULL) {
            ret = i2d_PKCS8_PRIV_KEY_INFO(p8, pp);
            PKCS8_PRIV_KEY_INFO_free(p8);
        }
        return ret;
    }
    ASN1err(ASN1_F_I2D_PRIVATEKEY, ASN1_R_UNSUPPORTED_PUBLIC_KEY_TYPE);
    return (-1);
    return -1;
}