3f79300e37
In arpping.h, fix structure alignment of "struct arpMsg". GCC can insert padding in the structure which causes udhcpd to send an invalid ARP packet on the network. It will then not receive a valid reply, which can cause it to assign an IP address that's already in use on the network. (With kernels before 2.4.20, the "struct ethhdr" in linux/if_ether.h wasn't marked as packed. This is also an issue if your toolchain was built with a pre-2.4.20 kernel). |
||
---|---|---|
.. | ||
arpping.c | ||
arpping.h | ||
AUTHORS | ||
ChangeLog | ||
clientpacket.c | ||
clientpacket.h | ||
clientsocket.c | ||
clientsocket.h | ||
common.c | ||
common.h | ||
Config.in | ||
COPYING | ||
dhcpc.c | ||
dhcpc.h | ||
dhcpd.c | ||
dhcpd.h | ||
dumpleases.c | ||
files.c | ||
files.h | ||
frontend.c | ||
leases.c | ||
leases.h | ||
libbb_udhcp.h | ||
Makefile | ||
Makefile.in | ||
options.c | ||
options.h | ||
packet.c | ||
packet.h | ||
pidfile.c | ||
pidfile.h | ||
README | ||
README.dumpleases | ||
README.udhcpc | ||
README.udhcpd | ||
script.c | ||
script.h | ||
serverpacket.c | ||
serverpacket.h | ||
signalpipe.c | ||
signalpipe.h | ||
socket.c | ||
socket.h | ||
TODO | ||
version.h |
udhcp server/client package readme ------------------------- The udhcp server/client package is primarily geared towards embedded systems. It does however, strive to be fully functional, and RFC compliant. compile time options ------------------- The Makefile contains three of the compile time options: UDHCP_DEBUG: If UDHCP_DEBUG is defined, udhcpd will output extra debugging output, compile with -g, and not fork to the background when run. UDHCP_SYSLOG: If UDHCP_SYSLOG is defined, udhcpd will log all its messages syslog, otherwise, it will attempt to log them to stdout. COMBINED_BINARY: If COMBINED_BINARY is define, one binary, udhcpd, is created. If called as udhcpd, the dhcp server will be started. If called as udhcpc, the dhcp client will be started. dhcpd.h contains the other three compile time options: LEASE_TIME: The default lease time if not specified in the config file. LEASES_FILE: The default file for storing leases. DHCPD_CONFIG_FILE: The defualt config file to use. options.c contains a set of dhcp options for the client: name[10]: The name of the option as it will appear in scripts flags: The type of option, as well as if it will be requested by the client (OPTION_REQ) code: The DHCP code for this option busybox drop-in -------------- udhcp is now a drop-in component for busybox (http://busybox.net). To update busybox to the latest revision, simply do a: cp *.[ch] README AUTHORS COPYING ChangeLog TODO \ <busybox_source>/networking/udhcp The only two files udhcp does not provide are config.in and Makefile.in, so these may need to be updated from time to time.