network: always drop configs when interface is renamed

Before the renaming, wrong .network file may be assigned to the link.
So, let's always drop link configuration.
This commit is contained in:
Yu Watanabe 2019-03-04 12:01:26 +09:00
parent a4055a608e
commit 30de2b89d1
1 changed files with 6 additions and 12 deletions

View File

@ -3767,20 +3767,14 @@ int link_update(Link *link, sd_netlink_message *m) {
r = sd_netlink_message_read_string(m, IFLA_IFNAME, &ifname);
if (r >= 0 && !streq(ifname, link->ifname)) {
Manager *manager = link->manager;
log_link_info(link, "Interface name change detected, %s has been renamed to %s.", link->ifname, ifname);
if (link->state == LINK_STATE_PENDING) {
r = free_and_strdup(&link->ifname, ifname);
if (r < 0)
return r;
} else {
Manager *manager = link->manager;
link_drop(link);
r = link_add(manager, m, &link);
if (r < 0)
return r;
}
link_drop(link);
r = link_add(manager, m, &link);
if (r < 0)
return r;
}
r = sd_netlink_message_read_u32(m, IFLA_MTU, &mtu);