diff options
author | Mike Gilbert <floppym@gentoo.org> | 2018-03-14 17:06:52 -0400 |
---|---|---|
committer | Mike Gilbert <floppym@gentoo.org> | 2018-03-14 17:08:02 -0400 |
commit | 80ed7e534b05809a0ab3dc4a6d69bec4b98f02d0 (patch) | |
tree | c3e60a820a0ebcca45b7a65dd31e6b1a099a754a /net-misc/freerdp | |
parent | profiles: unmask teamviewer-13 on no-multilib (diff) | |
download | gentoo-80ed7e534b05809a0ab3dc4a6d69bec4b98f02d0.tar.gz gentoo-80ed7e534b05809a0ab3dc4a6d69bec4b98f02d0.tar.bz2 gentoo-80ed7e534b05809a0ab3dc4a6d69bec4b98f02d0.zip |
net-misc/freerdp: backport CredSSP protocol version fix
Package-Manager: Portage-2.3.24, Repoman-2.3.6_p81
Diffstat (limited to 'net-misc/freerdp')
-rw-r--r-- | net-misc/freerdp/files/2.0.0-rc1-CredSSP-protocol-version.patch | 49 | ||||
-rw-r--r-- | net-misc/freerdp/freerdp-2.0.0_rc1-r1.ebuild (renamed from net-misc/freerdp/freerdp-2.0.0_rc1.ebuild) | 3 |
2 files changed, 51 insertions, 1 deletions
diff --git a/net-misc/freerdp/files/2.0.0-rc1-CredSSP-protocol-version.patch b/net-misc/freerdp/files/2.0.0-rc1-CredSSP-protocol-version.patch new file mode 100644 index 000000000000..59887f698ec9 --- /dev/null +++ b/net-misc/freerdp/files/2.0.0-rc1-CredSSP-protocol-version.patch @@ -0,0 +1,49 @@ +From 088c3940d9b488e8a83b9cefaa7271f955d1971c Mon Sep 17 00:00:00 2001 +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 +--- + libfreerdp/core/nla.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/libfreerdp/core/nla.c b/libfreerdp/core/nla.c +index 47e087062..8a69f2f6e 100644 +--- a/libfreerdp/core/nla.c ++++ b/libfreerdp/core/nla.c +@@ -1663,15 +1663,19 @@ 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 + diff --git a/net-misc/freerdp/freerdp-2.0.0_rc1.ebuild b/net-misc/freerdp/freerdp-2.0.0_rc1-r1.ebuild index c8a6ae3b610d..6a24709e340a 100644 --- a/net-misc/freerdp/freerdp-2.0.0_rc1.ebuild +++ b/net-misc/freerdp/freerdp-2.0.0_rc1-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2017 Gentoo Foundation +# Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI="6" @@ -90,6 +90,7 @@ DEPEND="${RDEPEND} PATCHES=( "${FILESDIR}/2.0.0-rc1-libressl.patch" + "${FILESDIR}/2.0.0-rc1-CredSSP-protocol-version.patch" ) src_configure() { |