!14 修复由于不兼容openssl 3.0的编译失败

From: @cherry530 
Reviewed-by: @lyn1001 
Signed-off-by: @lyn1001
This commit is contained in:
openeuler-ci-bot 2023-02-02 07:09:29 +00:00 committed by Gitee
commit 49c609823f
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 60 additions and 1 deletions

View File

@ -0,0 +1,53 @@
From 32b250eab5e7847d3186ed1a61146dd01eb8f3c0 Mon Sep 17 00:00:00 2001
From: kambe-mikb <77083885+kambe-mikb@users.noreply.github.com>
Date: Tue, 28 Sep 2021 17:40:18 +1000
Subject: [PATCH] Fix for Issue 31
Fix Issue 31 by removing reference to RSA_SSLV23_PADDING (removed from OpenSSL starting from v3.0.0)
---
RSA.pm | 3 ++-
RSA.xs | 4 ++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/RSA.pm b/RSA.pm
index 3e74925..afd27fd 100644
--- a/RSA.pm
+++ b/RSA.pm
@@ -37,7 +37,6 @@ Crypt::OpenSSL::RSA - RSA encoding and decoding, using the openSSL libraries
Crypt::OpenSSL::Random::random_seed($good_entropy);
Crypt::OpenSSL::RSA->import_random_seed();
$rsa_pub = Crypt::OpenSSL::RSA->new_public_key($key_string);
- $rsa_pub->use_sslv23_padding(); # use_pkcs1_oaep_padding is the default
$ciphertext = $rsa->encrypt($plaintext);
$rsa_priv = Crypt::OpenSSL::RSA->new_private_key($key_string);
@@ -228,6 +227,8 @@ C<Crypt::OpenSSL::RSA>.
Use C<PKCS #1 v1.5> padding with an SSL-specific modification that
denotes that the server is SSL3 capable.
+Not available since OpenSSL 3.
+
=item use_md5_hash
Use the RFC 1321 MD5 hashing algorithm by Ron Rivest when signing and
diff --git a/RSA.xs b/RSA.xs
index 46cb199..4f65dfc 100644
--- a/RSA.xs
+++ b/RSA.xs
@@ -640,12 +640,16 @@ use_pkcs1_oaep_padding(p_rsa)
CODE:
p_rsa->padding = RSA_PKCS1_OAEP_PADDING;
+#if OPENSSL_VERSION_NUMBER < 0x30000000L
+
void
use_sslv23_padding(p_rsa)
rsaData* p_rsa;
CODE:
p_rsa->padding = RSA_SSLV23_PADDING;
+#endif
+
# Sign text. Returns the signature.
SV*

View File

@ -1,10 +1,13 @@
Name: perl-Crypt-OpenSSL-RSA
Version: 0.32
Release: 1
Release: 2
Summary: Perl interface to OpenSSL for RSA
License: GPL+ or Artistic
URL: https://metacpan.org/release/Crypt-OpenSSL-RSA
Source0: https://cpan.metacpan.org/authors/id/T/TO/TODDR/Crypt-OpenSSL-RSA-%{version}.tar.gz
Patch0: Crypt-OpenSSL-RSA-0.32-Fix-for-issue-31.patch
BuildRequires: gcc findutils make openssl openssl-devel perl-devel perl-generators perl-interpreter
BuildRequires: perl(:VERSION) >= 5.6 perl(Crypt::OpenSSL::Guess) >= 0.11
BuildRequires: perl(ExtUtils::MakeMaker) >= 6.76 perl(strict) perl(warnings) perl(Carp)
@ -48,6 +51,9 @@ make test
%doc Changes README
%changelog
* Thu Feb 02 2023 xu_ping <xuping33@h-partners.com> - 0.32-2
- Fix a build error caused by upgrade openssl
* Tue Jan 18 2022 SimpleUpdate Robot <tc@openeuler.org> - 0.32-1
- Upgrade to version 0.32