summaryrefslogtreecommitdiffstats
path: root/package/firewall/files/lib/core_redirect.sh
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-09-16 11:47:35 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-09-16 11:47:35 +0000
commit6ce96a49f3d83920be541b78bc68fb822de43c88 (patch)
treebe373438e3db825da9a083b4d1004308605f1855 /package/firewall/files/lib/core_redirect.sh
parentc18e77fd345fcede79e68a58e3d0f99ded084338 (diff)
[package] firewall: make invalid redirects and duplicate zones non-fatal, print a notice and discard them
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23080 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/firewall/files/lib/core_redirect.sh')
-rw-r--r--package/firewall/files/lib/core_redirect.sh9
1 files changed, 6 insertions, 3 deletions
diff --git a/package/firewall/files/lib/core_redirect.sh b/package/firewall/files/lib/core_redirect.sh
index 72364a99e..3a37bb7ee 100644
--- a/package/firewall/files/lib/core_redirect.sh
+++ b/package/firewall/files/lib/core_redirect.sh
@@ -30,7 +30,8 @@ fw_load_redirect() {
local fwdchain natchain natopt nataddr natports srcdaddr srcdports
if [ "$redirect_target" == "DNAT" ]; then
[ -n "$redirect_src" -a -n "$redirect_dest_ip$redirect_dest_port" ] || {
- fw_die "DNAT redirect ${redirect_name}: needs src and dest_ip or dest_port"
+ fw_log error "DNAT redirect ${redirect_name}: needs src and dest_ip or dest_port, skipping"
+ return 0
}
fwdchain="zone_${redirect_src}_forward"
@@ -48,7 +49,8 @@ fw_load_redirect() {
elif [ "$redirect_target" == "SNAT" ]; then
[ -n "$redirect_dest" -a -n "$redirect_src_dip" ] || {
- fw_die "SNAT redirect ${redirect_name}: needs dest and src_dip"
+ fw_log error "SNAT redirect ${redirect_name}: needs dest and src_dip, skipping"
+ return 0
}
fwdchain="${redirect_src:+zone_${redirect_src}_forward}"
@@ -65,7 +67,8 @@ fw_load_redirect() {
append FW_CONNTRACK_ZONES $redirect_dest
else
- fw_die "redirect ${redirect_name}: target must be either DNAT or SNAT"
+ fw_log error "redirect ${redirect_name}: target must be either DNAT or SNAT, skipping"
+ return 0
fi
local mode