1
0
mirror of https://github.com/systemd/systemd.git synced 2024-10-31 16:21:26 +03:00

network: do not re-assign static routes when dynamic IPv6 addresses are updated

This effectively reverts 6545067aa9.

Unlike IPv4 addresses, routes are not removed when IPv6 addresses are
removed. So, it is not necessary to re-assign routes.
This commit is contained in:
Yu Watanabe 2021-01-20 16:17:33 +09:00
parent 3e405f28f4
commit 92395e0e83
2 changed files with 3 additions and 40 deletions

View File

@ -352,12 +352,6 @@ static int dhcp6_pd_address_handler(sd_netlink *rtnl, sd_netlink_message *m, Lin
link_enter_failed(link);
return 1;
}
r = link_set_routes(link);
if (r < 0) {
link_enter_failed(link);
return 1;
}
}
return 1;
@ -618,14 +612,8 @@ static int dhcp6_pd_finalize(Link *link) {
if (link->dhcp6_pd_address_messages == 0) {
if (link->dhcp6_pd_prefixes_assigned)
link->dhcp6_pd_address_configured = true;
} else {
} else
log_link_debug(link, "Setting DHCPv6 PD addresses");
/* address_handler calls link_set_routes() and link_set_nexthop(). Before they are
* called, the related flags must be cleared. Otherwise, the link becomes configured
* state before routes are configured. */
link->static_routes_configured = false;
link->static_nexthops_configured = false;
}
if (link->dhcp6_pd_route_messages == 0) {
if (link->dhcp6_pd_prefixes_assigned)
@ -962,12 +950,6 @@ static int dhcp6_address_handler(sd_netlink *rtnl, sd_netlink_message *m, Link *
link_enter_failed(link);
return 1;
}
r = link_set_routes(link);
if (r < 0) {
link_enter_failed(link);
return 1;
}
}
return 1;
@ -1149,14 +1131,8 @@ static int dhcp6_lease_ip_acquired(sd_dhcp6_client *client, Link *link) {
if (link->dhcp6_address_messages == 0)
link->dhcp6_address_configured = true;
else {
else
log_link_debug(link, "Setting DHCPv6 addresses");
/* address_handler calls link_set_routes() and link_set_nexthop(). Before they are
* called, the related flags must be cleared. Otherwise, the link becomes configured
* state before routes are configured. */
link->static_routes_configured = false;
link->static_nexthops_configured = false;
}
if (link->dhcp6_route_messages == 0)
link->dhcp6_route_configured = true;

View File

@ -412,12 +412,6 @@ static int ndisc_address_handler(sd_netlink *rtnl, sd_netlink_message *m, Link *
link_enter_failed(link);
return 1;
}
r = link_set_routes(link);
if (r < 0) {
link_enter_failed(link);
return 1;
}
}
return 1;
@ -1244,16 +1238,9 @@ static int ndisc_router_handler(Link *link, sd_ndisc_router *rt) {
if (link->ndisc_addresses_messages == 0)
link->ndisc_addresses_configured = true;
else {
else
log_link_debug(link, "Setting SLAAC addresses.");
/* address_handler calls link_set_routes() and link_set_nexthop(). Before they are
* called, the related flags must be cleared. Otherwise, the link becomes configured
* state before routes are configured. */
link->static_routes_configured = false;
link->static_nexthops_configured = false;
}
if (link->ndisc_routes_messages == 0)
link->ndisc_routes_configured = true;
else