diff options
| author | Denys Vlasenko <vda.linux@googlemail.com> | 2009-10-08 23:05:46 +0200 |
|---|---|---|
| committer | Denys Vlasenko <vda.linux@googlemail.com> | 2009-10-08 23:05:46 +0200 |
| commit | 219757fee9a1cacedaffcfe062254adb2ffe7cac (patch) | |
| tree | e071a21bbac24b095a12c44ff37f894071b5735b | |
| parent | 6332151641f2c80c0ca57bd2f7dd11393619bc3a (diff) | |
| download | busybox-w32-219757fee9a1cacedaffcfe062254adb2ffe7cac.tar.gz busybox-w32-219757fee9a1cacedaffcfe062254adb2ffe7cac.tar.bz2 busybox-w32-219757fee9a1cacedaffcfe062254adb2ffe7cac.zip | |
udhcpc: fix bug 629: use bcast receive when we perform rebinding
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
| -rw-r--r-- | networking/udhcp/dhcpc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/networking/udhcp/dhcpc.c b/networking/udhcp/dhcpc.c index ccc0393f2..9a2fe35e4 100644 --- a/networking/udhcp/dhcpc.c +++ b/networking/udhcp/dhcpc.c | |||
| @@ -451,6 +451,8 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv) | |||
| 451 | state = REBINDING; | 451 | state = REBINDING; |
| 452 | /* fall right through */ | 452 | /* fall right through */ |
| 453 | case REBINDING: | 453 | case REBINDING: |
| 454 | /* Switch to bcast receive */ | ||
| 455 | change_listen_mode(LISTEN_RAW); | ||
| 454 | /* Lease is *really* about to run out, | 456 | /* Lease is *really* about to run out, |
| 455 | * try to find DHCP server using broadcast */ | 457 | * try to find DHCP server using broadcast */ |
| 456 | if (timeout > 0) { | 458 | if (timeout > 0) { |
| @@ -462,7 +464,6 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv) | |||
| 462 | /* Timed out, enter init state */ | 464 | /* Timed out, enter init state */ |
| 463 | bb_info_msg("Lease lost, entering init state"); | 465 | bb_info_msg("Lease lost, entering init state"); |
| 464 | udhcp_run_script(NULL, "deconfig"); | 466 | udhcp_run_script(NULL, "deconfig"); |
| 465 | change_listen_mode(LISTEN_RAW); | ||
| 466 | state = INIT_SELECTING; | 467 | state = INIT_SELECTING; |
| 467 | /*timeout = 0; - already is */ | 468 | /*timeout = 0; - already is */ |
| 468 | packet_num = 0; | 469 | packet_num = 0; |
