public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2016-07-06  1:31 Lars Wendler
  0 siblings, 0 replies; 12+ messages in thread
From: Lars Wendler @ 2016-07-06  1:31 UTC (permalink / raw
  To: gentoo-commits

commit:     e55b16b51f8a9b19e1708b09194d2aaee2259ac3
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  6 01:30:34 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jul  6 01:30:58 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e55b16b5

net-dns/nsd: Bump to versions 3.2.22 and 4.1.10 (bug #588100).

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-dns/nsd/Manifest                               |   2 +
 .../nsd-4.1.10-r4644-build-without-ipv6.patch      |  23 +++++
 net-dns/nsd/nsd-3.2.22.ebuild                      |  87 ++++++++++++++++++
 net-dns/nsd/nsd-4.1.10.ebuild                      | 100 +++++++++++++++++++++
 4 files changed, 212 insertions(+)

diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index 8fc4155..69cb376 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -1,4 +1,6 @@
 DIST nsd-3.2.20.tar.gz 925600 SHA256 cc3f04291a043d5350e67e1590003429ebf64975367858f70b3bf623ce609e16 SHA512 9decbdde984ec6b8d491f57a2a38441415721f108898f552a19740ed51c56e049cb01059952937841a2f8ea9574e3ee6a03177a4c23e827295c1fd6afbcd3d99 WHIRLPOOL 713d1d596c1176983e40a658f1033ba1275d23abcde9f3902c76823a2071ee3230baa21b9dc5af65c8abe270fbb242fb521b4246caee3d128dddd18fe530c69c
 DIST nsd-3.2.21.tar.gz 923043 SHA256 1a3a1ceebff7277e9632160575543e0648dc0d1dfb2ffe42ed23fabec7503501 SHA512 5bd37aff0fcb08b2ef3bf3c18281534be29941203483d9056c4fc733825879f9964a46d62ffd9b8fc5b9be2a2063e481810b4d169bfeee314be6ce217fce6798 WHIRLPOOL eb8788a3288f4cc66fd7f58ca3438bf0420baeb892e8960b8533bd6caebd5bef4596bb4d71d577434a0a14e5e9c595b2a9a2642144531e77d7e7e564441e9337
+DIST nsd-3.2.22.tar.gz 924627 SHA256 47c2b424c719a1535f709f4e82d796bca43cad86731f5f275c9367040a474a03 SHA512 2c0cbc97eaa376dcf496ed4323d9f7afb0dbf1852fa5fc9d8c7ecbcf8aaa1b025d56b5e439d19bc36b50deaf5f753fb08109d7e25dc1f8223fe85b7d017f81c3 WHIRLPOOL 271b47a331f2a63dd51bf642fed7083f27660f618fe0418c6b3a361d7b0a7ebda1a300d12d92c1c03e21cd17560ba4f2f2cdac76f7c6793d4befc71b66646f7d
+DIST nsd-4.1.10.tar.gz 1075892 SHA256 3a757014046752a0b0b11c1a2e22a36bb796f89f6939147ed3226556b4298727 SHA512 e77c858d34002e54085f3a39eda7c6229f21f980339beb9a9d5719245d6010e5435a13dba978ac1aed9b712ed49e5a8ca75cb216cb50dd590556077d32b97a96 WHIRLPOOL 8d04b8661e821ec49c93a00a088bec83b3ca3faf7c07d9d720cba1c5c71fc2db3aafc95b5d0d3a8e848c38f11bd9daeb1a53da752bcf8314722aefbd1d55c4d5
 DIST nsd-4.1.7.tar.gz 1072576 SHA256 7ba8beb29b495ab795e927d9aa82a5bb1b66296a78f61ed47d6ccfe59e9b1a8a SHA512 c2bdb03a09ac06d70feef2183e2d777777ba7830777bac67ab974016f52791ad7ed9227a37a31325f5e4ab4baeacc4cb562d5af4cd85e5b6ddc83422ae5d0df8 WHIRLPOOL 4ba203a4f5e365f8f850436b9d721fa1d50dd180bfec14d6ab7ab3b89d2ff5a7fd5bc93c1f8b304a2fe5a070d4f3ae4f5786eeb8d9fbb159c53f12346d0342ba
 DIST nsd-4.1.9.tar.gz 1073120 SHA256 b811224d635331de741f1723aefc41adda0a0a3a499ec310aa01dd3b4b95c8f2 SHA512 4602dfd07f41dca80fb3b2af471305ad2baba45f7aa294bd3e50d673ec6cc3b1170b410a425796cef52b3af6eea6282dcb00c1f21d5642b0962b3d111dade940 WHIRLPOOL b747afb74e26f10b6170768dd46297356e7280021a33e94a0722963a60407d91eed63465c487d61db1cbe03de70f526a9a1657e6ede03eddf8d975ce81106beb

diff --git a/net-dns/nsd/files/nsd-4.1.10-r4644-build-without-ipv6.patch b/net-dns/nsd/files/nsd-4.1.10-r4644-build-without-ipv6.patch
new file mode 100644
index 0000000..cb59ca9
--- /dev/null
+++ b/net-dns/nsd/files/nsd-4.1.10-r4644-build-without-ipv6.patch
@@ -0,0 +1,23 @@
+ 4.1.10
+Index: query.c
+===================================================================
+diff --git a/query.c b/query.c
+--- a/query.c	(revision 4643)
++++ b/query.c	(revision 4644)
+@@ -704,11 +704,16 @@
+ 	result = answer_add_rrset(answer, section, owner, rrset);
+ 	switch (rrset_rrtype(rrset)) {
+ 	case TYPE_NS:
++#if defined(INET6)
+ 		/* if query over IPv6, swap A and AAAA; put AAAA first */
+ 		add_additional_rrsets(query, answer, rrset, 0, 1,
+ 			(query->addr.ss_family == AF_INET6)?
+ 			swap_aaaa_additional_rr_types:
+ 			default_additional_rr_types);
++#else
++		add_additional_rrsets(query, answer, rrset, 0, 1,
++				      default_additional_rr_types);
++#endif
+ 		break;
+ 	case TYPE_MB:
+ 		add_additional_rrsets(query, answer, rrset, 0, 0,

diff --git a/net-dns/nsd/nsd-3.2.22.ebuild b/net-dns/nsd/nsd-3.2.22.ebuild
new file mode 100644
index 0000000..314d1d7
--- /dev/null
+++ b/net-dns/nsd/nsd-3.2.22.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit user
+
+DESCRIPTION="An authoritative only, high performance, open source name server"
+HOMEPAGE="http://www.nlnetlabs.nl/projects/nsd"
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+MY_P=${PN}-${MY_PV}
+S="${WORKDIR}/${MY_P}"
+SRC_URI="http://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bind8-stats ipv6 minimal-responses mmap +nsec3 ratelimit root-server runtime-checks zone-stats"
+
+RDEPEND="
+	dev-libs/openssl:0=
+	virtual/yacc
+"
+DEPEND="
+	${RDEPEND}
+	sys-devel/flex
+"
+
+pkg_setup() {
+	enewgroup nsd
+	enewuser nsd -1 -1 -1 nsd
+}
+
+src_configure() {
+	# ebuild.sh sets localstatedir to /var/lib, but nsd expects /var in several locations
+	# some of these cannot be changed by arguments to econf/configure, f.i. logfile
+	econf \
+		--localstatedir="${EPREFIX}/var" \
+		--with-pidfile="${EPREFIX}/var/run/nsd/nsd.pid" \
+		--with-zonesdir="${EPREFIX}/var/lib/nsd" \
+		--enable-largefile \
+		$(use_enable bind8-stats) \
+		$(use_enable ipv6) \
+		$(use_enable minimal-responses) \
+		$(use_enable mmap) \
+		$(use_enable nsec3) \
+		$(use_enable ratelimit) \
+		$(use_enable root-server) \
+		$(use_enable runtime-checks checking) \
+		$(use_enable zone-stats)
+}
+
+src_install() {
+	emake DESTDIR="${D}" install
+
+	dodoc doc/{ChangeLog,CREDITS,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
+
+	insinto /usr/share/nsd
+	doins contrib/nsd.zones2nsd.conf
+
+	exeinto /etc/cron.daily
+	newexe "${FILESDIR}"/nsd3-patch.cron nsd-patch.cron
+
+	newinitd "${FILESDIR}"/nsd3.initd-r1 nsd
+
+	# database directory, writable by nsd for database updates and zone transfers
+	dodir /var/db/nsd
+	fowners nsd:nsd /var/db/nsd
+	fperms 750 /var/db/nsd
+
+	# zones directory, writable by root for 'nsdc patch'
+	dodir /var/lib/nsd
+	fowners root:nsd /var/lib/nsd
+	fperms 750 /var/lib/nsd
+
+	# remove /var/run data created by Makefile, handled by initd script
+	rm -r "${ED}"/var/run || die "could not remove /var/run/ directory"
+
+}
+
+pkg_postinst() {
+	elog "This is the last official upstream release of the 3.2.x series."
+	elog "Please consider upgrading to the 4.1.x series as that will remain the only one"
+	elog "still receiving (security) updates from upstream."
+}

diff --git a/net-dns/nsd/nsd-4.1.10.ebuild b/net-dns/nsd/nsd-4.1.10.ebuild
new file mode 100644
index 0000000..bc175e8
--- /dev/null
+++ b/net-dns/nsd/nsd-4.1.10.ebuild
@@ -0,0 +1,100 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit user systemd
+
+DESCRIPTION="An authoritative only, high performance, open source name server"
+HOMEPAGE="http://www.nlnetlabs.nl/projects/nsd"
+# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
+MY_PV=${PV/_rc/rc}
+MY_PV=${MY_PV/_beta/b}
+MY_P=${PN}-${MY_PV}
+S="${WORKDIR}/${MY_P}"
+SRC_URI="http://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bind8-stats ipv6 libevent minimal-responses mmap munin +nsec3 ratelimit root-server runtime-checks ssl libressl"
+
+RDEPEND="
+	virtual/yacc
+	libevent? ( dev-libs/libevent )
+	ssl? ( !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:= ) )
+	munin? ( net-analyzer/munin )
+"
+DEPEND="
+	${RDEPEND}
+	sys-devel/flex
+"
+
+src_prepare() {
+	# Fix for USE=-ipv6 compile bug in nsd 4.1.10 only, taken from upstream
+	eapply "${FILESDIR}/${P}-r4644-build-without-ipv6.patch"
+
+	# Fix the paths in the munin plugin to match our install
+	eapply "${FILESDIR}"/nsd_munin_.patch
+	eapply_user
+}
+
+src_configure() {
+	econf \
+		--enable-pie \
+		--enable-relro-now \
+		--enable-largefile \
+		--with-logfile="${EPREFIX}"/var/log/nsd.log \
+		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid \
+		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db \
+		--with-xfrdir="${EPREFIX}"/var/db/nsd \
+		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state \
+		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list \
+		--with-zonesdir="${EPREFIX}"/var/lib/nsd \
+		$(use_enable bind8-stats) \
+		$(use_enable bind8-stats zone-stats) \
+		$(use_enable ipv6) \
+		$(use_enable minimal-responses) \
+		$(use_enable mmap) \
+		$(use_enable nsec3) \
+		$(use_enable ratelimit) \
+		$(use_enable root-server) \
+		$(use_enable runtime-checks checking) \
+		$(use_with libevent) \
+		$(use_with ssl)
+}
+
+src_install() {
+	emake DESTDIR="${D}" install
+
+	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
+
+	newinitd "${FILESDIR}"/nsd.initd nsd
+
+	# install munin plugin and config
+	if use munin ; then
+		exeinto /usr/libexec/munin/plugins
+		doexe contrib/nsd_munin_
+		insinto /etc/munin/plugin-conf.d
+		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
+	fi
+
+	systemd_dounit "${FILESDIR}"/nsd.service
+
+	# remove the /run directory that usually resides on tmpfs and is
+	# being taken care of by the nsd init script anyway (checkpath)
+	rm -r "${ED}"/run || die "Failed to remove /run"
+}
+
+pkg_postinst() {
+	# Do this in postinst to ensure the uid/gid is consistent for binpkgs
+	enewgroup nsd
+	enewuser nsd -1 -1 -1 nsd
+
+	# database directory, writable by nsd for database updates and zone transfers
+	install -d -m 750 -o nsd -g nsd "${EROOT%/}"/var/db/nsd
+
+	# zones directory, writable by nsd for zone file updates (nsd-control write)
+	install -d -m 750 -o nsd -g nsd "${EROOT%/}"/var/lib/nsd
+}


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2016-08-24 15:59 Lars Wendler
  0 siblings, 0 replies; 12+ messages in thread
From: Lars Wendler @ 2016-08-24 15:59 UTC (permalink / raw
  To: gentoo-commits

commit:     b4926dc5f401a6ff15fc6e4facfffd90bdc25cc9
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 24 15:59:18 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Aug 24 15:59:30 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4926dc5

net-dns/nsd: Added partially rewritten init scrip with "reload" target.

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-dns/nsd/files/nsd.initd-r1 | 58 ++++++++++++++++++++++++++++++++++++++++++
 net-dns/nsd/nsd-4.1.11.ebuild  |  2 +-
 2 files changed, 59 insertions(+), 1 deletion(-)

diff --git a/net-dns/nsd/files/nsd.initd-r1 b/net-dns/nsd/files/nsd.initd-r1
new file mode 100755
index 00000000..3f71e76
--- /dev/null
+++ b/net-dns/nsd/files/nsd.initd-r1
@@ -0,0 +1,58 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+description="NSD is an authoritative-only, high performance, open source name server"
+extra_commands="configtest"
+extra_started_commands="reload"
+
+# these can be overridden in /etc/conf.d/nsd if necessary
+NSD_CONFIG="${NSD_CONFIG:-/etc/nsd/nsd.conf}"
+NSD_CHECKCONF="${NSD_CHECKCONF:-/usr/sbin/nsd-checkconf}"
+command="${NSD_BINARY:-/usr/sbin/nsd}"
+command_args="-c ${NSD_CONFIG}"
+
+depend() {
+	need net
+	use logger
+}
+
+get_pidfile() {
+	printf '%s' "$("${NSD_CHECKCONF}" -o pidfile "${NSD_CONFIG}")"
+}
+
+checkconfig() {
+	if ! test -e "${NSD_CONFIG}"; then
+		eerror "You need to create an appropriate config file."
+		eerror "An example can be found in /etc/nsd/nsd.conf.sample"
+		return 1
+	elif ! "${NSD_CHECKCONF}" "${NSD_CONFIG}"; then
+		eerror "You have errors in your configfile (${NSD_CONFIG})"
+		return $?
+	fi
+	return 0
+}
+
+configtest() {
+	ebegin "Checking ${SVCNAME} configuration"
+	checkconfig
+	eend $?
+}
+
+start_pre() {
+	checkconfig || return $?
+	checkpath --directory --owner nsd:nsd $(dirname "${pidfile}")
+	pidfile="$(get_pidfile)"
+}
+
+stop_pre() {
+	checkconfig || return $?
+	pidfile="$(get_pidfile)"
+}
+
+reload() {
+	ebegin "Reloading config and zone files"
+	kill -s HUP $(cat ${pidfile})
+	eend $?
+}

diff --git a/net-dns/nsd/nsd-4.1.11.ebuild b/net-dns/nsd/nsd-4.1.11.ebuild
index 59948d2..3719d0f 100644
--- a/net-dns/nsd/nsd-4.1.11.ebuild
+++ b/net-dns/nsd/nsd-4.1.11.ebuild
@@ -67,7 +67,7 @@ src_install() {
 
 	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
 
-	newinitd "${FILESDIR}"/nsd.initd nsd
+	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
 
 	# install munin plugin and config
 	if use munin ; then


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2016-08-25  8:39 Lars Wendler
  0 siblings, 0 replies; 12+ messages in thread
From: Lars Wendler @ 2016-08-25  8:39 UTC (permalink / raw
  To: gentoo-commits

commit:     5dc98070b4ff04e3d47bad475d6032a4bdb41e72
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 25 08:39:37 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Thu Aug 25 08:39:52 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5dc98070

net-dns/nsd: Minor bugfix in new init script. Revbump so users get the fix.

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-dns/nsd/files/nsd.initd-r1                          | 2 +-
 net-dns/nsd/{nsd-4.1.11.ebuild => nsd-4.1.11-r1.ebuild} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/net-dns/nsd/files/nsd.initd-r1 b/net-dns/nsd/files/nsd.initd-r1
index 3f71e76..ef81f9e 100755
--- a/net-dns/nsd/files/nsd.initd-r1
+++ b/net-dns/nsd/files/nsd.initd-r1
@@ -42,8 +42,8 @@ configtest() {
 
 start_pre() {
 	checkconfig || return $?
-	checkpath --directory --owner nsd:nsd $(dirname "${pidfile}")
 	pidfile="$(get_pidfile)"
+	checkpath --directory --owner nsd:nsd "${pidfile%/*}" || return 1
 }
 
 stop_pre() {

diff --git a/net-dns/nsd/nsd-4.1.11.ebuild b/net-dns/nsd/nsd-4.1.11-r1.ebuild
similarity index 100%
rename from net-dns/nsd/nsd-4.1.11.ebuild
rename to net-dns/nsd/nsd-4.1.11-r1.ebuild


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2016-08-26  7:32 Lars Wendler
  0 siblings, 0 replies; 12+ messages in thread
From: Lars Wendler @ 2016-08-26  7:32 UTC (permalink / raw
  To: gentoo-commits

commit:     eacfcb7d6472e421d231023cd49c4449dc88bc74
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 26 07:32:36 2016 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Aug 26 07:32:48 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eacfcb7d

net-dns/nsd: Another bugfix in new init script.

Revbump so users get the fix.

Package-Manager: portage-2.3.0
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-dns/nsd/files/nsd.initd-r1                             | 2 ++
 net-dns/nsd/{nsd-4.1.11-r1.ebuild => nsd-4.1.11-r2.ebuild} | 0
 2 files changed, 2 insertions(+)

diff --git a/net-dns/nsd/files/nsd.initd-r1 b/net-dns/nsd/files/nsd.initd-r1
index ef81f9e..a503b84 100755
--- a/net-dns/nsd/files/nsd.initd-r1
+++ b/net-dns/nsd/files/nsd.initd-r1
@@ -52,6 +52,8 @@ stop_pre() {
 }
 
 reload() {
+	checkconfig || return $?
+	pidfile="$(get_pidfile)"
 	ebegin "Reloading config and zone files"
 	kill -s HUP $(cat ${pidfile})
 	eend $?

diff --git a/net-dns/nsd/nsd-4.1.11-r1.ebuild b/net-dns/nsd/nsd-4.1.11-r2.ebuild
similarity index 100%
rename from net-dns/nsd/nsd-4.1.11-r1.ebuild
rename to net-dns/nsd/nsd-4.1.11-r2.ebuild


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2019-06-12 10:45 Lars Wendler
  0 siblings, 0 replies; 12+ messages in thread
From: Lars Wendler @ 2019-06-12 10:45 UTC (permalink / raw
  To: gentoo-commits

commit:     fd9e407e6e7ea1e06fd3b9c692e3dec7291f1b7f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 12 10:44:14 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jun 12 10:45:11 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd9e407e

net-dns/nsd: Removed old.

Package-Manager: Portage-2.3.67, Repoman-2.3.14
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-dns/nsd/Manifest                               |   1 -
 .../nsd/files/nsd-4.1.26-dnstap_noipv6_fix.patch   |  13 ---
 net-dns/nsd/nsd-4.1.26.ebuild                      | 119 ---------------------
 3 files changed, 133 deletions(-)

diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index 62a12c1cd63..cda57f5af0f 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -1,3 +1,2 @@
-DIST nsd-4.1.26.tar.gz 1127895 BLAKE2B b132022b846cffffa0ca34fff189f95c26dc7646648773d455ad7835c42718b1a00645b3b686e5c211432ef4bb83a3618ae6b675b9b53fd40ecf7a9f6d9ec5ba SHA512 49c07ad79e4e056bd519dad157a44d5cc55cd9a28723fd910159dc761d4ba56ef86cb7bf289dc5d1b363a49b999232bb7ec1afa737ca5c2659c4c9893e93494b
 DIST nsd-4.1.27.tar.gz 1131881 BLAKE2B 94a7f7efe23d130b04258faca0f73690712919e14268e6efabf4029bc30273d8ef3155259b072190776b6cde32050b61ade0584175f00eef0129e4621d5896a3 SHA512 9c75041f5a6213cdba7238c2e51fc73031f6f073e06587659f93992fed49418ee789642b25b5522d48642507050ac15021f385927eed81ce5ea649f974e66402
 DIST nsd-4.2.0.tar.gz 1141796 BLAKE2B 3e3df373e2ff00c170b9c104e1a4ca7038f98ad613104f045c594b7df17d4d66be1473a07e545deb9096c6a3945570530c5639c7b2f4c76234f643bce8c4fb40 SHA512 caa14fcd599ddc631cb74c3a56e571044dae1deb2fa9bd6b062f143954f9207b64b42ab5eab917360161f96bae8711df932f3e18b58be98b3f7b640071e7e807

diff --git a/net-dns/nsd/files/nsd-4.1.26-dnstap_noipv6_fix.patch b/net-dns/nsd/files/nsd-4.1.26-dnstap_noipv6_fix.patch
deleted file mode 100644
index be19e337f3d..00000000000
--- a/net-dns/nsd/files/nsd-4.1.26-dnstap_noipv6_fix.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-https://www.nlnetlabs.nl/bugs-script/show_bug.cgi?id=4213
-
---- nsd-4.1.26/dnstap/dnstap.c
-+++ nsd-4.1.26/dnstap/dnstap.c
-@@ -319,7 +319,7 @@
- 		*has_port = 1;
- 	} else if (ss->ss_family == AF_INET) {
- #else
--	if (ss->ss_family == AF_INET) {
-+	if (ss->sin_family == AF_INET) {
- #endif /* INET6 */
- 		struct sockaddr_in *s = (struct sockaddr_in *) ss;
- 

diff --git a/net-dns/nsd/nsd-4.1.26.ebuild b/net-dns/nsd/nsd-4.1.26.ebuild
deleted file mode 100644
index 87248c93455..00000000000
--- a/net-dns/nsd/nsd-4.1.26.ebuild
+++ /dev/null
@@ -1,119 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools user systemd
-
-# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
-MY_PV="${PV/_beta/b}"
-MY_PV="${MY_PV/_rc/rc}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="An authoritative only, high performance, open source name server"
-HOMEPAGE="http://www.nlnetlabs.nl/projects/nsd"
-SRC_URI="http://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="bind8-stats dnstap ipv6 libevent minimal-responses mmap munin +nsec3 ratelimit root-server runtime-checks ssl systemd libressl"
-
-S="${WORKDIR}/${MY_P}"
-
-RDEPEND="
-	dnstap? (
-		dev-libs/fstrm
-		dev-libs/protobuf-c
-	)
-	libevent? ( dev-libs/libevent )
-	munin? ( net-analyzer/munin )
-	ssl? (
-		!libressl? ( dev-libs/openssl:0= )
-		libressl? ( dev-libs/libressl:= )
-	)
-	systemd? ( sys-apps/systemd )
-"
-DEPEND="
-	${RDEPEND}
-	sys-devel/flex
-	virtual/yacc
-	systemd? ( virtual/pkgconfig )
-"
-
-PATCHES=(
-	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}"/nsd_munin_.patch
-
-	# https://www.nlnetlabs.nl/bugs-script/show_bug.cgi?id=4213
-	"${FILESDIR}"/${P}-dnstap_noipv6_fix.patch
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	local myeconfargs=(
-		--enable-largefile
-		--enable-pie
-		--enable-relro-now
-		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db
-		--with-logfile="${EPREFIX}"/var/log/nsd.log
-		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid
-		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state
-		--with-xfrdir="${EPREFIX}"/var/db/nsd
-		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list
-		--with-zonesdir="${EPREFIX}"/var/lib/nsd
-		$(use_enable bind8-stats)
-		$(use_enable bind8-stats zone-stats)
-		$(use_enable dnstap)
-		$(use_enable ipv6)
-		$(use_enable minimal-responses)
-		$(use_enable mmap)
-		$(use_enable nsec3)
-		$(use_enable ratelimit)
-		$(use_enable root-server)
-		$(use_enable runtime-checks checking)
-		$(use_enable systemd)
-		$(use_with libevent)
-		$(use_with ssl)
-	)
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install
-
-	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-
-	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
-
-	# install munin plugin and config
-	if use munin ; then
-		exeinto /usr/libexec/munin/plugins
-		doexe contrib/nsd_munin_
-		insinto /etc/munin/plugin-conf.d
-		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
-	fi
-
-	systemd_dounit "${FILESDIR}"/nsd.service
-
-	# remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath)
-	rm -r "${ED}"/run || die "Failed to remove /run"
-
-	keepdir /var/db/${PN}
-}
-
-pkg_postinst() {
-	# Do this in postinst to ensure the uid/gid is consistent for binpkgs
-	enewgroup nsd
-	enewuser nsd -1 -1 -1 nsd
-
-	# database directory, writable by nsd for database updates and zone transfers
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd
-
-	# zones directory, writable by nsd for zone file updates (nsd-control write)
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd
-}


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2022-01-28 15:46 Lars Wendler
  0 siblings, 0 replies; 12+ messages in thread
From: Lars Wendler @ 2022-01-28 15:46 UTC (permalink / raw
  To: gentoo-commits

commit:     a27323c9c5ee56359c8a3418dd2b83df0ba4c896
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 28 15:45:55 2022 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 15:46:26 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a27323c9

net-dns/nsd: Fixed build with USE="-ssl"

Closes: https://bugs.gentoo.org/832213
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 net-dns/nsd/files/nsd-4.3.9-no_ssl.patch | 22 ++++++++++++++++++++++
 net-dns/nsd/nsd-4.3.9.ebuild             |  4 +++-
 2 files changed, 25 insertions(+), 1 deletion(-)

diff --git a/net-dns/nsd/files/nsd-4.3.9-no_ssl.patch b/net-dns/nsd/files/nsd-4.3.9-no_ssl.patch
new file mode 100644
index 000000000000..33553a0ec889
--- /dev/null
+++ b/net-dns/nsd/files/nsd-4.3.9-no_ssl.patch
@@ -0,0 +1,22 @@
+From c5e6a8e5e566380c8c6731e9feb7ac686a1c0735 Mon Sep 17 00:00:00 2001
+From: "W.C.A. Wijngaards" <wouter@nlnetlabs.nl>
+Date: Fri, 28 Jan 2022 16:38:53 +0100
+Subject: [PATCH] - Fix #206: build with --without-ssl fails.
+
+diff --git a/edns.c b/edns.c
+index c7fc39d9..478ec681 100644
+--- a/edns.c
++++ b/edns.c
+@@ -21,6 +21,12 @@
+ #include "nsd.h"
+ #include "query.h"
+ 
++#if !defined(HAVE_SSL) || !defined(HAVE_CRYPTO_MEMCMP)
++/* we need fixed time compare, pull it in from tsig.c */
++#define CRYPTO_memcmp memcmp_fixedtime
++int memcmp_fixedtime(const void *s1, const void *s2, size_t n);
++#endif
++
+ void
+ edns_init_data(edns_data_type *data, uint16_t max_length)
+ {

diff --git a/net-dns/nsd/nsd-4.3.9.ebuild b/net-dns/nsd/nsd-4.3.9.ebuild
index 77567aaed614..e4f824b01061 100644
--- a/net-dns/nsd/nsd-4.3.9.ebuild
+++ b/net-dns/nsd/nsd-4.3.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -45,6 +45,8 @@ BDEPEND="
 PATCHES=(
 	# Fix the paths in the munin plugin to match our install
 	"${FILESDIR}"/nsd_munin_.patch
+
+	"${FILESDIR}/${P}-no_ssl.patch" #832213
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2023-06-07 11:30 Sam James
  0 siblings, 0 replies; 12+ messages in thread
From: Sam James @ 2023-06-07 11:30 UTC (permalink / raw
  To: gentoo-commits

commit:     6e9437e116b0186d464b1fe48f9ff7f0617e71fd
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  7 11:20:12 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jun  7 11:20:12 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e9437e1

net-dns/nsd: fix build w/ USE='-bind8-stats -ssl'

Closes: https://bugs.gentoo.org/907997
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/nsd-4.7.0-no-bind8-stats-no-ssl.patch    | 23 ++++++++++++++++++++++
 net-dns/nsd/nsd-4.7.0.ebuild                       |  2 ++
 2 files changed, 25 insertions(+)

diff --git a/net-dns/nsd/files/nsd-4.7.0-no-bind8-stats-no-ssl.patch b/net-dns/nsd/files/nsd-4.7.0-no-bind8-stats-no-ssl.patch
new file mode 100644
index 000000000000..402a42e19e0c
--- /dev/null
+++ b/net-dns/nsd/files/nsd-4.7.0-no-bind8-stats-no-ssl.patch
@@ -0,0 +1,23 @@
+https://bugs.gentoo.org/907997
+https://github.com/NLnetLabs/nsd/issues/283
+https://github.com/NLnetLabs/nsd/commit/f31d31ab1d45d615ebd192beaacac66746e0ff80
+
+From f31d31ab1d45d615ebd192beaacac66746e0ff80 Mon Sep 17 00:00:00 2001
+From: "W.C.A. Wijngaards" <wouter@nlnetlabs.nl>
+Date: Wed, 7 Jun 2023 13:07:53 +0200
+Subject: [PATCH] - Fix #283: Compile failure in remote.c when
+ --disable-bind8-stats
+
+--- a/remote.c
++++ b/remote.c
+@@ -1246,7 +1246,9 @@ do_stats(struct daemon_remote* rc, int peek, struct rc_state* rs)
+ 	xfrd_set_reload_now(xfrd);
+ #else
+ 	RES res;
++#ifdef HAVE_SSL
+ 	res.ssl = rs->ssl;
++#endif
+ 	res.fd = rs->fd;
+ 	(void)rc; (void)peek;
+ 	(void)ssl_printf(&res, "error no stats enabled at compile time\n");
+

diff --git a/net-dns/nsd/nsd-4.7.0.ebuild b/net-dns/nsd/nsd-4.7.0.ebuild
index d9028ba457da..6c6eb84db034 100644
--- a/net-dns/nsd/nsd-4.7.0.ebuild
+++ b/net-dns/nsd/nsd-4.7.0.ebuild
@@ -51,6 +51,8 @@ BDEPEND="
 PATCHES=(
 	# Fix the paths in the munin plugin to match our install
 	"${FILESDIR}"/nsd_munin_.patch
+	# bug #907997
+	"${FILESDIR}"/${P}-no-bind8-stats-no-ssl.patch
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2023-12-08  8:35 Sam James
  0 siblings, 0 replies; 12+ messages in thread
From: Sam James @ 2023-12-08  8:35 UTC (permalink / raw
  To: gentoo-commits

commit:     ded6a8ffe0e800dc4eec9de69feb67b5434f0dd9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Dec  8 08:30:38 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Dec  8 08:34:38 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ded6a8ff

net-dns/nsd: drop 4.6.1-r1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-dns/nsd/Manifest                               |   1 -
 .../files/nsd-4.6.1-incompatible-ptr-types.patch   |  24 ----
 net-dns/nsd/nsd-4.6.1-r1.ebuild                    | 128 ---------------------
 3 files changed, 153 deletions(-)

diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index eca0f072344b..5ba3d093bc34 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -1,2 +1 @@
-DIST nsd-4.6.1.tar.gz 1281583 BLAKE2B 5eff5560ce16451a57905bb9d979c81918b6b55f72e1f1b89ab8d2e479ac36bf4f95152c77b1f1b3ce0af90bde8f25d2cad7226450c5cbc879f112adea2b3a69 SHA512 cab557a20cf8564cbf6e38405ca28b00baa6e14105527c3b16f49f57fed5e39cdb2bcd62999bad4aff2c69e0967bdba66a1eaa7b73a0d4d99d97535cc5860bfe
 DIST nsd-4.7.0.tar.gz 1289477 BLAKE2B d3949c8b65376ea78c700efaeb988acbfac5a5ba338f9bf29035176a7da6730ee8b7a2b6bfc5573ad178db80166ca74d71d313bf3d405acc666bf87f17dac63b SHA512 387e66993517c015ea49fc7a985c1f746623ae30a82bd01f224efbdb7c58d1d2f3e5a5a3574203959047876c632ec464b6682d1644f0e0f157ec0e6fb3f0cdbb

diff --git a/net-dns/nsd/files/nsd-4.6.1-incompatible-ptr-types.patch b/net-dns/nsd/files/nsd-4.6.1-incompatible-ptr-types.patch
deleted file mode 100644
index 4b87be966eb0..000000000000
--- a/net-dns/nsd/files/nsd-4.6.1-incompatible-ptr-types.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-https://github.com/NLnetLabs/nsd/issues/239
-https://github.com/NLnetLabs/nsd/commit/7162600301205c3c62a1695c0b29e079694b65ae
-
-From 7162600301205c3c62a1695c0b29e079694b65ae Mon Sep 17 00:00:00 2001
-From: "W.C.A. Wijngaards" <wouter@nlnetlabs.nl>
-Date: Thu, 10 Nov 2022 09:47:59 +0100
-Subject: [PATCH] - Fix #239: -Wincompatible-pointer-types warning in remote.c.
-
---- a/remote.c
-+++ b/remote.c
-@@ -1212,8 +1212,11 @@ do_stats(struct daemon_remote* rc, int peek, struct rc_state* rs)
- 	/* force a reload */
- 	xfrd_set_reload_now(xfrd);
- #else
-+	RES res;
-+	res.ssl = rs->ssl;
-+	res.fd = rs->fd;
- 	(void)rc; (void)peek;
--	(void)ssl_printf(rs->ssl, "error no stats enabled at compile time\n");
-+	(void)ssl_printf(&res, "error no stats enabled at compile time\n");
- #endif /* BIND8_STATS */
- }
- 
-

diff --git a/net-dns/nsd/nsd-4.6.1-r1.ebuild b/net-dns/nsd/nsd-4.6.1-r1.ebuild
deleted file mode 100644
index df0ec4a834af..000000000000
--- a/net-dns/nsd/nsd-4.6.1-r1.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools systemd
-
-DESCRIPTION="An authoritative only, high performance, open source name server"
-HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
-
-if [[ ${PV} == *9999 ]] ; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
-else
-	# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
-	MY_PV="${PV/_beta/b}"
-	MY_PV="${MY_PV/_rc/rc}"
-	MY_P="${PN}-${MY_PV}"
-
-	if [[ ${PV} != *_beta* ]] && [[ ${PV} != *_rc* ]] ; then
-		SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
-		S="${WORKDIR}"/${MY_P}
-
-		KEYWORDS="amd64 x86"
-	fi
-fi
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd"
-
-RDEPEND="
-	acct-group/nsd
-	acct-user/nsd
-	dnstap? (
-		dev-libs/fstrm
-		dev-libs/protobuf-c
-	)
-	libevent? ( dev-libs/libevent )
-	munin? ( net-analyzer/munin )
-	ssl? ( dev-libs/openssl:0= )
-	systemd? ( sys-apps/systemd )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	sys-devel/flex
-	app-alternatives/yacc
-	systemd? ( virtual/pkgconfig )
-"
-
-PATCHES=(
-	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}"/nsd_munin_.patch
-	"${FILESDIR}"/${P}-incompatible-ptr-types.patch
-)
-
-src_prepare() {
-	default
-
-	# Required to get correct pkg-config macros with USE="systemd"
-	# See bugs #663618 and #758050
-	eautoreconf
-}
-
-src_configure() {
-	local myeconfargs=(
-		--enable-ipv6
-		--enable-largefile
-		--enable-pie
-		--enable-relro-now
-		--enable-tcp-fastopen
-
-		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db
-		--with-logfile="${EPREFIX}"/var/log/nsd.log
-		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid
-		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state
-		--with-xfrdir="${EPREFIX}"/var/db/nsd
-		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list
-		--with-zonesdir="${EPREFIX}"/var/lib/nsd
-
-		$(use_enable bind8-stats)
-		$(use_enable bind8-stats zone-stats)
-		$(use_enable debug checking)
-		$(use_enable dnstap)
-		$(use_enable minimal-responses)
-		$(use_enable mmap)
-		$(use_enable nsec3)
-		$(use_enable ratelimit)
-		$(use_enable root-server)
-		$(use_enable systemd)
-		$(use_with libevent)
-		$(use_with ssl)
-	)
-
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install
-
-	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-
-	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
-
-	# Install munin plugin and config
-	if use munin ; then
-		exeinto /usr/libexec/munin/plugins
-		doexe contrib/nsd_munin_
-		insinto /etc/munin/plugin-conf.d
-		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
-	fi
-
-	systemd_dounit "${FILESDIR}"/nsd.service
-
-	# Remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath)
-	rm -r "${ED}"/run || die "Failed to remove /run"
-
-	keepdir /var/db/${PN}
-}
-
-pkg_postinst() {
-	# database directory, writable by nsd for database updates and zone transfers
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd
-
-	# zones directory, writable by nsd for zone file updates (nsd-control write)
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd
-}


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2024-06-03  6:21 Joshua Kinard
  0 siblings, 0 replies; 12+ messages in thread
From: Joshua Kinard @ 2024-06-03  6:21 UTC (permalink / raw
  To: gentoo-commits

commit:     8e0365b35f2190eb7f1cf28803e3e1ccced8039a
Author:     Joshua Kinard <kumba <AT> gentoo <DOT> org>
AuthorDate: Mon Jun  3 06:18:15 2024 +0000
Commit:     Joshua Kinard <kumba <AT> gentoo <DOT> org>
CommitDate: Mon Jun  3 06:21:07 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e0365b3

net-dns/nsd: Add an ebuild for nsd-4.9.1 w/ many improvements

The ebuild for nsd-4.9.1 that includes a number of cleanups,
including adding in more USE flags to support additional switches
to nsd's configure script.  Other fixes include:
  - Significant input from @mjo to revamp the OpenRC initscript
    to be smarter about things
  - Added a /etc/conf.d/nsd file with sane defaults
  - Added the use of tmpfiles.d for nsd-control's socket in /run
  - Switching to use of the upstream-provided systemd service unit

In addition, the ebuilds for nsd-4.7.0 and nsd-4.8.0-r0 are dropped.

Closes: https://bugs.gentoo.org/927552
Signed-off-by: Joshua Kinard <kumba <AT> gentoo.org>

 net-dns/nsd/Manifest                               |   2 +-
 .../files/nsd-4.7.0-no-bind8-stats-no-ssl.patch    |  23 ----
 .../nsd/files/nsd-4.9.1-systemd-no-pidfile.patch   |  16 +++
 ...d_munin_.patch => nsd-munin-gentoo-paths.patch} |   0
 net-dns/nsd/files/nsd.confd-r1                     |  16 +++
 net-dns/nsd/files/nsd.initd-r2                     |  52 +++++++
 net-dns/nsd/files/nsd.tmpfilesd-r1                 |   1 +
 net-dns/nsd/metadata.xml                           |  27 ++--
 net-dns/nsd/nsd-4.7.0.ebuild                       | 129 ------------------
 net-dns/nsd/nsd-4.8.0-r1.ebuild                    |   4 +-
 net-dns/nsd/nsd-4.8.0.ebuild                       | 127 ------------------
 net-dns/nsd/nsd-4.9.1.ebuild                       | 149 +++++++++++++++++++++
 net-dns/nsd/nsd-9999.ebuild                        |  96 ++++++++-----
 13 files changed, 311 insertions(+), 331 deletions(-)

diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index 26d35df9b207..96c7c9e4d347 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -1,2 +1,2 @@
-DIST nsd-4.7.0.tar.gz 1289477 BLAKE2B d3949c8b65376ea78c700efaeb988acbfac5a5ba338f9bf29035176a7da6730ee8b7a2b6bfc5573ad178db80166ca74d71d313bf3d405acc666bf87f17dac63b SHA512 387e66993517c015ea49fc7a985c1f746623ae30a82bd01f224efbdb7c58d1d2f3e5a5a3574203959047876c632ec464b6682d1644f0e0f157ec0e6fb3f0cdbb
 DIST nsd-4.8.0.tar.gz 1273228 BLAKE2B d1e6a5e8fb158bb32081bc7674d957e3f5a596ed10ee89dd6a5f6af9a79a8c130f2de7070345bee69cb7798e9f373d856a9336a9e9f65f733ff45e15e94833ff SHA512 13c9cffffe6adfcbabf744ee2effebe6ae265d83476345a1edb60dc9c6d7f838a5e239e9b18e667924e5e76b74b2caac63818fcaecf7f0fa651ff21736174a46
+DIST nsd-4.9.1.tar.gz 1309953 BLAKE2B 4a43db480be7196c0a177cc6ee2b9cd6eaaaa9af4d0c3dc7b8f07a5b9e24fd4eac816a29f83de870efe012f2f3bbcbb9bdbda903d05bf9d96574bddc97f68547 SHA512 65cd38aa8a41aee57a6950747de448bc4007a2d2c095152f1d22006f85faa7f0732ec4aa0aeae9f46bc69bff17164d8fe384bbc3441d0484364c4af938b511c1

diff --git a/net-dns/nsd/files/nsd-4.7.0-no-bind8-stats-no-ssl.patch b/net-dns/nsd/files/nsd-4.7.0-no-bind8-stats-no-ssl.patch
deleted file mode 100644
index 402a42e19e0c..000000000000
--- a/net-dns/nsd/files/nsd-4.7.0-no-bind8-stats-no-ssl.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-https://bugs.gentoo.org/907997
-https://github.com/NLnetLabs/nsd/issues/283
-https://github.com/NLnetLabs/nsd/commit/f31d31ab1d45d615ebd192beaacac66746e0ff80
-
-From f31d31ab1d45d615ebd192beaacac66746e0ff80 Mon Sep 17 00:00:00 2001
-From: "W.C.A. Wijngaards" <wouter@nlnetlabs.nl>
-Date: Wed, 7 Jun 2023 13:07:53 +0200
-Subject: [PATCH] - Fix #283: Compile failure in remote.c when
- --disable-bind8-stats
-
---- a/remote.c
-+++ b/remote.c
-@@ -1246,7 +1246,9 @@ do_stats(struct daemon_remote* rc, int peek, struct rc_state* rs)
- 	xfrd_set_reload_now(xfrd);
- #else
- 	RES res;
-+#ifdef HAVE_SSL
- 	res.ssl = rs->ssl;
-+#endif
- 	res.fd = rs->fd;
- 	(void)rc; (void)peek;
- 	(void)ssl_printf(&res, "error no stats enabled at compile time\n");
-

diff --git a/net-dns/nsd/files/nsd-4.9.1-systemd-no-pidfile.patch b/net-dns/nsd/files/nsd-4.9.1-systemd-no-pidfile.patch
new file mode 100644
index 000000000000..49528723e35b
--- /dev/null
+++ b/net-dns/nsd/files/nsd-4.9.1-systemd-no-pidfile.patch
@@ -0,0 +1,16 @@
+# See:
+# https://github.com/NLnetLabs/nsd/issues/317
+
+diff --git a/contrib/nsd.service b/contrib/nsd.service
+index f45359f91..0cc12cc3c 100644
+--- a/contrib/nsd.service
++++ b/contrib/nsd.service
+@@ -4,7 +4,7 @@ After=syslog.target network-online.target
+ 
+ [Service]
+ Type=notify
+-ExecStart=/usr/sbin/nsd -d -c /etc/nsd/nsd.conf $NSD_EXTRA_OPTS
++ExecStart=/usr/sbin/nsd -d -P "" -c /etc/nsd/nsd.conf $NSD_EXTRA_OPTS
+ ExecReload=/bin/kill -HUP $MAINPID
+ KillMode=mixed
+ PrivateTmp=true

diff --git a/net-dns/nsd/files/nsd_munin_.patch b/net-dns/nsd/files/nsd-munin-gentoo-paths.patch
similarity index 100%
rename from net-dns/nsd/files/nsd_munin_.patch
rename to net-dns/nsd/files/nsd-munin-gentoo-paths.patch

diff --git a/net-dns/nsd/files/nsd.confd-r1 b/net-dns/nsd/files/nsd.confd-r1
new file mode 100644
index 000000000000..7c9a7effb844
--- /dev/null
+++ b/net-dns/nsd/files/nsd.confd-r1
@@ -0,0 +1,16 @@
+# /etc/conf.d/nsd
+
+# NSD_ARGS is set by default to run in the foreground (-d) and to not
+# create its own PID file (-P ''), as we let OpenRC handle that instead.
+# It is recommended to keep these defaults and append additional flags
+# to them.
+NSD_ARGS="-d -P ''"
+
+# NSD_CONFBASE sets the base configuration directory for nsd's
+# configuration and, by default, uses the standard '/etc/nsd' path.
+NSD_CONFBASE="/etc/nsd"
+
+# NSD_CONFNAME sets the first part of the nsd config file name to be that
+# of the calling service script name.  This allows you to create symlinks
+# that point at '/etc/init.d/nsd' for different instances of nsd.
+NSD_CONFNAME="${RC_SVCNAME}.conf"

diff --git a/net-dns/nsd/files/nsd.initd-r2 b/net-dns/nsd/files/nsd.initd-r2
new file mode 100644
index 000000000000..e1825433ac3b
--- /dev/null
+++ b/net-dns/nsd/files/nsd.initd-r2
@@ -0,0 +1,52 @@
+#!/sbin/openrc-run
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+description="NSD is an authoritative-only, high performance, open source name server"
+extra_commands="configtest"
+extra_started_commands="reload"
+
+# These can be overridden in /etc/conf.d/nsd if necessary.
+NSD_ARGS="${NSD_ARGS:--d -P ''}"
+NSD_CONFBASE="${NSD_CONFBASE:-/etc/nsd}"
+NSD_CONFNAME="${NSD_CONFNAME:-${RC_SVCNAME}.conf}"
+
+# The conf.d defaults shipped with nsd-4.9.1+ will run it in the foreground
+# and tell it not to create a PID file, as we allow OpenRC to handle those
+# details.
+config_file="${NSD_CONFBASE}/${NSD_CONFNAME}"
+checkconf="/usr/sbin/nsd-checkconf"
+command="/usr/sbin/nsd"
+command_args="-c ${config_file} ${NSD_ARGS}"
+command_background=true
+pidfile="/run/${RC_SVCNAME}.pid"
+required_files="${config_file}"
+
+depend() {
+	use logger
+}
+
+checkconfig() {
+	if ! "${checkconf}" "${config_file}"; then
+		eerror "You have errors in your configfile (${config_file})"
+		return $?
+	fi
+	return 0
+}
+
+configtest() {
+	ebegin "Checking ${RC_SVCNAME} configuration"
+	checkconfig
+	eend $?
+}
+
+start_pre() {
+	checkconfig || return $?
+}
+
+reload() {
+	checkconfig || return $?
+	ebegin "Reloading config and zone files"
+	start-stop-daemon --signal HUP --pidfile "${pidfile}"
+	eend $?
+}

diff --git a/net-dns/nsd/files/nsd.tmpfilesd-r1 b/net-dns/nsd/files/nsd.tmpfilesd-r1
new file mode 100644
index 000000000000..0e2211770cd2
--- /dev/null
+++ b/net-dns/nsd/files/nsd.tmpfilesd-r1
@@ -0,0 +1 @@
+d /run/nsd 0750 nsd nsd

diff --git a/net-dns/nsd/metadata.xml b/net-dns/nsd/metadata.xml
index a1842bb7c035..b674d51d0880 100644
--- a/net-dns/nsd/metadata.xml
+++ b/net-dns/nsd/metadata.xml
@@ -6,20 +6,23 @@
 		<name>Joshua Kinard</name>
 	</maintainer>
 	<use>
-		<flag name="bind8-stats">Enables BIND8 like NSTATS and XSTATS</flag>
+		<flag name="bind8-stats">Enables BIND8 like NSTATS and XSTATS and statistics in nsd-control</flag>
+		<flag name="default-znow">Enable full relocation binding at load-time (RELRO NOW, to protect GOT and .dtor areas)</flag>
 		<flag name="dnstap">Enable the structured binary log format</flag>
-		<flag name="libevent">Use libevent or libev, useful when zone
-			count is high</flag>
-		<flag name="minimal-responses">If minimal responses are disabled,
-			responses are more likely to get truncated, resulting in TCP
-			fallback</flag>
+		<flag name="ipv6">Enable IPv6 support</flag>
+		<flag name="largefile">Enables support for large files</flag>
+		<flag name="libevent">Use libevent or libev, useful when zone count is high</flag>
+		<flag name="memclean">Cleanup memory (at exit) for eg. valgrind, memcheck</flag>
+		<flag name="minimal-responses">If minimal responses are disabled, responses are more likely to get truncated, resulting in TCP fallback</flag>
+		<flag name="munin">Install a plugin for <pkg>net-analyzer/munin</pkg> to graph statistical data from nsd</flag>
 		<flag name="nsec3">Enable NSEC3 support</flag>
-		<flag name="ratelimit">Enables ratelimiting, based on query name,
-			type and source</flag>
-		<flag name="root-server">Configure NSD as a root server</flag>
-		<flag name="munin">
-			Install a plugin for <pkg>net-analyzer/munin</pkg> to graph
-			statistical data from nsd.</flag>
+		<flag name="packed">Enable packed structure alignment; uses less memory but has unaligned reads</flag>
+		<flag name="radix-tree">Use a red-black tree for main lookups; uses less memory at the expense of more CPU</flag>
+		<flag name="ratelimit">Enables ratelimiting, based on query name, type and source</flag>
+		<flag name="recvmmsg">Enable recvmmsg and sendmmsg compilation, faster but some kernel versions may have implementation problems for IPv6</flag>
+		<flag name="root-server">Configure NSD as a root server (OBSOLETE: removed in >=4.9.x)</flag>
+		<flag name="tfo">Enable TCP Fast Open</flag>
+		<flag name="year2038">Support timestamps after 2038 (glibc only!)</flag>
 	</use>
 	<upstream>
 		<remote-id type="github">NLnetLabs/nsd</remote-id>

diff --git a/net-dns/nsd/nsd-4.7.0.ebuild b/net-dns/nsd/nsd-4.7.0.ebuild
deleted file mode 100644
index e821654c0b57..000000000000
--- a/net-dns/nsd/nsd-4.7.0.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools systemd
-
-DESCRIPTION="An authoritative only, high performance, open source name server"
-HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
-
-if [[ ${PV} == *9999 ]] ; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
-else
-	# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
-	MY_PV="${PV/_beta/b}"
-	MY_PV="${MY_PV/_rc/rc}"
-	MY_P="${PN}-${MY_PV}"
-
-	if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
-		SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
-		S="${WORKDIR}"/${MY_P}
-
-		KEYWORDS="amd64 x86"
-	fi
-fi
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd"
-
-RDEPEND="
-	acct-group/nsd
-	acct-user/nsd
-	dnstap? (
-		dev-libs/fstrm
-		dev-libs/protobuf-c
-	)
-	libevent? ( dev-libs/libevent )
-	munin? ( net-analyzer/munin )
-	ssl? ( dev-libs/openssl:0= )
-	systemd? ( sys-apps/systemd )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	app-alternatives/lex
-	app-alternatives/yacc
-	systemd? ( virtual/pkgconfig )
-"
-
-PATCHES=(
-	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}"/nsd_munin_.patch
-	# bug #907997
-	"${FILESDIR}"/${P}-no-bind8-stats-no-ssl.patch
-)
-
-src_prepare() {
-	default
-
-	# Required to get correct pkg-config macros with USE="systemd"
-	# See bugs #663618 and #758050
-	eautoreconf
-}
-
-src_configure() {
-	local myeconfargs=(
-		--enable-ipv6
-		--enable-largefile
-		--enable-pie
-		--enable-relro-now
-		--enable-tcp-fastopen
-
-		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db
-		--with-logfile="${EPREFIX}"/var/log/nsd.log
-		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid
-		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state
-		--with-xfrdir="${EPREFIX}"/var/db/nsd
-		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list
-		--with-zonesdir="${EPREFIX}"/var/lib/nsd
-
-		$(use_enable bind8-stats)
-		$(use_enable bind8-stats zone-stats)
-		$(use_enable debug checking)
-		$(use_enable dnstap)
-		$(use_enable minimal-responses)
-		$(use_enable mmap)
-		$(use_enable nsec3)
-		$(use_enable ratelimit)
-		$(use_enable root-server)
-		$(use_enable systemd)
-		$(use_with libevent)
-		$(use_with ssl)
-	)
-
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install
-
-	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-
-	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
-
-	# Install munin plugin and config
-	if use munin ; then
-		exeinto /usr/libexec/munin/plugins
-		doexe contrib/nsd_munin_
-		insinto /etc/munin/plugin-conf.d
-		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
-	fi
-
-	systemd_dounit "${FILESDIR}"/nsd.service
-
-	# Remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath)
-	rm -r "${ED}"/run || die "Failed to remove /run"
-
-	keepdir /var/db/${PN}
-}
-
-pkg_postinst() {
-	# database directory, writable by nsd for database updates and zone transfers
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd
-
-	# zones directory, writable by nsd for zone file updates (nsd-control write)
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd
-}

diff --git a/net-dns/nsd/nsd-4.8.0-r1.ebuild b/net-dns/nsd/nsd-4.8.0-r1.ebuild
index fc6955f83a99..654f972468e3 100644
--- a/net-dns/nsd/nsd-4.8.0-r1.ebuild
+++ b/net-dns/nsd/nsd-4.8.0-r1.ebuild
@@ -50,8 +50,8 @@ BDEPEND="
 
 PATCHES=(
 	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}"/nsd_munin_.patch
-	"${FILESDIR}"/${P}-implausible-stats.patch
+	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
+	"${FILESDIR}/${P}-implausible-stats.patch"
 )
 
 src_prepare() {

diff --git a/net-dns/nsd/nsd-4.8.0.ebuild b/net-dns/nsd/nsd-4.8.0.ebuild
deleted file mode 100644
index ce4bcaba54e0..000000000000
--- a/net-dns/nsd/nsd-4.8.0.ebuild
+++ /dev/null
@@ -1,127 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools systemd
-
-DESCRIPTION="An authoritative only, high performance, open source name server"
-HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
-
-if [[ ${PV} == *9999 ]] ; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
-else
-	# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
-	MY_PV="${PV/_beta/b}"
-	MY_PV="${MY_PV/_rc/rc}"
-	MY_P="${PN}-${MY_PV}"
-
-	if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
-		SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
-		S="${WORKDIR}"/${MY_P}
-
-		KEYWORDS="amd64 x86"
-	fi
-fi
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd"
-
-RDEPEND="
-	acct-group/nsd
-	acct-user/nsd
-	dnstap? (
-		dev-libs/fstrm
-		dev-libs/protobuf-c
-	)
-	libevent? ( dev-libs/libevent )
-	munin? ( net-analyzer/munin )
-	ssl? ( dev-libs/openssl:0= )
-	systemd? ( sys-apps/systemd )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	app-alternatives/lex
-	app-alternatives/yacc
-	systemd? ( virtual/pkgconfig )
-"
-
-PATCHES=(
-	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}"/nsd_munin_.patch
-)
-
-src_prepare() {
-	default
-
-	# Required to get correct pkg-config macros with USE="systemd"
-	# See bugs #663618 and #758050
-	eautoreconf
-}
-
-src_configure() {
-	local myeconfargs=(
-		--enable-ipv6
-		--enable-largefile
-		--enable-pie
-		--enable-relro-now
-		--enable-tcp-fastopen
-
-		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db
-		--with-logfile="${EPREFIX}"/var/log/nsd.log
-		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid
-		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state
-		--with-xfrdir="${EPREFIX}"/var/db/nsd
-		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list
-		--with-zonesdir="${EPREFIX}"/var/lib/nsd
-
-		$(use_enable bind8-stats)
-		$(use_enable bind8-stats zone-stats)
-		$(use_enable debug checking)
-		$(use_enable dnstap)
-		$(use_enable minimal-responses)
-		$(use_enable mmap)
-		$(use_enable nsec3)
-		$(use_enable ratelimit)
-		$(use_enable root-server)
-		$(use_enable systemd)
-		$(use_with libevent)
-		$(use_with ssl)
-	)
-
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install
-
-	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-
-	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
-
-	# Install munin plugin and config
-	if use munin ; then
-		exeinto /usr/libexec/munin/plugins
-		doexe contrib/nsd_munin_
-		insinto /etc/munin/plugin-conf.d
-		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
-	fi
-
-	systemd_dounit "${FILESDIR}"/nsd.service
-
-	# Remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath)
-	rm -r "${ED}"/run || die "Failed to remove /run"
-
-	keepdir /var/db/${PN}
-}
-
-pkg_postinst() {
-	# database directory, writable by nsd for database updates and zone transfers
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd
-
-	# zones directory, writable by nsd for zone file updates (nsd-control write)
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd
-}

diff --git a/net-dns/nsd/nsd-4.9.1.ebuild b/net-dns/nsd/nsd-4.9.1.ebuild
new file mode 100644
index 000000000000..eb62a90576fc
--- /dev/null
+++ b/net-dns/nsd/nsd-4.9.1.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+inherit autotools systemd tmpfiles
+
+DESCRIPTION="An authoritative only, high performance, open source name server"
+HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
+
+if [[ ${PV} == *9999 ]] ; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
+else
+	# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
+	MY_PV="${PV/_beta/b}"
+	MY_PV="${MY_PV/_rc/rc}"
+	MY_P="${PN}-${MY_PV}"
+
+	if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
+		SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
+		S="${WORKDIR}"/${MY_P}
+
+		KEYWORDS="~amd64 ~x86"
+	fi
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg ssl systemd +tfo year2038"
+
+RDEPEND="
+	acct-group/nsd
+	acct-user/nsd
+	dnstap? (
+		dev-libs/fstrm
+		dev-libs/protobuf-c
+	)
+	libevent? ( dev-libs/libevent )
+	munin? ( net-analyzer/munin )
+	ssl? ( dev-libs/openssl:0= )
+	systemd? ( sys-apps/systemd )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+	app-alternatives/lex
+	app-alternatives/yacc
+	systemd? ( virtual/pkgconfig )
+"
+
+PATCHES=(
+	"${FILESDIR}/${P}-systemd-no-pidfile.patch"
+	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
+)
+
+NSD_CONFD_VER="1"		# Cur version of NSD's OpenRC conf.d file.
+NSD_INITD_VER="2"		# Cur version of NSD's OpenRC init.d script.
+NSD_TMPFILESD_VER="1"		# Cur version of NSD's tmpfiles.d config.
+
+NSD_DBDIR="/var/db/nsd"		# Default dir for NSD's databases.
+NSD_ZNDIR="/var/lib/nsd"	# Default dir for NSD's zone files.
+
+src_prepare() {
+	default
+
+	# Required to get correct pkg-config macros with USE="systemd".
+	# See bugs #663618 & #758050.
+	eautoreconf
+}
+
+src_configure() {
+	local myconf=(
+		$(use_enable bind8-stats)
+		$(use_enable bind8-stats zone-stats)
+		$(use_enable debug checking)
+		$(use_enable default-znow relro-now)
+		$(use_enable dnstap)
+		$(use_enable ipv6)
+		$(use_enable largefile)
+		$(use_enable lto flto)
+		$(use_enable memclean)
+		$(use_enable minimal-responses)
+		$(use_enable mmap)
+		$(use_enable nsec3)
+		$(use_enable packed)
+		$(use_enable pie)
+		$(use_enable radix-tree)
+		$(use_enable ratelimit)
+		$(use_enable recvmmsg)
+		$(use_enable systemd)
+		$(use_enable tfo tcp-fastopen)
+		$(use_with libevent)
+		$(use_with ssl)
+
+		--with-dbfile="${EPREFIX}/${NSD_DBDIR}/nsd.db"
+		--with-logfile="${EPREFIX}/var/log/nsd.log"
+		--with-pidfile="${EPREFIX}/run/nsd.pid"
+		--with-xfrdfile="${EPREFIX}/${NSD_DBDIR}/xfrd.state"
+		--with-xfrdir="${EPREFIX}/${NSD_DBDIR}"
+		--with-zonelistfile="${EPREFIX}/${NSD_DBDIR}/zone.list"
+		--with-zonesdir="${EPREFIX}/${NSD_ZNDIR}"
+	)
+
+	# This configure switch is only available on a glibc-based system.
+	if use elibc_glibc; then
+		myconf+=( $(use_enable year2038) )
+	fi
+
+	econf "${myconf[@]}"
+}
+
+src_install() {
+	emake DESTDIR="${D}" install
+
+	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
+	newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd
+	newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd
+	newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf
+
+	# Install munin plugin and config, if requested.
+	if use munin ; then
+		exeinto "/usr/libexec/munin/plugins"
+		doexe contrib/nsd_munin_
+		insinto "/etc/munin/plugin-conf.d"
+		newins "${FILESDIR}/nsd.munin-conf nsd_munin"
+	fi
+
+	# Use the upstream-provided systemd service file.
+	systemd_dounit "contrib/nsd.service"
+
+	# Remove the /run directory that usually resides on tmpfs and is
+	# being taken care of by the nsd init script anyway (checkpath).
+	rm -r "${ED}/run" || die "Failed to remove /run"
+
+	keepdir "${NSD_DBDIR}"
+}
+
+pkg_postinst() {
+	# See eclass/tmpfiles.eclass for info.
+	tmpfiles_process nsd.conf
+
+	# Database directory
+	# Writable by nsd:nsd for database updates and zone transfers.
+	install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_DBDIR}"
+
+	# Zones directory
+	# Writable by nsd:nsd for zone file updates (via 'nsd-control write').
+	install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_ZNDIR}"
+}

diff --git a/net-dns/nsd/nsd-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild
index abbd21ab799f..77ea73ae7afc 100644
--- a/net-dns/nsd/nsd-9999.ebuild
+++ b/net-dns/nsd/nsd-9999.ebuild
@@ -1,9 +1,9 @@
 # Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=8
+EAPI="8"
 
-inherit autotools systemd
+inherit autotools systemd tmpfiles
 
 DESCRIPTION="An authoritative only, high performance, open source name server"
 HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
@@ -27,7 +27,7 @@ fi
 
 LICENSE="BSD"
 SLOT="0"
-IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd"
+IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg ssl systemd +tfo year2038"
 
 RDEPEND="
 	acct-group/nsd
@@ -49,49 +49,63 @@ BDEPEND="
 "
 
 PATCHES=(
-	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}"/nsd_munin_.patch
+	"${FILESDIR}/${P}-systemd-no-pidfile.patch"
+	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
 )
 
+NSD_INITD_VER="2"		# Current version of NSD's OpenRC init.d script.
+NSD_TMPFILESD_VER="1"		# Current version of NSD's tmpfiles.d config.
+
+NSD_DBDIR="/var/db/nsd"		# Default dir for NSD's databases.
+NSD_ZNDIR="/var/lib/nsd"	# Default dir for NSD's zone files.
+
 src_prepare() {
 	default
 
-	# Required to get correct pkg-config macros with USE="systemd"
-	# See bugs #663618 and #758050
+	# Required to get correct pkg-config macros with USE="systemd".
+	# See bugs #663618 & #758050.
 	eautoreconf
 }
 
 src_configure() {
-	local myeconfargs=(
-		--enable-ipv6
-		--enable-largefile
-		--enable-pie
-		--enable-relro-now
-		--enable-tcp-fastopen
-
-		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db
-		--with-logfile="${EPREFIX}"/var/log/nsd.log
-		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid
-		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state
-		--with-xfrdir="${EPREFIX}"/var/db/nsd
-		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list
-		--with-zonesdir="${EPREFIX}"/var/lib/nsd
-
+	local myconf=(
 		$(use_enable bind8-stats)
 		$(use_enable bind8-stats zone-stats)
 		$(use_enable debug checking)
+		$(use_enable default-znow relro-now)
 		$(use_enable dnstap)
+		$(use_enable ipv6)
+		$(use_enable largefile)
+		$(use_enable lto flto)
+		$(use_enable memclean)
 		$(use_enable minimal-responses)
 		$(use_enable mmap)
 		$(use_enable nsec3)
+		$(use_enable packed)
+		$(use_enable pie)
+		$(use_enable radix-tree)
 		$(use_enable ratelimit)
-		$(use_enable root-server)
+		$(use_enable recvmmsg)
 		$(use_enable systemd)
+		$(use_enable tfo tcp-fastopen)
 		$(use_with libevent)
 		$(use_with ssl)
+
+		--with-dbfile="${EPREFIX}/${NSD_DBDIR}/nsd.db"
+		--with-logfile="${EPREFIX}/var/log/nsd.log"
+		--with-pidfile="${EPREFIX}/run/nsd/nsd.pid"
+		--with-xfrdfile="${EPREFIX}/${NSD_DBDIR}/xfrd.state"
+		--with-xfrdir="${EPREFIX}/${NSD_DBDIR}"
+		--with-zonelistfile="${EPREFIX}/${NSD_DBDIR}/zone.list"
+		--with-zonesdir="${EPREFIX}/${NSD_ZNDIR}"
 	)
 
-	econf "${myeconfargs[@]}"
+	# This configure switch is only available on a glibc-based system.
+	if use elibc_glibc; then
+		myconf+=( $(use_enable year2038) )
+	fi
+
+	econf "${myconf[@]}"
 }
 
 src_install() {
@@ -99,29 +113,37 @@ src_install() {
 
 	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
 
-	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
+	newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd
 
-	# Install munin plugin and config
+	newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r1" nsd.conf
+
+	# Install munin plugin and config, if requested.
 	if use munin ; then
-		exeinto /usr/libexec/munin/plugins
+		exeinto "/usr/libexec/munin/plugins"
 		doexe contrib/nsd_munin_
-		insinto /etc/munin/plugin-conf.d
-		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
+		insinto "/etc/munin/plugin-conf.d"
+		newins "${FILESDIR}/nsd.munin-conf nsd_munin"
 	fi
 
-	systemd_dounit "${FILESDIR}"/nsd.service
+	# Use the upstream-provided systemd service file.
+	systemd_dounit "contrib/nsd.service"
 
 	# Remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath)
-	rm -r "${ED}"/run || die "Failed to remove /run"
+	# being taken care of by the nsd init script anyway (checkpath).
+	rm -r "${ED}/run" || die "Failed to remove /run"
 
-	keepdir /var/db/${PN}
+	keepdir "${NSD_DBDIR}"
 }
 
 pkg_postinst() {
-	# database directory, writable by nsd for database updates and zone transfers
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd
+	# See eclass/tmpfiles.eclass for info.
+	tmpfiles_process nsd.conf
+
+	# Database directory
+	# Writable by nsd:nsd for database updates and zone transfers.
+	install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_DBDIR}"
 
-	# zones directory, writable by nsd for zone file updates (nsd-control write)
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd
+	# Zones directory
+	# Writable by nsd:nsd for zone file updates (via 'nsd-control write').
+	install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_ZNDIR}"
 }


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2024-08-04 10:16 Joshua Kinard
  0 siblings, 0 replies; 12+ messages in thread
From: Joshua Kinard @ 2024-08-04 10:16 UTC (permalink / raw
  To: gentoo-commits

commit:     9bdd082a7cd14d3af5a7f0e5438e224d88e10fbb
Author:     Joshua Kinard <kumba <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  4 10:13:04 2024 +0000
Commit:     Joshua Kinard <kumba <AT> gentoo <DOT> org>
CommitDate: Sun Aug  4 10:15:21 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9bdd082a

net-dns/nsd: Cleanups, add 4.10.1

Clean out older ebuilds and files in FILESDIR and add
a new ebuild for recently released 4.10.1, which includes
fixes for parallelism in the simdzone Makefile and OpenRC
init/conf files sent to upstream by @mjo.

Closes: https://bugs.gentoo.org/936119
Bug: https://bugs.gentoo.org/927552
Co-authored-by: Michael Orlitzky <mjo <AT> gentoo.org>
Signed-off-by: Joshua Kinard <kumba <AT> gentoo.org>

 net-dns/nsd/Manifest                               |   3 +-
 .../nsd/files/nsd-4.8.0-implausible-stats.patch    |  22 ----
 net-dns/nsd/files/nsd.initd-r1                     |  59 ----------
 net-dns/nsd/files/nsd.service                      |  14 ---
 net-dns/nsd/metadata.xml                           |   9 +-
 .../nsd/{nsd-4.10.0.ebuild => nsd-4.10.1.ebuild}   |  12 +-
 net-dns/nsd/nsd-4.8.0-r1.ebuild                    | 128 ---------------------
 net-dns/nsd/nsd-4.9.1.ebuild                       |   4 +-
 net-dns/nsd/nsd-9999.ebuild                        |  12 +-
 9 files changed, 20 insertions(+), 243 deletions(-)

diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index b9e253e157d6..d2631f26e9a4 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -1,3 +1,2 @@
-DIST nsd-4.10.0.tar.gz 1388963 BLAKE2B 1ae50e2c2756fbbbabe87ecf88e74c2f9e5bf21dfe8f34a279894499ba5434a9249e5424f511ed0b67d21b3b1c98b7a03e38cd20fd6dd0cd2a6ad4b397d352df SHA512 ebf65d9a3d56ba560b587dc3cf91b0b086c9267c67f4c6a6c415cc062a08a9d0deb50cc44189b741d5b7634fe07038f6a234999f5a0ee7df6609fc026127fb09
-DIST nsd-4.8.0.tar.gz 1273228 BLAKE2B d1e6a5e8fb158bb32081bc7674d957e3f5a596ed10ee89dd6a5f6af9a79a8c130f2de7070345bee69cb7798e9f373d856a9336a9e9f65f733ff45e15e94833ff SHA512 13c9cffffe6adfcbabf744ee2effebe6ae265d83476345a1edb60dc9c6d7f838a5e239e9b18e667924e5e76b74b2caac63818fcaecf7f0fa651ff21736174a46
+DIST nsd-4.10.1.tar.gz 1404799 BLAKE2B 7b286ac681c1bb8201654cd2e5fac8a98256f6a595dfbb39bcfed92de63b3337e05d219bc766bab01e4aaf3fb1de3c128d7157caeee3a7f21e4132db9ea72cba SHA512 b0f4bdca8a1c6fbbe99096abc8c5f8b34ef2e66dc0da44da253ab164b35ad0aaef5d05eb682b88cc68d8b1671f7b80abafee242a784ed6deb785adee7f6a53a9
 DIST nsd-4.9.1.tar.gz 1309953 BLAKE2B 4a43db480be7196c0a177cc6ee2b9cd6eaaaa9af4d0c3dc7b8f07a5b9e24fd4eac816a29f83de870efe012f2f3bbcbb9bdbda903d05bf9d96574bddc97f68547 SHA512 65cd38aa8a41aee57a6950747de448bc4007a2d2c095152f1d22006f85faa7f0732ec4aa0aeae9f46bc69bff17164d8fe384bbc3441d0484364c4af938b511c1

diff --git a/net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch b/net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch
deleted file mode 100644
index 318f2a5e2f55..000000000000
--- a/net-dns/nsd/files/nsd-4.8.0-implausible-stats.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-https://github.com/NLnetLabs/nsd/issues/313
-https://github.com/NLnetLabs/nsd/commit/ccc1bbc28abd3a723c25cb8dcc735731926979d0
-
-From ccc1bbc28abd3a723c25cb8dcc735731926979d0 Mon Sep 17 00:00:00 2001
-From: "W.C.A. Wijngaards" <wouter@nlnetlabs.nl>
-Date: Tue, 6 Feb 2024 11:44:24 +0100
-Subject: [PATCH] - Fix #313: nsd 4.8 stats with implausible spikes.
-
---- a/remote.c
-+++ b/remote.c
-@@ -2932,7 +2932,9 @@ process_stats(RES* ssl, xfrd_state_type* xfrd, int peek)
- 	process_stats_manage_clear(xfrd, stats, peek);
- 	process_stats_add_total(xfrd, &total, stats);
- 	print_stats(ssl, xfrd, &stattime, !peek, &total, zonestats);
--	xfrd->nsd->rc->stats_time = stattime;
-+	if(!peek) {
-+		xfrd->nsd->rc->stats_time = stattime;
-+	}
- 
- 	free(stats);
- #ifdef USE_ZONE_STATS
-

diff --git a/net-dns/nsd/files/nsd.initd-r1 b/net-dns/nsd/files/nsd.initd-r1
deleted file mode 100644
index 2a97c6dea708..000000000000
--- a/net-dns/nsd/files/nsd.initd-r1
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-description="NSD is an authoritative-only, high performance, open source name server"
-extra_commands="configtest"
-extra_started_commands="reload"
-
-# these can be overridden in /etc/conf.d/nsd if necessary
-NSD_CONFIG="${NSD_CONFIG:-/etc/nsd/nsd.conf}"
-NSD_CHECKCONF="${NSD_CHECKCONF:-/usr/sbin/nsd-checkconf}"
-command="${NSD_BINARY:-/usr/sbin/nsd}"
-command_args="-c ${NSD_CONFIG}"
-
-depend() {
-	need net
-	use logger
-}
-
-get_pidfile() {
-	printf '%s' "$("${NSD_CHECKCONF}" -o pidfile "${NSD_CONFIG}")"
-}
-
-checkconfig() {
-	if ! test -e "${NSD_CONFIG}"; then
-		eerror "You need to create an appropriate config file."
-		eerror "An example can be found in /etc/nsd/nsd.conf.sample"
-		return 1
-	elif ! "${NSD_CHECKCONF}" "${NSD_CONFIG}"; then
-		eerror "You have errors in your configfile (${NSD_CONFIG})"
-		return $?
-	fi
-	return 0
-}
-
-configtest() {
-	ebegin "Checking ${SVCNAME} configuration"
-	checkconfig
-	eend $?
-}
-
-start_pre() {
-	checkconfig || return $?
-	pidfile="$(get_pidfile)"
-	checkpath --directory --owner nsd:nsd "${pidfile%/*}" || return 1
-}
-
-stop_pre() {
-	checkconfig || return $?
-	pidfile="$(get_pidfile)"
-}
-
-reload() {
-	checkconfig || return $?
-	pidfile="$(get_pidfile)"
-	ebegin "Reloading config and zone files"
-	kill -s HUP $(cat ${pidfile})
-	eend $?
-}

diff --git a/net-dns/nsd/files/nsd.service b/net-dns/nsd/files/nsd.service
deleted file mode 100644
index 8337557faeef..000000000000
--- a/net-dns/nsd/files/nsd.service
+++ /dev/null
@@ -1,14 +0,0 @@
-[Unit]
-Description=NSD authoritative DNS server
-Wants=network.target
-After=network.target
-
-[Service]
-Type=forking
-ExecStartPre=/usr/bin/install -d -o nsd -g nsd /run/nsd
-ExecStart=/usr/sbin/nsd
-KillMode=mixed
-PIDFile=/run/nsd/nsd.pid
-
-[Install]
-WantedBy=multi-user.target

diff --git a/net-dns/nsd/metadata.xml b/net-dns/nsd/metadata.xml
index 0cdd2376e40c..65dad76e8f3c 100644
--- a/net-dns/nsd/metadata.xml
+++ b/net-dns/nsd/metadata.xml
@@ -5,6 +5,9 @@
 		<email>kumba@gentoo.org</email>
 		<name>Joshua Kinard</name>
 	</maintainer>
+	<upstream>
+		<remote-id type="github">NLnetLabs/nsd</remote-id>
+	</upstream>
 	<use>
 		<flag name="bind8-stats">Enables BIND8 like NSTATS and XSTATS and statistics in nsd-control</flag>
 		<flag name="default-znow">Enable full relocation binding at load-time (RELRO NOW, to protect GOT and .dtor areas)</flag>
@@ -21,12 +24,8 @@
 		<flag name="radix-tree">Use a radix tree for main lookups instead of a red-black tree</flag>
 		<flag name="ratelimit">Enables ratelimiting, based on query name, type and source</flag>
 		<flag name="recvmmsg">Enable recvmmsg and sendmmsg compilation, faster but some kernel versions may have implementation problems for IPv6</flag>
-		<flag name="root-server">Configure NSD as a root server (OBSOLETE: removed in >=4.9.x)</flag>
 		<flag name="simdzone">Leverage SIMD instructions in modern CPUs to improve throughput</flag>
 		<flag name="tfo">Enable TCP Fast Open</flag>
-		<flag name="year2038">Support timestamps after 2038 (glibc only!)</flag>
+		<flag name="year2038">Enables support for 64-bit 'time_t' (sets D_TIME_BITS=64; glibc only)</flag>
 	</use>
-	<upstream>
-		<remote-id type="github">NLnetLabs/nsd</remote-id>
-	</upstream>
 </pkgmetadata>

diff --git a/net-dns/nsd/nsd-4.10.0.ebuild b/net-dns/nsd/nsd-4.10.1.ebuild
similarity index 92%
rename from net-dns/nsd/nsd-4.10.0.ebuild
rename to net-dns/nsd/nsd-4.10.1.ebuild
index da8e10d8e3ac..3d6930329889 100644
--- a/net-dns/nsd/nsd-4.10.0.ebuild
+++ b/net-dns/nsd/nsd-4.10.1.ebuild
@@ -52,8 +52,6 @@ PATCHES=(
 	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
 )
 
-NSD_CONFD_VER="1"		# Cur version of NSD's OpenRC conf.d file.
-NSD_INITD_VER="2"		# Cur version of NSD's OpenRC init.d script.
 NSD_TMPFILESD_VER="1"		# Cur version of NSD's tmpfiles.d config.
 
 NSD_DBDIR="/var/db/nsd"		# Default dir for NSD's databases.
@@ -113,7 +111,9 @@ src_configure() {
 		)
 	fi
 
-	# This configure switch is only available on a glibc-based system.
+	# This configure switch only appears on glibc-based userlands.
+	# It enables 64-bit time_t to support timestamps greater than
+	# the year 2038 (D_TIME_BITS=64).
 	if use elibc_glibc; then
 		myconf+=( $(use_enable year2038) )
 	fi
@@ -125,14 +125,14 @@ src_install() {
 	emake DESTDIR="${D}" install
 
 	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-	newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd
-	newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd
+	newinitd "contrib/nsd.openrc.in" nsd
+	newconfd "contrib/nsd.openrc.conf" nsd
 	newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf
 
 	# Install munin plugin and config, if requested.
 	if use munin ; then
 		exeinto "/usr/libexec/munin/plugins"
-		doexe contrib/nsd_munin_
+		doexe "contrib/nsd_munin_"
 		insinto "/etc/munin/plugin-conf.d"
 		newins "${FILESDIR}/nsd.munin-conf" nsd_munin
 	fi

diff --git a/net-dns/nsd/nsd-4.8.0-r1.ebuild b/net-dns/nsd/nsd-4.8.0-r1.ebuild
deleted file mode 100644
index 654f972468e3..000000000000
--- a/net-dns/nsd/nsd-4.8.0-r1.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools systemd
-
-DESCRIPTION="An authoritative only, high performance, open source name server"
-HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
-
-if [[ ${PV} == *9999 ]] ; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
-else
-	# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
-	MY_PV="${PV/_beta/b}"
-	MY_PV="${MY_PV/_rc/rc}"
-	MY_P="${PN}-${MY_PV}"
-
-	if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
-		SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
-		S="${WORKDIR}"/${MY_P}
-
-		KEYWORDS="amd64 x86"
-	fi
-fi
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="bind8-stats debug dnstap libevent minimal-responses mmap munin +nsec3 ratelimit root-server ssl systemd"
-
-RDEPEND="
-	acct-group/nsd
-	acct-user/nsd
-	dnstap? (
-		dev-libs/fstrm
-		dev-libs/protobuf-c
-	)
-	libevent? ( dev-libs/libevent )
-	munin? ( net-analyzer/munin )
-	ssl? ( dev-libs/openssl:0= )
-	systemd? ( sys-apps/systemd )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	app-alternatives/lex
-	app-alternatives/yacc
-	systemd? ( virtual/pkgconfig )
-"
-
-PATCHES=(
-	# Fix the paths in the munin plugin to match our install
-	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
-	"${FILESDIR}/${P}-implausible-stats.patch"
-)
-
-src_prepare() {
-	default
-
-	# Required to get correct pkg-config macros with USE="systemd"
-	# See bugs #663618 and #758050
-	eautoreconf
-}
-
-src_configure() {
-	local myeconfargs=(
-		--enable-ipv6
-		--enable-largefile
-		--enable-pie
-		--enable-relro-now
-		--enable-tcp-fastopen
-
-		--with-dbfile="${EPREFIX}"/var/db/nsd/nsd.db
-		--with-logfile="${EPREFIX}"/var/log/nsd.log
-		--with-pidfile="${EPREFIX}"/run/nsd/nsd.pid
-		--with-xfrdfile="${EPREFIX}"/var/db/nsd/xfrd.state
-		--with-xfrdir="${EPREFIX}"/var/db/nsd
-		--with-zonelistfile="${EPREFIX}"/var/db/nsd/zone.list
-		--with-zonesdir="${EPREFIX}"/var/lib/nsd
-
-		$(use_enable bind8-stats)
-		$(use_enable bind8-stats zone-stats)
-		$(use_enable debug checking)
-		$(use_enable dnstap)
-		$(use_enable minimal-responses)
-		$(use_enable mmap)
-		$(use_enable nsec3)
-		$(use_enable ratelimit)
-		$(use_enable root-server)
-		$(use_enable systemd)
-		$(use_with libevent)
-		$(use_with ssl)
-	)
-
-	econf "${myeconfargs[@]}"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install
-
-	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-
-	newinitd "${FILESDIR}"/nsd.initd-r1 nsd
-
-	# Install munin plugin and config
-	if use munin ; then
-		exeinto /usr/libexec/munin/plugins
-		doexe contrib/nsd_munin_
-		insinto /etc/munin/plugin-conf.d
-		newins "${FILESDIR}"/nsd.munin-conf nsd_munin
-	fi
-
-	systemd_dounit "${FILESDIR}"/nsd.service
-
-	# Remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath)
-	rm -r "${ED}"/run || die "Failed to remove /run"
-
-	keepdir /var/db/${PN}
-}
-
-pkg_postinst() {
-	# database directory, writable by nsd for database updates and zone transfers
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/db/nsd
-
-	# zones directory, writable by nsd for zone file updates (nsd-control write)
-	install -d -m 750 -o nsd -g nsd "${EROOT}"/var/lib/nsd
-}

diff --git a/net-dns/nsd/nsd-4.9.1.ebuild b/net-dns/nsd/nsd-4.9.1.ebuild
index 3df2b6926da3..f18bd817fb51 100644
--- a/net-dns/nsd/nsd-4.9.1.ebuild
+++ b/net-dns/nsd/nsd-4.9.1.ebuild
@@ -101,7 +101,9 @@ src_configure() {
 		--with-zonesdir="${EPREFIX}${NSD_ZNDIR}"
 	)
 
-	# This configure switch is only available on a glibc-based system.
+	# This configure switch only appears on glibc-based userlands.
+	# It enables 64-bit time_t to support timestamps greater than
+	# the year 2038 (D_TIME_BITS=64).
 	if use elibc_glibc; then
 		myconf+=( $(use_enable year2038) )
 	fi

diff --git a/net-dns/nsd/nsd-9999.ebuild b/net-dns/nsd/nsd-9999.ebuild
index da8e10d8e3ac..3d6930329889 100644
--- a/net-dns/nsd/nsd-9999.ebuild
+++ b/net-dns/nsd/nsd-9999.ebuild
@@ -52,8 +52,6 @@ PATCHES=(
 	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
 )
 
-NSD_CONFD_VER="1"		# Cur version of NSD's OpenRC conf.d file.
-NSD_INITD_VER="2"		# Cur version of NSD's OpenRC init.d script.
 NSD_TMPFILESD_VER="1"		# Cur version of NSD's tmpfiles.d config.
 
 NSD_DBDIR="/var/db/nsd"		# Default dir for NSD's databases.
@@ -113,7 +111,9 @@ src_configure() {
 		)
 	fi
 
-	# This configure switch is only available on a glibc-based system.
+	# This configure switch only appears on glibc-based userlands.
+	# It enables 64-bit time_t to support timestamps greater than
+	# the year 2038 (D_TIME_BITS=64).
 	if use elibc_glibc; then
 		myconf+=( $(use_enable year2038) )
 	fi
@@ -125,14 +125,14 @@ src_install() {
 	emake DESTDIR="${D}" install
 
 	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-	newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd
-	newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd
+	newinitd "contrib/nsd.openrc.in" nsd
+	newconfd "contrib/nsd.openrc.conf" nsd
 	newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf
 
 	# Install munin plugin and config, if requested.
 	if use munin ; then
 		exeinto "/usr/libexec/munin/plugins"
-		doexe contrib/nsd_munin_
+		doexe "contrib/nsd_munin_"
 		insinto "/etc/munin/plugin-conf.d"
 		newins "${FILESDIR}/nsd.munin-conf" nsd_munin
 	fi


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2024-08-04 22:33 Joshua Kinard
  0 siblings, 0 replies; 12+ messages in thread
From: Joshua Kinard @ 2024-08-04 22:33 UTC (permalink / raw
  To: gentoo-commits

commit:     ab85233daba06aabebadda800b5355791a86979f
Author:     Joshua Kinard <kumba <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  4 22:26:59 2024 +0000
Commit:     Joshua Kinard <kumba <AT> gentoo <DOT> org>
CommitDate: Sun Aug  4 22:29:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ab85233d

net-dns/nsd: Fix an autoconf check in simdzone src

Added a patch to fix an autoconf check in the simdzone src
configure.ac file for Westmere detection that was calling
a non-existent C function and breaking the test.  Patch
submitted to upstream as NLnetLabs/simdzone PR#224.

Closes: https://bugs.gentoo.org/937318
Reported-by: Agostino Sarubbo <ago <AT> gentoo.org>
Signed-off-by: Joshua Kinard <kumba <AT> gentoo.org>

 .../nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch    | 12 ++++++++++++
 net-dns/nsd/{nsd-4.10.1-r1.ebuild => nsd-4.10.1-r2.ebuild}   |  1 +
 2 files changed, 13 insertions(+)

diff --git a/net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch b/net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch
new file mode 100644
index 000000000000..5d6a38c64a0d
--- /dev/null
+++ b/net-dns/nsd/files/nsd-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch
@@ -0,0 +1,12 @@
+diff -Naurp a/simdzone/configure.ac b/simdzone/configure.ac
+--- a/simdzone/configure.ac	2024-08-02 08:05:01.000000000 -0400
++++ b/simdzone/configure.ac	2024-08-04 17:56:15.810347292 -0400
+@@ -76,7 +76,7 @@ AC_INCLUDES_DEFAULT
+ int main(int argc, char *argv[])
+ {
+   (void)argv;
+-  uint64_t popcnt = _mm_popcnt_64((uint64_t)argc);
++  uint64_t popcnt = _mm_popcnt_u64((uint64_t)argc);
+   return popcnt == 11;
+ }
+ ]])

diff --git a/net-dns/nsd/nsd-4.10.1-r1.ebuild b/net-dns/nsd/nsd-4.10.1-r2.ebuild
similarity index 98%
rename from net-dns/nsd/nsd-4.10.1-r1.ebuild
rename to net-dns/nsd/nsd-4.10.1-r2.ebuild
index 099b81460652..06ee9f176c22 100644
--- a/net-dns/nsd/nsd-4.10.1-r1.ebuild
+++ b/net-dns/nsd/nsd-4.10.1-r2.ebuild
@@ -49,6 +49,7 @@ BDEPEND="
 "
 
 PATCHES=(
+	"${FILESDIR}/${PN}-4.10.1-simdzone-configure_ac-_mm_popcnt_u64.patch"
 	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
 )
 


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/
@ 2024-11-04  1:29 Andreas K. Hüttel
  0 siblings, 0 replies; 12+ messages in thread
From: Andreas K. Hüttel @ 2024-11-04  1:29 UTC (permalink / raw
  To: gentoo-commits

commit:     720b7d2138131bdad9f430138f328b185158c4fd
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  4 01:19:41 2024 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Mon Nov  4 01:29:34 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=720b7d21

net-dns/nsd: drop 4.9.1

Bug: https://bugs.gentoo.org/937318
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 net-dns/nsd/Manifest                               |   1 -
 .../nsd/files/nsd-4.9.1-systemd-no-pidfile.patch   |  16 ---
 net-dns/nsd/nsd-4.9.1.ebuild                       | 151 ---------------------
 3 files changed, 168 deletions(-)

diff --git a/net-dns/nsd/Manifest b/net-dns/nsd/Manifest
index d2631f26e9a4..32bf4d32a68c 100644
--- a/net-dns/nsd/Manifest
+++ b/net-dns/nsd/Manifest
@@ -1,2 +1 @@
 DIST nsd-4.10.1.tar.gz 1404799 BLAKE2B 7b286ac681c1bb8201654cd2e5fac8a98256f6a595dfbb39bcfed92de63b3337e05d219bc766bab01e4aaf3fb1de3c128d7157caeee3a7f21e4132db9ea72cba SHA512 b0f4bdca8a1c6fbbe99096abc8c5f8b34ef2e66dc0da44da253ab164b35ad0aaef5d05eb682b88cc68d8b1671f7b80abafee242a784ed6deb785adee7f6a53a9
-DIST nsd-4.9.1.tar.gz 1309953 BLAKE2B 4a43db480be7196c0a177cc6ee2b9cd6eaaaa9af4d0c3dc7b8f07a5b9e24fd4eac816a29f83de870efe012f2f3bbcbb9bdbda903d05bf9d96574bddc97f68547 SHA512 65cd38aa8a41aee57a6950747de448bc4007a2d2c095152f1d22006f85faa7f0732ec4aa0aeae9f46bc69bff17164d8fe384bbc3441d0484364c4af938b511c1

diff --git a/net-dns/nsd/files/nsd-4.9.1-systemd-no-pidfile.patch b/net-dns/nsd/files/nsd-4.9.1-systemd-no-pidfile.patch
deleted file mode 100644
index 49528723e35b..000000000000
--- a/net-dns/nsd/files/nsd-4.9.1-systemd-no-pidfile.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-# See:
-# https://github.com/NLnetLabs/nsd/issues/317
-
-diff --git a/contrib/nsd.service b/contrib/nsd.service
-index f45359f91..0cc12cc3c 100644
---- a/contrib/nsd.service
-+++ b/contrib/nsd.service
-@@ -4,7 +4,7 @@ After=syslog.target network-online.target
- 
- [Service]
- Type=notify
--ExecStart=/usr/sbin/nsd -d -c /etc/nsd/nsd.conf $NSD_EXTRA_OPTS
-+ExecStart=/usr/sbin/nsd -d -P "" -c /etc/nsd/nsd.conf $NSD_EXTRA_OPTS
- ExecReload=/bin/kill -HUP $MAINPID
- KillMode=mixed
- PrivateTmp=true

diff --git a/net-dns/nsd/nsd-4.9.1.ebuild b/net-dns/nsd/nsd-4.9.1.ebuild
deleted file mode 100644
index f18bd817fb51..000000000000
--- a/net-dns/nsd/nsd-4.9.1.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-inherit autotools systemd tmpfiles
-
-DESCRIPTION="An authoritative only, high performance, open source name server"
-HOMEPAGE="https://www.nlnetlabs.nl/projects/nsd"
-
-if [[ ${PV} == *9999 ]] ; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/NLnetLabs/nsd.git"
-else
-	# version voodoo needed only for non-release tarballs: 4.0.0_rc1 => 4.0.0rc1
-	MY_PV="${PV/_beta/b}"
-	MY_PV="${MY_PV/_rc/rc}"
-	MY_P="${PN}-${MY_PV}"
-
-	if [[ ${PV} != *_beta* && ${PV} != *_rc* ]] ; then
-		SRC_URI="https://www.nlnetlabs.nl/downloads/${PN}/${MY_P}.tar.gz"
-		S="${WORKDIR}"/${MY_P}
-
-		KEYWORDS="amd64 x86"
-	fi
-fi
-
-LICENSE="BSD"
-SLOT="0"
-IUSE="bind8-stats debug +default-znow dnstap +ipv6 +largefile libevent +lto memclean minimal-responses mmap munin +nsec3 packed +pie +radix-tree ratelimit recvmmsg ssl systemd +tfo year2038"
-
-RDEPEND="
-	acct-group/nsd
-	acct-user/nsd
-	dnstap? (
-		dev-libs/fstrm
-		dev-libs/protobuf-c
-	)
-	libevent? ( dev-libs/libevent )
-	munin? ( net-analyzer/munin )
-	ssl? ( dev-libs/openssl:0= )
-	systemd? ( sys-apps/systemd )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
-	app-alternatives/lex
-	app-alternatives/yacc
-	systemd? ( virtual/pkgconfig )
-"
-
-PATCHES=(
-	"${FILESDIR}/${P}-systemd-no-pidfile.patch"
-	"${FILESDIR}/${PN}-munin-gentoo-paths.patch"
-)
-
-NSD_CONFD_VER="1"		# Cur version of NSD's OpenRC conf.d file.
-NSD_INITD_VER="2"		# Cur version of NSD's OpenRC init.d script.
-NSD_TMPFILESD_VER="1"		# Cur version of NSD's tmpfiles.d config.
-
-NSD_DBDIR="/var/db/nsd"		# Default dir for NSD's databases.
-NSD_ZNDIR="/var/lib/nsd"	# Default dir for NSD's zone files.
-
-src_prepare() {
-	default
-
-	# Required to get correct pkg-config macros with USE="systemd".
-	# See bugs #663618 & #758050.
-	eautoreconf
-}
-
-src_configure() {
-	local myconf=(
-		$(use_enable bind8-stats)
-		$(use_enable bind8-stats zone-stats)
-		$(use_enable debug checking)
-		$(use_enable default-znow relro-now)
-		$(use_enable dnstap)
-		$(use_enable ipv6)
-		$(use_enable largefile)
-		$(use_enable lto flto)
-		$(use_enable memclean)
-		$(use_enable minimal-responses)
-		$(use_enable mmap)
-		$(use_enable nsec3)
-		$(use_enable packed)
-		$(use_enable pie)
-		$(use_enable radix-tree)
-		$(use_enable ratelimit)
-		$(use_enable recvmmsg)
-		$(use_enable systemd)
-		$(use_enable tfo tcp-fastopen)
-		$(use_with libevent)
-		$(use_with ssl)
-
-		--with-dbfile="${EPREFIX}${NSD_DBDIR}/nsd.db"
-		--with-logfile="${EPREFIX}/var/log/nsd.log"
-		--with-pidfile="${EPREFIX}/run/nsd.pid"
-		--with-xfrdfile="${EPREFIX}${NSD_DBDIR}/xfrd.state"
-		--with-xfrdir="${EPREFIX}${NSD_DBDIR}"
-		--with-zonelistfile="${EPREFIX}${NSD_DBDIR}/zone.list"
-		--with-zonesdir="${EPREFIX}${NSD_ZNDIR}"
-	)
-
-	# This configure switch only appears on glibc-based userlands.
-	# It enables 64-bit time_t to support timestamps greater than
-	# the year 2038 (D_TIME_BITS=64).
-	if use elibc_glibc; then
-		myconf+=( $(use_enable year2038) )
-	fi
-
-	econf "${myconf[@]}"
-}
-
-src_install() {
-	emake DESTDIR="${D}" install
-
-	dodoc doc/{ChangeLog,CREDITS,NSD-4-features,NSD-FOR-BIND-USERS,README,RELNOTES,REQUIREMENTS}
-	newinitd "${FILESDIR}/nsd.initd-r${NSD_INITD_VER}" nsd
-	newconfd "${FILESDIR}/nsd.confd-r${NSD_CONFD_VER}" nsd
-	newtmpfiles "${FILESDIR}/nsd.tmpfilesd-r${NSD_TMPFILESD_VER}" nsd.conf
-
-	# Install munin plugin and config, if requested.
-	if use munin ; then
-		exeinto "/usr/libexec/munin/plugins"
-		doexe contrib/nsd_munin_
-		insinto "/etc/munin/plugin-conf.d"
-		newins "${FILESDIR}/nsd.munin-conf" nsd_munin
-	fi
-
-	# Use the upstream-provided systemd service file.
-	systemd_dounit "contrib/nsd.service"
-
-	# Remove the /run directory that usually resides on tmpfs and is
-	# being taken care of by the nsd init script anyway (checkpath).
-	rm -r "${ED}/run" || die "Failed to remove /run"
-
-	keepdir "${NSD_DBDIR}"
-}
-
-pkg_postinst() {
-	# See eclass/tmpfiles.eclass for info.
-	tmpfiles_process nsd.conf
-
-	# Database directory
-	# Writable by nsd:nsd for database updates and zone transfers.
-	install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_DBDIR}"
-
-	# Zones directory
-	# Writable by nsd:nsd for zone file updates (via 'nsd-control write').
-	install -d -m 750 -o nsd -g nsd "${EROOT}/${NSD_ZNDIR}"
-}


^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2024-11-04  1:29 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-25  8:39 [gentoo-commits] repo/gentoo:master commit in: net-dns/nsd/, net-dns/nsd/files/ Lars Wendler
  -- strict thread matches above, loose matches on Subject: below --
2024-11-04  1:29 Andreas K. Hüttel
2024-08-04 22:33 Joshua Kinard
2024-08-04 10:16 Joshua Kinard
2024-06-03  6:21 Joshua Kinard
2023-12-08  8:35 Sam James
2023-06-07 11:30 Sam James
2022-01-28 15:46 Lars Wendler
2019-06-12 10:45 Lars Wendler
2016-08-26  7:32 Lars Wendler
2016-08-24 15:59 Lars Wendler
2016-07-06  1:31 Lars Wendler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox