X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/6ef496f17a3020a24c4321befa6a060e1fad16dc..9b433b090a57ca648ca0e3eeb3ddc68136a7ccc7:/package/firewall/files/lib/fw.sh diff --git a/package/firewall/files/lib/fw.sh b/package/firewall/files/lib/fw.sh index a8a791149..76e294f56 100644 --- a/package/firewall/files/lib/fw.sh +++ b/package/firewall/files/lib/fw.sh @@ -74,7 +74,8 @@ fw__exec() { # { } fw__rc $(($? & 1)) return fi - fw__rc 0 + [ "$app" != ip6tables ] || [ "$tab" != nat ] + fw__rc $? } fw__err() { @@ -254,9 +255,12 @@ fw_get_subnet4() { [ "${_name#!}" != "$_name" ] && \ export -n -- "$_var=! $_flag $_ipaddr/${_netmask:-255.255.255.255}" || \ export -n -- "$_var=$_flag $_ipaddr/${_netmask:-255.255.255.255}" + return 0 ;; - *) export -n -- "$_var=" ;; esac + + export -n -- "$_var=" + return 1 } fw_check_icmptype4() { @@ -271,10 +275,7 @@ fw_check_icmptype4() { export FW_ICMP4_TYPES=$( iptables -p icmp -h 2>/dev/null | \ sed -n -e '/^Valid ICMP Types:/ { - n; :r; - /router-advertisement/d; - /router-solicitation/d; - s/[()]/ /g; s/[[:space:]]\+/\n/g; p; n; b r + n; :r; s/[()]/ /g; s/[[:space:]]\+/\n/g; p; n; b r }' | sort -u )