[arch-commits] Commit in telegram-desktop/trunk (4 files)

Sven-Hendrik Haase svenstaro at archlinux.org
Wed Mar 21 21:33:35 UTC 2018


    Date: Wednesday, March 21, 2018 @ 21:33:34
  Author: svenstaro
Revision: 310268

upgpkg: telegram-desktop 1.2.12-3

Build against openssl 1.1 (FS#57895)

Added:
  telegram-desktop/trunk/libtgvoip-2.patch
Modified:
  telegram-desktop/trunk/PKGBUILD
  telegram-desktop/trunk/libtgvoip.patch
  telegram-desktop/trunk/tdesktop.patch

-------------------+
 PKGBUILD          |   11 ++++---
 libtgvoip-2.patch |   81 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 libtgvoip.patch   |    2 -
 tdesktop.patch    |    4 +-
 4 files changed, 91 insertions(+), 7 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-03-21 21:20:22 UTC (rev 310267)
+++ PKGBUILD	2018-03-21 21:33:34 UTC (rev 310268)
@@ -6,12 +6,12 @@
 
 pkgname=telegram-desktop
 pkgver=1.2.12
-pkgrel=2
+pkgrel=3
 pkgdesc='Official Telegram Desktop client'
 arch=('x86_64')
 url="https://desktop.telegram.org/"
 license=('GPL3')
-depends=('ffmpeg' 'hicolor-icon-theme' 'minizip' 'openal' 'qt5-base' 'qt5-imageformats' 'openssl-1.0')
+depends=('ffmpeg' 'hicolor-icon-theme' 'minizip' 'openal' 'qt5-base' 'qt5-imageformats' 'openssl')
 makedepends=('cmake' 'git' 'gyp' 'range-v3' 'python' 'libappindicator-gtk3')
 optdepends=('libnotify: desktop notifications')
 source=(
@@ -25,6 +25,7 @@
     "tdesktop.patch"
     "no-gtk2.patch"
     "libtgvoip.patch"
+    "libtgvoip-2.patch"
 )
 sha256sums=('SKIP'
             'SKIP'
@@ -33,9 +34,10 @@
             'SKIP'
             'd4cdad0d091c7e47811d8a26d55bbee492e7845e968c522e86f120815477e9eb'
             '7a06af83609168a8eaec59a65252caa41dcd0ecc805225886435eb65073e9c82'
-            '36b817ec9843b261af7a246f9ec51feb828203bd90e76aef7383457f23a0d4cb'
+            '7879740fa0e3c5fbb5e35014c749dce5532acd16d61bd3ddfebb3079cea624df'
             '8d707debe027c7cb658825501dc30fb3beb57ab21b1b6df2f01c5f76ca39a0e6'
-            '0e55b150b91aeeddcb813fb242a62fe4d1977bcac457eb9d65997faef643f075')
+            '4dd2b1674b1a5bcfc5b640612278fe3a53b454192fbcc06b7476ff54ed6d2f6d'
+            '07ca232b91e9ad0fb9c1501b8b83275cc62b00477c7e5edde5e4cfd2852f1f26')
 
 prepare() {
     cd "$srcdir/tdesktop"
@@ -50,6 +52,7 @@
 
     cd "Telegram/ThirdParty/libtgvoip"
     patch -Np1 -i "$srcdir/libtgvoip.patch"
+    patch -Np1 -i "$srcdir/libtgvoip-2.patch"
 }
 
 build() {

Added: libtgvoip-2.patch
===================================================================
--- libtgvoip-2.patch	                        (rev 0)
+++ libtgvoip-2.patch	2018-03-21 21:33:34 UTC (rev 310268)
@@ -0,0 +1,81 @@
+From f2e246c1bfd456646880f4df8062337a53407343 Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <guriev-ns at ya.ru>
+Date: Thu, 6 Jul 2017 23:19:12 +0300
+Subject: [PATCH 1/2] Remove deprecated call of AES_ctr128_encrypt
+
+ * The AES_ctr128_encrypt function is not available in OpenSSL 1.1.0
+   without a special compiler flag
+ * Fix a small misspelling
+---
+ VoIPController.cpp | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/VoIPController.cpp b/VoIPController.cpp
+index 78e9e4b..c81673f 100644
+--- a/VoIPController.cpp
++++ b/VoIPController.cpp
+@@ -102,6 +102,7 @@ bool VoIPController::didInitWin32TimeScale = false;
+ #ifndef TGVOIP_USE_CUSTOM_CRYPTO
+ #include <openssl/sha.h>
+ #include <openssl/aes.h>
++#include <openssl/modes.h>
+ #include <openssl/rand.h>
+ 
+ void tgvoip_openssl_aes_ige_encrypt(uint8_t* in, uint8_t* out, size_t length, uint8_t* key, uint8_t* iv){
+@@ -131,7 +132,7 @@ void tgvoip_openssl_sha256(uint8_t* msg, size_t len, uint8_t* output){
+ void tgvoip_openssl_aes_ctr_encrypt(uint8_t* inout, size_t length, uint8_t* key, uint8_t* iv, uint8_t* ecount, uint32_t* num){
+ 	AES_KEY akey;
+ 	AES_set_encrypt_key(key, 32*8, &akey);
+-	AES_ctr128_encrypt(inout, inout, length, &akey, iv, ecount, num);
++	CRYPTO_ctr128_encrypt(inout, inout, length, &akey, iv, ecount, num, (block128_f) AES_encrypt);
+ }
+ 
+ voip_crypto_functions_t VoIPController::crypto={
+@@ -1142,7 +1143,7 @@ simpleAudioBlock random_id:long random_bytes:string raw_data:string = DecryptedA
+ 					if(!micMuted){
+ 						audioInput->Start();
+ 						if(!audioInput->IsInitialized()){
+-							LOGE("Erorr initializing audio capture");
++							LOGE("Error initializing audio capture");
+ 							lastError=TGVOIP_ERROR_AUDIO_IO;
+ 
+ 							SetState(STATE_FAILED);
+@@ -1150,7 +1151,7 @@ simpleAudioBlock random_id:long random_bytes:string raw_data:string = DecryptedA
+ 						}
+ 					}
+ 					if(!audioOutput->IsInitialized()){
+-						LOGE("Erorr initializing audio playback");
++						LOGE("Error initializing audio playback");
+ 						lastError=TGVOIP_ERROR_AUDIO_IO;
+ 
+ 						SetState(STATE_FAILED);
+
+From b0c6da9bdc68fd692d3a4e620a75e7f4ef10555b Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <guriev-ns at ya.ru>
+Date: Fri, 8 Dec 2017 23:16:12 +0300
+Subject: [PATCH 2/2] Add extern "C" wrapper
+
+It perhaps fixes build failure against ancient OpenSSL.
+
+See also: https://github.com/openssl/openssl/commit/17e80c6
+---
+ VoIPController.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/VoIPController.cpp b/VoIPController.cpp
+index c81673f..1003e50 100644
+--- a/VoIPController.cpp
++++ b/VoIPController.cpp
+@@ -100,10 +100,12 @@ bool VoIPController::didInitWin32TimeScale = false;
+ #define SHA256_LENGTH 32
+ 
+ #ifndef TGVOIP_USE_CUSTOM_CRYPTO
++extern "C" {
+ #include <openssl/sha.h>
+ #include <openssl/aes.h>
+ #include <openssl/modes.h>
+ #include <openssl/rand.h>
++}
+ 
+ void tgvoip_openssl_aes_ige_encrypt(uint8_t* in, uint8_t* out, size_t length, uint8_t* key, uint8_t* iv){
+ 	AES_KEY akey;

Modified: libtgvoip.patch
===================================================================
--- libtgvoip.patch	2018-03-21 21:20:22 UTC (rev 310267)
+++ libtgvoip.patch	2018-03-21 21:33:34 UTC (rev 310268)
@@ -12,7 +12,7 @@
          'include_dirs': [
            '<(tgvoip_src_loc)/webrtc_dsp',
            '<(linux_path_opus_include)',
-+          '/usr/include/openssl-1.0'
++          '/usr/include/openssl'
          ],
          'direct_dependent_settings': {
            'include_dirs': [

Modified: tdesktop.patch
===================================================================
--- tdesktop.patch	2018-03-21 21:20:22 UTC (rev 310267)
+++ tdesktop.patch	2018-03-21 21:33:34 UTC (rev 310268)
@@ -487,7 +487,7 @@
        'linux_path_range%': '/usr/local',
      },
      'include_dirs': [
-+      '/usr/include/openssl-1.0',
++      '/usr/include/openssl',
        '/usr/local/include',
        '<(linux_path_ffmpeg)/include',
        '<(linux_path_openal)/include',
@@ -495,7 +495,7 @@
        '<(linux_path_range)/include',
      ],
      'library_dirs': [
-+      '/usr/lib/openssl-1.0',
++      '/usr/lib/openssl',
        '/usr/local/lib',
        '<(linux_path_ffmpeg)/lib',
        '<(linux_path_openal)/lib',



More information about the arch-commits mailing list