21 lines
693 B
Diff
21 lines
693 B
Diff
--- a/networking/udhcp/dhcpc.c
|
|
+++ b/networking/udhcp/dhcpc.c
|
|
@@ -352,7 +352,7 @@ int udhcpc_main(int argc ATTRIBUTE_UNUSE
|
|
|
|
switch (state) {
|
|
case INIT_SELECTING:
|
|
- if (packet_num < discover_retries) {
|
|
+ if (!discover_retries || packet_num < discover_retries) {
|
|
if (packet_num == 0)
|
|
xid = random_xid();
|
|
|
|
@@ -382,7 +382,7 @@ int udhcpc_main(int argc ATTRIBUTE_UNUSE
|
|
continue;
|
|
case RENEW_REQUESTED:
|
|
case REQUESTING:
|
|
- if (packet_num < discover_retries) {
|
|
+ if (!discover_retries || packet_num < discover_retries) {
|
|
/* send request packet */
|
|
if (state == RENEW_REQUESTED) /* unicast */
|
|
send_renew(xid, server_addr, requested_ip);
|