Parcourir la source

network: use iptables-restore --wait if available

Avoid bailing out early if multiple instances of iptables-restore are
called simultaneously.

Fixes QubesOS/qubes-issues#3665
Marek Marczykowski-Górecki il y a 6 ans
Parent
commit
8f6bd245bd
1 fichiers modifiés avec 6 ajouts et 1 suppressions
  1. 6 1
      network/qubes-iptables

+ 6 - 1
network/qubes-iptables

@@ -42,9 +42,14 @@ start() {
     # Do not start if there is no config file.
     [ ! -f "$IPTABLES_DATA" ] && return 6
 
+    CMD_ARGS=
+    if "$CMD-restore" --help 2>&1 | grep -q wait=; then
+        CMD_ARGS=--wait
+    fi
+
     echo -n $"${CMD}: Applying firewall rules: "
 
-    "$CMD-restore" "$IPTABLES_DATA"
+    "$CMD-restore" $CMD_ARGS "$IPTABLES_DATA"
     ret="$?"
     if [ "$ret" -eq 0 ]; then
         echo OK