net-misc/miniupnpd: Support running ip6tables setup scripts
authorMichał Górny <mgorny@gentoo.org>
Sun, 30 Jun 2019 07:27:47 +0000 (09:27 +0200)
committerMichał Górny <mgorny@gentoo.org>
Sun, 30 Jun 2019 07:39:17 +0000 (09:39 +0200)
Signed-off-by: Michał Górny <mgorny@gentoo.org>
net-misc/miniupnpd/files/miniupnpd-conf.d-r2
net-misc/miniupnpd/files/miniupnpd-init.d-r2
net-misc/miniupnpd/miniupnpd-2.1.20190625-r1.ebuild

index 2ebd8c56b57e5dd3243db6eaac004816f2d98923..d0f5ce40cdc652be992f8ed52af71a353a4e3e8b 100644 (file)
@@ -8,3 +8,6 @@
 
 # enable manipulating iptables on start/stop
 iptables_scripts=1
+
+# enable manipulating ip6tables on start/stop
+ip6tables_scripts=1
index 8b9f0579f223bc1831dda97c3bb8061c4b65fb3f..4671ba067c45404429e3f718c3e6a6d4f740b9a4 100644 (file)
@@ -9,7 +9,7 @@ command_args="-f ${config_file:-/etc/miniupnpd/miniupnpd.conf} ${extra_args}"
 
 depend() {
        need net
-       use iptables minissdpd
+       use iptables ip6tables minissdpd
 }
 
 start_pre() {
@@ -18,6 +18,9 @@ start_pre() {
        if [ -n "${iptables_scripts}" ]; then
                /etc/miniupnpd/iptables_init.sh || retval=${?}
        fi
+       if [ -n "${ip6tables_scripts}" ]; then
+               /etc/miniupnpd/ip6tables_init.sh || retval=${?}
+       fi
        
        return ${retval}
 }
@@ -28,6 +31,9 @@ stop_post() {
        if [ -n "${iptables_scripts}" ]; then
                /etc/miniupnpd/iptables_removeall.sh
        fi
+       if [ -n "${ip6tables_scripts}" ]; then
+               /etc/miniupnpd/ip6tables_removeall.sh
+       fi
 
        return ${retval}
 }
index 30de1d75b8f04a717dc6afe04a6c01f63824c6cb..3aaa9a02a94f02e9456c0f7626886f691a5dfca3 100644 (file)
@@ -55,8 +55,12 @@ src_compile() {
 src_install() {
        emake PREFIX="${ED}" STRIP=true install
 
+       local confd_seds=( -e ': noop' )
+       use ipv6 || confd_seds+=( -e 's/^ip6tables_scripts=/#&/' )
+
        newinitd "${FILESDIR}"/${PN}-init.d-r2 ${PN}
-       newconfd "${FILESDIR}"/${PN}-conf.d-r2 ${PN}
+       newconfd - ${PN} < <(sed "${confd_seds[@]}" \
+               "${FILESDIR}"/${PN}-conf.d-r2 || die)
 }
 
 pkg_postinst() {