From 7a2dda8a3c778c361f20157d97363b6daab00942 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B7=D0=B8=D0=BC?= Date: Thu, 2 Nov 2017 23:54:10 +0300 Subject: [PATCH 1/2] Updated to 1.0.2m --- .abf.yml | 2 ++ openssl.spec | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.abf.yml b/.abf.yml index 3b7912c..0bff8c0 100644 --- a/.abf.yml +++ b/.abf.yml @@ -1,3 +1,5 @@ sources: openssl-1.0.2l.tar.gz: b58d5d0e9cea20e571d903aafa853e2ccd914138 openssl-1.0.2l.tar.gz.asc: 82a8013979d2aaa437bf58bf99355317b25e2e2a + openssl-1.0.2m.tar.gz: 27fb00641260f97eaa587eb2b80fab3647f6013b + openssl-1.0.2m.tar.gz.asc: 8d383f6f0a55a715fec8c21d02319a88de8fbd30 diff --git a/openssl.spec b/openssl.spec index 258f9de..2bc755f 100644 --- a/openssl.spec +++ b/openssl.spec @@ -14,7 +14,7 @@ Summary: Secure Sockets Layer communications libs & utils Name: openssl -Version: 1.0.2l +Version: 1.0.2m Release: 1 License: BSD-like Group: System/Libraries From 8041ee5e18ac488170f3f8a5839d3fa73f230ec3 Mon Sep 17 00:00:00 2001 From: Andrey Bondrov Date: Thu, 9 Nov 2017 14:39:01 +1000 Subject: [PATCH 2/2] Produce RHEL/Fedora compatibility libraries --- openssl.spec | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 52 insertions(+), 1 deletion(-) diff --git a/openssl.spec b/openssl.spec index 2bc755f..b258e16 100644 --- a/openssl.spec +++ b/openssl.spec @@ -5,6 +5,12 @@ %define devname %mklibname openssl -d %define staticname %mklibname openssl -s -d +# patchelf 0.9 is buggy so compat libraries are experimental for now +%bcond_without compat +%define major_compat 10 +%define libcrypto_compat %mklibname crypto %{major_compat} +%define libssl_compat %mklibname ssl %{major_compat} + %define conflict2 %mklibname openssl 0.9.8 # Number of threads to spawn when testing some threading fixes. @@ -15,7 +21,7 @@ Summary: Secure Sockets Layer communications libs & utils Name: openssl Version: 1.0.2m -Release: 1 +Release: 2 License: BSD-like Group: System/Libraries Url: https://www.openssl.org @@ -43,6 +49,11 @@ Patch302: openssl-1.0.2-enginesdir.patch Patch303: openssl-0.9.8a-no-rpath.patch Patch304: openssl-1.0.2-test-use-localhost.patch BuildRequires: bc +%if %{with compat} +# readelf is used to produce libcrypto.so.10 and libssl.so.10 +# needed for compatibility with Fedora/RHEL (Viber etc) +BuildRequires: patchelf >= 0.10-0.20170615.2 +%endif %{?_with_krb5:BuildRequires: krb5-devel} BuildRequires: sctp-devel BuildRequires: pkgconfig(zlib) @@ -169,6 +180,38 @@ cryptographic algorithms and protocols, including DES, RC4, RSA and SSL. #---------------------------------------------------------------------------- +%if %{with compat} +%package -n %{libcrypto_compat} +Summary: Secure Sockets Layer communications libs (Fedora compatibility only) +Group: System/Libraries + +%description -n %{libcrypto_compat} +The libraries files are needed for various cryptographic algorithms +and protocols, including DES, RC4, RSA and SSL. + +%files -n %{libcrypto_compat} +%doc FAQ LICENSE NEWS PROBLEMS README* +%{_libdir}/libcrypto.so.%{major_compat}* +%endif + +#---------------------------------------------------------------------------- + +%if %{with compat} +%package -n %{libssl_compat} +Summary: Secure Sockets Layer communications libs (Fedora compatibility only) +Group: System/Libraries + +%description -n %{libssl_compat} +The libraries files are needed for various cryptographic algorithms +and protocols, including DES, RC4, RSA and SSL. + +%files -n %{libssl_compat} +%doc FAQ LICENSE NEWS PROBLEMS README* +%{_libdir}/libssl.so.%{major_compat}* +%endif + +#---------------------------------------------------------------------------- + %prep %setup -q %patch0 -p1 -b .gost @@ -311,6 +354,14 @@ chmod 755 %{buildroot}%{_libdir}/openssl-%{major}/engines/*.so* chmod 755 %{buildroot}%{_libdir}/*.so* chmod 755 %{buildroot}%{_bindir}/* +%if %{with compat} +# RHEL/Fedora compatibility libraries +cp %{buildroot}%{_libdir}/libcrypto.so.%{major} %{buildroot}%{_libdir}/libcrypto.so.%{major_compat} +cp %{buildroot}%{_libdir}/libssl.so.%{major} %{buildroot}%{_libdir}/libssl.so.%{major_compat} +patchelf --set-soname libcrypto.so.%{major_compat} %{buildroot}%{_libdir}/libcrypto.so.%{major_compat} +patchelf --set-soname libssl.so.%{major_compat} %{buildroot}%{_libdir}/libssl.so.%{major_compat} +%endif + # nuke a mistake rm -f %{buildroot}%{_mandir}/man3/.3