[vlc-devel] [PATCH] contrib: ssh2: fix desktop API's not available when compiling for Win8.1

Steve Lhomme robux4 at videolabs.io
Tue Oct 24 13:59:10 CEST 2017


since the desktop must be forced to access the winsock API
---
 contrib/src/ssh2/rules.mak                |  1 +
 contrib/src/ssh2/ssh2-win81-desktop.patch | 20 ++++++++++++++++++++
 2 files changed, 21 insertions(+)
 create mode 100644 contrib/src/ssh2/ssh2-win81-desktop.patch

diff --git a/contrib/src/ssh2/rules.mak b/contrib/src/ssh2/rules.mak
index ac7acfe2bc..e6ad02330e 100644
--- a/contrib/src/ssh2/rules.mak
+++ b/contrib/src/ssh2/rules.mak
@@ -27,6 +27,7 @@ ssh2: libssh2-$(LIBSSH2_VERSION).tar.gz .sum-ssh2
 	$(call pkg_static,"libssh2.pc.in")
 ifdef HAVE_WINSTORE
 	$(APPLY) $(SRC)/ssh2/winrt-no-agent.patch
+	$(APPLY) $(SRC)/ssh2/ssh2-win81-desktop.patch
 endif
 	$(MOVE)
 
diff --git a/contrib/src/ssh2/ssh2-win81-desktop.patch b/contrib/src/ssh2/ssh2-win81-desktop.patch
new file mode 100644
index 0000000000..b40e93f1e1
--- /dev/null
+++ b/contrib/src/ssh2/ssh2-win81-desktop.patch
@@ -0,0 +1,20 @@
+--- ssh2/src/agent.c	2017-07-12 09:51:38.985291600 +0200
++++ ssh2/src/agent.c.desktop	2017-10-09 16:56:11.722039700 +0200
+@@ -254,7 +254,7 @@ struct agent_ops agent_ops_unix = {
+ };
+ #endif  /* PF_UNIX */
+ 
+-#if defined(WIN32) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
++#if defined(WIN32) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && defined(FindWindow)
+ /* Code to talk to Pageant was taken from PuTTY.
+  *
+  * Portions copyright Robert de Bath, Joris van Rantwijk, Delian
+@@ -362,7 +362,7 @@ static struct {
+     const char *name;
+     struct agent_ops *ops;
+ } supported_backends[] = {
+-#if defined(WIN32) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
++#if defined(WIN32) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && defined(FindWindow)
+     {"Pageant", &agent_ops_pageant},
+ #endif  /* WIN32 */
+ #ifdef PF_UNIX
-- 
2.14.2



More information about the vlc-devel mailing list