chiark / gitweb /
networkd: add address pool support
[elogind.git] / src / network / networkd-link.c
index 7c738fe81c5f977cfc4c50ba93af22ae7a2caaba..e7753dc98cea309cd08610332ec1ba03808e8f47 100644 (file)
@@ -112,6 +112,11 @@ static void link_free(Link *link) {
                 address_free(address);
         }
 
+        while ((address = link->pool_addresses)) {
+                LIST_REMOVE(addresses, link->pool_addresses, address);
+                address_free(address);
+        }
+
         sd_dhcp_client_unref(link->dhcp_client);
         sd_dhcp_lease_unref(link->dhcp_lease);
 
@@ -1764,7 +1769,7 @@ static int link_configure(Link *link) {
                 */
         }
 
-        if (link_has_carrier(link->flags, link->operstate)) {
+        if (link_has_carrier(link->flags, link->kernel_operstate)) {
                 r = link_acquire_conf(link);
                 if (r < 0)
                         return r;