busybox: update to 1.19.2 (thanks to Peter Wagner)
[openwrt/staging/yousong.git] / package / busybox / patches / 240-udhcpc_retries.patch
index 4f15c42c64e76b4e7e705754ff5f77af3fcc2cff..a9f4f3d1ebee15b08c91b3292fe5463570e7bc57 100644 (file)
@@ -1,22 +1,20 @@
-Index: busybox-1.4.2/networking/udhcp/dhcpc.c
-===================================================================
---- busybox-1.4.2.orig/networking/udhcp/dhcpc.c        2007-06-04 13:21:32.319063424 +0200
-+++ busybox-1.4.2/networking/udhcp/dhcpc.c     2007-06-04 13:21:33.430894400 +0200
-@@ -291,7 +291,7 @@
-                       /* timeout dropped to zero */
+--- a/networking/udhcp/dhcpc.c
++++ b/networking/udhcp/dhcpc.c
+@@ -1257,7 +1257,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
                        switch (state) {
                        case INIT_SELECTING:
--                              if (packet_num < client_config.retries) {
-+                              if (!client_config.retries || (packet_num < client_config.retries)) {
+-                              if (packet_num < discover_retries) {
++                              if (!discover_retries || packet_num < discover_retries) {
                                        if (packet_num == 0)
                                                xid = random_xid();
-@@ -316,7 +316,7 @@
-                               break;
-                       case RENEW_REQUESTED:
+                                       /* broadcast */
+@@ -1286,7 +1286,7 @@ int udhcpc_main(int argc UNUSED_PARAM, c
+                               packet_num = 0;
+                               continue;
                        case REQUESTING:
--                              if (packet_num < client_config.retries) {
-+                              if (!client_config.retries || (packet_num < client_config.retries)) {
-                                       /* send request packet */
-                                       if (state == RENEW_REQUESTED)
-                                               send_renew(xid, server_addr, requested_ip); /* unicast */
+-                              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;