File 8671-crypto-Bug-fix-in-dss.c-showing-itself-in-OpenSSL-3..patch of Package erlang
From 88ca698bdfec249f861789201d49ce3b80af2cb7 Mon Sep 17 00:00:00 2001
From: Hans Nilsson <hans@erlang.org>
Date: Tue, 22 Mar 2022 11:05:47 +0100
Subject: [PATCH] crypto: Bug fix in dss.c showing itself in OpenSSL 3.0.2
get_dss_private_key asked for only the public key, whihch worked for <= 3.0.1 where it also got the private key
---
lib/crypto/c_src/dss.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/crypto/c_src/dss.c b/lib/crypto/c_src/dss.c
index 5c692fd8e3..97926926af 100644
--- a/lib/crypto/c_src/dss.c
+++ b/lib/crypto/c_src/dss.c
@@ -53,7 +53,7 @@ int get_dss_private_key(ErlNifEnv* env, ERL_NIF_TERM key, EVP_PKEY **pkey)
goto err;
if (EVP_PKEY_fromdata_init(ctx) <= 0)
goto err;
- if (EVP_PKEY_fromdata(ctx, pkey, EVP_PKEY_PUBLIC_KEY, params) <= 0)
+ if (EVP_PKEY_fromdata(ctx, pkey, EVP_PKEY_KEYPAIR, params) <= 0)
goto bad_arg;
if (ctx) EVP_PKEY_CTX_free(ctx);
--
2.34.1