From 936dc93773fc4e84227fa902b1222ace9c5d170c Mon Sep 17 00:00:00 2001 From: foutrelis Date: Thu, 3 Nov 2022 23:02:59 +0000 Subject: [PATCH] upgpkg: transmission 3.00-6: fix compatibility with OpenSSL 3.0 Apply patch from Gentoo that enables the legacy provider (FS#76411). git-svn-id: file:///srv/repos/svn-packages/svn@460534 eb2447ed-0c53-47e4-bac8-5bc4a241df78 --- trunk/PKGBUILD | 10 +++++-- trunk/transmission-3.00-openssl-3.patch | 37 +++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 2 deletions(-) create mode 100644 trunk/transmission-3.00-openssl-3.patch diff --git a/trunk/PKGBUILD b/trunk/PKGBUILD index c1f7f4c9844e..22b539711838 100644 --- a/trunk/PKGBUILD +++ b/trunk/PKGBUILD @@ -4,22 +4,28 @@ pkgbase=transmission pkgname=(transmission-cli transmission-gtk transmission-qt libtransmission) pkgver=3.00 -pkgrel=5 +pkgrel=6 arch=(x86_64) url="http://www.transmissionbt.com/" license=(MIT) makedepends=(gtk3 intltool curl qt5-base libevent systemd qt5-tools libappindicator-gtk3 dht libb64 libutp miniupnpc libnatpmp) source=(https://github.com/transmission/transmission-releases/raw/master/transmission-${pkgver}.tar.xz + transmission-3.00-openssl-3.patch transmission-cli.sysusers transmission-cli.tmpfiles) sha256sums=('9144652fe742f7f7dd6657716e378da60b751aaeda8bef8344b3eefc4db255f2' + 'a5e56b906724f007db0bdb9835fbf5088bb56a521ec2971aec0ea44578d5955b' '641310fb0590d40e00bea1b5b9c843953ab78edf019109f276be9c6a7bdaf5b2' '1266032bb07e47d6bcdc7dabd74df2557cc466c33bf983a5881316a4cc098451') prepare() { cd $pkgbase-$pkgver -# Fix build with autoconf 2.70 + # Fix compatibility with OpenSSL 3.0 (patch from Gentoo) + # https://github.com/transmission/transmission/issues/1777 + patch -Np1 -i ../transmission-3.00-openssl-3.patch + + # Fix build with autoconf 2.70 sed -i 's/\[IT_PROG_INTLTOOL(\[/[\nIT_PROG_INTLTOOL(\[/' configure.ac rm -f m4/glib-gettext.m4 autoreconf -fi diff --git a/trunk/transmission-3.00-openssl-3.patch b/trunk/transmission-3.00-openssl-3.patch new file mode 100644 index 000000000000..f288298cbf3d --- /dev/null +++ b/trunk/transmission-3.00-openssl-3.patch @@ -0,0 +1,37 @@ +From 6ee128b95bacaff20746538dc97c2b8e2b9fcc29 Mon Sep 17 00:00:00 2001 +From: Mike Gilbert +Date: Sun, 15 May 2022 10:54:38 -0400 +Subject: [PATCH] openssl: load "legacy" provider for RC4 + +--- + libtransmission/crypto-utils-openssl.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/libtransmission/crypto-utils-openssl.c b/libtransmission/crypto-utils-openssl.c +index 45fd71913..14d680654 100644 +--- a/libtransmission/crypto-utils-openssl.c ++++ b/libtransmission/crypto-utils-openssl.c +@@ -20,6 +20,9 @@ + #include + #include + #include ++#if OPENSSL_VERSION_MAJOR >= 3 ++#include ++#endif + + #include "transmission.h" + #include "crypto-utils.h" +@@ -184,6 +187,10 @@ static void openssl_evp_cipher_context_free(EVP_CIPHER_CTX* handle) + + tr_rc4_ctx_t tr_rc4_new(void) + { ++#if OPENSSL_VERSION_MAJOR >= 3 ++ OSSL_PROVIDER_load(NULL, "default"); ++ OSSL_PROVIDER_load(NULL, "legacy"); ++#endif + EVP_CIPHER_CTX* handle = EVP_CIPHER_CTX_new(); + + if (check_result(EVP_CipherInit_ex(handle, EVP_rc4(), NULL, NULL, NULL, -1))) +-- +2.35.1 +