Some patchs
Denys Vlasenko
vda.linux at googlemail.com
Fri Jun 27 14:28:34 UTC 2008
On Thursday 26 June 2008 16:17, Pascal Bellard wrote:
> Hello,
>
> Udhcpc: do not hang when network is down
> http://hg.slitaz.org/wok/raw-file/be0892d9efd5/busybox/stuff/busybox-1.11.0-dhcpc.u
Actually, I want to "hang" (actually, retry forever) when network is down.
I run udhcpc indefinitely, and I don't want it to bail out just because
e.g. some other async script failed to up the interface in time.
You obvious want it ot exit. This already works!
Look at the code again:
if (packet_num < discover_retries) {
if (packet_num == 0)
xid = random_xid();
send_discover(xid, requested_ip); /* broadcast */
timeout = discover_timeout;
packet_num++;
continue;
}
we are here if packet_num >= discover_retries. now...
udhcp_run_script(NULL, "leasefail");
if (opt & OPT_b) { /* background if no lease */
bb_info_msg("No lease, forking to background");
client_background();
/* do not background again! */
opt = ((opt & ~OPT_b) | OPT_f);
} else
if (opt & OPT_n) { /* abort if no lease */
bb_info_msg("No lease, failing");
retval = 1;
goto ret;
}
Yes! this is it! if you want udhcpc to exit, give it -n option.
/* wait before trying again */
timeout = tryagain_timeout;
packet_num = 0;
continue;
Am I missing something?
--
vda
More information about the busybox
mailing list