diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2010-01-19 23:02:11 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2010-01-19 23:02:11 +0000 |
commit | 1739b7427a7d8394aa938cfce600bf5e021c4172 (patch) | |
tree | 64201eabe23cec7d4b4d74d6d5cbb423d3a261a5 | |
parent | e4c20607cf06acff7dbc3bde1f92315e8bbfffb3 (diff) | |
download | upstream-1739b7427a7d8394aa938cfce600bf5e021c4172.tar.gz upstream-1739b7427a7d8394aa938cfce600bf5e021c4172.tar.bz2 upstream-1739b7427a7d8394aa938cfce600bf5e021c4172.zip |
[package] firewall: fix a race condition preventing interfaces from being added to the firewall on boot
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19232 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r-- | package/firewall/Makefile | 2 | ||||
-rwxr-xr-x | package/firewall/files/uci_firewall.sh | 8 |
2 files changed, 7 insertions, 3 deletions
diff --git a/package/firewall/Makefile b/package/firewall/Makefile index 8d0452602b..abc6020434 100644 --- a/package/firewall/Makefile +++ b/package/firewall/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=firewall PKG_VERSION:=1 -PKG_RELEASE:=9 +PKG_RELEASE:=10 include $(INCLUDE_DIR)/package.mk diff --git a/package/firewall/files/uci_firewall.sh b/package/firewall/files/uci_firewall.sh index 05fe39beb0..49e5ca8595 100755 --- a/package/firewall/files/uci_firewall.sh +++ b/package/firewall/files/uci_firewall.sh @@ -506,9 +506,13 @@ fw_init() { uci_set_state firewall core loaded 1 config_set core loaded 1 config_foreach fw_check_notrack zone - INTERFACES="$(sh -c '. /etc/functions.sh; config_load network; config_foreach echo interface')" + INTERFACES="$(sh -c ' + . /etc/functions.sh; config_load network + echo_up() { local up; config_get_bool up "$1" up 0; [ $up = 1 ] && echo "$1"; } + config_foreach echo_up interface + ')" for interface in $INTERFACES; do - fw_addif "$interface" + fw_event ifup "$interface" done } |