diff options
author | Bernard Cafarelli <voyageur@gentoo.org> | 2019-04-16 10:50:55 +0200 |
---|---|---|
committer | Bernard Cafarelli <voyageur@gentoo.org> | 2019-04-16 10:50:55 +0200 |
commit | 290bb3e92f5be41c5693ce86a9d04d05046c62ba (patch) | |
tree | 0e2d6990410cbc13a254af350ba8e518e60abf93 /net-misc/rdesktop | |
parent | net-misc/memcached: 1.5.13 bump (diff) | |
download | gentoo-290bb3e92f5be41c5693ce86a9d04d05046c62ba.tar.gz gentoo-290bb3e92f5be41c5693ce86a9d04d05046c62ba.tar.bz2 gentoo-290bb3e92f5be41c5693ce86a9d04d05046c62ba.zip |
net-misc/rdesktop: use standard GSSAPI
Backport upstream master patch to switch away from using abandoned
project libgssglue
Bug: https://bugs.gentoo.org/646126
Package-Manager: Portage-2.3.63, Repoman-2.3.12
Signed-off-by: Bernard Cafarelli <voyageur@gentoo.org>
Diffstat (limited to 'net-misc/rdesktop')
-rw-r--r-- | net-misc/rdesktop/files/rdesktop-1.8.4-use_standard_gssapi.patch | 82 | ||||
-rw-r--r-- | net-misc/rdesktop/rdesktop-1.8.4-r2.ebuild | 71 |
2 files changed, 153 insertions, 0 deletions
diff --git a/net-misc/rdesktop/files/rdesktop-1.8.4-use_standard_gssapi.patch b/net-misc/rdesktop/files/rdesktop-1.8.4-use_standard_gssapi.patch new file mode 100644 index 000000000000..5befcf02e55b --- /dev/null +++ b/net-misc/rdesktop/files/rdesktop-1.8.4-use_standard_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 diff --git a/net-misc/rdesktop/rdesktop-1.8.4-r2.ebuild b/net-misc/rdesktop/rdesktop-1.8.4-r2.ebuild new file mode 100644 index 000000000000..ea7ed235070d --- /dev/null +++ b/net-misc/rdesktop/rdesktop-1.8.4-r2.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools eutils + +MY_PV=${PV/_/-} + +DESCRIPTION="A Remote Desktop Protocol Client" +HOMEPAGE="http://www.rdesktop.org/" +SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris" +IUSE="alsa ao debug ipv6 kerberos libressl libsamplerate oss pcsc-lite xrandr" + +S=${WORKDIR}/${PN}-${MY_PV} + +RDEPEND=" + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:= ) + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXau + x11-libs/libXdmcp + alsa? ( media-libs/alsa-lib ) + ao? ( >=media-libs/libao-0.8.6 ) + kerberos? ( virtual/krb5 ) + libsamplerate? ( media-libs/libsamplerate ) + pcsc-lite? ( >=sys-apps/pcsc-lite-1.6.6 ) + xrandr? ( x11-libs/libXrandr )" +DEPEND="${RDEPEND} + x11-libs/libXt" +BDEPEND=virtual/pkgconfig + +PATCHES=( + "${FILESDIR}"/${PN}-1.6.0-sound_configure.patch + "${FILESDIR}"/${PN}-1.8.3-no_strip.patch + "${FILESDIR}"/${PN}-1.8.3-xrandr_configure.patch + "${FILESDIR}"/${P}-libressl.patch + "${FILESDIR}"/${P}-use_standard_gssapi.patch +) + +DOCS=( doc/HACKING doc/TODO doc/keymapping.txt ) + +src_prepare() { + default + eautoreconf +} + +src_configure() { + if use ao; then + sound_conf=$(use_with ao sound libao) + else if use alsa; then + sound_conf=$(use_with alsa sound alsa) + else + sound_conf=$(use_with oss sound oss) + fi + fi + + econf \ + --with-openssl="${EPREFIX}"/usr \ + $(use_with debug) \ + $(use_with ipv6) \ + $(use_with libsamplerate) \ + $(use_with xrandr) \ + $(use_enable kerberos credssp) \ + $(use_enable pcsc-lite smartcard) \ + ${sound_conf} +} |