community/freerdp to 2.0.0_rc4-5

This commit is contained in:
Kevin Mihelich 2019-06-11 23:21:50 +00:00
parent 1b867e69e3
commit 0865f55520
2 changed files with 38 additions and 84 deletions

View file

@ -1,63 +1,65 @@
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: David Runge <dave@sleepmap.de>
# Contributor: Stijn Segers <francesco dot borromini at gmail dot com>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - define WITH_NEON and ARM_FP_ABI
_name=FreeRDP
pkgname=freerdp
epoch=1
pkgver=2.0.0_rc4
#_commit=6001cb710dc67eb8811362b7bf383754257a902b
_pkgver=${pkgver/_/-}
_pkgver=${_pkgver/+/-}
pkgrel=4
pkgdesc="Free RDP client"
pkgrel=5
pkgdesc="Free implementation of the Remote Desktop Protocol (RDP)"
arch=('x86_64')
url="http://freerdp.sourceforge.net"
license=('GPL')
depends=('openssl' 'libxcursor' 'libcups' 'alsa-lib' 'libxext' 'libxdamage'
'ffmpeg' 'libxkbfile' 'libxinerama' 'libxv' 'libpulse' 'libxkbfile'
'libxrender' 'libxfixes' 'gst-plugins-base-libs' 'dbus-glib'
'libxkbcommon')
makedepends=('krb5' 'cmake' 'damageproto' 'fixesproto' 'renderproto'
'xmlto' 'docbook-xsl' 'git')
url="http://www.freerdp.com/"
license=('Apache')
depends=('dbus-glib' 'faac' 'faad2' 'ffmpeg' 'gst-plugins-base-libs' 'libcups'
'libgssglue' 'libxkbcommon' 'libxinerama' 'libxkbfile' 'libxrandr' 'mbedtls'
'pcsclite')
makedepends=('cmake' 'docbook-xsl' 'krb5' 'xmlto' 'xorgproto')
provides=('libwinpr-tools2.so' 'libfreerdp-client2.so' 'libfreerdp2.so'
'libwinpr2.so')
#source=("FreeRDP-${_pkgver}::git://github.com/FreeRDP/FreeRDP.git#commit=${_commit}")
source=($pkgname-$pkgver.tar.gz::https://github.com/FreeRDP/FreeRDP/archive/${pkgver/_/-}.tar.gz
fix_nla-8cd156a-backport.patch)
sha256sums=('3406f3bfab63f81c1533029a5bf73949ff60f22f6e155c5a08005b8b8afe6d49'
'2d449e0c1adee1ef131501e1613fc4c59fd122ca866d09f52eeff61236de81e4')
'libwinpr2.so')
source=($pkgname-$pkgver.tar.gz::https://github.com/${pkgname}/${pkgname}/archive/${pkgver/_/-}.tar.gz)
sha256sums=('3406f3bfab63f81c1533029a5bf73949ff60f22f6e155c5a08005b8b8afe6d49')
prepare() {
cd "$srcdir"/FreeRDP-${_pkgver}
# patch -Np1 -i "${srcdir}/fix_nla-8cd156a-backport.patch"
mv -v "${_name}-${pkgver/_/-}" "${pkgname}-${pkgver}"
cd "${pkgname}-${pkgver}"
mkdir -pv build
}
build() {
cd "$srcdir"/FreeRDP-${_pkgver}
cd "${pkgname}-${pkgver}/build"
[[ $CARCH == "arm" ]] && ABI="soft"
[[ $CARCH == "armv6h" || $CARCH == "armv7h" ]] && ABI="hard"
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DWITH_PULSE=ON \
-DWITH_CUPS=ON \
-DWITH_CHANNELS=ON \
-DWITH_CLIENT_CHANNELS=ON \
-DWITH_SERVER_CHANNELS=ON \
-DWITH_WAYLAND=ON \
-DCHANNEL_URBDRC_CLIENT=ON \
-DWITH_SERVER=ON \
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DWITH_NEON=OFF \
-DARM_FP_ABI=${ABI} \
.
make
-DWITH_MBEDTLS=ON \
-DWITH_PULSE=ON \
-DWITH_CUPS=ON \
-DWITH_PCSC=ON \
-DWITH_JPEG=ON \
-DWITH_GSM=ON \
-DWITH_LAME=ON \
-DWITH_FAAD2=ON \
-DWITH_FAAC=ON \
-DWITH_SOXR=ON \
-DWITH_GSSAPI=ON \
-DWITH_SERVER=ON \
..
# TODO: add, when openh264 is moved to community
# -DWITH_OPENH264=ON \
# TODO: not implemented in freerdp?
# -DWITH_X264=ON \
make VERBOSE=1
}
package() {
cd "$srcdir"/FreeRDP-${_pkgver}
cd "${pkgname}-${pkgver}/build"
make DESTDIR="${pkgdir}" install
}

View file

@ -1,48 +0,0 @@
From: Bernhard Miklautz <bernhard.miklautz@thincast.com>
Date: Wed, 14 Mar 2018 13:39:23 +0100
Subject: [PATCH] fix nla: don't use server version
FreeRDP currently only supports CredSSP protocol version 3. However the
current implementation always sent back the version received by the
server indicating that this version was supported.
With recent windows updates applied the protocol changed and this approach
doesn't work anymore (see
https://msdn.microsoft.com/en-us/library/mt752485.aspx for protocol changes).
With this fix FreeRDP always sends version 3 as supported version.
Credit goes to @mfleisz.
Fixes #4449
(patch above adjusted to apply on top of FreeRDP-2.0.0-rc1)
---
libfreerdp/core/nla.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libfreerdp/core/nla.c b/trunk/src/FreeRDP-2.0.0-rc1/libfreerdp/core/nla.c
index 47e0870..4bfcf7e 100644
--- a/libfreerdp/core/nla.c
+++ b/libfreerdp/core/nla.c
@@ -1663,14 +1663,17 @@ BOOL nla_send(rdpNla* nla)
static int nla_decode_ts_request(rdpNla* nla, wStream* s)
{
int length;
+ UINT32 version = 0;
/* TSRequest */
if (!ber_read_sequence_tag(s, &length) ||
!ber_read_contextual_tag(s, 0, &length, TRUE) ||
- !ber_read_integer(s, &nla->version))
+ !ber_read_integer(s, &version))
{
return -1;
}
+ if (version < nla->version)
+ nla->version = version;
/* [1] negoTokens (NegoData) */
if (ber_read_contextual_tag(s, 1, &length, TRUE) != FALSE)
--
2.16.2