Date: Thursday, January 6, 2022 @ 11:51:33 Author: arojas Revision: 433646
archrelease: copy trunk to extra-x86_64 Added: kopete/repos/extra-x86_64/PKGBUILD (from rev 433645, kopete/trunk/PKGBUILD) kopete/repos/extra-x86_64/kopete-mediastreamer-4.3.patch (from rev 433645, kopete/trunk/kopete-mediastreamer-4.3.patch) kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch (from rev 433645, kopete/trunk/kopete-mediastreamer2.14.patch) kopete/repos/extra-x86_64/kopete-openssl-1.1.patch (from rev 433645, kopete/trunk/kopete-openssl-1.1.patch) kopete/repos/extra-x86_64/kopete-srtp2.patch (from rev 433645, kopete/trunk/kopete-srtp2.patch) Deleted: kopete/repos/extra-x86_64/PKGBUILD kopete/repos/extra-x86_64/kopete-mediastreamer-4.3.patch kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch kopete/repos/extra-x86_64/kopete-openssl-1.1.patch kopete/repos/extra-x86_64/kopete-srtp2.patch --------------------------------+ PKGBUILD | 96 +++--- kopete-mediastreamer-4.3.patch | 168 +++++----- kopete-mediastreamer2.14.patch | 562 +++++++++++++++++------------------ kopete-openssl-1.1.patch | 614 +++++++++++++++++++-------------------- kopete-srtp2.patch | 308 +++++++++---------- 5 files changed, 874 insertions(+), 874 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2022-01-06 11:51:16 UTC (rev 433645) +++ PKGBUILD 2022-01-06 11:51:33 UTC (rev 433646) @@ -1,48 +0,0 @@ -# Maintainer: Felix Yan <felixonm...@archlinux.org> -# Maintainer: Antonio Rojas <aro...@archlinux.org> -# Contributor: Andrea Scarpino <and...@archlinux.org> - -pkgname=kopete -pkgver=21.12.0 -pkgrel=1 -pkgdesc='Instant Messenger' -url='https://apps.kde.org/kopete/' -arch=(x86_64) -license=(GPL LGPL FDL) -groups=(kde-applications kde-network) -depends=(knotifyconfig kcmutils ktexteditor kcontacts kidentitymanagement libkleo qca-qt5 kdelibs4support khtml - libidn libotr) -makedepends=(extra-cmake-modules mediastreamer libgadu jsoncpp kdoctools kdesignerplugin kdnssd kinit) -optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol' 'kdnssd: bonjour protocol') -source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig} - kopete-mediastreamer2.14.patch kopete-srtp2.patch kopete-openssl-1.1.patch kopete-mediastreamer-4.3.patch) -sha256sums=('5e6715a7422827c0241fff30f41f7faed1288a4a8047f37051bb77b208818754' - 'SKIP' - '8b8e7a5d9f17fafdddb402fab22b0b8d9963039ea8ea9fa749cad67aeeb879ac' - 'ceed663f7007654d186d918cf7a0742972ed5bd319879021e9ba80e395177700' - 'a12ea422e5162ef11274a98fd53658d6e780cafbe2e0fac70c8bc7d3291fef8b' - '7ff38588f25bc05eae8ba20d9624536b33addf26b74e8c64ac036291f98f2bc2') -validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aa...@kde.org> - F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck <cf...@kde.org> - D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.bec...@kde.org> - -prepare() { -# fix build with mediastreamer 2.14 https://phabricator.kde.org/D15956 - patch -d $pkgname-$pkgver -p1 -i ../kopete-mediastreamer2.14.patch -# Detect mediastreamer 4.3 - patch -d $pkgname-$pkgver -p1 -i ../kopete-mediastreamer-4.3.patch -# fix build with OpenSSL 1.1 (Fedora patch) - patch -d $pkgname-$pkgver -p1 -i ../kopete-openssl-1.1.patch -# support SRTP2 - patch -d $pkgname-$pkgver -p1 -i ../kopete-srtp2.patch -} - -build() { - cmake -B build -S $pkgname-$pkgver \ - -DBUILD_TESTING=OFF - cmake --build build -} - -package() { - DESTDIR="$pkgdir" cmake --install build -} Copied: kopete/repos/extra-x86_64/PKGBUILD (from rev 433645, kopete/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2022-01-06 11:51:33 UTC (rev 433646) @@ -0,0 +1,48 @@ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Maintainer: Antonio Rojas <aro...@archlinux.org> +# Contributor: Andrea Scarpino <and...@archlinux.org> + +pkgname=kopete +pkgver=21.12.1 +pkgrel=1 +pkgdesc='Instant Messenger' +url='https://apps.kde.org/kopete/' +arch=(x86_64) +license=(GPL LGPL FDL) +groups=(kde-applications kde-network) +depends=(knotifyconfig kcmutils ktexteditor kcontacts kidentitymanagement libkleo qca-qt5 kdelibs4support khtml + libidn libotr) +makedepends=(extra-cmake-modules mediastreamer libgadu jsoncpp kdoctools kdesignerplugin kdnssd kinit) +optdepends=('mediastreamer: jingle support' 'libgadu: Gadu-Gadu protocol' 'kdnssd: bonjour protocol') +source=(https://download.kde.org/stable/release-service/$pkgver/src/$pkgname-$pkgver.tar.xz{,.sig} + kopete-mediastreamer2.14.patch kopete-srtp2.patch kopete-openssl-1.1.patch kopete-mediastreamer-4.3.patch) +sha256sums=('67c32e67e20c49a5c11148c736e4dfd3b4dd4c7ab0cbde86baab18acfa306c8d' + 'SKIP' + '8b8e7a5d9f17fafdddb402fab22b0b8d9963039ea8ea9fa749cad67aeeb879ac' + 'ceed663f7007654d186d918cf7a0742972ed5bd319879021e9ba80e395177700' + 'a12ea422e5162ef11274a98fd53658d6e780cafbe2e0fac70c8bc7d3291fef8b' + '7ff38588f25bc05eae8ba20d9624536b33addf26b74e8c64ac036291f98f2bc2') +validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7 # Albert Astals Cid <aa...@kde.org> + F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87 # Christoph Feck <cf...@kde.org> + D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker <heiko.bec...@kde.org> + +prepare() { +# fix build with mediastreamer 2.14 https://phabricator.kde.org/D15956 + patch -d $pkgname-$pkgver -p1 -i ../kopete-mediastreamer2.14.patch +# Detect mediastreamer 4.3 + patch -d $pkgname-$pkgver -p1 -i ../kopete-mediastreamer-4.3.patch +# fix build with OpenSSL 1.1 (Fedora patch) + patch -d $pkgname-$pkgver -p1 -i ../kopete-openssl-1.1.patch +# support SRTP2 + patch -d $pkgname-$pkgver -p1 -i ../kopete-srtp2.patch +} + +build() { + cmake -B build -S $pkgname-$pkgver \ + -DBUILD_TESTING=OFF + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build +} Deleted: kopete-mediastreamer-4.3.patch =================================================================== --- kopete-mediastreamer-4.3.patch 2022-01-06 11:51:16 UTC (rev 433645) +++ kopete-mediastreamer-4.3.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -1,84 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 55556be4a..8e63c2cee 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -92,8 +92,8 @@ set_package_properties(Libgadu PROPERTIES DESCRIPTION "A library providing suppo - find_package(LibMeanwhile QUIET) - set_package_properties(LibMeanwhile PROPERTIES DESCRIPTION "A library for protocol support for connection to sametime servers" URL "http://meanwhile.sourceforge.net/" TYPE OPTIONAL PURPOSE "Required for the meanwhile protocol") - --find_package(LiboRTP QUIET) --set_package_properties(LiboRTP PROPERTIES DESCRIPTION "oRTP provides an API to send rtp packets" URL "http://www.linphone.org/index.php/eng/code_review/ortp/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") -+find_package(ortp QUIET) -+set_package_properties(ortp PROPERTIES DESCRIPTION "oRTP provides an API to send rtp packets" URL "http://www.linphone.org/index.php/eng/code_review/ortp/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") - - find_package(LibOTR QUIET) - set_package_properties(LibOTR PROPERTIES DESCRIPTION "Library to encrypt messages with off-the-record encryption" URL "http://www.cypherpunks.ca/otr/" TYPE OPTIONAL PURPOSE "Required for the OTR plugin") -@@ -107,8 +107,8 @@ set_package_properties(LibXml2 PROPERTIES DESCRIPTION "Libraries used to develop - find_package(LibXslt QUIET) - set_package_properties(LibXslt PROPERTIES DESCRIPTION "A library to transform XML files into other XML files" URL "http://www.xmlsoft.org/XSLT/" TYPE OPTIONAL PURPOSE "Required for the Webpresence plugin") - --find_package(Mediastreamer QUIET) --set_package_properties(Mediastreamer PROPERTIES DESCRIPTION "A streaming enginer specialized for voice/video telephony applications" URL "http://www.linphone.org/index.php/eng/code_review/mediastreamer2/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") -+find_package(Mediastreamer2 QUIET) -+set_package_properties(Mediastreamer2 PROPERTIES DESCRIPTION "A streaming enginer specialized for voice/video telephony applications" URL "http://www.linphone.org/index.php/eng/code_review/mediastreamer2/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") - - find_package(OpenSSL QUIET) - set_package_properties(OpenSSL PROPERTIES DESCRIPTION "OpenSSL implementation of SSL" URL "https://www.openssl.org/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") -diff --git a/protocols/CMakeLists.txt b/protocols/CMakeLists.txt -index 89d36a4e4..5f13ff9d9 100644 ---- a/protocols/CMakeLists.txt -+++ b/protocols/CMakeLists.txt -@@ -22,7 +22,7 @@ option(WITH_skype "Enable Kopete Skype protocol" ON) - set(BUILD_JINGLE FALSE) - - if(OPENSSL_FOUND OR WIN32) -- if(EXPAT_FOUND AND LIBORTP_FOUND AND SRTP_FOUND AND JSONCPP_FOUND AND MEDIASTREAMER_FOUND AND WITH_libjingle) -+ if(EXPAT_FOUND AND ORTP_FOUND AND SRTP_FOUND AND JSONCPP_FOUND AND MEDIASTREAMER2_FOUND AND WITH_libjingle) - message(STATUS "Building jabber libjingle support") - set(BUILD_LIBJINGLE TRUE) - else() -diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt -index af7c1c3af..de7596615 100644 ---- a/protocols/jabber/libjingle/CMakeLists.txt -+++ b/protocols/jabber/libjingle/CMakeLists.txt -@@ -286,8 +286,8 @@ set ( call_LIBS - ${SRTP_LIBRARY} - ${JSONCPP_LIBRARY} - ${EXPAT_LIBRARY} -- ${MEDIASTREAMER_LIBRARIES} -- ${LIBORTP_LIBRARY} -+ ${MEDIASTREAMER2_LIBRARIES} -+ ${ORTP_LIBRARIES} - ${CMAKE_THREAD_LIBS_INIT} - ${CMAKE_DL_LIBS} - ) -diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -index bd11027e0..6f9e05a0a 100644 ---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -@@ -34,11 +34,9 @@ - #ifdef HAVE_LINPHONE - - // LinphoneMediaEngine is a Linphone implementation of MediaEngine --extern "C" { - #include <mediastreamer2/mediastream.h> - #include <mediastreamer2/mssndcard.h> - #include <mediastreamer2/msfilter.h> --} - - #include "talk/session/phone/linphonemediaengine.h" - -diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h -index 6105ab8cb..f5b5c3b14 100644 ---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h -+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h -@@ -35,9 +35,7 @@ - #include <string> - #include <vector> - --extern "C" { - #include <mediastreamer2/mediastream.h> --} - - #include "talk/base/scoped_ptr.h" - #include "talk/session/phone/codec.h" Copied: kopete/repos/extra-x86_64/kopete-mediastreamer-4.3.patch (from rev 433645, kopete/trunk/kopete-mediastreamer-4.3.patch) =================================================================== --- kopete-mediastreamer-4.3.patch (rev 0) +++ kopete-mediastreamer-4.3.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -0,0 +1,84 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 55556be4a..8e63c2cee 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -92,8 +92,8 @@ set_package_properties(Libgadu PROPERTIES DESCRIPTION "A library providing suppo + find_package(LibMeanwhile QUIET) + set_package_properties(LibMeanwhile PROPERTIES DESCRIPTION "A library for protocol support for connection to sametime servers" URL "http://meanwhile.sourceforge.net/" TYPE OPTIONAL PURPOSE "Required for the meanwhile protocol") + +-find_package(LiboRTP QUIET) +-set_package_properties(LiboRTP PROPERTIES DESCRIPTION "oRTP provides an API to send rtp packets" URL "http://www.linphone.org/index.php/eng/code_review/ortp/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") ++find_package(ortp QUIET) ++set_package_properties(ortp PROPERTIES DESCRIPTION "oRTP provides an API to send rtp packets" URL "http://www.linphone.org/index.php/eng/code_review/ortp/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") + + find_package(LibOTR QUIET) + set_package_properties(LibOTR PROPERTIES DESCRIPTION "Library to encrypt messages with off-the-record encryption" URL "http://www.cypherpunks.ca/otr/" TYPE OPTIONAL PURPOSE "Required for the OTR plugin") +@@ -107,8 +107,8 @@ set_package_properties(LibXml2 PROPERTIES DESCRIPTION "Libraries used to develop + find_package(LibXslt QUIET) + set_package_properties(LibXslt PROPERTIES DESCRIPTION "A library to transform XML files into other XML files" URL "http://www.xmlsoft.org/XSLT/" TYPE OPTIONAL PURPOSE "Required for the Webpresence plugin") + +-find_package(Mediastreamer QUIET) +-set_package_properties(Mediastreamer PROPERTIES DESCRIPTION "A streaming enginer specialized for voice/video telephony applications" URL "http://www.linphone.org/index.php/eng/code_review/mediastreamer2/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") ++find_package(Mediastreamer2 QUIET) ++set_package_properties(Mediastreamer2 PROPERTIES DESCRIPTION "A streaming enginer specialized for voice/video telephony applications" URL "http://www.linphone.org/index.php/eng/code_review/mediastreamer2/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") + + find_package(OpenSSL QUIET) + set_package_properties(OpenSSL PROPERTIES DESCRIPTION "OpenSSL implementation of SSL" URL "https://www.openssl.org/" TYPE OPTIONAL PURPOSE "Required for the Jabber protocol with libjingle support") +diff --git a/protocols/CMakeLists.txt b/protocols/CMakeLists.txt +index 89d36a4e4..5f13ff9d9 100644 +--- a/protocols/CMakeLists.txt ++++ b/protocols/CMakeLists.txt +@@ -22,7 +22,7 @@ option(WITH_skype "Enable Kopete Skype protocol" ON) + set(BUILD_JINGLE FALSE) + + if(OPENSSL_FOUND OR WIN32) +- if(EXPAT_FOUND AND LIBORTP_FOUND AND SRTP_FOUND AND JSONCPP_FOUND AND MEDIASTREAMER_FOUND AND WITH_libjingle) ++ if(EXPAT_FOUND AND ORTP_FOUND AND SRTP_FOUND AND JSONCPP_FOUND AND MEDIASTREAMER2_FOUND AND WITH_libjingle) + message(STATUS "Building jabber libjingle support") + set(BUILD_LIBJINGLE TRUE) + else() +diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt +index af7c1c3af..de7596615 100644 +--- a/protocols/jabber/libjingle/CMakeLists.txt ++++ b/protocols/jabber/libjingle/CMakeLists.txt +@@ -286,8 +286,8 @@ set ( call_LIBS + ${SRTP_LIBRARY} + ${JSONCPP_LIBRARY} + ${EXPAT_LIBRARY} +- ${MEDIASTREAMER_LIBRARIES} +- ${LIBORTP_LIBRARY} ++ ${MEDIASTREAMER2_LIBRARIES} ++ ${ORTP_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ${CMAKE_DL_LIBS} + ) +diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +index bd11027e0..6f9e05a0a 100644 +--- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc ++++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +@@ -34,11 +34,9 @@ + #ifdef HAVE_LINPHONE + + // LinphoneMediaEngine is a Linphone implementation of MediaEngine +-extern "C" { + #include <mediastreamer2/mediastream.h> + #include <mediastreamer2/mssndcard.h> + #include <mediastreamer2/msfilter.h> +-} + + #include "talk/session/phone/linphonemediaengine.h" + +diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h +index 6105ab8cb..f5b5c3b14 100644 +--- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h ++++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h +@@ -35,9 +35,7 @@ + #include <string> + #include <vector> + +-extern "C" { + #include <mediastreamer2/mediastream.h> +-} + + #include "talk/base/scoped_ptr.h" + #include "talk/session/phone/codec.h" Deleted: kopete-mediastreamer2.14.patch =================================================================== --- kopete-mediastreamer2.14.patch 2022-01-06 11:51:16 UTC (rev 433645) +++ kopete-mediastreamer2.14.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -1,281 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -34,6 +34,7 @@ - - find_package(KF5Contacts ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED) - find_package(KF5IdentityManagement ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED) -+find_package(Threads) - - include(KDEInstallDirs) - include(KDECompilerSettings NO_POLICY_SCOPE) -diff --git a/cmake/modules/FindLiboRTP.cmake b/cmake/modules/FindLiboRTP.cmake ---- a/cmake/modules/FindLiboRTP.cmake -+++ b/cmake/modules/FindLiboRTP.cmake -@@ -11,7 +11,7 @@ - - SET( LIBORTP_FOUND FALSE ) - --pkg_check_modules(ortp ortp) -+pkg_check_modules(ORTP ortp) - - FIND_PATH( LIBORTP_INCLUDE_DIR - ortp/ortp.h -@@ -40,7 +40,13 @@ - if ( run_result EQUAL 0 ) - # Version OK - SET( LIBORTP_FOUND TRUE ) -- MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY}" ) -+ MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY} ${ORTP_VERSION}" ) -+ IF (ORTP_VERSION VERSION_LESS 1.0.1) -+ SET(ORTP_LESS_1_0_1 TRUE) -+ ELSE (ORTP_VERSION VERSION_LESS 1.0.1) -+ SET(ORTP_LESS_1_0_1 FALSE) -+ ENDIF (ORTP_VERSION VERSION_LESS 1.0.1) -+ - endif ( run_result EQUAL 0 ) - endif( compile_result ) - ENDIF( LIBORTP_INCLUDE_DIR AND LIBORTP_LIBRARY ) -diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake ---- a/cmake/modules/FindMediastreamer.cmake -+++ b/cmake/modules/FindMediastreamer.cmake -@@ -20,17 +20,25 @@ - - IF (MEDIASTREAMER_FOUND) - IF (NOT MEDIASTREAMER_FIND_QUIETLY) -+ - MESSAGE(STATUS "Found Mediastreamer: ${MEDIASTREAMER_LIBRARIES} (version: ${MEDIASTREAMER_VERSION})") -+ -+ SET(MEDIASTREAMER_LESS_2_9 FALSE) -+ SET(MEDIASTREAMER_LESS_2_11 FALSE) -+ SET(MEDIASTREAMER_LESS_2_14 FALSE) -+ - IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) - SET(MEDIASTREAMER_LESS_2_9 TRUE) -- SET(MEDIASTREAMER_LESS_2_11 TRUE) -- ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) -- SET(MEDIASTREAMER_LESS_2_9 FALSE) -- SET(MEDIASTREAMER_LESS_2_11 TRUE) -- ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9) -- SET(MEDIASTREAMER_LESS_2_9 FALSE) -- SET(MEDIASTREAMER_LESS_2_11 FALSE) - ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) -+ -+ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) -+ SET(MEDIASTREAMER_LESS_2_11 TRUE) -+ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) -+ -+ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) -+ SET(MEDIASTREAMER_LESS_2_14 TRUE) -+ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) -+ - ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY) - ELSE (MEDIASTREAMER_FOUND) - IF (MEDIASTREAMER_FIND_REQUIRED) -diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt ---- a/protocols/jabber/libjingle/CMakeLists.txt -+++ b/protocols/jabber/libjingle/CMakeLists.txt -@@ -51,6 +51,10 @@ - add_definitions ( -DMEDIASTREAMER_LESS_2_11 ) - endif ( MEDIASTREAMER_LESS_2_11 ) - -+if ( MEDIASTREAMER_LESS_2_14 ) -+ add_definitions ( -DMEDIASTREAMER_LESS_2_14 ) -+endif ( MEDIASTREAMER_LESS_2_14 ) -+ - if ( CMAKE_BUILD_TYPE STREQUAL "Debug" ) - add_definitions ( -D_DEBUG ) - endif ( CMAKE_BUILD_TYPE STREQUAL "Debug" ) -@@ -284,6 +288,7 @@ - ${EXPAT_LIBRARY} - ${MEDIASTREAMER_LIBRARIES} - ${LIBORTP_LIBRARY} -+ ${CMAKE_THREAD_LIBS_INIT} - ${CMAKE_DL_LIBS} - ) - -diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h ---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h -+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h -@@ -53,7 +53,11 @@ - class LinphoneMediaEngine : public MediaEngineInterface { - public: - LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav); -+#ifdef MEDIASTREAMER_LESS_2_14 - virtual ~LinphoneMediaEngine() {} -+#else -+ ~LinphoneMediaEngine(); -+#endif - - // Implement pure virtual methods of MediaEngine. - virtual bool Init() { return true; } -@@ -97,6 +101,10 @@ - bool have_speex; - bool have_gsm; - -+#ifndef MEDIASTREAMER_LESS_2_14 -+ MSFactory *factory; -+#endif -+ - private: - std::vector<AudioCodec> voice_codecs_; - std::vector<VideoCodec> video_codecs_; -@@ -110,7 +118,11 @@ - class LinphoneVoiceChannel : public VoiceMediaChannel { - public: - LinphoneVoiceChannel(LinphoneMediaEngine *eng); -+#ifdef MEDIASTREAMER_LESS_2_14 - virtual ~LinphoneVoiceChannel(); -+#else -+ ~LinphoneVoiceChannel(); -+#endif - - // Implement pure virtual methods of VoiceMediaChannel. - virtual bool SetRecvCodecs(const std::vector<AudioCodec>& codecs); -diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc ---- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -+++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc -@@ -60,18 +60,34 @@ - /////////////////////////////////////////////////////////////////////////// - LinphoneMediaEngine::LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav) : ring_wav_(ringWav), call_wav_(callWav) { - ortp_init(); -+#ifdef MEDIASTREAMER_LESS_2_14 - ms_init(); -+#else -+ factory = ms_factory_new(); -+ ms_factory_init_voip(factory); -+ ms_factory_init_plugins(factory); -+#endif - - #ifndef WIN32 - char * path = strdup(MSILBC_LIBRARY); - char * dirc = dirname(path); -+#ifdef MEDIASTREAMER_LESS_2_14 - ms_load_plugins(dirc); -+#else -+ ms_factory_load_plugins(factory, dirc); -+#endif - free(path); - #endif - -+#ifdef MEDIASTREAMER_LESS_2_14 - have_ilbc = ms_filter_codec_supported("iLBC"); - have_speex = ms_filter_codec_supported("speex"); - have_gsm = ms_filter_codec_supported("gsm"); -+#else -+ have_ilbc = ms_factory_codec_supported(factory, "iLBC"); -+ have_speex = ms_factory_codec_supported(factory, "speex"); -+ have_gsm = ms_factory_codec_supported(factory, "gsm"); -+#endif - - if (have_speex) { - voice_codecs_.push_back(AudioCodec(110, payload_type_speex_wb.mime_type, payload_type_speex_wb.clock_rate, 0, 1, 8)); -@@ -88,6 +104,14 @@ - voice_codecs_.push_back(AudioCodec(101, payload_type_telephone_event.mime_type, payload_type_telephone_event.clock_rate, 0, 1, 1)); - } - -+#ifndef MEDIASTREAMER_LESS_2_14 -+LinphoneMediaEngine::~LinphoneMediaEngine() { -+ ms_factory_uninit_plugins(factory); -+ ms_factory_uninit_voip(factory); -+ ms_factory_destroy(factory); -+} -+#endif -+ - void LinphoneMediaEngine::Terminate() { - fflush(stdout); - } -@@ -149,15 +173,25 @@ - playport2 = PORT_UNUSED; - - #ifdef _DEBUG -+#ifdef MEDIASTREAMER_LESS_2_14 - ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); - #else -+ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); -+#endif -+#else -+#ifdef MEDIASTREAMER_LESS_2_14 - ortp_set_log_level_mask(ORTP_FATAL); -+#else -+ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_FATAL); -+#endif - #endif - - #ifdef MEDIASTREAMER_LESS_2_9 - audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */ --#else -+#elif MEDIASTREAMER_LESS_2_14 - audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */ -+#else -+ audio_stream_ = audio_stream_new(engine_->factory, -1, -1, 0); /* -1 means that function will choose some free port */ - #endif - - } -@@ -272,11 +306,22 @@ - { - StopRing(); - -+#ifdef MEDIASTREAMER_LESS_2_14 -+ MSSndCardManager *snd_manager = ms_snd_card_manager_get(); - MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(ms_snd_card_manager_get()); -+#else -+ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory); -+ MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(snd_manager); -+#endif -+ - if (!playcard) - return false; - -+#ifdef MEDIASTREAMER_LESS_2_14 - MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(ms_snd_card_manager_get()); -+#else -+ MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(snd_manager); -+#endif - if (!captcard) - return false; - -@@ -333,8 +378,18 @@ - - void LinphoneVoiceChannel::StartRing(bool bIncomingCall) - { -+#ifdef MEDIASTREAMER_LESS_2_14 -+ MSSndCardManager *snd_manager = ms_snd_card_manager_get(); -+#else -+ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory); -+#endif -+ - MSSndCard *sndcard = NULL; -+#ifdef MEDIASTREAMER_LESS_2_14 - sndcard=ms_snd_card_manager_get_default_card(ms_snd_card_manager_get()); -+#else -+ sndcard=ms_snd_card_manager_get_default_card(snd_manager); -+#endif - if (sndcard) - { - if (bIncomingCall) -@@ -342,7 +397,11 @@ - if (engine_->GetRingWav().size() > 0) - { - LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n"; -+#ifdef MEDIASTREAMER_LESS_2_14 - ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard); -+#else -+ ring_stream_ = ring_start (engine_->factory, engine_->GetRingWav().c_str(), 1, sndcard); -+#endif - } - } - else -@@ -350,7 +409,11 @@ - if (engine_->GetCallWav().size() > 0) - { - LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n"; -+#ifdef MEDIASTREAMER_LESS_2_14 - ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard); -+#else -+ ring_stream_ = ring_start (engine_->factory, engine_->GetCallWav().c_str(), 1, sndcard); -+#endif - } - } - } - Copied: kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch (from rev 433645, kopete/trunk/kopete-mediastreamer2.14.patch) =================================================================== --- kopete-mediastreamer2.14.patch (rev 0) +++ kopete-mediastreamer2.14.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -0,0 +1,281 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -34,6 +34,7 @@ + + find_package(KF5Contacts ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED) + find_package(KF5IdentityManagement ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED) ++find_package(Threads) + + include(KDEInstallDirs) + include(KDECompilerSettings NO_POLICY_SCOPE) +diff --git a/cmake/modules/FindLiboRTP.cmake b/cmake/modules/FindLiboRTP.cmake +--- a/cmake/modules/FindLiboRTP.cmake ++++ b/cmake/modules/FindLiboRTP.cmake +@@ -11,7 +11,7 @@ + + SET( LIBORTP_FOUND FALSE ) + +-pkg_check_modules(ortp ortp) ++pkg_check_modules(ORTP ortp) + + FIND_PATH( LIBORTP_INCLUDE_DIR + ortp/ortp.h +@@ -40,7 +40,13 @@ + if ( run_result EQUAL 0 ) + # Version OK + SET( LIBORTP_FOUND TRUE ) +- MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY}" ) ++ MESSAGE( STATUS "Found libortp: ${LIBORTP_LIBRARY} ${ORTP_VERSION}" ) ++ IF (ORTP_VERSION VERSION_LESS 1.0.1) ++ SET(ORTP_LESS_1_0_1 TRUE) ++ ELSE (ORTP_VERSION VERSION_LESS 1.0.1) ++ SET(ORTP_LESS_1_0_1 FALSE) ++ ENDIF (ORTP_VERSION VERSION_LESS 1.0.1) ++ + endif ( run_result EQUAL 0 ) + endif( compile_result ) + ENDIF( LIBORTP_INCLUDE_DIR AND LIBORTP_LIBRARY ) +diff --git a/cmake/modules/FindMediastreamer.cmake b/cmake/modules/FindMediastreamer.cmake +--- a/cmake/modules/FindMediastreamer.cmake ++++ b/cmake/modules/FindMediastreamer.cmake +@@ -20,17 +20,25 @@ + + IF (MEDIASTREAMER_FOUND) + IF (NOT MEDIASTREAMER_FIND_QUIETLY) ++ + MESSAGE(STATUS "Found Mediastreamer: ${MEDIASTREAMER_LIBRARIES} (version: ${MEDIASTREAMER_VERSION})") ++ ++ SET(MEDIASTREAMER_LESS_2_9 FALSE) ++ SET(MEDIASTREAMER_LESS_2_11 FALSE) ++ SET(MEDIASTREAMER_LESS_2_14 FALSE) ++ + IF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) + SET(MEDIASTREAMER_LESS_2_9 TRUE) +- SET(MEDIASTREAMER_LESS_2_11 TRUE) +- ELSEIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) +- SET(MEDIASTREAMER_LESS_2_9 FALSE) +- SET(MEDIASTREAMER_LESS_2_11 TRUE) +- ELSE (MEDIASTREAMER_VERSION VERSION_LESS 2.9) +- SET(MEDIASTREAMER_LESS_2_9 FALSE) +- SET(MEDIASTREAMER_LESS_2_11 FALSE) + ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.9) ++ ++ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) ++ SET(MEDIASTREAMER_LESS_2_11 TRUE) ++ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.11) ++ ++ IF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) ++ SET(MEDIASTREAMER_LESS_2_14 TRUE) ++ ENDIF (MEDIASTREAMER_VERSION VERSION_LESS 2.14) ++ + ENDIF (NOT MEDIASTREAMER_FIND_QUIETLY) + ELSE (MEDIASTREAMER_FOUND) + IF (MEDIASTREAMER_FIND_REQUIRED) +diff --git a/protocols/jabber/libjingle/CMakeLists.txt b/protocols/jabber/libjingle/CMakeLists.txt +--- a/protocols/jabber/libjingle/CMakeLists.txt ++++ b/protocols/jabber/libjingle/CMakeLists.txt +@@ -51,6 +51,10 @@ + add_definitions ( -DMEDIASTREAMER_LESS_2_11 ) + endif ( MEDIASTREAMER_LESS_2_11 ) + ++if ( MEDIASTREAMER_LESS_2_14 ) ++ add_definitions ( -DMEDIASTREAMER_LESS_2_14 ) ++endif ( MEDIASTREAMER_LESS_2_14 ) ++ + if ( CMAKE_BUILD_TYPE STREQUAL "Debug" ) + add_definitions ( -D_DEBUG ) + endif ( CMAKE_BUILD_TYPE STREQUAL "Debug" ) +@@ -284,6 +288,7 @@ + ${EXPAT_LIBRARY} + ${MEDIASTREAMER_LIBRARIES} + ${LIBORTP_LIBRARY} ++ ${CMAKE_THREAD_LIBS_INIT} + ${CMAKE_DL_LIBS} + ) + +diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h +--- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h ++++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.h +@@ -53,7 +53,11 @@ + class LinphoneMediaEngine : public MediaEngineInterface { + public: + LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav); ++#ifdef MEDIASTREAMER_LESS_2_14 + virtual ~LinphoneMediaEngine() {} ++#else ++ ~LinphoneMediaEngine(); ++#endif + + // Implement pure virtual methods of MediaEngine. + virtual bool Init() { return true; } +@@ -97,6 +101,10 @@ + bool have_speex; + bool have_gsm; + ++#ifndef MEDIASTREAMER_LESS_2_14 ++ MSFactory *factory; ++#endif ++ + private: + std::vector<AudioCodec> voice_codecs_; + std::vector<VideoCodec> video_codecs_; +@@ -110,7 +118,11 @@ + class LinphoneVoiceChannel : public VoiceMediaChannel { + public: + LinphoneVoiceChannel(LinphoneMediaEngine *eng); ++#ifdef MEDIASTREAMER_LESS_2_14 + virtual ~LinphoneVoiceChannel(); ++#else ++ ~LinphoneVoiceChannel(); ++#endif + + // Implement pure virtual methods of VoiceMediaChannel. + virtual bool SetRecvCodecs(const std::vector<AudioCodec>& codecs); +diff --git a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +--- a/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc ++++ b/protocols/jabber/libjingle/talk/session/phone/linphonemediaengine.cc +@@ -60,18 +60,34 @@ + /////////////////////////////////////////////////////////////////////////// + LinphoneMediaEngine::LinphoneMediaEngine(const std::string& ringWav, const std::string& callWav) : ring_wav_(ringWav), call_wav_(callWav) { + ortp_init(); ++#ifdef MEDIASTREAMER_LESS_2_14 + ms_init(); ++#else ++ factory = ms_factory_new(); ++ ms_factory_init_voip(factory); ++ ms_factory_init_plugins(factory); ++#endif + + #ifndef WIN32 + char * path = strdup(MSILBC_LIBRARY); + char * dirc = dirname(path); ++#ifdef MEDIASTREAMER_LESS_2_14 + ms_load_plugins(dirc); ++#else ++ ms_factory_load_plugins(factory, dirc); ++#endif + free(path); + #endif + ++#ifdef MEDIASTREAMER_LESS_2_14 + have_ilbc = ms_filter_codec_supported("iLBC"); + have_speex = ms_filter_codec_supported("speex"); + have_gsm = ms_filter_codec_supported("gsm"); ++#else ++ have_ilbc = ms_factory_codec_supported(factory, "iLBC"); ++ have_speex = ms_factory_codec_supported(factory, "speex"); ++ have_gsm = ms_factory_codec_supported(factory, "gsm"); ++#endif + + if (have_speex) { + voice_codecs_.push_back(AudioCodec(110, payload_type_speex_wb.mime_type, payload_type_speex_wb.clock_rate, 0, 1, 8)); +@@ -88,6 +104,14 @@ + voice_codecs_.push_back(AudioCodec(101, payload_type_telephone_event.mime_type, payload_type_telephone_event.clock_rate, 0, 1, 1)); + } + ++#ifndef MEDIASTREAMER_LESS_2_14 ++LinphoneMediaEngine::~LinphoneMediaEngine() { ++ ms_factory_uninit_plugins(factory); ++ ms_factory_uninit_voip(factory); ++ ms_factory_destroy(factory); ++} ++#endif ++ + void LinphoneMediaEngine::Terminate() { + fflush(stdout); + } +@@ -149,15 +173,25 @@ + playport2 = PORT_UNUSED; + + #ifdef _DEBUG ++#ifdef MEDIASTREAMER_LESS_2_14 + ortp_set_log_level_mask(ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); + #else ++ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_DEBUG|ORTP_MESSAGE|ORTP_WARNING|ORTP_ERROR|ORTP_FATAL); ++#endif ++#else ++#ifdef MEDIASTREAMER_LESS_2_14 + ortp_set_log_level_mask(ORTP_FATAL); ++#else ++ ortp_set_log_level_mask(ORTP_LOG_DOMAIN, ORTP_FATAL); ++#endif + #endif + + #ifdef MEDIASTREAMER_LESS_2_9 + audio_stream_ = audio_stream_new(-1, 0); /* -1 means that function will choose some free port */ +-#else ++#elif MEDIASTREAMER_LESS_2_14 + audio_stream_ = audio_stream_new(-1, -1, 0); /* -1 means that function will choose some free port */ ++#else ++ audio_stream_ = audio_stream_new(engine_->factory, -1, -1, 0); /* -1 means that function will choose some free port */ + #endif + + } +@@ -272,11 +306,22 @@ + { + StopRing(); + ++#ifdef MEDIASTREAMER_LESS_2_14 ++ MSSndCardManager *snd_manager = ms_snd_card_manager_get(); + MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(ms_snd_card_manager_get()); ++#else ++ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory); ++ MSSndCard *playcard = ms_snd_card_manager_get_default_playback_card(snd_manager); ++#endif ++ + if (!playcard) + return false; + ++#ifdef MEDIASTREAMER_LESS_2_14 + MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(ms_snd_card_manager_get()); ++#else ++ MSSndCard *captcard = ms_snd_card_manager_get_default_capture_card(snd_manager); ++#endif + if (!captcard) + return false; + +@@ -333,8 +378,18 @@ + + void LinphoneVoiceChannel::StartRing(bool bIncomingCall) + { ++#ifdef MEDIASTREAMER_LESS_2_14 ++ MSSndCardManager *snd_manager = ms_snd_card_manager_get(); ++#else ++ MSSndCardManager *snd_manager = ms_factory_get_snd_card_manager(engine_->factory); ++#endif ++ + MSSndCard *sndcard = NULL; ++#ifdef MEDIASTREAMER_LESS_2_14 + sndcard=ms_snd_card_manager_get_default_card(ms_snd_card_manager_get()); ++#else ++ sndcard=ms_snd_card_manager_get_default_card(snd_manager); ++#endif + if (sndcard) + { + if (bIncomingCall) +@@ -342,7 +397,11 @@ + if (engine_->GetRingWav().size() > 0) + { + LOG(LS_VERBOSE) << "incoming ring. sound file: " << engine_->GetRingWav().c_str() << "\n"; ++#ifdef MEDIASTREAMER_LESS_2_14 + ring_stream_ = ring_start (engine_->GetRingWav().c_str(), 1, sndcard); ++#else ++ ring_stream_ = ring_start (engine_->factory, engine_->GetRingWav().c_str(), 1, sndcard); ++#endif + } + } + else +@@ -350,7 +409,11 @@ + if (engine_->GetCallWav().size() > 0) + { + LOG(LS_VERBOSE) << "outgoing ring. sound file: " << engine_->GetCallWav().c_str() << "\n"; ++#ifdef MEDIASTREAMER_LESS_2_14 + ring_stream_ = ring_start (engine_->GetCallWav().c_str(), 1, sndcard); ++#else ++ ring_stream_ = ring_start (engine_->factory, engine_->GetCallWav().c_str(), 1, sndcard); ++#endif + } + } + } + Deleted: kopete-openssl-1.1.patch =================================================================== --- kopete-openssl-1.1.patch 2022-01-06 11:51:16 UTC (rev 433645) +++ kopete-openssl-1.1.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -1,307 +0,0 @@ -diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc ---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc 2017-09-30 12:08:16.000000000 +0200 -+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc 2018-01-05 22:49:27.805070408 +0100 -@@ -84,6 +84,7 @@ - static int socket_new(BIO* h); - static int socket_free(BIO* data); - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static BIO_METHOD methods_socket = { - BIO_TYPE_BIO, - "socket", -@@ -98,16 +99,40 @@ - }; - - BIO_METHOD* BIO_s_socket2() { return(&methods_socket); } -+#else -+static BIO_METHOD *methods_socket = NULL; -+ -+static const BIO_METHOD * BIO_s_socket2(void) { -+ if (methods_socket == NULL) { -+ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket"); -+ if (methods_socket == NULL || -+ BIO_meth_set_write (methods_socket, socket_write) || -+ BIO_meth_set_read (methods_socket, socket_read) || -+ BIO_meth_set_puts (methods_socket, socket_puts) || -+ BIO_meth_set_gets (methods_socket, 0) || -+ BIO_meth_set_ctrl (methods_socket, socket_ctrl) || -+ BIO_meth_set_create (methods_socket, socket_new) || -+ BIO_meth_set_destroy (methods_socket, socket_free)) -+ return NULL; -+ } -+ return methods_socket; -+} -+#endif - - BIO* BIO_new_socket(talk_base::AsyncSocket* socket) { -+ const BIO_METHOD *socket2 = BIO_s_socket2(); -+ if (socket2 == NULL) { -+ return NULL; -+ } -- BIO* ret = BIO_new(BIO_s_socket2()); -+ BIO* ret = BIO_new(socket2); - if (ret == NULL) { - return NULL; - } -- ret->ptr = socket; -+ BIO_set_data(ret, socket); - return ret; - } - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static int socket_new(BIO* b) { - b->shutdown = 0; - b->init = 1; -@@ -115,6 +136,14 @@ - b->ptr = 0; - return 1; - } -+#else -+static int socket_new(BIO* b) { -+ BIO_set_shutdown(b, 0); -+ BIO_set_init(b, 1); -+ BIO_set_data(b, 0); -+ return 1; -+} -+#endif - - static int socket_free(BIO* b) { - if (b == NULL) -@@ -125,13 +154,11 @@ - static int socket_read(BIO* b, char* out, int outl) { - if (!out) - return -1; -- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); -+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - int result = socket->Recv(out, outl); - if (result > 0) { - return result; -- } else if (result == 0) { -- b->num = 1; - } else if (socket->IsBlocking()) { - BIO_set_retry_read(b); - } -@@ -141,7 +168,7 @@ - static int socket_write(BIO* b, const char* in, int inl) { - if (!in) - return -1; -- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); -+ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - int result = socket->Send(in, inl); - if (result > 0) { -@@ -164,7 +191,6 @@ - case BIO_CTRL_RESET: - return 0; - case BIO_CTRL_EOF: -- return b->num; - case BIO_CTRL_WPENDING: - case BIO_CTRL_PENDING: - return 0; -@@ -696,7 +722,9 @@ - // We assign this to a local variable, instead of passing the address - // directly to ASN1_item_d2i. - // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html. -- unsigned char* ext_value_data = extension->value->data; -+ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension); -+ unsigned char* ext_value_data = extension_data->data; -+ long length = extension_data->length; - - #if OPENSSL_VERSION_NUMBER >= 0x0090800fL - const unsigned char **ext_value_data_ptr = -@@ -707,10 +735,10 @@ - - if (meth->it) { - ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr, -- extension->value->length, -+ length, - ASN1_ITEM_ptr(meth->it)); - } else { -- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length); -+ ext_str = meth->d2i(NULL, ext_value_data_ptr, length); - } - - STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL); -diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc ---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc 2017-09-30 12:08:16.000000000 +0200 -+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc 2018-01-05 22:49:27.869069361 +0100 -@@ -32,16 +32,16 @@ - namespace talk_base { - - OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) { -- EVP_MD_CTX_init(&ctx_); -+ EVP_MD_CTX_init(ctx_); - if (GetDigestEVP(algorithm, &md_)) { -- EVP_DigestInit_ex(&ctx_, md_, NULL); -+ EVP_DigestInit_ex(ctx_, md_, NULL); - } else { - md_ = NULL; - } - } - - OpenSSLDigest::~OpenSSLDigest() { -- EVP_MD_CTX_cleanup(&ctx_); -+ EVP_MD_CTX_destroy(ctx_); - } - - size_t OpenSSLDigest::Size() const { -@@ -55,7 +55,7 @@ - if (!md_) { - return; - } -- EVP_DigestUpdate(&ctx_, buf, len); -+ EVP_DigestUpdate(ctx_, buf, len); - } - - size_t OpenSSLDigest::Finish(void* buf, size_t len) { -@@ -63,8 +63,8 @@ - return 0; - } - unsigned int md_len; -- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len); -- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s -+ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len); -+ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s - ASSERT(md_len == Size()); - return md_len; - } -diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h ---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h 2017-09-30 12:08:16.000000000 +0200 -+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h 2018-01-05 22:49:27.869069361 +0100 -@@ -55,7 +55,7 @@ - size_t* len); - - private: -- EVP_MD_CTX ctx_; -+ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create(); - const EVP_MD* md_; - }; - -diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc ---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2017-09-30 12:08:16.000000000 +0200 -+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2018-01-05 22:49:27.867069394 +0100 -@@ -169,7 +169,12 @@ - } - - void OpenSSLKeyPair::AddReference() { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY); -+#else -+ EVP_PKEY_up_ref(pkey_); -+#endif -+ - } - - #ifdef _DEBUG -@@ -275,7 +280,11 @@ - } - - void OpenSSLCertificate::AddReference() { -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509); -+#else -+ X509_up_ref(x509_); -+#endif - } - - OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) { -diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc ---- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2017-09-30 12:08:16.000000000 +0200 -+++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2018-01-05 22:49:27.868069378 +0100 -@@ -87,6 +87,7 @@ - static int stream_new(BIO* h); - static int stream_free(BIO* data); - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static BIO_METHOD methods_stream = { - BIO_TYPE_BIO, - "stream", -@@ -101,17 +102,37 @@ - }; - - static BIO_METHOD* BIO_s_stream() { return(&methods_stream); } -+#else -+static BIO_METHOD *methods_stream = NULL; -+ -+static const BIO_METHOD * BIO_s_stream(void) { -+ if (methods_stream == NULL) { -+ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream"); -+ if (methods_stream == NULL || -+ BIO_meth_set_write (methods_stream, stream_write) || -+ BIO_meth_set_read (methods_stream, stream_read) || -+ BIO_meth_set_puts (methods_stream, stream_puts) || -+ BIO_meth_set_gets (methods_stream, 0) || -+ BIO_meth_set_ctrl (methods_stream, stream_ctrl) || -+ BIO_meth_set_create (methods_stream, stream_new) || -+ BIO_meth_set_destroy (methods_stream, stream_free)) -+ return NULL; -+ } -+ return methods_stream; -+} -+#endif - - static BIO* BIO_new_stream(StreamInterface* stream) { - BIO* ret = BIO_new(BIO_s_stream()); - if (ret == NULL) - return NULL; -- ret->ptr = stream; -+ BIO_set_data(ret, stream); - return ret; - } - - // bio methods return 1 (or at least non-zero) on success and 0 on failure. - -+#if OPENSSL_VERSION_NUMBER < 0x10100000L - static int stream_new(BIO* b) { - b->shutdown = 0; - b->init = 1; -@@ -119,6 +140,14 @@ - b->ptr = 0; - return 1; - } -+#else -+static int stream_new(BIO* b) { -+ BIO_set_shutdown(b, 0); -+ BIO_set_init(b, 1); -+ BIO_set_data(b, 0); -+ return 1; -+} -+#endif - - static int stream_free(BIO* b) { - if (b == NULL) -@@ -129,15 +158,13 @@ - static int stream_read(BIO* b, char* out, int outl) { - if (!out) - return -1; -- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); -+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - size_t read; - int error; - StreamResult result = stream->Read(out, outl, &read, &error); - if (result == SR_SUCCESS) { - return read; -- } else if (result == SR_EOS) { -- b->num = 1; - } else if (result == SR_BLOCK) { - BIO_set_retry_read(b); - } -@@ -147,7 +174,7 @@ - static int stream_write(BIO* b, const char* in, int inl) { - if (!in) - return -1; -- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); -+ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); - BIO_clear_retry_flags(b); - size_t written; - int error; -@@ -172,7 +199,6 @@ - case BIO_CTRL_RESET: - return 0; - case BIO_CTRL_EOF: -- return b->num; - case BIO_CTRL_WPENDING: - case BIO_CTRL_PENDING: - return 0; Copied: kopete/repos/extra-x86_64/kopete-openssl-1.1.patch (from rev 433645, kopete/trunk/kopete-openssl-1.1.patch) =================================================================== --- kopete-openssl-1.1.patch (rev 0) +++ kopete-openssl-1.1.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -0,0 +1,307 @@ +diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc +--- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssladapter.cc 2017-09-30 12:08:16.000000000 +0200 ++++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssladapter.cc 2018-01-05 22:49:27.805070408 +0100 +@@ -84,6 +84,7 @@ + static int socket_new(BIO* h); + static int socket_free(BIO* data); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static BIO_METHOD methods_socket = { + BIO_TYPE_BIO, + "socket", +@@ -98,16 +99,40 @@ + }; + + BIO_METHOD* BIO_s_socket2() { return(&methods_socket); } ++#else ++static BIO_METHOD *methods_socket = NULL; ++ ++static const BIO_METHOD * BIO_s_socket2(void) { ++ if (methods_socket == NULL) { ++ methods_socket = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "socket"); ++ if (methods_socket == NULL || ++ BIO_meth_set_write (methods_socket, socket_write) || ++ BIO_meth_set_read (methods_socket, socket_read) || ++ BIO_meth_set_puts (methods_socket, socket_puts) || ++ BIO_meth_set_gets (methods_socket, 0) || ++ BIO_meth_set_ctrl (methods_socket, socket_ctrl) || ++ BIO_meth_set_create (methods_socket, socket_new) || ++ BIO_meth_set_destroy (methods_socket, socket_free)) ++ return NULL; ++ } ++ return methods_socket; ++} ++#endif + + BIO* BIO_new_socket(talk_base::AsyncSocket* socket) { ++ const BIO_METHOD *socket2 = BIO_s_socket2(); ++ if (socket2 == NULL) { ++ return NULL; ++ } +- BIO* ret = BIO_new(BIO_s_socket2()); ++ BIO* ret = BIO_new(socket2); + if (ret == NULL) { + return NULL; + } +- ret->ptr = socket; ++ BIO_set_data(ret, socket); + return ret; + } + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static int socket_new(BIO* b) { + b->shutdown = 0; + b->init = 1; +@@ -115,6 +136,14 @@ + b->ptr = 0; + return 1; + } ++#else ++static int socket_new(BIO* b) { ++ BIO_set_shutdown(b, 0); ++ BIO_set_init(b, 1); ++ BIO_set_data(b, 0); ++ return 1; ++} ++#endif + + static int socket_free(BIO* b) { + if (b == NULL) +@@ -125,13 +154,11 @@ + static int socket_read(BIO* b, char* out, int outl) { + if (!out) + return -1; +- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); ++ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + int result = socket->Recv(out, outl); + if (result > 0) { + return result; +- } else if (result == 0) { +- b->num = 1; + } else if (socket->IsBlocking()) { + BIO_set_retry_read(b); + } +@@ -141,7 +168,7 @@ + static int socket_write(BIO* b, const char* in, int inl) { + if (!in) + return -1; +- talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(b->ptr); ++ talk_base::AsyncSocket* socket = static_cast<talk_base::AsyncSocket*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + int result = socket->Send(in, inl); + if (result > 0) { +@@ -164,7 +191,6 @@ + case BIO_CTRL_RESET: + return 0; + case BIO_CTRL_EOF: +- return b->num; + case BIO_CTRL_WPENDING: + case BIO_CTRL_PENDING: + return 0; +@@ -696,7 +722,9 @@ + // We assign this to a local variable, instead of passing the address + // directly to ASN1_item_d2i. + // See http://readlist.com/lists/openssl.org/openssl-users/0/4761.html. +- unsigned char* ext_value_data = extension->value->data; ++ ASN1_OCTET_STRING *extension_data = X509_EXTENSION_get_data(extension); ++ unsigned char* ext_value_data = extension_data->data; ++ long length = extension_data->length; + + #if OPENSSL_VERSION_NUMBER >= 0x0090800fL + const unsigned char **ext_value_data_ptr = +@@ -707,10 +735,10 @@ + + if (meth->it) { + ext_str = ASN1_item_d2i(NULL, ext_value_data_ptr, +- extension->value->length, ++ length, + ASN1_ITEM_ptr(meth->it)); + } else { +- ext_str = meth->d2i(NULL, ext_value_data_ptr, extension->value->length); ++ ext_str = meth->d2i(NULL, ext_value_data_ptr, length); + } + + STACK_OF(CONF_VALUE)* value = meth->i2v(meth, ext_str, NULL); +diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc +--- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.cc 2017-09-30 12:08:16.000000000 +0200 ++++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.cc 2018-01-05 22:49:27.869069361 +0100 +@@ -32,16 +32,16 @@ + namespace talk_base { + + OpenSSLDigest::OpenSSLDigest(const std::string& algorithm) { +- EVP_MD_CTX_init(&ctx_); ++ EVP_MD_CTX_init(ctx_); + if (GetDigestEVP(algorithm, &md_)) { +- EVP_DigestInit_ex(&ctx_, md_, NULL); ++ EVP_DigestInit_ex(ctx_, md_, NULL); + } else { + md_ = NULL; + } + } + + OpenSSLDigest::~OpenSSLDigest() { +- EVP_MD_CTX_cleanup(&ctx_); ++ EVP_MD_CTX_destroy(ctx_); + } + + size_t OpenSSLDigest::Size() const { +@@ -55,7 +55,7 @@ + if (!md_) { + return; + } +- EVP_DigestUpdate(&ctx_, buf, len); ++ EVP_DigestUpdate(ctx_, buf, len); + } + + size_t OpenSSLDigest::Finish(void* buf, size_t len) { +@@ -63,8 +63,8 @@ + return 0; + } + unsigned int md_len; +- EVP_DigestFinal_ex(&ctx_, static_cast<unsigned char*>(buf), &md_len); +- EVP_DigestInit_ex(&ctx_, md_, NULL); // prepare for future Update()s ++ EVP_DigestFinal_ex(ctx_, static_cast<unsigned char*>(buf), &md_len); ++ EVP_DigestInit_ex(ctx_, md_, NULL); // prepare for future Update()s + ASSERT(md_len == Size()); + return md_len; + } +diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h +--- kopete-17.08.3/protocols/jabber/libjingle/talk/base/openssldigest.h 2017-09-30 12:08:16.000000000 +0200 ++++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/openssldigest.h 2018-01-05 22:49:27.869069361 +0100 +@@ -55,7 +55,7 @@ + size_t* len); + + private: +- EVP_MD_CTX ctx_; ++ EVP_MD_CTX* ctx_ = EVP_MD_CTX_create(); + const EVP_MD* md_; + }; + +diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc +--- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2017-09-30 12:08:16.000000000 +0200 ++++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslidentity.cc 2018-01-05 22:49:27.867069394 +0100 +@@ -169,7 +169,12 @@ + } + + void OpenSSLKeyPair::AddReference() { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_add(&pkey_->references, 1, CRYPTO_LOCK_EVP_PKEY); ++#else ++ EVP_PKEY_up_ref(pkey_); ++#endif ++ + } + + #ifdef _DEBUG +@@ -275,7 +280,11 @@ + } + + void OpenSSLCertificate::AddReference() { ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + CRYPTO_add(&x509_->references, 1, CRYPTO_LOCK_X509); ++#else ++ X509_up_ref(x509_); ++#endif + } + + OpenSSLIdentity* OpenSSLIdentity::Generate(const std::string& common_name) { +diff -ur kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc +--- kopete-17.08.3/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2017-09-30 12:08:16.000000000 +0200 ++++ kopete-17.08.3-openssl-1.1/protocols/jabber/libjingle/talk/base/opensslstreamadapter.cc 2018-01-05 22:49:27.868069378 +0100 +@@ -87,6 +87,7 @@ + static int stream_new(BIO* h); + static int stream_free(BIO* data); + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static BIO_METHOD methods_stream = { + BIO_TYPE_BIO, + "stream", +@@ -101,17 +102,37 @@ + }; + + static BIO_METHOD* BIO_s_stream() { return(&methods_stream); } ++#else ++static BIO_METHOD *methods_stream = NULL; ++ ++static const BIO_METHOD * BIO_s_stream(void) { ++ if (methods_stream == NULL) { ++ methods_stream = BIO_meth_new (BIO_TYPE_BIO | BIO_get_new_index (), "stream"); ++ if (methods_stream == NULL || ++ BIO_meth_set_write (methods_stream, stream_write) || ++ BIO_meth_set_read (methods_stream, stream_read) || ++ BIO_meth_set_puts (methods_stream, stream_puts) || ++ BIO_meth_set_gets (methods_stream, 0) || ++ BIO_meth_set_ctrl (methods_stream, stream_ctrl) || ++ BIO_meth_set_create (methods_stream, stream_new) || ++ BIO_meth_set_destroy (methods_stream, stream_free)) ++ return NULL; ++ } ++ return methods_stream; ++} ++#endif + + static BIO* BIO_new_stream(StreamInterface* stream) { + BIO* ret = BIO_new(BIO_s_stream()); + if (ret == NULL) + return NULL; +- ret->ptr = stream; ++ BIO_set_data(ret, stream); + return ret; + } + + // bio methods return 1 (or at least non-zero) on success and 0 on failure. + ++#if OPENSSL_VERSION_NUMBER < 0x10100000L + static int stream_new(BIO* b) { + b->shutdown = 0; + b->init = 1; +@@ -119,6 +140,14 @@ + b->ptr = 0; + return 1; + } ++#else ++static int stream_new(BIO* b) { ++ BIO_set_shutdown(b, 0); ++ BIO_set_init(b, 1); ++ BIO_set_data(b, 0); ++ return 1; ++} ++#endif + + static int stream_free(BIO* b) { + if (b == NULL) +@@ -129,15 +158,13 @@ + static int stream_read(BIO* b, char* out, int outl) { + if (!out) + return -1; +- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); ++ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + size_t read; + int error; + StreamResult result = stream->Read(out, outl, &read, &error); + if (result == SR_SUCCESS) { + return read; +- } else if (result == SR_EOS) { +- b->num = 1; + } else if (result == SR_BLOCK) { + BIO_set_retry_read(b); + } +@@ -147,7 +174,7 @@ + static int stream_write(BIO* b, const char* in, int inl) { + if (!in) + return -1; +- StreamInterface* stream = static_cast<StreamInterface*>(b->ptr); ++ StreamInterface* stream = static_cast<StreamInterface*>(BIO_get_data(b)); + BIO_clear_retry_flags(b); + size_t written; + int error; +@@ -172,7 +199,6 @@ + case BIO_CTRL_RESET: + return 0; + case BIO_CTRL_EOF: +- return b->num; + case BIO_CTRL_WPENDING: + case BIO_CTRL_PENDING: + return 0; Deleted: kopete-srtp2.patch =================================================================== --- kopete-srtp2.patch 2022-01-06 11:51:16 UTC (rev 433645) +++ kopete-srtp2.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -1,154 +0,0 @@ -diff --git a/cmake/modules/FindSRTP.cmake b/cmake/modules/FindSRTP.cmake -index 4e8baa827..ce9033497 100644 ---- a/cmake/modules/FindSRTP.cmake -+++ b/cmake/modules/FindSRTP.cmake -@@ -11,8 +11,8 @@ include ( FindPackageHandleStandardArgs ) - if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY ) - set ( SRTP_FOUND true ) - else ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY ) -- find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp ) -- find_library ( SRTP_LIBRARY NAMES srtp ) -+ find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp srtp2 ) -+ find_library ( SRTP_LIBRARY NAMES srtp srtp2 ) - - if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY ) - set ( SRTP_FOUND true ) -diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc -index 7a1cb7866..f5363a36a 100644 ---- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc -+++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc -@@ -416,7 +416,7 @@ bool SrtpSession::ProtectRtp(void* p, int in_len, int max_len, int* out_len) { - } - int seq_num; - GetRtpSeqNum(p, in_len, &seq_num); -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_WARNING) << "Failed to protect SRTP packet, seqnum=" - << seq_num << ", err=" << err << ", last seqnum=" - << last_send_seq_num_; -@@ -442,7 +442,7 @@ bool SrtpSession::ProtectRtcp(void* p, int in_len, int max_len, int* out_len) { - *out_len = in_len; - int err = srtp_protect_rtcp(session_, p, out_len); - srtp_stat_->AddProtectRtcpResult(err); -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_WARNING) << "Failed to protect SRTCP packet, err=" << err; - return false; - } -@@ -461,7 +461,7 @@ bool SrtpSession::UnprotectRtp(void* p, int in_len, int* out_len) { - if (GetRtpSsrc(p, in_len, &ssrc)) { - srtp_stat_->AddUnprotectRtpResult(ssrc, err); - } -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_WARNING) << "Failed to unprotect SRTP packet, err=" << err; - return false; - } -@@ -477,7 +477,7 @@ bool SrtpSession::UnprotectRtcp(void* p, int in_len, int* out_len) { - *out_len = in_len; - int err = srtp_unprotect_rtcp(session_, p, out_len); - srtp_stat_->AddUnprotectRtcpResult(err); -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_WARNING) << "Failed to unprotect SRTCP packet, err=" << err; - return false; - } -@@ -504,11 +504,11 @@ bool SrtpSession::SetKey(int type, const std::string& cs, - memset(&policy, 0, sizeof(policy)); - - if (cs == CS_AES_CM_128_HMAC_SHA1_80) { -- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp); -- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); -+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp); -+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); - } else if (cs == CS_AES_CM_128_HMAC_SHA1_32) { -- crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32, -- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80 -+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32, -+ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80 - } else { - LOG(LS_WARNING) << "Failed to create SRTP session: unsupported" - << " cipher_suite " << cs.c_str(); -@@ -520,7 +520,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs, - return false; - } - -- policy.ssrc.type = static_cast<ssrc_type_t>(type); -+ policy.ssrc.type = static_cast<srtp_ssrc_type_t>(type); - policy.ssrc.value = 0; - policy.key = const_cast<uint8*>(key); - // TODO parse window size from WSH session-param -@@ -529,7 +529,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs, - policy.next = NULL; - - int err = srtp_create(&session_, &policy); -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_ERROR) << "Failed to create SRTP session, err=" << err; - return false; - } -@@ -543,13 +543,13 @@ bool SrtpSession::Init() { - if (!inited_) { - int err; - err = srtp_init(); -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_ERROR) << "Failed to init SRTP, err=" << err; - return false; - } - - err = srtp_install_event_handler(&SrtpSession::HandleEventThunk); -- if (err != err_status_ok) { -+ if (err != srtp_err_status_ok) { - LOG(LS_ERROR) << "Failed to install SRTP event handler, err=" << err; - return false; - } -@@ -652,10 +652,10 @@ void SrtpStat::AddProtectRtpResult(uint32 ssrc, int result) { - key.ssrc = ssrc; - key.mode = SrtpFilter::PROTECT; - switch (result) { -- case err_status_ok: -+ case srtp_err_status_ok: - key.error = SrtpFilter::ERROR_NONE; - break; -- case err_status_auth_fail: -+ case srtp_err_status_auth_fail: - key.error = SrtpFilter::ERROR_AUTH; - break; - default: -@@ -669,14 +669,14 @@ void SrtpStat::AddUnprotectRtpResult(uint32 ssrc, int result) { - key.ssrc = ssrc; - key.mode = SrtpFilter::UNPROTECT; - switch (result) { -- case err_status_ok: -+ case srtp_err_status_ok: - key.error = SrtpFilter::ERROR_NONE; - break; -- case err_status_auth_fail: -+ case srtp_err_status_auth_fail: - key.error = SrtpFilter::ERROR_AUTH; - break; -- case err_status_replay_fail: -- case err_status_replay_old: -+ case srtp_err_status_replay_fail: -+ case srtp_err_status_replay_old: - key.error = SrtpFilter::ERROR_REPLAY; - break; - default: -diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h -index 991d4bf42..ff4e5070f 100644 ---- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h -+++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h -@@ -39,11 +39,7 @@ - #include "talk/session/phone/cryptoparams.h" - #include "talk/p2p/base/sessiondescription.h" - --// Forward declaration to avoid pulling in libsrtp headers here --struct srtp_event_data_t; --struct srtp_ctx_t; --typedef srtp_ctx_t* srtp_t; --struct srtp_policy_t; -+#include "srtp2/srtp.h" - - namespace cricket { - Copied: kopete/repos/extra-x86_64/kopete-srtp2.patch (from rev 433645, kopete/trunk/kopete-srtp2.patch) =================================================================== --- kopete-srtp2.patch (rev 0) +++ kopete-srtp2.patch 2022-01-06 11:51:33 UTC (rev 433646) @@ -0,0 +1,154 @@ +diff --git a/cmake/modules/FindSRTP.cmake b/cmake/modules/FindSRTP.cmake +index 4e8baa827..ce9033497 100644 +--- a/cmake/modules/FindSRTP.cmake ++++ b/cmake/modules/FindSRTP.cmake +@@ -11,8 +11,8 @@ include ( FindPackageHandleStandardArgs ) + if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY ) + set ( SRTP_FOUND true ) + else ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY ) +- find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp ) +- find_library ( SRTP_LIBRARY NAMES srtp ) ++ find_path ( SRTP_INCLUDE_DIR srtp.h PATH_SUFFIXES srtp srtp2 ) ++ find_library ( SRTP_LIBRARY NAMES srtp srtp2 ) + + if ( SRTP_INCLUDE_DIR AND SRTP_LIBRARY ) + set ( SRTP_FOUND true ) +diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc +index 7a1cb7866..f5363a36a 100644 +--- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc ++++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.cc +@@ -416,7 +416,7 @@ bool SrtpSession::ProtectRtp(void* p, int in_len, int max_len, int* out_len) { + } + int seq_num; + GetRtpSeqNum(p, in_len, &seq_num); +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_WARNING) << "Failed to protect SRTP packet, seqnum=" + << seq_num << ", err=" << err << ", last seqnum=" + << last_send_seq_num_; +@@ -442,7 +442,7 @@ bool SrtpSession::ProtectRtcp(void* p, int in_len, int max_len, int* out_len) { + *out_len = in_len; + int err = srtp_protect_rtcp(session_, p, out_len); + srtp_stat_->AddProtectRtcpResult(err); +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_WARNING) << "Failed to protect SRTCP packet, err=" << err; + return false; + } +@@ -461,7 +461,7 @@ bool SrtpSession::UnprotectRtp(void* p, int in_len, int* out_len) { + if (GetRtpSsrc(p, in_len, &ssrc)) { + srtp_stat_->AddUnprotectRtpResult(ssrc, err); + } +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_WARNING) << "Failed to unprotect SRTP packet, err=" << err; + return false; + } +@@ -477,7 +477,7 @@ bool SrtpSession::UnprotectRtcp(void* p, int in_len, int* out_len) { + *out_len = in_len; + int err = srtp_unprotect_rtcp(session_, p, out_len); + srtp_stat_->AddUnprotectRtcpResult(err); +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_WARNING) << "Failed to unprotect SRTCP packet, err=" << err; + return false; + } +@@ -504,11 +504,11 @@ bool SrtpSession::SetKey(int type, const std::string& cs, + memset(&policy, 0, sizeof(policy)); + + if (cs == CS_AES_CM_128_HMAC_SHA1_80) { +- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp); +- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); ++ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtp); ++ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); + } else if (cs == CS_AES_CM_128_HMAC_SHA1_32) { +- crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32, +- crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80 ++ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_32(&policy.rtp); // rtp is 32, ++ srtp_crypto_policy_set_aes_cm_128_hmac_sha1_80(&policy.rtcp); // rtcp still 80 + } else { + LOG(LS_WARNING) << "Failed to create SRTP session: unsupported" + << " cipher_suite " << cs.c_str(); +@@ -520,7 +520,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs, + return false; + } + +- policy.ssrc.type = static_cast<ssrc_type_t>(type); ++ policy.ssrc.type = static_cast<srtp_ssrc_type_t>(type); + policy.ssrc.value = 0; + policy.key = const_cast<uint8*>(key); + // TODO parse window size from WSH session-param +@@ -529,7 +529,7 @@ bool SrtpSession::SetKey(int type, const std::string& cs, + policy.next = NULL; + + int err = srtp_create(&session_, &policy); +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_ERROR) << "Failed to create SRTP session, err=" << err; + return false; + } +@@ -543,13 +543,13 @@ bool SrtpSession::Init() { + if (!inited_) { + int err; + err = srtp_init(); +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_ERROR) << "Failed to init SRTP, err=" << err; + return false; + } + + err = srtp_install_event_handler(&SrtpSession::HandleEventThunk); +- if (err != err_status_ok) { ++ if (err != srtp_err_status_ok) { + LOG(LS_ERROR) << "Failed to install SRTP event handler, err=" << err; + return false; + } +@@ -652,10 +652,10 @@ void SrtpStat::AddProtectRtpResult(uint32 ssrc, int result) { + key.ssrc = ssrc; + key.mode = SrtpFilter::PROTECT; + switch (result) { +- case err_status_ok: ++ case srtp_err_status_ok: + key.error = SrtpFilter::ERROR_NONE; + break; +- case err_status_auth_fail: ++ case srtp_err_status_auth_fail: + key.error = SrtpFilter::ERROR_AUTH; + break; + default: +@@ -669,14 +669,14 @@ void SrtpStat::AddUnprotectRtpResult(uint32 ssrc, int result) { + key.ssrc = ssrc; + key.mode = SrtpFilter::UNPROTECT; + switch (result) { +- case err_status_ok: ++ case srtp_err_status_ok: + key.error = SrtpFilter::ERROR_NONE; + break; +- case err_status_auth_fail: ++ case srtp_err_status_auth_fail: + key.error = SrtpFilter::ERROR_AUTH; + break; +- case err_status_replay_fail: +- case err_status_replay_old: ++ case srtp_err_status_replay_fail: ++ case srtp_err_status_replay_old: + key.error = SrtpFilter::ERROR_REPLAY; + break; + default: +diff --git a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h +index 991d4bf42..ff4e5070f 100644 +--- a/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h ++++ b/protocols/jabber/libjingle/talk/session/phone/srtpfilter.h +@@ -39,11 +39,7 @@ + #include "talk/session/phone/cryptoparams.h" + #include "talk/p2p/base/sessiondescription.h" + +-// Forward declaration to avoid pulling in libsrtp headers here +-struct srtp_event_data_t; +-struct srtp_ctx_t; +-typedef srtp_ctx_t* srtp_t; +-struct srtp_policy_t; ++#include "srtp2/srtp.h" + + namespace cricket { +