firewall: introduce drop_invalid option to allow disabling the invalid state match
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 16 Jan 2009 18:09:19 +0000 (18:09 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 16 Jan 2009 18:09:19 +0000 (18:09 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@14061 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/firewall/files/uci_firewall.sh

index fd10899..f38bd6b 100755 (executable)
@@ -159,16 +159,19 @@ fw_defaults() {
        $IPTABLES -t mangle -X
        $IPTABLES -t nat -X
        $IPTABLES -X
-       
-       $IPTABLES -A INPUT -m state --state INVALID -j DROP
+
+       config_get_bool drop_invalid $1 drop_invalid 1
+
+       [ "$drop_invalid" -gt 0 ] && {
+               $IPTABLES -A INPUT -m state --state INVALID -j DROP
+               $IPTABLES -A OUTPUT -m state --state INVALID -j DROP
+               $IPTABLES -A FORWARD -m state --state INVALID -j DROP
+       }
+
        $IPTABLES -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-               
-       $IPTABLES -A OUTPUT -m state --state INVALID -j DROP
        $IPTABLES -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-       
-       $IPTABLES -A FORWARD -m state --state INVALID -j DROP
        $IPTABLES -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-       
+
        $IPTABLES -A INPUT -i lo -j ACCEPT
        $IPTABLES -A OUTPUT -o lo -j ACCEPT