File 0191-public_key-fix-pkix_crl_verify-2-for-EdDSA-certifica.patch of Package erlang

From b87322a409466a930d6ef1c1962046b5c448a819 Mon Sep 17 00:00:00 2001
From: Stefan Grundmann <sg2342@googlemail.com>
Date: Thu, 18 Dec 2025 18:17:45 +0000
Subject: [PATCH 1/4] public_key: fix pkix_crl_verify/2 for EdDSA certificates

Fixes #10495
---
 lib/public_key/src/public_key.erl | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/lib/public_key/src/public_key.erl b/lib/public_key/src/public_key.erl
index e1faa65430..7d57768591 100644
--- a/lib/public_key/src/public_key.erl
+++ b/lib/public_key/src/public_key.erl
@@ -1776,7 +1776,13 @@ pkix_crl_verify(#'CertificateList'{} = CRL, #'OTPCertificate'{} = Cert) ->
     PublicKeyInfo = TBSCert#'OTPTBSCertificate'.subjectPublicKeyInfo,
     PublicKey = PublicKeyInfo#'OTPSubjectPublicKeyInfo'.subjectPublicKey,
     AlgInfo = PublicKeyInfo#'OTPSubjectPublicKeyInfo'.algorithm,
-    PublicKeyParams = AlgInfo#'PublicKeyAlgorithm'.parameters,
+    PublicKeyParams =
+        case AlgInfo#'PublicKeyAlgorithm'.algorithm of
+            AlgId when AlgId == ?'id-Ed25519' ; AlgId == ?'id-Ed448' ->
+                {namedCurve, AlgId};
+            _ ->
+                AlgInfo#'PublicKeyAlgorithm'.parameters
+        end,
     pubkey_crl:verify_crl_signature(CRL,
                                     der_encode('CertificateList', CRL),
                                     PublicKey, PublicKeyParams).
-- 
2.51.0

openSUSE Build Service is sponsored by