From 0d4261dd2750534de16c84bded2708ee4e2e3ca5 Mon Sep 17 00:00:00 2001
From: Michał Górny <mgorny@gentoo.org>
Date: Thu, 4 Jan 2024 05:27:44 +0100
Subject: net-misc/miniupnpd: Bump to 2.3.4
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
 net-misc/miniupnpd/Manifest               |   2 +
 net-misc/miniupnpd/miniupnpd-2.3.4.ebuild | 108 ++++++++++++++++++++++++++++++
 2 files changed, 110 insertions(+)
 create mode 100644 net-misc/miniupnpd/miniupnpd-2.3.4.ebuild

diff --git a/net-misc/miniupnpd/Manifest b/net-misc/miniupnpd/Manifest
index a854c3327ea2..20b0126239fa 100644
--- a/net-misc/miniupnpd/Manifest
+++ b/net-misc/miniupnpd/Manifest
@@ -1,2 +1,4 @@
 DIST miniupnpd-2.3.3.tar.gz 260079 BLAKE2B 4b32e05bc7002bc7edc946f01b1984f3d184e0e9949a9685ffa5351ece9dacc09dc48567cc6f68972343a1921f4ceb5c541d4b557c4991f311289a511c492efa SHA512 98915e3c1410d6753a58133596bad012fea205f36ae4991c2cf4b358d1e905e029287cfcf1aa97283c2e3c1cb8c20655bff35d49a37ae8756739e33c4ae3e7ef
 DIST miniupnpd-2.3.3.tar.gz.sig 543 BLAKE2B 33b6166ba64a7a7c1b019c84d8a623d2905f32b41ea6b7cfd96c180e3d8738af264b5f073a9503c037f4609f15cb73f039701368eba63764de9edc79159961f6 SHA512 f2b167fec659e2f366ac180e8245c35e2907f5fb6be31fb62aad072e8a67868b995dd9400b4f41ebdfe2dcb46df583e5a1d6260f93c9b3eb25ba46bc7f6106dd
+DIST miniupnpd-2.3.4.tar.gz 260810 BLAKE2B 7ce722aabcb0142740ffd4669c4326a99ed2903c1a0da984c5c3eb2ce523c4f6919d73b84708857ca51711fb4fdb0f8f00547ba81f3ea0e7bc700d166c07bb69 SHA512 7e84fcc7fbbdcb8e40d8ef35c48b331e0189427ca61d67b33c856c0598496cecade2bc7880590581c5eaf77c686496bb3228ed93d3d8edc073e8f5781a03ae9e
+DIST miniupnpd-2.3.4.tar.gz.sig 543 BLAKE2B 5940c26bc6717e2b6f636dded1a5d7e4625d69e763191fe97fc7c2459ad9957a80d809c5795511ef35ef005817abb01a78e1c0f0af0c2508fea671a1fba17212 SHA512 abcea4fa53b31582e2bd8db1a1df53b25142757e760e62c4200c3067d3f8c2f9b6d11211d6d1232cc44565ded8503279e05ed42c3915a16ed432063f555c00e3
diff --git a/net-misc/miniupnpd/miniupnpd-2.3.4.ebuild b/net-misc/miniupnpd/miniupnpd-2.3.4.ebuild
new file mode 100644
index 000000000000..ef90208e7b6d
--- /dev/null
+++ b/net-misc/miniupnpd/miniupnpd-2.3.4.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs verify-sig
+
+DESCRIPTION="MiniUPnP IGD Daemon"
+HOMEPAGE="
+	http://miniupnp.free.fr/
+	https://miniupnp.tuxfamily.org/
+	https://github.com/miniupnp/miniupnp/
+"
+SRC_URI="
+	https://miniupnp.tuxfamily.org/files/${P}.tar.gz
+	verify-sig? (
+		https://miniupnp.tuxfamily.org/files/${P}.tar.gz.sig
+	)
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="+leasefile igd2 ipv6 nftables pcp-peer portinuse strict"
+
+RDEPEND="
+	dev-libs/gmp:0=
+	sys-apps/util-linux:=
+	dev-libs/openssl:0=
+	!nftables? (
+		>=net-firewall/iptables-1.4.6:0=[ipv6(+)?]
+		net-libs/libnfnetlink:=
+		net-libs/libmnl:=
+	)
+	nftables? (
+		net-firewall/nftables
+		net-libs/libnftnl:=
+		net-libs/libmnl:=
+	)
+"
+DEPEND="
+	${RDEPEND}
+	elibc_musl? ( sys-libs/queue-standalone )
+"
+BDEPEND="
+	sys-apps/lsb-release
+	verify-sig? ( sec-keys/openpgp-keys-miniupnp )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/miniupnp.asc
+
+src_prepare() {
+	default
+
+	# fails without a default route
+	sed -i -e 's:EXTIF=.*:EXTIF=lo:' testgetifaddr.sh || die
+}
+
+src_configure() {
+	local opts=(
+		--vendorcfg
+		$(usex igd2 '--igd2' '')
+		$(usex ipv6 '--ipv6' '')
+		$(usex leasefile '--leasefile' '')
+		$(usex portinuse '--portinuse' '')
+		$(usex pcp-peer '--pcp-peer' '')
+		$(usex strict '--strict' '')
+		--firewall=$(usex nftables nftables iptables)
+	)
+
+	# custom script
+	./configure "${opts[@]}" || die
+	# prevent gzipping manpage
+	sed -i -e '/gzip/d' Makefile || die
+}
+
+src_compile() {
+	# By default, it builds a bunch of unittests that are missing wrapper
+	# scripts in the tarball
+	emake CC="$(tc-getCC)" STRIP=true miniupnpd
+}
+
+src_test() {
+	emake CC="$(tc-getCC)" check
+}
+
+src_install() {
+	emake PREFIX="${ED}" STRIP=true install
+
+	local confd_seds=()
+	if use nftables; then
+		confd_seds+=( -e 's/^iptables_scripts=/#&/' )
+	else
+		confd_seds+=( -e 's/^nftables_scripts=/#&/' )
+	fi
+	if ! use ipv6 || use nftables; then
+		confd_seds+=( -e 's/^ip6tables_scripts=/#&/' )
+	fi
+
+	newinitd "${FILESDIR}"/${PN}-init.d-r2 ${PN}
+	newconfd - ${PN} < <(sed "${confd_seds[@]}" \
+		"${FILESDIR}"/${PN}-conf.d-r2 || die)
+}
+
+pkg_postinst() {
+	elog "Please correct the external interface in the top of the two"
+	elog "scripts in /etc/miniupnpd and edit the config file in there too"
+}
-- 
cgit v1.2.3-65-gdbad