]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
dhcp4: do not try to renew address when client has no lease 16381/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 7 Jul 2020 01:04:42 +0000 (10:04 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 7 Jul 2020 01:18:58 +0000 (10:18 +0900)
src/libsystemd-network/sd-dhcp-client.c

index 69589c301bfe520aa3d97e5badda3b3c4e76f324..ef24b9c4def030b2cb70901f5d12007cd7525409 100644 (file)
@@ -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);