diff options
author | Timo Teräs <timo.teras@iki.fi> | 2010-11-01 13:39:58 +0200 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2010-11-01 13:40:55 +0200 |
commit | 758dce80584f1a789215a28b46db774edb419e90 (patch) | |
tree | dc5edf048b57397287bc30b15b337213d6675b3d | |
parent | 4f23c607b82e9bdc1fc51cfc98f3511811cfb9d1 (diff) | |
download | alpine_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/APKBUILD | 18 | ||||
-rw-r--r-- | main/shorewall-shell/shorewall-policyrouting.patch | 47 |
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 @@ | |||
2 | pkgname=shorewall-shell | 2 | pkgname=shorewall-shell |
3 | _v=4.2.10 | 3 | _v=4.2.10 |
4 | pkgver=4.2.10 | 4 | pkgver=4.2.10 |
5 | pkgrel=0 | 5 | pkgrel=1 |
6 | pkgdesc="Shoreline Firewall shell-based compiler." | 6 | pkgdesc="Shoreline Firewall shell-based compiler." |
7 | url="http://www.shorewall.net/" | 7 | url="http://www.shorewall.net/" |
8 | license="GPL-2" | 8 | license="GPL-2" |
9 | depends="shorewall-common" | 9 | depends="shorewall-common" |
10 | #subpackages="$pkgname-doc" | 10 | #subpackages="$pkgname-doc" |
11 | source="http://www.shorewall.net/pub/shorewall/${_v%.*}/shorewall-$_v/$pkgname-$pkgver.tar.bz2" | 11 | source="http://www.shorewall.net/pub/shorewall/${_v%.*}/shorewall-$_v/$pkgname-$pkgver.tar.bz2 |
12 | shorewall-policyrouting.patch | ||
13 | " | ||
14 | |||
15 | prepare() { | ||
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 | ||
13 | build() { | 23 | build() { |
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 | } |
17 | md5sums="d6f7cbc3c502c09921ede920547d5017 shorewall-shell-4.2.10.tar.bz2" | 27 | |
28 | md5sums="d6f7cbc3c502c09921ede920547d5017 shorewall-shell-4.2.10.tar.bz2 | ||
29 | 64c01bc4f57203fb877bb334994eac38 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 | ||