mwan3: use also ipset restore for connected ipv4 sets
authorFlorian Eckert <redacted>
Thu, 24 Feb 2022 11:59:31 +0000 (12:59 +0100)
committerFlorian Eckert <redacted>
Mon, 14 Mar 2022 08:34:49 +0000 (09:34 +0100)
Signed-off-by: Florian Eckert <redacted>
net/mwan3/files/lib/mwan3/mwan3.sh

index 59ae1e60793be024576e531b15493c87b83da411..e6f75334c2987567e09c89e3ad3ef3008844aee6 100644 (file)
@@ -147,10 +147,12 @@ mwan3_set_custom_ipset()
 
 mwan3_set_connected_ipv4()
 {
-       local connected_network_v4 candidate_list cidr_list
-       $IPS -! create mwan3_connected_v4 hash:net
-       $IPS create mwan3_connected_v4_temp hash:net ||
-               LOG notice "failed to create ipset mwan3_connected_v4_temp"
+       local connected_network_v4 error
+       local candidate_list cidr_list
+       local update=""
+
+       mwan3_push_update -! create mwan3_connected_v4 hash:net
+       mwan3_push_update flush mwan3_connected_v4
 
        candidate_list=""
        cidr_list=""
@@ -168,22 +170,15 @@ mwan3_set_connected_ipv4()
        done
 
        for connected_network_v4 in $cidr_list; do
-               $IPS -! add mwan3_connected_v4_temp "$connected_network_v4"
+               mwan3_push_update -! add mwan3_connected_v4 "$connected_network_v4"
        done
        for connected_network_v4 in $candidate_list; do
-               ipset -q test mwan3_connected_v4_temp "$connected_network_v4" ||
-                       $IPS -! add mwan3_connected_v4_temp "$connected_network_v4"
+               mwan3_push_update -! add mwan3_connected_v4 "$connected_network_v4"
        done
 
-       $IPS add mwan3_connected_v4_temp 224.0.0.0/3 ||
-               LOG notice "failed to add 224.0.0.0/3 to mwan3_connected_v4_temp"
-
-       $IPS swap mwan3_connected_v4_temp mwan3_connected_v4 ||
-               LOG notice "failed to swap mwan3_connected_v4_temp and mwan3_connected_v4"
-       $IPS destroy mwan3_connected_v4_temp ||
-               LOG notice "failed to destroy ipset mwan3_connected_v4_temp"
-       $IPS -! add mwan3_connected mwan3_connected_v4
-
+       mwan3_push_update add mwan3_connected_v4 224.0.0.0/3
+       mwan3_push_update -! add mwan3_connected mwan3_connected_v4
+       error=$(echo "$update" | $IPS restore 2>&1) || LOG error "set_connected_ipv4: $error"
 }
 
 mwan3_set_connected_ipv6()
git clone https://git.99rst.org/PROJECT