From 8c7e8a48d3513b9cf68ac299f40e6b757a03a70a Mon Sep 17 00:00:00 2001 From: Pavel Zhukov Date: Tue, 18 May 2021 06:42:38 +0200 Subject: [PATCH] Build with openssl 3.0" Resolves: #1953489 --- perl-Crypt-OpenSSL-RSA-openssl30.patch | 84 ++++++++++++++++++++++++++ perl-Crypt-OpenSSL-RSA.spec | 11 +++- 2 files changed, 92 insertions(+), 3 deletions(-) create mode 100644 perl-Crypt-OpenSSL-RSA-openssl30.patch diff --git a/perl-Crypt-OpenSSL-RSA-openssl30.patch b/perl-Crypt-OpenSSL-RSA-openssl30.patch new file mode 100644 index 0000000..2be5804 --- /dev/null +++ b/perl-Crypt-OpenSSL-RSA-openssl30.patch @@ -0,0 +1,84 @@ +diff --git a/README b/README +index c7d4bb7..3da6d1d 100644 +--- a/README ++++ b/README +@@ -10,7 +10,6 @@ SYNOPSIS + 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); +@@ -140,10 +139,6 @@ Instance Methods + all new applications. It is the default mode used by + "Crypt::OpenSSL::RSA". + +- use_sslv23_padding +- Use PKCS #1 v1.5 padding with an SSL-specific modification that +- denotes that the server is SSL3 capable. +- + use_md5_hash + Use the RFC 1321 MD5 hashing algorithm by Ron Rivest when signing + and verifying messages. +@@ -168,7 +163,7 @@ Instance Methods + pkcs1_oaep_padding + at most 42 bytes less than this size. + +- pkcs1_padding or sslv23_padding ++ pkcs1_padding + at most 11 bytes less than this size. + + no_padding +diff --git a/RSA.pm b/RSA.pm +index 31e6949..1b63e99 100644 +--- a/RSA.pm ++++ b/RSA.pm +@@ -34,8 +34,7 @@ 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); ++ $ciphertext = $rsa->encrypt($plaintext); + + $rsa_priv = Crypt::OpenSSL::RSA->new_private_key($key_string); + $plaintext = $rsa->encrypt($ciphertext); +@@ -220,11 +219,6 @@ an empty encoding parameter. This mode of padding is recommended for + all new applications. It is the default mode used by + C. + +-=item use_sslv23_padding +- +-Use C padding with an SSL-specific modification that +-denotes that the server is SSL3 capable. +- + =item use_md5_hash + + Use the RFC 1321 MD5 hashing algorithm by Ron Rivest when signing and +@@ -267,7 +261,7 @@ the text to be encrypted should be: + + at most 42 bytes less than this size. + +-=item pkcs1_padding or sslv23_padding ++=item pkcs1_padding + + at most 11 bytes less than this size. + +diff --git a/RSA.xs b/RSA.xs +index d474d11..711e4e7 100644 +--- a/RSA.xs ++++ b/RSA.xs +@@ -640,12 +640,6 @@ use_pkcs1_oaep_padding(p_rsa) + CODE: + p_rsa->padding = RSA_PKCS1_OAEP_PADDING; + +-void +-use_sslv23_padding(p_rsa) +- rsaData* p_rsa; +- CODE: +- p_rsa->padding = RSA_SSLV23_PADDING; +- + # Sign text. Returns the signature. + + SV* diff --git a/perl-Crypt-OpenSSL-RSA.spec b/perl-Crypt-OpenSSL-RSA.spec index 3863bbd..6b5678e 100644 --- a/perl-Crypt-OpenSSL-RSA.spec +++ b/perl-Crypt-OpenSSL-RSA.spec @@ -1,6 +1,6 @@ Name: perl-Crypt-OpenSSL-RSA Version: 0.31 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Perl interface to OpenSSL for RSA License: GPL+ or Artistic URL: https://metacpan.org/release/Crypt-OpenSSL-RSA @@ -8,7 +8,6 @@ Source0: https://cpan.metacpan.org/authors/id/T/TO/TODDR/Crypt-OpenSSL-RS BuildRequires: gcc BuildRequires: findutils BuildRequires: make -BuildRequires: openssl BuildRequires: openssl-devel BuildRequires: perl-devel BuildRequires: perl-generators @@ -33,11 +32,14 @@ Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $versi Requires: perl(Crypt::OpenSSL::Random) Requires: perl(Crypt::OpenSSL::Bignum) +Patch1: perl-Crypt-OpenSSL-RSA-openssl30.patch + + %description Crypt::OpenSSL::RSA - RSA encoding and decoding, using the openSSL libraries %prep -%setup -q -n Crypt-OpenSSL-RSA-%{version} +%autosetup -p1 -n Crypt-OpenSSL-RSA-%{version} %build %{__perl} Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 @@ -59,6 +61,9 @@ make test %{_mandir}/man3/* %changelog +* Tue May 18 2021 Pavel Zhukov - 0.31-11 +- Build with openssl 3.0 + * Fri Apr 16 2021 Mohan Boddu - 0.31-10 - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937