aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Keith Hohm <john@hohm.net>2011-07-19 00:33:28 -0500
committerNatanael Copa <ncopa@alpinelinux.org>2011-07-20 07:14:34 +0000
commitff98019fb73e2dce4209fab94d46f4036a6189d7 (patch)
tree13014fbae93145ac54daef524e94d465731c7dfb
parent180fccae2cc4235fa32be9f0df2ede1b896ea25d (diff)
downloadaports-ff98019fb73e2dce4209fab94d46f4036a6189d7.tar.bz2
aports-ff98019fb73e2dce4209fab94d46f4036a6189d7.tar.xz
testing/shorewall: upgrade to Perl-only shorewall-4.4.21
-rw-r--r--testing/shorewall/APKBUILD44
-rw-r--r--testing/shorewall/shorewall-no-install-T.patch11
-rw-r--r--testing/shorewall/shorewall.initd80
3 files changed, 135 insertions, 0 deletions
diff --git a/testing/shorewall/APKBUILD b/testing/shorewall/APKBUILD
new file mode 100644
index 0000000000..05e05ca91c
--- /dev/null
+++ b/testing/shorewall/APKBUILD
@@ -0,0 +1,44 @@
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=shorewall
+pkgver=4.4.21
+pkgrel=0
+pkgdesc="Shoreline Firewall is an iptables-based firewall for Linux."
+url="http://www.shorewall.net/"
+arch="noarch"
+license="GPL-2"
+depends="iptables iproute2 perl"
+replaces="shorewall-common shorewall-perl"
+subpackages="$pkgname-doc"
+source="http://www1.shorewall.net/pub/shorewall/4.4/shorewall-$pkgver/shorewall-$pkgver.tar.bz2
+ shorewall.initd
+ shorewall-no-install-T.patch
+ "
+
+_builddir="src/$pkgname-$pkgver"
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+
+ PREFIX="${pkgdir}" ./install.sh || return 1
+ install -Dm755 "$srcdir"/shorewall.initd "$pkgdir"/etc/init.d/shorewall
+}
+
+doc() {
+ default_doc
+ mkdir -p "$subpkgdir/usr/share/shorewall"
+ mv "$pkgdir/usr/share/shorewall/configfiles" \
+ "$subpkgdir/usr/share/shorewall/"
+}
+
+md5sums="aac1823063489563330bf5dc57a26487 shorewall-4.4.21.tar.bz2
+71fb6da1f50f5c6e9dd35b60b3629531 shorewall.initd
+546ca14bae43f5046f193efc884c768b shorewall-no-install-T.patch"
diff --git a/testing/shorewall/shorewall-no-install-T.patch b/testing/shorewall/shorewall-no-install-T.patch
new file mode 100644
index 0000000000..09567a5123
--- /dev/null
+++ b/testing/shorewall/shorewall-no-install-T.patch
@@ -0,0 +1,11 @@
+--- a/shorewall-4.4.21/install.sh
++++ b/shorewall-4.4.21/install.sh
+@@ -96,7 +96,7 @@
+ # INIT is the name of the script in the $DEST directory
+ # ARGS is "yes" if we've already parsed an argument
+ #
+-T="-T"
++T=
+
+ if [ -z "$DEST" ] ; then
+ DEST="/etc/init.d"
diff --git a/testing/shorewall/shorewall.initd b/testing/shorewall/shorewall.initd
new file mode 100644
index 0000000000..9dda676c57
--- /dev/null
+++ b/testing/shorewall/shorewall.initd
@@ -0,0 +1,80 @@
+#!/sbin/runscript
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-firewall/shorewall-common/files/shorewall.initd,v 1.2 2008/05/04 13:16:40 pva Exp $
+
+opts="start stop restart clear reset refresh check"
+
+depend() {
+ need net
+ provide firewall
+ after ulogd
+}
+
+start() {
+ ebegin "Starting firewall"
+ /sbin/shorewall -f start 1>/dev/null
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping firewall"
+ /sbin/shorewall stop 1>/dev/null
+ eend $?
+}
+
+restart() {
+ # shorewall comes with its own control script that includes a
+ # restart function, so refrain from calling svc_stop/svc_start
+ # here. Note that this comment is required to fix bug 55576;
+ # runscript.sh greps this script... (09 Jul 2004 agriffis)
+ ebegin "Restarting firewall"
+ /sbin/shorewall status >/dev/null
+ if [ $? != 0 ] ; then
+ svc_start
+ else
+ if [ -f /var/lib/shorewall/restore ] ; then
+ /sbin/shorewall restore
+ else
+ /sbin/shorewall restart 1>/dev/null
+ fi
+ fi
+ eend $?
+}
+
+clear() {
+ # clear will remove all the rules and bring the system to an unfirewalled
+ # state. (21 Nov 2004 eldad)
+
+ ebegin "Clearing all firewall rules and setting policy to ACCEPT"
+ /sbin/shorewall clear
+ eend $?
+}
+
+reset() {
+ # reset the packet and byte counters in the firewall
+
+ ebegin "Resetting the packet and byte counters in the firewall"
+ /sbin/shorewall reset
+ eend $?
+}
+
+refresh() {
+ # refresh the rules involving the broadcast addresses of firewall
+ # interfaces, the black list, traffic control rules and
+ # ECN control rules
+
+ ebegin "Refreshing firewall rules"
+ /sbin/shorewall refresh
+ eend $?
+}
+
+check() {
+ # perform cursory validation of the zones, interfaces, hosts, rules
+ # and policy files. CAUTION: does not parse and validate the generated
+ # iptables commands.
+
+ ebegin "Checking configuration files"
+ /sbin/shorewall check
+ eend $?
+}