Re: [freerdp] fix nla: don't use server version

2018-06-08 Thread Jeremie Courreges-Anglas
On Fri, Jun 08 2018, Denis Fondras  wrote:
> freerdp-2.0.0rc1 fails to connect with the latest RDP protocol. Developer
> provides a quick fix :
> https://github.com/FreeRDP/FreeRDP/commit/e7ae3f6babc881d893411a5ada9156abe8525b2f
>
> Fix our port.

Indeed, ok jca@.  Can you please add the commit url in the patch?

> Denis
>
> Index: Makefile
> ===
> RCS file: /cvs/ports/x11/freerdp/Makefile,v
> retrieving revision 1.31
> diff -u -p -r1.31 Makefile
> --- Makefile  28 Apr 2018 19:20:17 -  1.31
> +++ Makefile  8 Jun 2018 18:00:29 -
> @@ -6,6 +6,7 @@ BROKEN-hppa = undefined reference to __
>  COMMENT =open source client for Windows Terminal Server
>  DISTNAME =   freerdp-2.0.0-rc1
>  PKGNAME =freerdp-2.0.0rc1
> +REVISION =   0
>  CATEGORIES = x11 net
>  
>  SHARED_LIBS +=  freerdp-client2   0.0 # 2.0
> Index: patches/patch-libfreerdp_core_nla_c
> ===
> RCS file: patches/patch-libfreerdp_core_nla_c
> diff -N patches/patch-libfreerdp_core_nla_c
> --- /dev/null 1 Jan 1970 00:00:00 -
> +++ patches/patch-libfreerdp_core_nla_c   8 Jun 2018 18:00:29 -
> @@ -0,0 +1,25 @@
> +$OpenBSD$
> +
> +Index: libfreerdp/core/nla.c
> +--- libfreerdp/core/nla.c.orig
>  libfreerdp/core/nla.c
> +@@ -1663,14 +1663,18 @@ 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, ) ||
> + !ber_read_contextual_tag(s, 0, , TRUE) ||
> +-!ber_read_integer(s, >version))
> ++!ber_read_integer(s, ))
> + {
> + return -1;
> + }
> ++
> ++if (version < nla->version)
> ++nla->version = version;
> + 
> + /* [1] negoTokens (NegoData) */
> + if (ber_read_contextual_tag(s, 1, , TRUE) != FALSE)
>

-- 
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF  DDCC 0DFA 74AE 1524 E7EE



[freerdp] fix nla: don't use server version

2018-06-08 Thread Denis Fondras
freerdp-2.0.0rc1 fails to connect with the latest RDP protocol. Developer
provides a quick fix :
https://github.com/FreeRDP/FreeRDP/commit/e7ae3f6babc881d893411a5ada9156abe8525b2f

Fix our port.

Denis

Index: Makefile
===
RCS file: /cvs/ports/x11/freerdp/Makefile,v
retrieving revision 1.31
diff -u -p -r1.31 Makefile
--- Makefile28 Apr 2018 19:20:17 -  1.31
+++ Makefile8 Jun 2018 18:00:29 -
@@ -6,6 +6,7 @@ BROKEN-hppa =   undefined reference to __
 COMMENT =  open source client for Windows Terminal Server
 DISTNAME = freerdp-2.0.0-rc1
 PKGNAME =  freerdp-2.0.0rc1
+REVISION = 0
 CATEGORIES =   x11 net
 
 SHARED_LIBS +=  freerdp-client2   0.0 # 2.0
Index: patches/patch-libfreerdp_core_nla_c
===
RCS file: patches/patch-libfreerdp_core_nla_c
diff -N patches/patch-libfreerdp_core_nla_c
--- /dev/null   1 Jan 1970 00:00:00 -
+++ patches/patch-libfreerdp_core_nla_c 8 Jun 2018 18:00:29 -
@@ -0,0 +1,25 @@
+$OpenBSD$
+
+Index: libfreerdp/core/nla.c
+--- libfreerdp/core/nla.c.orig
 libfreerdp/core/nla.c
+@@ -1663,14 +1663,18 @@ 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, ) ||
+   !ber_read_contextual_tag(s, 0, , TRUE) ||
+-  !ber_read_integer(s, >version))
++  !ber_read_integer(s, ))
+   {
+   return -1;
+   }
++
++  if (version < nla->version)
++  nla->version = version;
+ 
+   /* [1] negoTokens (NegoData) */
+   if (ber_read_contextual_tag(s, 1, , TRUE) != FALSE)