瀏覽代碼

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 6 年之前
父節點
當前提交
8f6bd245bd
共有 1 個文件被更改,包括 6 次插入1 次删除
  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