diff options
| author | Felix Fietkau | 2022-08-29 11:08:29 +0000 |
|---|---|---|
| committer | Felix Fietkau | 2022-08-29 11:08:29 +0000 |
| commit | b75791a6db2560f4e73d092aaf2e2601c39eee6e (patch) | |
| tree | 449b70dd6a6a3c1f21fe5f5b1b0ec2fb2ed335c0 | |
| parent | 74a14c00abb07d2d8c79c61c459f70d28764dee6 (diff) | |
| download | unetd-b75791a6db2560f4e73d092aaf2e2601c39eee6e.tar.gz | |
scripts/update-cmd.pl: reorder add/remove calls to better deal with dynamic changes
Signed-off-by: Felix Fietkau <nbd@nbd.name>
| -rwxr-xr-x | scripts/update-cmd.pl | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/scripts/update-cmd.pl b/scripts/update-cmd.pl index 37d0b11..1456533 100755 --- a/scripts/update-cmd.pl +++ b/scripts/update-cmd.pl @@ -132,13 +132,13 @@ sub set_active_data_linux($$$) { foreach my $ip (keys %{$delete->{ipaddr}}) { cmd("ip a d $ip dev $ifname"); } - foreach my $ip (keys %{$add->{ipaddr}}) { - cmd("ip a a $ip dev $ifname"); - } - foreach my $route (keys %{$delete->{route}}) { cmd("ip r d $route dev $ifname"); } + + foreach my $ip (keys %{$add->{ipaddr}}) { + cmd("ip a a $ip dev $ifname"); + } foreach my $route (keys %{$add->{route}}) { cmd("ip r a $route dev $ifname"); } @@ -157,6 +157,13 @@ sub set_active_data_darwin($$$) { cmd("ifconfig $ifname delete $ip"); } } + foreach my $route (keys %{$delete->{route}}) { + if ($route =~ /:/) { + cmd("route delete -inet6 $route -iface $ifname"); + } else { + cmd("route delete -inet $route -iface $ifname"); + } + } foreach my $ip (keys %{$add->{ipaddr}}) { my @ip = split /\//, $ip; @@ -166,13 +173,6 @@ sub set_active_data_darwin($$$) { cmd("ifconfig $ifname add $ip[0]/$ip[1] $ip[0]"); } } - foreach my $route (keys %{$delete->{route}}) { - if ($route =~ /:/) { - cmd("route delete -inet6 $route -iface $ifname"); - } else { - cmd("route delete -inet $route -iface $ifname"); - } - } foreach my $route (keys %{$add->{route}}) { if ($route =~ /:/) { cmd("route add -inet6 $route -iface $ifname"); |