From 8084bc3069cbedf99e3a30642d0516f6023a1792 Mon Sep 17 00:00:00 2001 From: jow Date: Tue, 19 Jan 2010 23:02:11 +0000 Subject: [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 --- package/firewall/files/uci_firewall.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'package/firewall/files') diff --git a/package/firewall/files/uci_firewall.sh b/package/firewall/files/uci_firewall.sh index 05fe39beb..49e5ca859 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 } -- cgit v1.2.3