aboutsummaryrefslogtreecommitdiff
path: root/networking/udhcp/dhcpc.c
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2018-10-30 11:56:18 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2018-10-30 11:56:18 +0100
commitc05aa6a776ab2420a42c041a3b5d45db587fd9ef (patch)
tree43e5120fd6a76e7a7d741a81169ca8da585ecb0c /networking/udhcp/dhcpc.c
parenta541314b1f5e7392608cdef91e9098330823ed31 (diff)
downloadbusybox-c05aa6a776ab2420a42c041a3b5d45db587fd9ef.tar.gz
udhcpc: ensure at least one unicast renew attempt
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'networking/udhcp/dhcpc.c')
-rw-r--r--networking/udhcp/dhcpc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c
index ab3e5a463..d2f165904 100644
--- a/networking/udhcp/dhcpc.c
+++ b/networking/udhcp/dhcpc.c
@@ -1725,8 +1725,9 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
move_from_unaligned32(lease_seconds, temp);
lease_seconds = ntohl(lease_seconds);
/* paranoia: must not be too small and not prone to overflows */
- if (lease_seconds < 0x10)
- lease_seconds = 0x10;
+ /* timeout > 60 - ensures at least one unicast renew attempt */
+ if (lease_seconds < 2 * 61)
+ lease_seconds = 2 * 61;
//if (lease_seconds > 0x7fffffff)
// lease_seconds = 0x7fffffff;
//^^^not necessary since "timeout = lease_seconds / 2"