summaryrefslogtreecommitdiff
path: root/net-nds/gssproxy
diff options
context:
space:
mode:
Diffstat (limited to 'net-nds/gssproxy')
-rw-r--r--net-nds/gssproxy/Manifest2
-rw-r--r--net-nds/gssproxy/files/gssproxy-0.9.1-fix-musl-llvm16-build.patch30
-rw-r--r--net-nds/gssproxy/gssproxy-0.9.1-r1.ebuild102
3 files changed, 134 insertions, 0 deletions
diff --git a/net-nds/gssproxy/Manifest b/net-nds/gssproxy/Manifest
index 71d2220abfae..f0a717ec1338 100644
--- a/net-nds/gssproxy/Manifest
+++ b/net-nds/gssproxy/Manifest
@@ -1,4 +1,6 @@
AUX gssproxy 371 BLAKE2B d51ab4a06138dcc4af7b1706948534bd3b0b0fe1e715085eeb910bfacab9bb9d46af132901d9ed59feaab889409f917c72527377cf233ddce928e02a287bea99 SHA512 ec7b7e6684ed93ec6a71d5c4bfef7f6a6a61b22202607064e906165e1b5a14f283476d25ef19551040b462f173352ce330a3781b20d0865d4799f087cd707c28
+AUX gssproxy-0.9.1-fix-musl-llvm16-build.patch 888 BLAKE2B 2a329075fe9c8f7b01d6c81e73366b9d7286ac414707d35c6d2211283f0ee2d4a40d596723fa760f408de0ff9d700e6a7c901d3f27221574a2649b5abb341462 SHA512 1976e7d2f8b605f17670f7f0d7b15a05dd9a87f4973c40051760af7e5b995bd669bcbf73cc7f0d6aff096407cd55183675d4f43927cb5eb3912df1c45971ceaf
DIST gssproxy-0.9.1.tar.gz 579038 BLAKE2B a17e673876b4acf480b23a8086720f507cd3a85c2f328469b726ab1653a94cd9a3eb9dd9369dee30b57457b6e8125b67a86fc4186c387e58d2d96b1da7c55089 SHA512 767c4e73d5240a43a0586e836e7dc199b8baf0adbc5a1a2cbb6ffc6f0a7ca574a4fc541ca474ef696d78956724eb24c465760f680e7170f8d77d056513b6226b
+EBUILD gssproxy-0.9.1-r1.ebuild 3237 BLAKE2B eca26c329f26e0f383e17b0bbac4d40e042d47d57800fb0f850901f8d8fa0e626c755ff3455d2fdeef7158319974d133a3a1ede26cb772338d1a3ab2904739df SHA512 f9d12bbdfacfb65df5b050fed9fdb41c7970cfd90ba4e0106789a74a006e5c0896b58b56e16aafb045c8b4209afddeb54d68b9032dc2f1bcb1da51e0d78634c3
EBUILD gssproxy-0.9.1.ebuild 3166 BLAKE2B 5ad8e3ebb6720c51a550d2a4584b2514487c7c985ca86617364dca99b132172c89e4a6f61d180934bf61d192bff717dabef092888117c0d8c827d156737f8998 SHA512 384c5e3771541a7f3865f7ee1cd44e41a7c5a74cbe2f3b3892db6ff43c8852a8c3c1500f39a7dd6362329ae97840425f567ba1aed88c1a40fa86a5a232a7a922
MISC metadata.xml 304 BLAKE2B 62385ec2c869cf41a61f53284d3c345fe1f26b36741777d4b161d8a522a58942d13ea155e25af7b70f726d716e7c99d628f4cdf7fdbf4dcdf82439095e634475 SHA512 13382010642d9de241dbcc1bc880dc1b3daa3f266d8b75da6ec2db9aa92011ce203e96ad55f6d04a00f0df8ae40c83aa262ac26fd4b0d1bfb66d577b94c02c8d
diff --git a/net-nds/gssproxy/files/gssproxy-0.9.1-fix-musl-llvm16-build.patch b/net-nds/gssproxy/files/gssproxy-0.9.1-fix-musl-llvm16-build.patch
new file mode 100644
index 000000000000..ac8c35c565ec
--- /dev/null
+++ b/net-nds/gssproxy/files/gssproxy-0.9.1-fix-musl-llvm16-build.patch
@@ -0,0 +1,30 @@
+https://github.com/gssapi/gssproxy/commit/f6ab3193e64ecc9db4d253b6dd99991f461b6081
+From: Brahmajit Das <brahmajit.xyz@gmail.com>
+Date: Wed, 31 May 2023 04:53:23 +0000
+Subject: [PATCH] Fix build with musl and llvm
+
+Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com>
+--- a/src/gp_util.c
++++ b/src/gp_util.c
+@@ -63,7 +63,7 @@ char *gp_strerror(int errnum)
+ static __thread char buf[MAX_GP_STRERROR];
+ int saved_errno = errno;
+
+-#if ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !_GNU_SOURCE)
++#if ((_POSIX_C_SOURCE >= 200112L || _XOPEN_SOURCE >= 600) && !_GNU_SOURCE) || !defined(__GLIBC__)
+ /* XSI version */
+ int ret;
+
+--- a/tests/userproxytest.c
++++ b/tests/userproxytest.c
+@@ -5,6 +5,7 @@
+ #include <stdbool.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include <sys/socket.h>
+ #include <sys/un.h>
+ #include <sys/wait.h>
+--
+2.40.1
+
diff --git a/net-nds/gssproxy/gssproxy-0.9.1-r1.ebuild b/net-nds/gssproxy/gssproxy-0.9.1-r1.ebuild
new file mode 100644
index 000000000000..2b819259be0a
--- /dev/null
+++ b/net-nds/gssproxy/gssproxy-0.9.1-r1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Daemon to proxy GSSAPI context establishment and channel handling"
+HOMEPAGE="https://github.com/gssapi/gssproxy"
+SRC_URI="https://github.com/gssapi/${PN}/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD-1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+IUSE="debug selinux systemd"
+
+COMMON_DEPEND=">=dev-libs/libverto-0.2.2
+ >=dev-libs/ding-libs-0.6.1
+ virtual/krb5
+ selinux? ( sys-libs/libselinux )"
+RDEPEND="${COMMON_DEPEND}
+ selinux? ( sec-policy/selinux-gssproxy )"
+# We need xml stuff to build the man pages, and people really want/need
+# the man pages for this package :). #585200
+BDEPEND="
+ app-text/docbook-xml-dtd:4.4
+ dev-libs/libxslt
+ virtual/pkgconfig
+"
+
+# Many requirements to run tests, including running slapd as root, hence
+# unfeasible.
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.1-fix-musl-llvm16-build.patch
+)
+
+# pkg_setup() {
+# # Here instead of flag-logic in DEPEND, since virtual/krb5 does not
+# # allow to specify the openldap use flag, which heimdal doesn't
+# # support.
+# # Using mit-krb5 explicitly because heimdal doesn't install kerberos
+# # schemata required for the tests of gss-proxy.
+# if use test && ! has_version "app-crypt/mit-krb5[openldap]"; then
+# eerror "Tests of this package require the kerberos schemata installed from app-crypt/mit-krb5[openldap]."
+# die "Tests enabled but no app-crypt/mit-krb5[openldap] being installed."
+# fi
+# }
+
+# Was required in 0.7.0 to fix the schema- and slapd-path. Reason for
+# comment: see RESTRICT comment
+# src_prepare() {
+# default
+# # The tests look for kerberos schemata in the documentation
+# # directory of krb5, however these are installed in /etc/openldap
+# # and only if the openldap useflag is supplied
+# sed -i \
+# -e 's#/usr/share/doc/krb5-server-ldap*#/etc/openldap/schema#' \
+# -e "s#\(subprocess.Popen..\"\)slapd#\1/usr/$(get_libdir)/openldap/slapd#" \
+# "${S}/tests/testlib.py" || die
+# }
+
+src_configure() {
+ local myeconfargs=(
+ # The build assumes localstatedir is /var and takes care of
+ # using all the right subdirs itself.
+ --localstatedir="${EPREFIX}"/var
+
+ --with-os=gentoo
+ --with-initscript=$(usex systemd systemd none)
+ $(use_with selinux)
+ $(use_with debug gssidebug)
+
+ # We already set FORTIFY_SOURCE by default along with the
+ # other bits. But setting it on each compile line interferes
+ # with efforts to try e.g. FORTIFY_SOURCE=3. So, disable it,
+ # but there's no actual difference to the safety of the binaries
+ # because of Gentoo's configuration/patches to the toolchain.
+ --without-hardening
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ # This is a plugin module, so no need for la file.
+ find "${ED}"/usr -name proxymech.la -delete || die
+
+ doinitd "${FILESDIR}"/gssproxy
+ insinto /etc/gssproxy
+ doins examples/*.conf
+
+ keepdir /var/lib/gssproxy
+ keepdir /var/lib/gssproxy/clients
+ keepdir /var/lib/gssproxy/rcache
+ fperms 0700 /var/lib/gssproxy/clients
+ fperms 0700 /var/lib/gssproxy/rcache
+
+ # The build installs a bunch of empty dirs, so prune them.
+ find "${ED}" -depth -type d -empty -delete || die
+}