network: do not send DHCPRELEASE when CriticalConnection= is enabled
This commit is contained in:
parent
8ad8292452
commit
efdb62dfd0
|
@ -649,15 +649,28 @@ 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 (link->network->dhcp_critical) {
|
||||
log_link_notice(link, "DHCPv4 connection considered critical, ignoring request to reconfigure it.");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (link->network->dhcp_send_release)
|
||||
(void) sd_dhcp_client_send_release(client);
|
||||
|
||||
_fallthrough_;
|
||||
if (link->dhcp_lease) {
|
||||
r = dhcp_lease_lost(link);
|
||||
if (r < 0) {
|
||||
link_enter_failed(link);
|
||||
return r;
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
case SD_DHCP_CLIENT_EVENT_EXPIRED:
|
||||
case SD_DHCP_CLIENT_EVENT_IP_CHANGE:
|
||||
|
||||
if (link->network->dhcp_critical) {
|
||||
log_link_notice(link, "DHCPv4 connection considered system critical, ignoring request to reconfigure it.");
|
||||
log_link_notice(link, "DHCPv4 connection considered critical, ignoring request to reconfigure it.");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue