]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
network: drop old dhcp6 addresses or routes after new ones are configured
authorYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 2 Jul 2021 11:19:17 +0000 (20:19 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 2 Jul 2021 11:59:38 +0000 (20:59 +0900)
Fixes the issue similar to #20050 but for DHCP6.

src/network/networkd-dhcp6.c

index e850e595e374db8a362fcd918ddfdecfbc80f063..2b72b618fc5c2cb2886f288ee8e400825cb360bb 100644 (file)
@@ -145,7 +145,7 @@ static int dhcp6_pd_remove_old(Link *link, bool force) {
         assert(link);
         assert(link->manager);
 
-        if (!force && (link->dhcp6_pd_address_messages != 0 || link->dhcp6_pd_route_messages != 0))
+        if (!force && (link->dhcp6_pd_address_messages > 0 || link->dhcp6_pd_route_messages > 0))
                 return 0;
 
         if (set_isempty(link->dhcp6_pd_addresses_old) && set_isempty(link->dhcp6_pd_routes_old))
@@ -740,7 +740,7 @@ static int dhcp6_remove_old(Link *link, bool force) {
 
         assert(link);
 
-        if (!force && (!link->dhcp6_address_configured || !link->dhcp6_route_configured))
+        if (!force && (link->dhcp6_address_messages > 0 || link->dhcp6_route_messages > 0))
                 return 0;
 
         if (set_isempty(link->dhcp6_addresses_old) && set_isempty(link->dhcp6_routes_old))