chiark / gitweb /
networkd: fix NULL pointer deref
[elogind.git] / src / network / networkd-link.c
index 3d01625d71eaa8998a02f7f6f676413f49dbb2d5..c0ca5f2d07af604351f07ca85c0b5c4927acd752 100644 (file)
@@ -403,6 +403,8 @@ static int link_get_handler(sd_rtnl *rtnl, sd_rtnl_message *m, void *userdata) {
                 link_enter_failed(link);
         }
 
+        link_update(link, m);
+
         return 1;
 }
 
@@ -631,7 +633,7 @@ int link_update(Link *link, sd_rtnl_message *m) {
         } else if (!(link->flags & IFF_LOWER_UP) && flags & IFF_LOWER_UP) {
                 log_info("Interface '%s' is connected", link->ifname);
 
-                if (link->network->dhcp) {
+                if (link->network && link->network->dhcp) {
                         r = link_acquire_conf(link);
                         if (r < 0) {
                                 link_enter_failed(link);