From b6c6898234a12b9c6cdaa8f16fb9156097649ad7 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Thu, 17 Nov 2016 13:17:28 +0000 Subject: [PATCH] Support MSBLOB format if RC4 is disabled Reviewed-by: Matt Caswell --- apps/dsa.c | 8 +++++++- apps/rsa.c | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/apps/dsa.c b/apps/dsa.c index d88116fb10..dddc5b816c 100644 --- a/apps/dsa.c +++ b/apps/dsa.c @@ -213,7 +213,7 @@ int dsa_main(int argc, char **argv) i = PEM_write_bio_DSAPrivateKey(out, dsa, enc, NULL, 0, NULL, passout); } -# if !defined(OPENSSL_NO_RSA) && !defined(OPENSSL_NO_RC4) +# ifndef OPENSSL_NO_RSA } else if (outformat == FORMAT_MSBLOB || outformat == FORMAT_PVK) { EVP_PKEY *pk; pk = EVP_PKEY_new(); @@ -225,7 +225,13 @@ int dsa_main(int argc, char **argv) goto end; } assert(private); +# ifdef OPENSSL_NO_RC4 + BIO_printf(bio_err, "PVK format not supported\n"); + EVP_PKEY_free(pk); + goto end; +# else i = i2b_PVK_bio(out, pk, pvk_encr, 0, passout); +# endif } else if (pubin || pubout) i = i2b_PublicKey_bio(out, pk); diff --git a/apps/rsa.c b/apps/rsa.c index 73579a61a6..5462f4bc2b 100644 --- a/apps/rsa.c +++ b/apps/rsa.c @@ -263,7 +263,7 @@ int rsa_main(int argc, char **argv) i = PEM_write_bio_RSAPrivateKey(out, rsa, enc, NULL, 0, NULL, passout); } -# if !defined(OPENSSL_NO_DSA) && !defined(OPENSSL_NO_RC4) +# ifndef OPENSSL_NO_DSA } else if (outformat == FORMAT_MSBLOB || outformat == FORMAT_PVK) { EVP_PKEY *pk; pk = EVP_PKEY_new(); @@ -275,7 +275,13 @@ int rsa_main(int argc, char **argv) goto end; } assert(private); +# ifdef OPENSSL_NO_RC4 + BIO_printf(bio_err, "PVK format not supported\n"); + EVP_PKEY_free(pk); + goto end; +# else i = i2b_PVK_bio(out, pk, pvk_encr, 0, passout); +# endif } else if (pubin || pubout) { i = i2b_PublicKey_bio(out, pk); } else { -- 2.34.1