Преглед на файлове

firewall: fix a possible deadlock when the firewall config has syntax errors during restart

SVN-Revision: 21501
Jo-Philipp Wich преди 15 години
родител
ревизия
91519d51e9
променени са 1 файла, в които са добавени 4 реда и са изтрити 2 реда
  1. 4 2
      package/firewall/files/lib/core.sh

+ 4 - 2
package/firewall/files/lib/core.sh

@@ -8,14 +8,15 @@ include /lib/network
 fw_start() {
 	fw_init
 
-	lock /var/lock/firewall.start
-
 	FW_DEFAULTS_APPLIED=
 
 	fw_is_loaded && {
 		echo "firewall already loaded" >&2
 		exit 1
 	}
+
+	lock /var/lock/firewall.start
+
 	uci_set_state firewall core "" firewall_state
 
 	fw_clear DROP
@@ -93,6 +94,7 @@ fw_die() {
 	echo "Error:" "$@" >&2
 	fw_log error "$@"
 	fw_stop
+	lock -u /var/lock/firewall.start
 	exit 1
 }