aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2010-11-01 13:39:58 +0200
committerTimo Teräs <timo.teras@iki.fi>2010-11-01 13:40:55 +0200
commit758dce80584f1a789215a28b46db774edb419e90 (patch)
treedc5edf048b57397287bc30b15b337213d6675b3d
parent4f23c607b82e9bdc1fc51cfc98f3511811cfb9d1 (diff)
downloadalpine_aports-758dce80584f1a789215a28b46db774edb419e90.tar.bz2
alpine_aports-758dce80584f1a789215a28b46db774edb419e90.tar.xz
alpine_aports-758dce80584f1a789215a28b46db774edb419e90.zip
main/shorewall-shell: add policy routing related patch
To allow creation of routing tables to be managed by an external component (e.g. quagga or opennhrp).
-rw-r--r--main/shorewall-shell/APKBUILD18
-rw-r--r--main/shorewall-shell/shorewall-policyrouting.patch47
2 files changed, 62 insertions, 3 deletions
diff --git a/main/shorewall-shell/APKBUILD b/main/shorewall-shell/APKBUILD
index 643562f209..b6dd29950e 100644
--- a/main/shorewall-shell/APKBUILD
+++ b/main/shorewall-shell/APKBUILD
@@ -2,16 +2,28 @@
2pkgname=shorewall-shell 2pkgname=shorewall-shell
3_v=4.2.10 3_v=4.2.10
4pkgver=4.2.10 4pkgver=4.2.10
5pkgrel=0 5pkgrel=1
6pkgdesc="Shoreline Firewall shell-based compiler." 6pkgdesc="Shoreline Firewall shell-based compiler."
7url="http://www.shorewall.net/" 7url="http://www.shorewall.net/"
8license="GPL-2" 8license="GPL-2"
9depends="shorewall-common" 9depends="shorewall-common"
10#subpackages="$pkgname-doc" 10#subpackages="$pkgname-doc"
11source="http://www.shorewall.net/pub/shorewall/${_v%.*}/shorewall-$_v/$pkgname-$pkgver.tar.bz2" 11source="http://www.shorewall.net/pub/shorewall/${_v%.*}/shorewall-$_v/$pkgname-$pkgver.tar.bz2
12 shorewall-policyrouting.patch
13 "
14
15prepare() {
16 cd "$srcdir"/$pkgname-$pkgver
17 for i in ../*.patch; do
18 msg "Applying $i..."
19 patch -p1 -i $i || return 1
20 done
21}
12 22
13build() { 23build() {
14 cd "$srcdir"/$pkgname-$pkgver 24 cd "$srcdir"/$pkgname-$pkgver
15 PREFIX="$pkgdir" ./install.sh || return 1 25 PREFIX="$pkgdir" ./install.sh || return 1
16} 26}
17md5sums="d6f7cbc3c502c09921ede920547d5017 shorewall-shell-4.2.10.tar.bz2" 27
28md5sums="d6f7cbc3c502c09921ede920547d5017 shorewall-shell-4.2.10.tar.bz2
2964c01bc4f57203fb877bb334994eac38 shorewall-policyrouting.patch"
diff --git a/main/shorewall-shell/shorewall-policyrouting.patch b/main/shorewall-shell/shorewall-policyrouting.patch
new file mode 100644
index 0000000000..26399108e3
--- /dev/null
+++ b/main/shorewall-shell/shorewall-policyrouting.patch
@@ -0,0 +1,47 @@
1--- old/lib.providers
2+++ new/lib.providers
3@@ -141,7 +141,7 @@
4 # Add Provider $table ($number)
5 #
6 __EOF__
7- save_command "if interface_is_usable $interface; then"
8+ save_command "if [ -n \"$interface\" ] && interface_is_usable \"$interface\"; then"
9 save_indent1="$INDENT"
10 INDENT="$INDENT "
11
12@@ -283,7 +283,14 @@
13 INDENT="$save_indent1"
14 save_command else
15
16- if [ -n "$optional" ]; then
17+ if [ "${interface:--}" = "-" -a "${duplicate:--}" = "-" -a "${gateway:--}" = "-" -a "${options:--}" = "-" -a "${copy:--}" = "-" ]; then
18+ indent >&3 << __EOF__
19+
20+progress_message " Provider $table ($number) Added"
21+
22+__EOF__
23+
24+ elif [ -n "$optional" ]; then
25 save_command " error_message \"WARNING: Interface $interface is not configured -- Provider $table ($number) not Added\""
26 save_command " ${iface}_up="
27 else
28@@ -316,10 +323,6 @@
29 [ "x$source" = x- ] && source=
30 [ "x$dest" = x- ] && dest= || dest="to $dest"
31
32- [ -n "${source}${dest}" ] || fatal_error "You must specify either the source or destination in an rt rule: \"$rule\""
33-
34- [ -n "${dest:=to 0.0.0.0/0}" ]
35-
36 if [ -n "$source" ]; then
37 case $source in
38 *:*)
39@@ -332,8 +335,6 @@
40 source="iif $source"
41 ;;
42 esac
43- else
44- source='from 0.0.0.0/0'
45 fi
46
47 case "$priority" in