Date: Thursday, June 9, 2022 @ 09:59:10
  Author: arojas
Revision: 447958

archrelease: copy trunk to extra-x86_64

Added:
  kopete/repos/extra-x86_64/PKGBUILD
    (from rev 447957, kopete/trunk/PKGBUILD)
  kopete/repos/extra-x86_64/kopete-mediastreamer-4.3.patch
    (from rev 447957, kopete/trunk/kopete-mediastreamer-4.3.patch)
  kopete/repos/extra-x86_64/kopete-mediastreamer2.14.patch
    (from rev 447957, kopete/trunk/kopete-mediastreamer2.14.patch)
  kopete/repos/extra-x86_64/kopete-openssl-1.1.patch
    (from rev 447957, kopete/trunk/kopete-openssl-1.1.patch)
  kopete/repos/extra-x86_64/kopete-srtp2.patch
    (from rev 447957, 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                       |   98 +++---
 kopete-mediastreamer-4.3.patch |  168 +++++-----
 kopete-mediastreamer2.14.patch |  562 +++++++++++++++++------------------
 kopete-openssl-1.1.patch       |  614 +++++++++++++++++++--------------------
 kopete-srtp2.patch             |  308 +++++++++----------
 5 files changed, 875 insertions(+), 875 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD    2022-06-09 09:58:45 UTC (rev 447957)
+++ PKGBUILD    2022-06-09 09:59:10 UTC (rev 447958)
@@ -1,49 +0,0 @@
-# Maintainer: Felix Yan <felixonm...@archlinux.org>
-# Maintainer: Antonio Rojas <aro...@archlinux.org>
-# Contributor: Andrea Scarpino <and...@archlinux.org>
-
-pkgname=kopete
-pkgver=22.04.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=('b3067ee815100b75b7d8c3aab59f04ca6d568ae9a16d623428e622a32d9e1ee6'
-            'SKIP'
-            '0dd400ecbcbc8f7c77beb71e9907a1cb0eaedabf7aa9f9a28d9f0d3f0dd960d2'
-            'ceed663f7007654d186d918cf7a0742972ed5bd319879021e9ba80e395177700'
-            'a12ea422e5162ef11274a98fd53658d6e780cafbe2e0fac70c8bc7d3291fef8b'
-            '426df8abe65d46ec8e37804ec573ad205c00c7d6ba2deb0249b5b01fa20bc4d7')
-validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7  # Albert Astals Cid 
<aa...@kde.org>
-              F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87  # Christoph Feck 
<cf...@kde.org>
-              D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker 
<heiko.bec...@kde.org>
-options=(debug)
-
-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 447957, 
kopete/trunk/PKGBUILD)
===================================================================
--- PKGBUILD                            (rev 0)
+++ PKGBUILD    2022-06-09 09:59:10 UTC (rev 447958)
@@ -0,0 +1,49 @@
+# Maintainer: Felix Yan <felixonm...@archlinux.org>
+# Maintainer: Antonio Rojas <aro...@archlinux.org>
+# Contributor: Andrea Scarpino <and...@archlinux.org>
+
+pkgname=kopete
+pkgver=22.04.2
+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=('7c3bc64c86ff30e8db81a917931a20f83f211c8a02968745c76a7c5e98b0b97f'
+            'SKIP'
+            '0dd400ecbcbc8f7c77beb71e9907a1cb0eaedabf7aa9f9a28d9f0d3f0dd960d2'
+            'ceed663f7007654d186d918cf7a0742972ed5bd319879021e9ba80e395177700'
+            'a12ea422e5162ef11274a98fd53658d6e780cafbe2e0fac70c8bc7d3291fef8b'
+            '426df8abe65d46ec8e37804ec573ad205c00c7d6ba2deb0249b5b01fa20bc4d7')
+validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7  # Albert Astals Cid 
<aa...@kde.org>
+              F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87  # Christoph Feck 
<cf...@kde.org>
+              D81C0CB38EB725EF6691C385BB463350D6EF31EF) # Heiko Becker 
<heiko.bec...@kde.org>
+options=(debug)
+
+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-06-09 09:58:45 UTC (rev 447957)
+++ kopete-mediastreamer-4.3.patch      2022-06-09 09:59:10 UTC (rev 447958)
@@ -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::EXPAT
--      ${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 
447957, kopete/trunk/kopete-mediastreamer-4.3.patch)
===================================================================
--- kopete-mediastreamer-4.3.patch                              (rev 0)
+++ kopete-mediastreamer-4.3.patch      2022-06-09 09:59:10 UTC (rev 447958)
@@ -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::EXPAT
+-      ${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-06-09 09:58:45 UTC (rev 447957)
+++ kopete-mediastreamer2.14.patch      2022-06-09 09:59:10 UTC (rev 447958)
@@ -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::EXPAT
-       ${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 
447957, kopete/trunk/kopete-mediastreamer2.14.patch)
===================================================================
--- kopete-mediastreamer2.14.patch                              (rev 0)
+++ kopete-mediastreamer2.14.patch      2022-06-09 09:59:10 UTC (rev 447958)
@@ -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::EXPAT
+       ${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-06-09 09:58:45 UTC (rev 447957)
+++ kopete-openssl-1.1.patch    2022-06-09 09:59:10 UTC (rev 447958)
@@ -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 447957, 
kopete/trunk/kopete-openssl-1.1.patch)
===================================================================
--- kopete-openssl-1.1.patch                            (rev 0)
+++ kopete-openssl-1.1.patch    2022-06-09 09:59:10 UTC (rev 447958)
@@ -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-06-09 09:58:45 UTC (rev 447957)
+++ kopete-srtp2.patch  2022-06-09 09:59:10 UTC (rev 447958)
@@ -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 447957, 
kopete/trunk/kopete-srtp2.patch)
===================================================================
--- kopete-srtp2.patch                          (rev 0)
+++ kopete-srtp2.patch  2022-06-09 09:59:10 UTC (rev 447958)
@@ -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 {
+ 

Reply via email to