diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2010-09-11 20:04:34 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2010-09-11 20:04:34 +0000 |
commit | 6be00316a11b969470e44876a5a2b9381769766a (patch) | |
tree | cc43676eb3161ee53be745cd11f65a61e8d03c16 /package/firewall/files/lib/core_rule.sh | |
parent | 7a479f7cc1748820d67d94c650cf827b1670bc19 (diff) | |
download | master-187ad058-6be00316a11b969470e44876a5a2b9381769766a.tar.gz master-187ad058-6be00316a11b969470e44876a5a2b9381769766a.tar.bz2 master-187ad058-6be00316a11b969470e44876a5a2b9381769766a.zip |
[package] firewall:
- simplify masquerade rule setup
- remove various subshell invocations
- speedup fw() by not relying on xargs and pipes
- rework SNAT support - attach to dest zone, use src_dip/src_dport as snat source
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23024 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/firewall/files/lib/core_rule.sh')
-rw-r--r-- | package/firewall/files/lib/core_rule.sh | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/package/firewall/files/lib/core_rule.sh b/package/firewall/files/lib/core_rule.sh index e1f8d2ae15..1e4afe5aff 100644 --- a/package/firewall/files/lib/core_rule.sh +++ b/package/firewall/files/lib/core_rule.sh @@ -26,8 +26,8 @@ fw_load_rule() { fw_callback pre rule - rule_src_port=$(fw_get_port_range $rule_src_port) - rule_dest_port=$(fw_get_port_range $rule_dest_port) + fw_get_port_range rule_src_port $rule_src_port + fw_get_port_range rule_dest_port $rule_dest_port local chain=input [ -n "$rule_src" ] && { @@ -46,7 +46,8 @@ fw_load_rule() { target=zone_${rule_dest}_${target} } - local mode=$(fw_get_family_mode ${rule_family:-x} $rule_src I) + local mode + fw_get_family_mode mode ${rule_family:-x} $rule_src I local rule_pos eval 'rule_pos=$((++FW__RULE_COUNT_'$mode'_'$chain'))' |