Specific the engine pointer
authorgujinqiang <gujinqiangggs@126.com>
Fri, 17 Jul 2020 09:52:26 +0000 (17:52 +0800)
committerDmitry Belyavskiy <beldmit@gmail.com>
Wed, 22 Jul 2020 07:37:49 +0000 (10:37 +0300)
CLA: trivial

I found that when I wanted to use an engine by the option-engine XXX , it didn't work. Checking the code, I guess it missed the engine pointer when calling EVP_CipherInit_ex.

Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
Reviewed-by: Paul Yang <kaishen.yy@antfin.com>
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/12475)

apps/enc.c

index 4d59391c224f7b80a4d90db344fc402a90f0286c..0f4cdae3c2f92bea174795e5ae9b26b6d5c5d774 100644 (file)
@@ -551,7 +551,7 @@ int enc_main(int argc, char **argv)
 
         BIO_get_cipher_ctx(benc, &ctx);
 
-        if (!EVP_CipherInit_ex(ctx, cipher, NULL, NULL, NULL, enc)) {
+        if (!EVP_CipherInit_ex(ctx, cipher, e, NULL, NULL, enc)) {
             BIO_printf(bio_err, "Error setting cipher %s\n",
                        EVP_CIPHER_name(cipher));
             ERR_print_errors(bio_err);