git: 3c7b4d6a8af3 - main - net/slapi-nis: Add new Port
Jochen Neumeister <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.cvs.ports |
|---|---|
| Message-ID | <6a7d8755.3bfe4.628606cf__243.112007022717$1786611596$gmane$org@gitrepo.freebsd.org> |
The branch main has been updated by joneum: URL: https://cgit.FreeBSD.org/ports/commit/?id=3c7b4d6a8af39111f65bd610c357aa8bc505f19c commit 3c7b4d6a8af39111f65bd610c357aa8bc505f19c Author: Jochen Neumeister <[email protected]> AuthorDate: 2026-08-13 06:54:22 +0000 Commit: Jochen Neumeister <[email protected]> CommitDate: 2026-08-13 08:58:47 +0000 net/slapi-nis: Add new Port slapi-nis provides the Schema Compatibility plugin for 389 Directory Server. The plugin presents alternate LDAP views required by FreeIPA compatibility features, including SSSD ID mapping and ID views. The NIS plugin itself is disabled; only the schema-compat plugin is built. WWW: https://codeberg.org/freeipa/slapi-nis Sponsored by: Netzkommune GmbH Required for: FreeIPA server port --- net/Makefile | 1 + net/slapi-nis/Makefile | 41 ++++++++++++++++++++++ net/slapi-nis/distinfo | 3 ++ net/slapi-nis/files/patch-Makefile.am | 9 +++++ net/slapi-nis/files/patch-configure.ac | 24 +++++++++++++ net/slapi-nis/files/patch-src_back-sch-sss_idmap.c | 13 +++++++ net/slapi-nis/pkg-descr | 3 ++ 7 files changed, 94 insertions(+) diff --git a/net/Makefile b/net/Makefile index 22505ed6afda..6718efac5b3a 100644 --- a/net/Makefile +++ b/net/Makefile @@ -1546,6 +1546,7 @@ SUBDIR += sipsak SUBDIR += sl2tps SUBDIR += slackcat + SUBDIR += slapi-nis SUBDIR += slurm SUBDIR += smb4k SUBDIR += smbldap-tools diff --git a/net/slapi-nis/Makefile b/net/slapi-nis/Makefile new file mode 100644 index 000000000000..a3afa4da765b --- /dev/null +++ b/net/slapi-nis/Makefile @@ -0,0 +1,41 @@ +PORTNAME= slapi-nis +DISTVERSION= 0.70.0 +CATEGORIES= net +MASTER_SITES= https://codeberg.org/freeipa/slapi-nis/archive/ + +MAINTAINER= [email protected] +COMMENT= Schema Compatibility plugin for 389 Directory Server +WWW= https://codeberg.org/freeipa/slapi-nis + +LICENSE= GPLv3+ +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= ${LOCALBASE}/include/dirsrv/slapi-plugin.h:net/389-ds-base +LIB_DEPENDS= libldap.so:net/openldap26-client \ + libnspr4.so:devel/nspr \ + libnss3.so:security/nss \ + libsss_nss_idmap.so:security/sssd2 +RUN_DEPENDS= 389-ds-base>=0:net/389-ds-base + +USES= autoreconf gmake libtool localbase:ldflags pkgconfig + +GNU_CONFIGURE= yes + +CONFIGURE_ARGS= --disable-nis \ + --disable-static \ + --enable-be-txns-by-default \ + --with-idviews \ + --with-ldap=openldap \ + --with-nsswitch \ + --with-pam \ + --with-pam-service=system \ + --with-server=dirsrv \ + --with-sss-nss-idmap + +INSTALL_TARGET= install-strip + +WRKSRC= ${WRKDIR}/${PORTNAME} + +PLIST_FILES= lib/dirsrv/plugins/schemacompat-plugin.so + +.include <bsd.port.mk> diff --git a/net/slapi-nis/distinfo b/net/slapi-nis/distinfo new file mode 100644 index 000000000000..5316d6d296a7 --- /dev/null +++ b/net/slapi-nis/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1786096248 +SHA256 (slapi-nis-0.70.0.tar.gz) = d38cb3eb4c6d147fa9e4012ed96676847d8b14ec2c8b81c0b092534f69a8c3d5 +SIZE (slapi-nis-0.70.0.tar.gz) = 294083 diff --git a/net/slapi-nis/files/patch-Makefile.am b/net/slapi-nis/files/patch-Makefile.am new file mode 100644 index 000000000000..eec268180929 --- /dev/null +++ b/net/slapi-nis/files/patch-Makefile.am @@ -0,0 +1,9 @@ +--- Makefile.am.orig 2026-08-07 12:00:39.904332000 +0200 ++++ Makefile.am 2026-08-07 12:00:39.907284000 +0200 +@@ -1,5 +1,5 @@ + EXTRA_DIST = COPYING NEWS README STATUS slapi-nis.spec doc/sch-*.txt doc/format-*.txt doc/betxn-notes.txt doc/examples/sch-*.ldif.in doc/devel doc/ipa +-SUBDIRS = yp src tests ++SUBDIRS = yp src + ACLOCAL_AMFLAGS=-I m4 + + noinst_DATA = diff --git a/net/slapi-nis/files/patch-configure.ac b/net/slapi-nis/files/patch-configure.ac new file mode 100644 index 000000000000..c5953cb67245 --- /dev/null +++ b/net/slapi-nis/files/patch-configure.ac @@ -0,0 +1,24 @@ +--- configure.ac.orig 2026-08-07 11:29:23.851720000 +0200 ++++ configure.ac 2026-08-07 11:33:11.008191000 +0200 +@@ -608,19 +608,9 @@ + AC_SUBST(test_gid) + test_basedn=dc=example,dc=com + AC_SUBST(test_basedn) +-while true ; do +- test_ldapport=$RANDOM +- if test $test_ldapport -ge 1024 ; then +- break +- fi +-done ++test_ldapport=`expr $$ % 64512 + 1024` + AC_SUBST(test_ldapport) +-while true ; do +- test_nisport=$RANDOM +- if test $test_nisport -ge 1024 ; then +- break +- fi +-done ++test_nisport=`expr $$ % 63488 + 2048` + if test "x$enable_nis" = xyes ; then + AC_SUBST(test_nisport) + NIS_PLUGIN_CONTINUE_WITHOUT_PORTMAP_ENV="nis_plugin_continue_without_portmap_for_testing_only_no_i_really_mean_that" diff --git a/net/slapi-nis/files/patch-src_back-sch-sss_idmap.c b/net/slapi-nis/files/patch-src_back-sch-sss_idmap.c new file mode 100644 index 000000000000..22126afb2995 --- /dev/null +++ b/net/slapi-nis/files/patch-src_back-sch-sss_idmap.c @@ -0,0 +1,13 @@ +--- src/back-sch-sss_idmap.c.orig 2026-08-07 11:56:09.226628000 +0200 ++++ src/back-sch-sss_idmap.c 2026-08-07 11:56:09.233987000 +0200 +@@ -47,8 +47,10 @@ + return NSS_STATUS_SUCCESS; + case ENOENT: + return NSS_STATUS_NOTFOUND; ++#ifdef ETIME + case ETIME: + /* fall-through */ ++#endif + case ERANGE: + return NSS_STATUS_TRYAGAIN; + case ETIMEDOUT: diff --git a/net/slapi-nis/pkg-descr b/net/slapi-nis/pkg-descr new file mode 100644 index 000000000000..294faa55eb5c --- /dev/null +++ b/net/slapi-nis/pkg-descr @@ -0,0 +1,3 @@ +slapi-nis provides the Schema Compatibility plugin for 389 Directory +Server. The plugin presents alternate LDAP views required by FreeIPA +compatibility features, including support for SSSD ID mapping and ID views.