From nobody Fri May 27 13:45:59 2022 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 34C671B4EF44; Fri, 27 May 2022 13:46:00 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4L8mKg72r4z3Gxy; Fri, 27 May 2022 13:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1653659160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YH+GtijJTccBXaWe4FlOVHAfgjAT036KqZVFq9+7NhE=; b=tpQoQtrwRcpUVHl2LMnEPplUgc+FMItP63mCU2f3kRNOeoE9IzjjOg4+kXiQ3L9pLIM+By y/CNMmitpd/M5p2RZXsAZXtEuCOjC5k6FKUDzLK4Zk1AkjJfKH/uc5rKne4z2mgG0w74fi sVQVI+Ag+RGAS7sriqP6HvQAebnhsggDFHYoH3uBA335fKmJjKRp8iJQQQAhQzwAx4hFTB C+Byvc2O4eYlLjeA9xidQphuwEPZAPts/mpWEQnNmS4hT8Q+N6fdZw3pr9tBMMK3samZsS u9wXWvarlXoMUzknbHRSM+UPmIsoeNOsY4BX6+U18t1hxlANz7Y8osAxg2rMmA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id B2D7F232E8; Fri, 27 May 2022 13:45:59 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 24RDjxIm079851; Fri, 27 May 2022 13:45:59 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 24RDjxb2079850; Fri, 27 May 2022 13:45:59 GMT (envelope-from git) Date: Fri, 27 May 2022 13:45:59 GMT Message-Id: <202205271345.24RDjxb2079850@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Cy Schubert Subject: git: d33c01d9cc18 - main - security/krb5-120: Welcome new krb5 1.20 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cy X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d33c01d9cc1864a2be757fb99caa63223cfe5519 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1653659160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=YH+GtijJTccBXaWe4FlOVHAfgjAT036KqZVFq9+7NhE=; b=Rw7oqo8W8zR2+TjxGIKh/p0yBjUVVrqAA3DGwVfkic5P+px2N8g6w34GVJ14uGE87DFjGX OxzZ8iZEvuEIUZ8LAPGphjxMAv50YWE/NjvEKt8ZvxgqoVzfqQWjYYUGscgt3+gdHk6YFM MkYHaEYkEY7N8HLyp0UrrXn2fBIcKVyRUIHTfR7qNEraUsjsud139a0QOspJ8yvdX2TKbw D2g495fjWZcNsLHylfmoPus6r36k3SY+9H93DtizJEwzNrv82jRQLSNaQpjf3rdWRjpAgw UA1TXEj3kPmDNbnhPuwLQpGfVgPeaTM3MzJD8XAi42iUtQjqZKLZbnbtm4gABA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1653659160; a=rsa-sha256; cv=none; b=G3LCrQeRjBKBFHLdR6X/sWfBqedXIWWBR4JH5JAIWbSvHjYSEwfGKsO7phcpzdRTnerRAb 26fi5NAfQfQqerMbNwpjd3aVvGn7wz0LLtzxIdDBv1dqmSLNiZSYCabLexpffURIAxZ1zN M5A5U5Dnciq/EVBdJW2fdKleld7Ry3CvXSWemtAFTPgJBYQB7ERRLUZNAwUZfQDDdTabU/ I/6hQ18kHBxxH0ROKS+dpnSyER4UQ+MQ1ftEccy2vw92aHJXNriHr4jJGdqU8umo8blCCz zhGfU+2fBfiO3Cuk6dymoD59YhGVjseiKrPzxbTsM8mC74Hx/lUdX+ucvcpj5A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by cy: URL: https://cgit.FreeBSD.org/ports/commit/?id=d33c01d9cc1864a2be757fb99caa63223cfe5519 commit d33c01d9cc1864a2be757fb99caa63223cfe5519 Author: Cy Schubert AuthorDate: 2022-05-27 00:25:26 +0000 Commit: Cy Schubert CommitDate: 2022-05-27 13:45:07 +0000 security/krb5-120: Welcome new krb5 1.20 Welcome the new krb5-120 (1.20) from MIT. krb5-118 is now deprecated and scheduled for removal a year from now. --- security/Makefile | 1 + security/krb5-118/Makefile | 3 + security/krb5-120/Makefile | 147 +++++++++++++++++ security/krb5-120/distinfo | 3 + security/krb5-120/files/kdc.in | 4 + security/krb5-120/files/kpropd.in | 26 +++ .../krb5-120/files/patch-clients__ksu__Makefile.in | 18 +++ security/krb5-120/files/patch-config__pre.in | 23 +++ security/krb5-120/files/patch-config__shlib.conf | 22 +++ .../krb5-120/files/patch-lib-krb5-os-localaddr.c | 75 +++++++++ .../files/patch-lib__gssapi__krb5__import_name.c | 14 ++ ...lugins_preauth_pkinit_pkinit__crypto__openssl.c | 23 +++ security/krb5-120/pkg-descr | 24 +++ security/krb5-120/pkg-plist | 177 +++++++++++++++++++++ security/krb5/Makefile | 4 +- 15 files changed, 562 insertions(+), 2 deletions(-) diff --git a/security/Makefile b/security/Makefile index 9cf3b7e654d6..6250365e1a7f 100644 --- a/security/Makefile +++ b/security/Makefile @@ -258,6 +258,7 @@ SUBDIR += krb5 SUBDIR += krb5-118 SUBDIR += krb5-119 + SUBDIR += krb5-120 SUBDIR += krb5-appl SUBDIR += krb5-devel SUBDIR += kstart diff --git a/security/krb5-118/Makefile b/security/krb5-118/Makefile index e1ec083d7209..0fecef0f0fbb 100644 --- a/security/krb5-118/Makefile +++ b/security/krb5-118/Makefile @@ -8,6 +8,9 @@ MASTER_SITES= http://web.mit.edu/kerberos/dist/${PORTNAME}/${PORTVERSION:C/^[0- PKGNAMESUFFIX= -118 .endif +DEPECATED= Desupported by MIT following 1.20 +EXPIRY= 2023-05-26 + PATCH_SITES= http://web.mit.edu/kerberos/advisories/ PATCH_DIST_STRIP= -p2 diff --git a/security/krb5-120/Makefile b/security/krb5-120/Makefile new file mode 100644 index 000000000000..16e0331e4290 --- /dev/null +++ b/security/krb5-120/Makefile @@ -0,0 +1,147 @@ +# Created by: nectar@FreeBSD.org + +PORTNAME= krb5 +PORTVERSION= 1.20 +CATEGORIES= security +MASTER_SITES= http://web.mit.edu/kerberos/dist/${PORTNAME}/${PORTVERSION:C/^[0-9]*\.[0-9]*/&X/:C/X\.[0-9]*$//:C/X//}/ +.if !defined(MASTERDIR) +PKGNAMESUFFIX= -120 +.endif + +PATCH_SITES= http://web.mit.edu/kerberos/advisories/ +PATCH_DIST_STRIP= -p2 + +MAINTAINER= cy@FreeBSD.org +COMMENT= MIT implementation of RFC 4120 network authentication service + +LICENSE= MIT + +CONFLICTS= heimdal krb5 krb5-* +CONFLICTS_BUILD= boringssl + +KERBEROSV_URL= http://web.mit.edu/kerberos/ +USES= compiler:c++11-lang cpe gmake gettext-runtime \ + gssapi:bootstrap,mit libtool:build localbase \ + perl5 pkgconfig ssl +USE_CSTD= gnu99 +USE_LDCONFIG= yes +USE_PERL5= build +GNU_CONFIGURE= yes +CONFIGURE_ARGS?= --enable-shared --without-system-verto \ + --disable-rpath --localstatedir="${PREFIX}/var" \ + --runstatedir="${PREFIX}/var/run" +CONFIGURE_ENV= INSTALL="${INSTALL}" INSTALL_LIB="${INSTALL_LIB}" YACC="${YACC}" +MAKE_ARGS= INSTALL="${INSTALL}" INSTALL_LIB="${INSTALL_LIB}" + +CPE_VENDOR= mit +CPE_VERSION= 5-${PORTVERSION} +CPE_PRODUCT= kerberos + +OPTIONS_DEFINE= EXAMPLES NLS KRB5_PDF KRB5_HTML DNS_FOR_REALM LDAP LMDB +OPTIONS_DEFAULT= KRB5_PDF KRB5_HTML READLINE +OPTIONS_RADIO= CMD_LINE_EDITING +OPTIONS_RADIO_CMD_LINE_EDITING= READLINE LIBEDIT +CMD_LINE_EDITING_DESC= Command line editing for kadmin and ktutil +KRB5_PDF_DESC= Install krb5 PDF documentation +KRB5_HTML_DESC= Install krb5 HTML documentation +DNS_FOR_REALM_DESC= Enable DNS lookups for Kerberos realm names +DNS_FOR_REALM_CONFIGURE_ENABLE= dns-for-realm +LDAP= Enable LDAP support +LDAP_USE= OPENLDAP=yes +LDAP_CONFIGURE_WITH= ldap +LMDB_DESC= OpenLDAP Lightning Memory-Mapped Database support +LMDB_CONFIGURE_WITH= lmdb +LMDB_LIB_DEPENDS= liblmdb.so:databases/lmdb +LMDB_IMPLIES= LDAP +NLS_USES= gettext +READLINE_USES= readline +READLINE_CONFIGURE_WITH=readline +LIBEDIT_USES= libedit +LIBEDIT_CONFIGURE_WITH= libedit + +.if defined(KRB5_HOME) +PREFIX= ${KRB5_HOME} +.endif +CPPFLAGS+= -I${OPENSSLINC} +LDFLAGS+= -L${OPENSSLLIB} + +USE_RC_SUBR= kpropd +OPTIONS_SUB= yes +WRKSRC_SUBDIR= src +PORTEXAMPLES= kdc.conf krb5.conf services.append + +.include + +# Fix up -Wl,-rpath in LDFLAGS +.if !empty(KRB5_HOME) +_RPATH= ${KRB5_HOME}/lib: +.else +_RPATH= ${LOCALBASE}/lib: +.endif +.if !empty(LDFLAGS:M-Wl,-rpath,*) +.for F in ${LDFLAGS:M-Wl,-rpath,*} +LDFLAGS:= -Wl,-rpath,${_RPATH}${F:S/-Wl,-rpath,//} \ + ${LDFLAGS:N-Wl,-rpath,*} +.endfor +.endif + +.if defined(KRB5_HOME) && ${KRB5_HOME} != ${LOCALBASE} +BROKEN= LIB_DEPENDS when using KRB5_HOME is broken +.endif + +.if defined(PROGRAM_TRANSFORM_NAME) && ${PROGRAM_TRANSFORM_NAME} != "" +CONFIGURE_ARGS+= --program-transform-name="${PROGRAM_TRANSFORM_NAME}" +.endif + +HTML_DOC_DIR= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/doc/html +PDF_DOC_DIR= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/doc/pdf + +.include + +post-install: + @${MKDIR} ${STAGEDIR}${PREFIX}/share/doc/krb5 + @${SED} "s|%%PREFIX%%|${PREFIX}|" ${FILESDIR}/kdc.in > ${STAGEDIR}${PREFIX}/sbin/kdc; \ + ${CHMOD} +x ${STAGEDIR}${PREFIX}/sbin/kdc +# html documentation +.if ${PORT_OPTIONS:MKRB5_PDF} + pdf_files=`${FIND} ${PDF_DOC_DIR} ! -type d` + pdf_dirs=`${FIND} ${PDF_DOC_DIR} -type d` + for i in $${pdf_dirs}; do \ + ${MKDIR} ${STAGEDIR}${PREFIX}/share/doc/krb5/$${i}; \ + done; \ + for i in $${pdf_files}; do \ + ${INSTALL_DATA} $${pdf} ${PREFIX}/share/doc/krb5/$${i}; \ + ${ECHO_CMD} share/doc/krb5/$${i} >> ${TMPPLIST}; \ + done +.endif +.if ${PORT_OPTIONS:MKRB5_HTML} + html_files=`${FIND} ${HTML_DOC_DIR} ! -type d | ${GREP} -v /_sources` + html_dirs=`${FIND} ${HTML_DOC_DIR} -type d | ${GREP} -v /_sources` + for i in $${html_dirs}; do \ + ${MKDIR} ${PREFIX}/share/doc/krb5/$${i}; \ + done; \ + for i in $${html_files}; do \ + ${INSTALL_DATA} $${i} ${PREFIX}/share/doc/krb5/$${i}; \ + ${ECHO_CMD} share/doc/krb5/$${i} >> ${TMPPLIST}; \ + done +.endif +.if ${PORT_OPTIONS:MKRB5_PDF} + for i in $${pdf_dirs}; do \ + ${ECHO_CMD} @dir share/doc/krb5/$${i} >> ${TMPPLIST}; \ + done | ${TAIL} -r >> ${TMPPLIST} +.endif +.if ${PORT_OPTIONS:MKRB5_HTML} + for i in $${html_dirs}; do \ + ${ECHO_CMD} @dir share/doc/krb5/$${i} >> ${TMPPLIST}; \ + done | ${TAIL} -r >> ${TMPPLIST} +.endif + ${ECHO_CMD} @dir share/doc/krb5 >> ${TMPPLIST} + +post-install-LDAP-on: + ${MKDIR} ${STAGEDIR}${DATADIR} + ${INSTALL_DATA} ${WRKSRC}/plugins/kdb/ldap/libkdb_ldap/kerberos.schema \ + ${STAGEDIR}${DATADIR} + ${INSTALL_DATA} ${WRKSRC}/plugins/kdb/ldap/libkdb_ldap/kerberos.ldif \ + ${STAGEDIR}${DATADIR} + +.include diff --git a/security/krb5-120/distinfo b/security/krb5-120/distinfo new file mode 100644 index 000000000000..a6aaac17bfbc --- /dev/null +++ b/security/krb5-120/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1653608400 +SHA256 (krb5-1.20.tar.gz) = 7e022bdd3c851830173f9faaa006a230a0e0fdad4c953e85bff4bf0da036e12f +SIZE (krb5-1.20.tar.gz) = 8660756 diff --git a/security/krb5-120/files/kdc.in b/security/krb5-120/files/kdc.in new file mode 100644 index 000000000000..d462d45d47f6 --- /dev/null +++ b/security/krb5-120/files/kdc.in @@ -0,0 +1,4 @@ +#!/bin/sh - + +set -- $(echo "$*" | sed 's/--detach//') +exec %%PREFIX%%/sbin/krb5kdc "$@" diff --git a/security/krb5-120/files/kpropd.in b/security/krb5-120/files/kpropd.in new file mode 100644 index 000000000000..d2147af059d7 --- /dev/null +++ b/security/krb5-120/files/kpropd.in @@ -0,0 +1,26 @@ +#!/bin/sh + +# PROVIDE: kpropd +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# kpropd_enable (bool): Set to NO by default. +# Set it to YES to enable kpropd. +# kpropd_flags (str): Set to "" by default. + +. /etc/rc.subr + +name=kpropd +rcvar=kpropd_enable + +load_rc_config $name + +: ${kpropd_enable:="NO"} +: ${kpropd_flags=""} + +command=%%PREFIX%%/sbin/${name} + +run_rc_command "$1" diff --git a/security/krb5-120/files/patch-clients__ksu__Makefile.in b/security/krb5-120/files/patch-clients__ksu__Makefile.in new file mode 100644 index 000000000000..3544db84fc2c --- /dev/null +++ b/security/krb5-120/files/patch-clients__ksu__Makefile.in @@ -0,0 +1,18 @@ +--- clients/ksu/Makefile.in.orig 2019-05-21 14:09:23.000000000 -0700 ++++ clients/ksu/Makefile.in 2019-05-21 20:30:48.612847000 -0700 +@@ -1,6 +1,6 @@ + mydir=clients$(S)ksu + BUILDTOP=$(REL)..$(S).. +-DEFINES = -DGET_TGT_VIA_PASSWD -DPRINC_LOOK_AHEAD -DCMD_PATH='"/usr/local/sbin /usr/local/bin /sbin /bin /usr/sbin /usr/bin"' ++DEFINES = -DGET_TGT_VIA_PASSWD -DPRINC_LOOK_AHEAD -DCMD_PATH='"/sbin /bin /usr/sbin /usr/bin"' -DDEBUG + + KSU_LIBS=@KSU_LIBS@ + +@@ -30,6 +30,6 @@ + + install: + -for f in ksu; do \ +- $(INSTALL_SETUID) $$f \ ++ $(INSTALL_PROGRAM) $$f \ + $(DESTDIR)$(CLIENT_BINDIR)/`echo $$f|sed '$(transform)'`; \ + done diff --git a/security/krb5-120/files/patch-config__pre.in b/security/krb5-120/files/patch-config__pre.in new file mode 100644 index 000000000000..8527c550dc25 --- /dev/null +++ b/security/krb5-120/files/patch-config__pre.in @@ -0,0 +1,23 @@ +--- config/pre.in.orig 2014-10-15 16:55:10.000000000 -0700 ++++ config/pre.in 2015-02-04 12:43:45.693875606 -0800 +@@ -178,9 +178,9 @@ + INSTALL=@INSTALL@ + INSTALL_STRIP= + INSTALL_PROGRAM=@INSTALL_PROGRAM@ $(INSTALL_STRIP) +-INSTALL_SCRIPT=@INSTALL_PROGRAM@ ++INSTALL_SCRIPT=@INSTALL_SCRIPT@ + INSTALL_DATA=@INSTALL_DATA@ +-INSTALL_SHLIB=@INSTALL_SHLIB@ ++INSTALL_SHLIB=$(INSTALL_LIB) + INSTALL_SETUID=$(INSTALL) $(INSTALL_STRIP) -m 4755 -o root + ## This is needed because autoconf will sometimes define @exec_prefix@ to be + ## ${prefix}. +@@ -197,7 +197,7 @@ + ADMIN_BINDIR = @sbindir@ + SERVER_BINDIR = @sbindir@ + CLIENT_BINDIR =@bindir@ +-PKGCONFIG_DIR = @libdir@/pkgconfig ++PKGCONFIG_DIR = $(prefix)/libdata/pkgconfig + ADMIN_MANDIR = $(KRB5MANROOT)/man8 + SERVER_MANDIR = $(KRB5MANROOT)/man8 + CLIENT_MANDIR = $(KRB5MANROOT)/man1 diff --git a/security/krb5-120/files/patch-config__shlib.conf b/security/krb5-120/files/patch-config__shlib.conf new file mode 100644 index 000000000000..3697783e47be --- /dev/null +++ b/security/krb5-120/files/patch-config__shlib.conf @@ -0,0 +1,22 @@ +--- config/shlib.conf.orig 2015-05-08 16:27:02.000000000 -0700 ++++ config/shlib.conf 2015-10-20 21:54:39.834348929 -0700 +@@ -320,14 +320,15 @@ + PICFLAGS=-fpic + ;; + esac +- SHLIBVEXT='.so.$(LIBMAJOR)' +- RPATH_FLAG='-Wl,--enable-new-dtags -Wl,-rpath -Wl,' ++ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)' ++ SHLIBSEXT='.so.$(LIBMAJOR)' ++ LDCOMBINE='libtool --tag=CC --mode=link cc -Xcompiler -shared -Wl,-soname=$(LIBPREFIX)$(LIBBASE)$(SHLIBVEXT)' ++ RPATH_FLAG='-Wl,-rpath -Wl,' + PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)' + CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)' + CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)' + SHLIBEXT=.so +- LDCOMBINE='ld -Bshareable' +- SHLIB_RPATH_FLAGS='--enable-new-dtags -rpath $(SHLIB_RDIRS)' ++ SHLIB_RPATH_FLAGS='-rpath $(SHLIB_RDIRS)' + SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)' + CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)' + CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)' diff --git a/security/krb5-120/files/patch-lib-krb5-os-localaddr.c b/security/krb5-120/files/patch-lib-krb5-os-localaddr.c new file mode 100644 index 000000000000..06b6043f22c9 --- /dev/null +++ b/security/krb5-120/files/patch-lib-krb5-os-localaddr.c @@ -0,0 +1,75 @@ +--- lib/krb5/os/localaddr.c.orig 2009-10-30 20:17:27.000000000 -0700 ++++ lib/krb5/os/localaddr.c 2010-04-19 12:39:56.707090973 -0700 +@@ -175,6 +175,7 @@ + } + #endif + ++#if 0 + static int + is_loopback_address(struct sockaddr *sa) + { +@@ -191,6 +192,7 @@ + return 0; + } + } ++#endif + + #ifdef HAVE_IFADDRS_H + #include +@@ -467,12 +469,14 @@ + ifp->ifa_flags &= ~IFF_UP; + continue; + } ++#if 0 + if (is_loopback_address(ifp->ifa_addr)) { + /* Pretend it's not up, so the second pass will skip + it. */ + ifp->ifa_flags &= ~IFF_UP; + continue; + } ++#endif + /* If this address is a duplicate, punt. */ + match = 0; + for (ifp2 = ifp_head; ifp2 && ifp2 != ifp; ifp2 = ifp2->ifa_next) { +@@ -601,11 +605,13 @@ + } + /*@=moduncon@*/ + ++#if 0 + /* None of the current callers want loopback addresses. */ + if (is_loopback_address((struct sockaddr *)&lifr->lifr_addr)) { + Tprintf ((" loopback\n")); + goto skip; + } ++#endif + /* Ignore interfaces that are down. */ + if ((lifreq.lifr_flags & IFF_UP) == 0) { + Tprintf ((" down\n")); +@@ -772,11 +778,13 @@ + } + /*@=moduncon@*/ + ++#if 0 + /* None of the current callers want loopback addresses. */ + if (is_loopback_address(&lifr->iflr_addr)) { + Tprintf ((" loopback\n")); + goto skip; + } ++#endif + /* Ignore interfaces that are down. */ + if ((lifreq.iflr_flags & IFF_UP) == 0) { + Tprintf ((" down\n")); +@@ -987,11 +995,13 @@ + } + /*@=moduncon@*/ + ++#if 0 + /* None of the current callers want loopback addresses. */ + if (is_loopback_address(&ifreq.ifr_addr)) { + Tprintf ((" loopback\n")); + goto skip; + } ++#endif + /* Ignore interfaces that are down. */ + if ((ifreq.ifr_flags & IFF_UP) == 0) { + Tprintf ((" down\n")); diff --git a/security/krb5-120/files/patch-lib__gssapi__krb5__import_name.c b/security/krb5-120/files/patch-lib__gssapi__krb5__import_name.c new file mode 100644 index 000000000000..40f116af2196 --- /dev/null +++ b/security/krb5-120/files/patch-lib__gssapi__krb5__import_name.c @@ -0,0 +1,14 @@ +--- lib/gssapi/krb5/import_name.c.orig Mon Jul 18 15:12:42 2005 ++++ lib/gssapi/krb5/import_name.c Tue Nov 8 09:53:58 2005 +@@ -33,6 +33,11 @@ + #endif + #endif + ++#include ++#if __FreeBSD_version < 500100 ++#include ++#endif ++ + #ifdef HAVE_STRING_H + #include + #else diff --git a/security/krb5-120/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c b/security/krb5-120/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c new file mode 100644 index 000000000000..a26d295ebf75 --- /dev/null +++ b/security/krb5-120/files/patch-plugins_preauth_pkinit_pkinit__crypto__openssl.c @@ -0,0 +1,23 @@ +--- plugins/preauth/pkinit/pkinit_crypto_openssl.c.orig 2021-11-05 16:24:07.000000000 -0700 ++++ plugins/preauth/pkinit/pkinit_crypto_openssl.c 2021-11-08 10:10:45.431325000 -0800 +@@ -178,7 +178,8 @@ + (*_x509_pp) = PKCS7_cert_from_signer_info(_p7,_si) + #endif + +-#if OPENSSL_VERSION_NUMBER < 0x10100000L ++#if (defined(OPENSSL_VERSION_NUMBER) && OPENSSL_VERSION_NUMBER < 0x10100000L) || \ ++ defined(LIBRESSL_VERSION_NUMBER) + + /* 1.1 standardizes constructor and destructor names, renaming + * EVP_MD_CTX_{create,destroy} and deprecating ASN1_STRING_data. */ +@@ -722,6 +723,10 @@ + DH_free(dh); + return pkey; + } ++ ++#if defined(LIBRESSL_VERSION_NUMBER) && !defined(static_ASN1_SEQUENCE_END_name) ++#define static_ASN1_SEQUENCE_END_name ASN1_SEQUENCE_END_name ++#endif + + static struct pkcs11_errstrings { + short code; diff --git a/security/krb5-120/pkg-descr b/security/krb5-120/pkg-descr new file mode 100644 index 000000000000..5940aeab0176 --- /dev/null +++ b/security/krb5-120/pkg-descr @@ -0,0 +1,24 @@ +Kerberos V5 is an authentication system developed at MIT. +WWW: http://web.mit.edu/kerberos/ + +Abridged from the User Guide: + Under Kerberos, a client sends a request for a ticket to the + Key Distribution Center (KDC). The KDC creates a ticket-granting + ticket (TGT) for the client, encrypts it using the client's + password as the key, and sends the encrypted TGT back to the + client. The client then attempts to decrypt the TGT, using + its password. If the client successfully decrypts the TGT, it + keeps the decrypted TGT, which indicates proof of the client's + identity. The TGT permits the client to obtain additional tickets, + which give permission for specific services. + Since Kerberos negotiates authenticated, and optionally encrypted, + communications between two points anywhere on the internet, it + provides a layer of security that is not dependent on which side of a + firewall either client is on. + The Kerberos V5 package is designed to be easy to use. Most of the + commands are nearly identical to UNIX network programs you are already + used to. Kerberos V5 is a single-sign-on system, which means that you + have to type your password only once per session, and Kerberos does + the authenticating and encrypting transparently. + +Jacques Vidrine diff --git a/security/krb5-120/pkg-plist b/security/krb5-120/pkg-plist new file mode 100644 index 000000000000..f803ffb5ff2b --- /dev/null +++ b/security/krb5-120/pkg-plist @@ -0,0 +1,177 @@ +bin/compile_et +bin/gss-client +bin/k5srvutil +bin/kadmin +bin/kdestroy +bin/kinit +bin/klist +bin/kpasswd +bin/krb5-config +@mode 04755 +@owner root +@group wheel +bin/ksu +@mode +@owner root +@group wheel +bin/kswitch +bin/ktutil +bin/kvno +bin/sclient +bin/sim_client +bin/uuclient +include/com_err.h +include/gssapi.h +include/gssapi/gssapi.h +include/gssapi/gssapi_alloc.h +include/gssapi/gssapi_ext.h +include/gssapi/gssapi_generic.h +include/gssapi/gssapi_krb5.h +include/gssapi/mechglue.h +include/gssrpc/auth.h +include/gssrpc/auth_gss.h +include/gssrpc/auth_gssapi.h +include/gssrpc/auth_unix.h +include/gssrpc/clnt.h +include/gssrpc/netdb.h +include/gssrpc/pmap_clnt.h +include/gssrpc/pmap_prot.h +include/gssrpc/pmap_rmt.h +include/gssrpc/rename.h +include/gssrpc/rpc.h +include/gssrpc/rpc_msg.h +include/gssrpc/svc.h +include/gssrpc/svc_auth.h +include/gssrpc/types.h +include/gssrpc/xdr.h +include/krad.h +include/krb5.h +include/krb5/ccselect_plugin.h +include/krb5/clpreauth_plugin.h +include/krb5/hostrealm_plugin.h +include/krb5/kadm5_hook_plugin.h +include/krb5/kdcpolicy_plugin.h +include/krb5/kdcpreauth_plugin.h +include/krb5/localauth_plugin.h +include/krb5/krb5.h +include/krb5/locate_plugin.h +include/krb5/plugin.h +include/krb5/pwqual_plugin.h +include/kadm5/admin.h +include/kadm5/chpass_util_strings.h +include/krb5/kadm5_auth_plugin.h +include/kadm5/kadm_err.h +include/kdb.h +include/krb5/certauth_plugin.h +include/krb5/preauth_plugin.h +include/profile.h +include/verto-module.h +include/verto.h +lib/libcom_err.so +lib/libcom_err.so.3 +lib/libcom_err.so.3.0 +lib/libgssapi_krb5.so +lib/libgssapi_krb5.so.2 +lib/libgssapi_krb5.so.2.2 +lib/libgssrpc.so +lib/libgssrpc.so.4 +lib/libgssrpc.so.4.2 +lib/libk5crypto.so +lib/libk5crypto.so.3 +lib/libk5crypto.so.3.1 +lib/libkadm5clnt.so +lib/libkadm5clnt_mit.so +lib/libkadm5clnt_mit.so.12 +lib/libkadm5clnt_mit.so.12.0 +lib/libkadm5srv.so +lib/libkadm5srv_mit.so +lib/libkadm5srv_mit.so.12 +lib/libkadm5srv_mit.so.12.0 +lib/libkdb5.so +lib/libkdb5.so.10 +lib/libkdb5.so.10.0 +lib/libkrb5.so +lib/libkrb5.so.3 +lib/libkrb5.so.3.3 +lib/libkrb5support.so +lib/libkrb5support.so.0 +lib/libkrb5support.so.0.1 +lib/krb5/plugins/kdb/db2.so +%%LMDB%%lib/krb5/plugins/kdb/klmdb.so +lib/krb5/plugins/tls/k5tls.so +%%LDAP%%lib/krb5/plugins/kdb/kldap.so +lib/krb5/plugins/preauth/otp.so +lib/krb5/plugins/preauth/pkinit.so +lib/krb5/plugins/preauth/spake.so +lib/krb5/plugins/preauth/test.so +%%LDAP%%lib/libkdb_ldap.so +%%LDAP%%lib/libkdb_ldap.so.1 +%%LDAP%%lib/libkdb_ldap.so.1.0 +lib/libkrad.so +lib/libkrad.so.0 +lib/libkrad.so.0.0 +lib/libverto.so +lib/libverto.so.0 +lib/libverto.so.0.0 +libdata/pkgconfig/gssrpc.pc +libdata/pkgconfig/kadm-client.pc +libdata/pkgconfig/kadm-server.pc +libdata/pkgconfig/kdb.pc +libdata/pkgconfig/krb5-gssapi.pc +libdata/pkgconfig/krb5.pc +libdata/pkgconfig/mit-krb5-gssapi.pc +libdata/pkgconfig/mit-krb5.pc +man/man1/compile_et.1.gz +man/man1/k5srvutil.1.gz +man/man1/kadmin.1.gz +man/man1/kdestroy.1.gz +man/man1/kinit.1.gz +man/man1/klist.1.gz +man/man1/kpasswd.1.gz +man/man1/krb5-config.1.gz +man/man1/ksu.1.gz +man/man1/kswitch.1.gz +man/man1/ktutil.1.gz +man/man1/kvno.1.gz +man/man1/sclient.1.gz +man/man5/.k5identity.5.gz +man/man5/.k5login.5.gz +man/man5/k5identity.5.gz +man/man5/k5login.5.gz +man/man5/kadm5.acl.5.gz +man/man5/kdc.conf.5.gz +man/man5/krb5.conf.5.gz +man/man7/kerberos.7.gz +man/man8/kadmin.local.8.gz +man/man8/kadmind.8.gz +man/man8/kdb5_ldap_util.8.gz +man/man8/kdb5_util.8.gz +man/man8/kprop.8.gz +man/man8/kpropd.8.gz +man/man8/kproplog.8.gz +man/man8/krb5kdc.8.gz +man/man8/sserver.8.gz +sbin/gss-server +sbin/kadmin.local +sbin/kadmind +%%LDAP%%sbin/kdb5_ldap_util +sbin/kdc +sbin/kdb5_util +sbin/kprop +sbin/kpropd +sbin/kproplog +sbin/krb5-send-pr +sbin/krb5kdc +sbin/sim_server +sbin/sserver +sbin/uuserver +share/et/et_c.awk +share/et/et_h.awk +%%NLS%%share/locale/de/LC_MESSAGES/mit-krb5.mo +%%NLS%%share/locale/en_US/LC_MESSAGES/mit-krb5.mo +%%LDAP%%%%DATADIR%%/kerberos.schema +%%LDAP%%%%DATADIR%%/kerberos.ldif +@dir lib/krb5/plugins/authdata +@dir lib/krb5/plugins/libkrb5 +@dir var/run/krb5kdc +@dir var/krb5kdc diff --git a/security/krb5/Makefile b/security/krb5/Makefile index 31d0674d672f..bef90ee39fcf 100644 --- a/security/krb5/Makefile +++ b/security/krb5/Makefile @@ -1,7 +1,7 @@ -VERSIONS= 118 119 +VERSIONS= 119 120 # When changing this, remember to build test security/sssd with SMB=on # Reference: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244778 -KRB5_VERSION?= 119 +KRB5_VERSION?= 120 MASTERDIR= ${.CURDIR}/../krb5-${KRB5_VERSION}