summaryrefslogtreecommitdiff
path: root/user/rdesktop/gssapi.patch
diff options
context:
space:
mode:
Diffstat (limited to 'user/rdesktop/gssapi.patch')
-rw-r--r--user/rdesktop/gssapi.patch82
1 files changed, 82 insertions, 0 deletions
diff --git a/user/rdesktop/gssapi.patch b/user/rdesktop/gssapi.patch
new file mode 100644
index 000000000..5befcf02e
--- /dev/null
+++ b/user/rdesktop/gssapi.patch
@@ -0,0 +1,82 @@
+From 71f1cfb909c0a955632001cf9fad80a321a43372 Mon Sep 17 00:00:00 2001
+From: Pierre Ossman <ossman@cendio.se>
+Date: Mon, 10 Jul 2017 15:12:26 +0200
+Subject: [PATCH 1/2] Fix pointer types for gss_wrap()/gss_unrap()
+
+We were using the incorrect type for the context for these two calls.
+No practical effects, but some noise from the compiler about the wrong
+pointer type.
+---
+ cssp.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/cssp.c b/cssp.c
+index 9f4c0829..6ac37746 100644
+--- a/cssp.c
++++ b/cssp.c
+@@ -173,7 +173,7 @@ cssp_gss_get_service_name(char *server, gss_name_t * name)
+ }
+
+ static RD_BOOL
+-cssp_gss_wrap(gss_ctx_id_t * ctx, STREAM in, STREAM out)
++cssp_gss_wrap(gss_ctx_id_t ctx, STREAM in, STREAM out)
+ {
+ int conf_state;
+ OM_uint32 major_status;
+@@ -212,7 +212,7 @@ cssp_gss_wrap(gss_ctx_id_t * ctx, STREAM in, STREAM out)
+ }
+
+ static RD_BOOL
+-cssp_gss_unwrap(gss_ctx_id_t * ctx, STREAM in, STREAM out)
++cssp_gss_unwrap(gss_ctx_id_t ctx, STREAM in, STREAM out)
+ {
+ OM_uint32 major_status;
+ OM_uint32 minor_status;
+
+From b556651fe109c8802a0c798b8a680e5ff883bf4e Mon Sep 17 00:00:00 2001
+From: Pierre Ossman <ossman@cendio.se>
+Date: Mon, 10 Jul 2017 15:14:01 +0200
+Subject: [PATCH 2/2] Use standard GSSAPI rather than libgssglue
+
+That project is abandoned and the distributions aren't including
+it anymore.
+---
+ configure.ac | 15 ++++-----------
+ 1 file changed, 4 insertions(+), 11 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index e045c409..a969ad5d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -122,27 +122,20 @@ fi
+
+ dnl CredSSP feature
+ AC_ARG_ENABLE([credssp], AS_HELP_STRING([--disable-credssp], [disable support for CredSSP]))
+-AC_ARG_ENABLE([static-gssglue], AS_HELP_STRING([--enable-static-gssglue]),
+- [static_gssglue=yes], [static_gssglue=no])
+ AS_IF([test "x$enable_credssp" != "xno"], [
+ if test -n "$PKG_CONFIG"; then
+- PKG_CHECK_MODULES(GSSGLUE, libgssglue, [WITH_CREDSSP=1], [WITH_CREDSSP=0])
++ PKG_CHECK_MODULES(GSSAPI, krb5-gssapi, [WITH_CREDSSP=1], [WITH_CREDSSP=0])
+ fi
+
+ if test x"$WITH_CREDSSP" = "x1"; then
+ CREDSSPOBJ="cssp.o"
+- CFLAGS="$CFLAGS $GSSGLUE_CFLAGS"
+-
+- AS_IF([test "x$static_gssglue" != "xno"], [
+- LIBS="$LIBS -Wl,-Bstatic -lgssglue -Wl,-Bdynamic"
+- ], [
+- LIBS="$LIBS -lgssglue"
+- ])
++ CFLAGS="$CFLAGS $GSSAPI_CFLAGS"
++ LIBS="$LIBS $GSSAPI_LIBS"
+
+ AC_DEFINE(WITH_CREDSSP)
+ else
+ echo
+- echo "CredSSP support requires libgssglue, install the dependency"
++ echo "CredSSP support requires GSSAPI, install the dependency"
+ echo "or disable the feature using --disable-credssp."
+ echo
+ exit 1