diff options
Diffstat (limited to 'extra/ebtables')
-rw-r--r-- | extra/ebtables/PKGBUILD | 51 | ||||
-rw-r--r-- | extra/ebtables/ebtables.install | 9 | ||||
-rw-r--r-- | extra/ebtables/ebtables.service | 11 | ||||
-rw-r--r-- | extra/ebtables/ebtables.systemd | 21 |
4 files changed, 92 insertions, 0 deletions
diff --git a/extra/ebtables/PKGBUILD b/extra/ebtables/PKGBUILD new file mode 100644 index 000000000..ce47a9081 --- /dev/null +++ b/extra/ebtables/PKGBUILD @@ -0,0 +1,51 @@ +# $Id: PKGBUILD 217757 2014-07-23 22:33:19Z seblu $ +# Maintainer: Sébastien Luttringer +# Contributor: Michal Soltys <soltys@ziu.info> + +pkgname=ebtables +pkgver=2.0.10_4 +pkgrel=4 +pkgdesc='Ethernet bridge filtering utilities' +arch=('i686' 'x86_64') +url='http://ebtables.sourceforge.net/' +depends=('perl' 'bash') +license=('GPL2') +backup=("etc/$pkgname.conf") +# ebtables segfault with --as-needed +options=('!buildflags') +install=$pkgname.install +source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-v${pkgver/_/-}.tar.gz" + "$pkgname.systemd" + "$pkgname.service") +md5sums=('506742a3d44b9925955425a659c1a8d0' + 'b4c329060809e5b290ae49fbd0ad61f2' + 'baf923443c3b16277e50d60d2e68f534') + +build() { + cd $pkgname-v${pkgver/_/-} + make CFLAGS='-Wunused -Wall -Werror -Wno-error=unused-but-set-variable' +} + +package() { + pushd $pkgname-v${pkgver/_/-} + make install \ + DESTDIR="$pkgdir" \ + LIBDIR=/usr/lib \ + MANDIR=/usr/share/man \ + BINDIR=/usr/bin \ + INITDIR=/etc/rc.d \ + SYSCONFIGDIR=/etc + popd + # rm package ebtables rc.d scripts + rm "$pkgdir/etc/ebtables-config" + rm -r "$pkgdir/etc/rc.d" + # systemd + install -Dm 755 $pkgname.systemd \ + "$pkgdir/usr/lib/systemd/scripts/$pkgname" + install -Dm 644 $pkgname.service \ + "$pkgdir/usr/lib/systemd/system/$pkgname.service" + # default config file + install -Dm 644 /dev/null "$pkgdir/etc/$pkgname.conf" +} + +# vim:set ts=2 sw=2 et: diff --git a/extra/ebtables/ebtables.install b/extra/ebtables/ebtables.install new file mode 100644 index 000000000..7dd6921ed --- /dev/null +++ b/extra/ebtables/ebtables.install @@ -0,0 +1,9 @@ +## arg 1: the new package version +## arg 2: the old package version +post_upgrade() { + [ $(vercmp "$2" '2.0.10_4-1') -gt 0 ] || cat <<EOF +Config file have been moved to /etc/ebtables.conf and only support text format. +EOF +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/extra/ebtables/ebtables.service b/extra/ebtables/ebtables.service new file mode 100644 index 000000000..25e6b76cc --- /dev/null +++ b/extra/ebtables/ebtables.service @@ -0,0 +1,11 @@ +[Unit] +Description=Ethernet bridge table + +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/usr/lib/systemd/scripts/ebtables start +ExecStop=/usr/lib/systemd/scripts/ebtables stop + +[Install] +WantedBy=multi-user.target diff --git a/extra/ebtables/ebtables.systemd b/extra/ebtables/ebtables.systemd new file mode 100644 index 000000000..7c21ff967 --- /dev/null +++ b/extra/ebtables/ebtables.systemd @@ -0,0 +1,21 @@ +#!/bin/bash + +CONFIG_FILE='/etc/ebtables.conf' + +case $1 in + start) + ebtables-restore < "$CONFIG_FILE" + ;; + stop) + ebtables -F + ;; + save) + ebtables-save > "$CONFIG_FILE" + ;; + *) + echo "usage: ${0##*/} {start|stop|save}" >&2 + exit 1 + ;; +esac + +# vim:set ts=2 sw=2 ft=sh et: |