aboutsummaryrefslogtreecommitdiff
path: root/networking/udhcp
AgeCommit message (Collapse)Author
2011-10-18udhcpc: on SIGUSR1, limit renew attempts time to 20 seconds; then do total ↵Vladislav Grishenko
reconfig Scenario: 1. udhcpc gets lease for 86400 secs and sleeps for 43200 before renew attempt 2. PC gets physically disconnected and connected to another network 3. some phy control software sends SIGUSR1 to renew the lease, SIGUSR2 isn't used because newly connected network could be the same as before 4. udhcpc sends unicast renew requests until lease timeout fall to 60 sec. They are ignored by new network dhcp servers 5. udhcpc sends broadcast rebind requests for 60 seconds, which are NAKed or ignored too 6. udhcpc deconfigs and starting from discover state, gets new lease for the new network So, pt.4+5 it could take up to 86400 secs without correct lease, which is too long and not acceptable. Second SIGUSR1 will immediately run into deconfig/discover state, which is not preferable in case of the same subnet replugged. This patch makes sure after SIGUSR1 timeout is no more than -A NUM (usually 20 sec). It means that renew will be requested via broadcast, and if no replies come back, full deconf/reconf cycle will be initiated in 20 seconds. Signed-off-by: Vladislav Grishenko <themiron@mail.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-10-18udhcp: IF_UDHCP_VERBOSE() macro - improve code readabilityLeonid Lisovskiy
Signed-off-by: Leonid Lisovskiy <lly.dev@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-09udhcp: remove the declaration of non-existent udhcp_checksumBaruch Siach
Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-07networking: consolidate the IP checksum code. -129 bytes.Baruch Siach
Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-06-10*: simplify Ethernet header includesDan Fandrich
Signed-off-by: Dan Fandrich <dan@coneharvesters.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-06-05*: remove "Options:" string from help textsDenys Vlasenko
function old new delta packed_usage 28706 28623 -83 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-06-04udhcpc: allow -O OPT take numeric paramsDenys Vlasenko
function old new delta udhcpc_main 2623 2654 +31 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-05-03udhcp: fix some default values from "" to NULLDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-26udhcp: add FEATURE_UDHCP_8021Q optionNigel Hathaway
function old new delta dhcp_option_strings 217 237 +20 dhcp_optflags 64 68 +4 Signed-off-by: Nigel Hathaway <Nigel.Hathaway@ubiquisys.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-26dhcpc: export unrecognized options in "optNN=XXXXXXXXX" formNigel Hathaway
function old new delta udhcp_run_script 609 818 +209 Signed-off-by: Nigel Hathaway <Nigel.Hathaway@ubiquisys.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-11move remaining help text from include/usage.src.hPere Orga
Signed-off-by: Pere Orga <gotrunks@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-03-12udhcpc: emit "correct" secs fieldDenys Vlasenko
In theory, sending secs set to constant zero should be ok too. But some bleeping servers can actually be configured to answer ONLY if secs is bigger than a preset value (!!) http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man8/bootpd.8.html grep for "reply_threshold_seconds" function old new delta udhcpc_main 2573 2623 +50 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-03-07udhcpc: add -B optionKeith Young
function old new delta udhcpc_longopts - 262 +262 add_client_options 218 239 +21 packed_usage 28149 28163 +14 static.udhcpc_longopts 250 - -250 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 2/0 up/down: 297/-250) Total: 47 bytes Signed-off-by: Keith Young <stripydog7@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-26Replace "depends on PLATFORM_LINUX" with "select PLATFORM_LINUX"Denys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-16udhcpd: optional IP selection based on MAC hashVladislav Grishenko
function old new delta find_free_or_expired_nip 153 225 +72 Signed-off-by: Vladislav Grishenko <themiron@mail.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-14udhcpc: use more correct, and more importantly, more understandable BPF codeVladislav Grishenko
Signed-off-by: Vladislav Grishenko <themiron@mail.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-06udhcpc: fix a problem with binary-encoded optionsDenys Vlasenko
function old new delta attach_option 395 413 +18 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-01-20eliminate aliasing warnings in traceroute.c and udhcp/socket.cDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-01-16remove a few aliasing warningsDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-01-11libbb unicode: comment out usused function and unused parameterDenys Vlasenko
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-12-25udhcpc: document SIGUSRn effect in help textDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-11-28dhcpd: reply with NAK to clients in INIT-REBOOT state w/o existing leaseDenys Vlasenko
We were not responding to them at all. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-11-28dhcpd: smaller code: do not look for REQUESTED_IP twiceDenys Vlasenko
text data bss dec hex filename 883235 936 17192 901363 dc0f3 busybox_old 883219 936 17192 901347 dc0e3 busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-28*: whitespace fixesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-21udhcpd: reduce stack usage by ~700 bytes. +28 bytes code sizeDenys Vlasenko
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-10-20udhcpc: exit if iface disappeared; use correct MAC if it changesDenys Vlasenko
function old new delta udhcpc_main 2560 2618 +58 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-20udhcpc: reduce stack usage by de-inlining routines with on-stack pkt bufDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-20udhcpc: periodically reread our ifindex and macDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-20udhcpc: emit maxsize option in all non-NAK type packetsDenys Vlasenko
Before, we were sending them only in DISCOVER packets. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-20dhcp: typo fix: UPD_DHCP_SIZE -> UDP_DHCP_SIZEDenys Vlasenko
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-10-20udhcpc: better help textDenys Vlasenko
function old new delta packed_usage 27452 27486 +34 Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-10-20udhcpc: remove now-unneeded definitions of vendor and client-id optsDenys Vlasenko
function old new delta dhcp_optflags 68 64 -4 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-20udhcpc: remove -c CLIENTID, it is hard to use, -x 61:hexstring does the same ↵Denys Vlasenko
better function old new delta packed_usage 27802 27808 +6 static.udhcpc_longopts 261 250 -11 udhcpc_main 2799 2780 -19 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/2 up/down: 6/-30) Total: -24 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-20udhcpc: move usage text to .c file. no code changesDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-18*: deinline SWAP_xE64 on 32-bit CPUs. Wins !90 bytes both on 32 and 64 bitsDenys Vlasenko
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-10-18*: use SWAP_BE64 instead of open-coding itDenys Vlasenko
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-10-17udhcpc: fix OPTION_IP_PAIR parsingVladislav Grishenko
http://git.busybox.net/busybox/commit/?id=7d3a48a003cd645edfae2b404493688022 revealed incorrect OPTION_IP_PAIR implementation, which doesn't respect option length and causes erroneous classful routes, composed from garbage or first bytes from the next DHCP packet option. Signed-off-by: Vladislav Grishenko <themiron@mail.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-10-06dhcprelay: code shrink, and explain its workings a bit moreDenys Vlasenko
function old new delta sendto_ip4 - 55 +55 dhcprelay_main 1059 942 -117 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/1 up/down: 55/-117) Total: -62 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-09-26udhcp: add support for 0x21 ROUTES and 0xf9 MS_STATIC_ROUTES optionsVladislav Grishenko
Signed-off-by: Vladislav Grishenko <themiron@mail.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-16*: make GNU licensing statement forms more regularDenys Vlasenko
This change retains "or later" state! No licensing _changes_ here, only form is adjusted (article, space between "GPL" and "v2" and so on). Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-07Fix a typo in config textDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-07-19mark Linux-specific configuration optionsJeremie Koenig
PLATFORM_LINUX is used as a dependency for applets or features which require Linux-specific interfaces. Signed-off-by: Jeremie Koenig <jk@jk.fr.eu.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-07-04remove some dead assignments, add a TODO commentDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-24*: introduce and use bb_unsetenv_and_freeDenys Vlasenko
function old new delta bb_unsetenv_and_free - 17 +17 tcpudpsvd_main 1819 1810 -9 safe_setenv 58 47 -11 udhcp_run_script 630 616 -14 make_device 1683 1663 -20 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/4 up/down: 17/-54) Total: -37 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-08*: add INSERTs to *.src files where appropriateDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-06remove defconfig. Now "make defconfig" simply uses defaults from Config.inDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-04mass renaming Kbuild -> Kbuild.src, Config.in -> Config.srcDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-06-04udhcpd: fix daemonize crash on nommu systemsMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-05-31dhcp: truncate packets instead of padding them to 574 bytes. closes bug 1849Denys Vlasenko
function old new delta udhcp_send_raw_packet 411 456 +45 udhcp_send_kernel_packet 259 271 +12 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-05-30dhcp: indicate IP network order in prototypes tooDenys Vlasenko
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>