X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fnetwork%2Fnetworkd-manager.c;h=ddbdabbff903ece3bbecde8fb76b87dbc09c243c;hb=2292547af9638e2b3f7e0e96a56dd6c909e516dc;hp=ea414b1f1e3b5e74f7f0ff90c2a12782c09f5286;hpb=eed0eee85ac34abd81cd9e81fdb6a19f47b6c8a3;p=elogind.git diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index ea414b1f1..ddbdabbff 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -145,13 +145,13 @@ void manager_free(Manager *m) { sd_event_source_unref(m->sigint_event_source); sd_event_unref(m->event); - while ((network = m->networks)) - network_free(network); - while ((link = hashmap_first(m->links))) link_free(link); hashmap_free(m->links); + while ((network = m->networks)) + network_free(network); + while ((netdev = hashmap_first(m->netdevs))) netdev_free(netdev); hashmap_free(m->netdevs); @@ -312,23 +312,19 @@ static int manager_rtnl_process_link(sd_rtnl *rtnl, sd_rtnl_message *message, vo r = sd_rtnl_message_link_get_ifindex(message, &ifindex); if (r < 0 || ifindex <= 0) { - log_debug("received RTM_NEWLINK message without valid ifindex"); + log_warning("received RTM_NEWLINK message without valid ifindex"); return 0; } r = sd_rtnl_message_read_string(message, IFLA_IFNAME, &name); if (r < 0) - log_debug("received RTM_NEWLINK message without valid IFLA_IFNAME"); + log_warning("received RTM_NEWLINK message without valid ifname"); else { NetDev *netdev; r = netdev_get(m, name, &netdev); - if (r >= 0) { - r = netdev_set_ifindex(netdev, ifindex); - if (r < 0) - log_debug("could not set ifindex of netdev '%s' to %d: %s", - name, ifindex, strerror(-r)); - } + if (r >= 0) + netdev_set_ifindex(netdev, message); } r = link_get(m, ifindex, &link);