Allow PKCS7_decrypt() to work if no cert supplied.
[openssl.git] / crypto / pkcs7 / pk7_smime.c
index b6146d75c4176d1956388d27b623ab12f3a9eb20..1f4a0a17952fa7cc03994bbc5d8f0f515ffe183a 100644 (file)
@@ -441,7 +441,7 @@ int PKCS7_decrypt(PKCS7 *p7, EVP_PKEY *pkey, X509 *cert, BIO *data, int flags)
                return 0;
        }
 
-       if(!X509_check_private_key(cert, pkey)) {
+       if(cert && !X509_check_private_key(cert, pkey)) {
                PKCS7err(PKCS7_F_PKCS7_DECRYPT,
                                PKCS7_R_PRIVATE_KEY_DOES_NOT_MATCH_CERTIFICATE);
                return 0;