21 lines
		
	
	
		
			705 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			705 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
--- a/networking/udhcp/dhcpc.c
 | 
						|
+++ b/networking/udhcp/dhcpc.c
 | 
						|
@@ -1319,7 +1319,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
						|
 
 | 
						|
 			switch (state) {
 | 
						|
 			case INIT_SELECTING:
 | 
						|
-				if (packet_num < discover_retries) {
 | 
						|
+				if (!discover_retries || packet_num < discover_retries) {
 | 
						|
 					if (packet_num == 0)
 | 
						|
 						xid = random_xid();
 | 
						|
 					/* broadcast */
 | 
						|
@@ -1348,7 +1348,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
 | 
						|
 				packet_num = 0;
 | 
						|
 				continue;
 | 
						|
 			case REQUESTING:
 | 
						|
-				if (packet_num < discover_retries) {
 | 
						|
+				if (!discover_retries || packet_num < discover_retries) {
 | 
						|
 					/* send broadcast select packet */
 | 
						|
 					send_select(xid, server_addr, requested_ip);
 | 
						|
 					timeout = discover_timeout;
 |