diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2020-07-07 10:04:42 +0900 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2020-07-07 10:18:58 +0900 |
commit | 921693a0f386b01fb755d044f7345b1d00bf4a05 (patch) | |
tree | e227ee13e4583ade8b297cc968ebad97b3ba587e | |
parent | ceaec54a3c8366e81863a7d0d9c1f1d9f09960e1 (diff) | |
download | systemd-921693a0f386b01fb755d044f7345b1d00bf4a05.tar.gz |
dhcp4: do not try to renew address when client has no lease
-rw-r--r-- | src/libsystemd-network/sd-dhcp-client.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libsystemd-network/sd-dhcp-client.c b/src/libsystemd-network/sd-dhcp-client.c index 69589c301b..ef24b9c4de 100644 --- a/src/libsystemd-network/sd-dhcp-client.c +++ b/src/libsystemd-network/sd-dhcp-client.c @@ -1441,7 +1441,10 @@ static int client_timeout_t1(sd_event_source *s, uint64_t usec, void *userdata) sd_dhcp_client *client = userdata; DHCP_CLIENT_DONT_DESTROY(client); - client->state = DHCP_STATE_RENEWING; + if (client->lease) + client->state = DHCP_STATE_RENEWING; + else if (client->state != DHCP_STATE_INIT) + client->state = DHCP_STATE_INIT_REBOOT; client->attempt = 0; return client_initialize_time_events(client); |