udhcpc: add/edit comments, no code changes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
index 8b6019b..fcc4479 100644
--- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c
@@ -29,7 +29,7 @@
#define REQUESTING 1
/* select/renew was sent, DHCPACK reply received */
#define BOUND 2
-/* half of lease passed, want renew it by sending unicast renew requests */
+/* half of lease passed, want to renew it by sending unicast renew requests */
#define RENEWING 3
/* renew requests were not answered, lease is almost over, send broadcast renew */
#define REBINDING 4
@@ -424,7 +424,7 @@
state = INIT_SELECTING;
goto leasefail;
case BOUND:
- /* Half of the lease passed, time to enter renewing state */
+ /* 1/2 lease passed, enter renewing state */
state = RENEWING;
change_listen_mode(LISTEN_KERNEL);
log1("Entering renew state");
@@ -433,7 +433,15 @@
case_RENEW_REQUESTED:
case RENEWING:
if (timeout > 60) {
- /* send an unicast renew request packet */
+ /* send an unicast renew request */
+ /* Sometimes observed to fail (EADDRNOTAVAIL) to bind
+ * a new UDP socket for sending inside send_renew.
+ * I hazard to guess existing listening socket
+ * is somehow conflicting with it, but why is it
+ * not deterministic then?! Strange.
+ * Anyway, it does recover by eventually failing throigh
+ * into INIT_SELECTING state.
+ */
send_renew(xid, server_addr, requested_ip);
timeout >>= 1;
continue;
@@ -446,7 +454,7 @@
/* Lease is *really* about to run out,
* try to find DHCP server using broadcast */
if (timeout > 0) {
- /* send a broadcast renew request packet */
+ /* send a broadcast renew request */
send_renew(xid, 0 /*INADDR_ANY*/, requested_ip);
timeout >>= 1;
continue;
@@ -477,7 +485,7 @@
goto case_RENEW_REQUESTED;
/* Start things over */
packet_num = 0;
- /* Kill any timeouts because the user wants this to hurry along */
+ /* Kill any timeouts, user wants this to hurry along */
timeout = 0;
continue;
case SIGUSR2: