diff -Nurp nftables/nftables-flush nftables/nftables-flush --- nftables/nftables-flush 1970-01-01 01:00:00.000000000 +0100 +++ nftables/nftables-flush 2014-05-06 11:20:18.735883814 +0200 @@ -0,0 +1,14 @@ +#!/bin/bash + +for FAMILY in ip ip6 inet arp bridge; do + TABLES=$(nft list tables ${FAMILY} | grep "^table\s" | cut -d' ' -f2) + for TABLE in ${TABLES}; do + CHAINS=$(nft list table ${FAMILY} ${TABLE} | grep "^\schain\s" | cut -d' ' -f2) + for CHAIN in ${CHAINS}; do + nft flush chain ${FAMILY} ${TABLE} ${CHAIN} + nft delete chain ${FAMILY} ${TABLE} ${CHAIN} + done + nft flush table ${FAMILY} ${TABLE} + nft delete table ${FAMILY} ${TABLE} + done +done diff -Nurp nftables/nftables.service nftables/nftables.service --- nftables/nftables.service 1970-01-01 01:00:00.000000000 +0100 +++ nftables/nftables.service 2014-05-06 10:57:34.467331969 +0200 @@ -0,0 +1,13 @@ +[Unit] +Description=Packet Filtering Framework + +[Service] +Type=oneshot +ExecStart=/usr/bin/nft -f /etc/nftables/nftables.rules +ExecReload=/usr/lib/systemd/scripts/nftables-flush +ExecReload=/usr/bin/nft -f /etc/nftables/nftables.rules +ExecStop=/usr/lib/systemd/scripts/nftables-flush +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff -Nurp nftables/PKGBUILD nftables/PKGBUILD --- nftables/PKGBUILD 2014-05-06 00:08:15.880557388 +0200 +++ nftables/PKGBUILD 2014-05-06 11:22:55.373880666 +0200 @@ -4,7 +4,7 @@ pkgname=nftables epoch=1 pkgver=0.2 -pkgrel=1 +pkgrel=2 pkgdesc='Netfilter nftables userspace tools' arch=('i686' 'x86_64') url='http://netfilter.org/projects/nftables/' @@ -12,9 +12,13 @@ license=('GPL2') depends=('libmnl' 'libnftnl' 'gmp' 'readline' 'ncurses') makedepends=('docbook2x') source=("http://netfilter.org/projects/nftables/files/nftables-$pkgver.tar.bz2"{,.sig} + 'nftables.service' + 'nftables-flsuh' '02-manpages.patch') sha1sums=('1d1959e02e970b1de0e9435142a64d09240c0591' 'SKIP' + 'fd417dde905c4e625ff12e6b8b7fc9e22cd03b97' + 'cdf7925e28be4a3cfc90665ec2a9f4b25af1b13e' '3ef58d5199b358ceb184307aca3e215c40ce3707') build() { @@ -27,6 +31,9 @@ build() { package() { cd $pkgname-$pkgver make DESTDIR="$pkgdir" install + + install -D -m0644 ${srcdir}/nftables.service ${pkgdir}/usr/lib/systemd/system/nftables.service + install -D -m0755 ${srcdir}/nftables-flsuh ${pkgdir}/usr/lib/systemd/scripts/nftables-flush } # vim:set ts=2 sw=2 et: