Blame SOURCES/0070-EVP_PKEY_Q_keygen-Call-OPENSSL_init_crypto-to-init-s.patch

22d461
From edceec7fe0c9a5534ae155c8398c63dd7dd95483 Mon Sep 17 00:00:00 2001
22d461
From: Tomas Mraz <tomas@openssl.org>
22d461
Date: Thu, 5 May 2022 08:11:24 +0200
22d461
Subject: [PATCH] EVP_PKEY_Q_keygen: Call OPENSSL_init_crypto to init
22d461
 strcasecmp
22d461
22d461
Reviewed-by: Dmitry Belyavskiy <beldmit@gmail.com>
22d461
Reviewed-by: Matt Caswell <matt@openssl.org>
22d461
(Merged from https://github.com/openssl/openssl/pull/18247)
22d461
22d461
(cherry picked from commit b807c2fbab2128cf3746bb2ebd51cbe3bb6914a9)
22d461
22d461
Upstream-Status: Backport [https://github.com/openssl/openssl/commit/edceec7fe0c9a5534ae155c8398c63dd7dd95483]
22d461
---
22d461
 crypto/evp/evp_lib.c | 7 +++++++
22d461
 1 file changed, 7 insertions(+)
22d461
22d461
diff --git a/crypto/evp/evp_lib.c b/crypto/evp/evp_lib.c
22d461
index 3fe4743761..d9b8c0af41 100644
22d461
--- a/crypto/evp/evp_lib.c
22d461
+++ b/crypto/evp/evp_lib.c
22d461
@@ -24,6 +24,7 @@
22d461
 #include <openssl/dh.h>
22d461
 #include <openssl/ec.h>
22d461
 #include "crypto/evp.h"
22d461
+#include "crypto/cryptlib.h"
22d461
 #include "internal/provider.h"
22d461
 #include "evp_local.h"
22d461
 
22d461
@@ -1094,6 +1095,8 @@ int EVP_CIPHER_CTX_test_flags(const EVP_CIPHER_CTX *ctx, int flags)
22d461
     return (ctx->flags & flags);
22d461
 }
22d461
 
22d461
+#if !defined(FIPS_MODULE)
22d461
+
22d461
 int EVP_PKEY_CTX_set_group_name(EVP_PKEY_CTX *ctx, const char *name)
22d461
 {
22d461
     OSSL_PARAM params[] = { OSSL_PARAM_END, OSSL_PARAM_END };
22d461
@@ -1169,6 +1172,8 @@ EVP_PKEY *EVP_PKEY_Q_keygen(OSSL_LIB_CTX *libctx, const char *propq,
22d461
 
22d461
     va_start(args, type);
22d461
 
22d461
+    OPENSSL_init_crypto(OPENSSL_INIT_BASE_ONLY, NULL);
22d461
+
22d461
     if (OPENSSL_strcasecmp(type, "RSA") == 0) {
22d461
         bits = va_arg(args, size_t);
22d461
         params[0] = OSSL_PARAM_construct_size_t(OSSL_PKEY_PARAM_RSA_BITS, &bits);
22d461
@@ -1189,3 +1194,5 @@ EVP_PKEY *EVP_PKEY_Q_keygen(OSSL_LIB_CTX *libctx, const char *propq,
22d461
     va_end(args);
22d461
     return ret;
22d461
 }
22d461
+
22d461
+#endif /* !defined(FIPS_MODULE) */
22d461
-- 
22d461
2.35.3
22d461