diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c index 13e3e32f40..226c73c15c 100644 --- a/src/network/networkd-dhcp4.c +++ b/src/network/networkd-dhcp4.c @@ -1334,11 +1334,11 @@ int dhcp4_configure(Link *link) { return log_oom(); if (r < 0) return log_link_error_errno(link, r, "DHCP4 CLIENT: Failed to create DHCP4 client: %m"); - } - r = sd_dhcp_client_attach_event(link->dhcp_client, NULL, 0); - if (r < 0) - return log_link_error_errno(link, r, "DHCP4 CLIENT: Failed to attach event: %m"); + r = sd_dhcp_client_attach_event(link->dhcp_client, NULL, 0); + if (r < 0) + return log_link_error_errno(link, r, "DHCP4 CLIENT: Failed to attach event: %m"); + } r = sd_dhcp_client_set_mac(link->dhcp_client, (const uint8_t *) &link->mac, diff --git a/src/network/networkd-ipv4ll.c b/src/network/networkd-ipv4ll.c index 5750ea091e..8dac99fed8 100644 --- a/src/network/networkd-ipv4ll.c +++ b/src/network/networkd-ipv4ll.c @@ -154,6 +154,10 @@ int ipv4ll_configure(Link *link) { r = sd_ipv4ll_new(&link->ipv4ll); if (r < 0) return r; + + r = sd_ipv4ll_attach_event(link->ipv4ll, NULL, 0); + if (r < 0) + return r; } if (link->sd_device && @@ -163,10 +167,6 @@ int ipv4ll_configure(Link *link) { return r; } - r = sd_ipv4ll_attach_event(link->ipv4ll, NULL, 0); - if (r < 0) - return r; - r = sd_ipv4ll_set_mac(link->ipv4ll, &link->mac); if (r < 0) return r;