From 22429c0a1d09d89d05fee2a298a7a0f16d6d8e77 Mon Sep 17 00:00:00 2001 From: Eivind Uggedal Date: Wed, 17 Dec 2014 07:45:18 +0000 Subject: [PATCH] nftables: runit service --- srcpkgs/nftables/files/nftables/finish | 19 +++++++++++++++++++ srcpkgs/nftables/files/nftables/run | 4 ++++ srcpkgs/nftables/template | 6 +++++- 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/nftables/files/nftables/finish create mode 100644 srcpkgs/nftables/files/nftables/run diff --git a/srcpkgs/nftables/files/nftables/finish b/srcpkgs/nftables/files/nftables/finish new file mode 100644 index 00000000000..f367057180d --- /dev/null +++ b/srcpkgs/nftables/files/nftables/finish @@ -0,0 +1,19 @@ +#!/bin/sh + +# When the lts and stable kernel is switched to version 3.18 or greater +# this script can be simplified to: +# +# nft flush ruleset + +for family in ip ip6 inet arp bridge; do + nft list tables $family | while read _ table; do + nft flush table $family $table + nft list table $family $table | + awk '/^[[:blank:]]+chain [[:alnum:]]+ {$/ { print $2 }' | + while read chain; do + nft flush chain $family $table $chain + nft delete chain $family $table $chain + done + nft delete table $family $table + done +done diff --git a/srcpkgs/nftables/files/nftables/run b/srcpkgs/nftables/files/nftables/run new file mode 100644 index 00000000000..c8425d3753e --- /dev/null +++ b/srcpkgs/nftables/files/nftables/run @@ -0,0 +1,4 @@ +#!/bin/sh +[ ! -r /etc/nftables.conf ] && exit 0 +nft -f /etc/nftables.conf +exec chpst -b nftables pause diff --git a/srcpkgs/nftables/template b/srcpkgs/nftables/template index bbfdb2f4cb4..a5a4973b946 100644 --- a/srcpkgs/nftables/template +++ b/srcpkgs/nftables/template @@ -1,7 +1,7 @@ # Template file for 'nftables' pkgname=nftables version=0.4 -revision=1 +revision=2 build_style=gnu-configure configure_args="--sbindir=/usr/bin CONFIG_MAN=y DB2MAN=docbook2man" hostmakedepends="pkg-config docbook2x flex bison" @@ -13,3 +13,7 @@ homepage="http://netfilter.org/projects/nftables/" update_ignore="0.0*" distfiles="http://www.netfilter.org/projects/${pkgname}/files/${pkgname}-${version}.tar.bz2" checksum=f6ca69b75c68915f9f3a3972274ec68354dfbbcfc0b9fc55c813a0525c351d3c + +post_install() { + vsv $pkgname +}