From: Yu Watanabe Date: Fri, 1 Nov 2024 14:52:58 +0000 (+0900) Subject: network/dhcp4: do not restart IPv4LL client when KeepConfiguration=dhcp X-Git-Tag: v257-rc1~39^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fecd205d3e68b068352534d83f96bf2324739926;p=thirdparty%2Fsystemd.git network/dhcp4: do not restart IPv4LL client when KeepConfiguration=dhcp When KeepConfiguration=dhcp, we do not remove acquired address, hence not necessary to restart IPv4LL client. --- diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c index bda3a561d94..19b9a3ecba4 100644 --- a/src/network/networkd-dhcp4.c +++ b/src/network/networkd-dhcp4.c @@ -1168,6 +1168,11 @@ static int dhcp4_handler(sd_dhcp_client *client, int event, void *userdata) { switch (event) { case SD_DHCP_CLIENT_EVENT_STOP: + if (FLAGS_SET(link->network->keep_configuration, KEEP_CONFIGURATION_DHCP)) { + log_link_notice(link, "DHCPv4 connection considered critical, ignoring request to reconfigure it."); + return 0; + } + if (link->ipv4ll) { log_link_debug(link, "DHCP client is stopped. Acquiring IPv4 link-local address"); @@ -1182,11 +1187,6 @@ static int dhcp4_handler(sd_dhcp_client *client, int event, void *userdata) { return log_link_warning_errno(link, r, "Could not acquire IPv4 link-local address: %m"); } - if (FLAGS_SET(link->network->keep_configuration, KEEP_CONFIGURATION_DHCP)) { - log_link_notice(link, "DHCPv4 connection considered critical, ignoring request to reconfigure it."); - return 0; - } - if (link->dhcp_lease) { if (link->network->dhcp_send_release) { r = sd_dhcp_client_send_release(client);