0.9.9 (pending) + Various other size optimizations (Vladimir) + Change strerror(errno) to %m (Vladimir N. Oleynik ) + Fixed a little endian problem in mton (Bastian Blank ) + Fixed a arpping alignment problem (Rui He ) + Added sanity check for max_leases (udhcp bug #1285) (me) + Finally got rid of the trailing space in enviromental vars (me) + added an new enviromental variable: $mask. It contains the number of subnet bits for tools like ip route that require it. (Bastian Blank , me) 0.9.8 (021031) + split up README files (me) + use /dev/urandom to seed xid's (instead of time(0)) (me) + fixed renew behavior (me) + udhcp now fits nicely into busybox (Glenn McGrath as well as myself) + updated client manpage (me) + both client and server now use sockets for signal handling, hopefully, this will be the last needed change in signal handling, I'm fairly certain all the possible races are now closed. (me) + The server now restarts the auto_time timer when it receives a SIGUSR1 (write out config file). (me) + Improve signal handling (David Poole) + Fix to config file parsing (Matt Kraai) + Fix load lease logic (me) + Fix clear_lease logic (me) + -h is now an alias for -H (udhcp bug #1253) + Shorter timeout on not receiving offers (me) + Improved signal behavior by client (me) + Would never assign end address (Keith Smith ) + Was improperly reporting yiaddr as siaddr (ben-udhcp@bdlow.net) udhcp bug#1256 + Fixed reading of client id (David Poole ) + change sys_errlist[] to strerror() as it aparently doesn't exist (Erik Andersen ) + fixed get_raw_packet so it returns -2 on non fatal errors (Ted Lemon ) + Improved (hopefully) NAKing behavior (me) + Added -b option (Jouni Malinen) + Compute checksums correctly on big endian hosts (Jouni Malinen ) 0.9.7 (020526) + Use add_lease in read_leases, sanitizes leases more, and clears out exprired ones if there is no more room (me) + Moved udhcpd.leases to /var/lib/misc/udhcpd.leases (Debian bug #147747) + Change (obsolete) AF_INET in arping.c to PF_PACKET (Debian bug #127049) + Added script hook for DHCPNAK (nak), as well as providing the message option (me) + Generate the paramaters request list by seeing what options in options.c are ored with OPTION_REQ in options.c + Fix dhcp renew forgetfullness on client (bug #1230) + Fix dhcp release bug on client (bug #1231) + Set option request list for DHCP renew (bug #1233) + Set BOOTREQUEST/REPLY properly + Change client-identifier field to popularly expected behavior (me) + Only reopen port on errors (me) + Change fork/close/setsid structures to daemon() (me) + Allow user to specify udhcpd config file at run time (Steven, me) + Write pidfile after changing it (Steven CTR Carr ) + Added env var docs to udhcpc man page (Matt) + Standardized lowercase udhcp in documentation (me) + Accept packets without a UDP checksum (me) + Accept packets with extra garbage (me) + Better error handling in files.c (me) + Combined read_interface function to reduce COMBINED_BINARY size (me) + Drop calc_length(), some servers choke on smaller packets (me) + Try to clean some fat out (me) 0.9.6 (011001) + Added bootp paramaters to server (me) + Added bootp paramaters to client (me) + Added vendor id to client (me) + Better pidfile handling in client and server (me) + Added man pages (Matt Kraai ) 0.9.5 (010914) + Fixed $HOME and $PATH env passing (me) + Fixed client to only listen for raw packets on correct interface (me) + added --quit,-q option to quit after a lease is obtained (me) + Fixed 100% CPU utilization by client when interface is down (me) 0.9.4 (010827) + Force broadcast to broken clients that request unicast (ie, MSFT 98) + Make install rules (Adam J. Richter ) + One scripts, instead of many (Adam) + Removed script paramater info files (env vars only) (Adam) + Controlling of forking behavior in client (Adam) + General script.c/dhcpc.c cleanups (Adam) 0.9.3 (010820) + Increased debugging verbosity (me) + Cut trailing whitespace when reading config file (me) + added hostname option to client (me) + fixed a strncpy bug in script.c (me) + fixed a leaky socket in dhcpc.c (me) + fixed a leaky socket in dhcpd.c (me) 0.9.2 (010810) + Added raw sockets to client (me) + alignment fixes (Mark Huang) + compiler warning fixes (Mark Huang) + client now sends parameter list (Mark Huang/me) + added ipttl option + Does now not request broadcast packets 0.9.1 (010806) + Added udhcpc client + reorganized functions/files + listening socket now only binds to one interface 0.9.0 (010720) Major rewrite, current changes, goals: + should not segfault on bogus packets. + Options can be read from sname and file fields. + supports all DHCP messages (release, decline, inform). + IP block is now specified by a range of IP's. + Leases file now contains lease time (relative, or absolute). + Just about any DHCP option is now supported. + DNS entries are no longer read from resolv.conf + Lease file can be written periodically when the process receives a SIGUSR1 + arpping should be supported on all arches. + support for DHCP relays. + DHCP messages can be unicast if the client requests it. + many, many, many other things. 0.8.29 (000323) + stable(?) release 0.8.28 (000323) + removed alarm as it was causing server to go down + removed debugging + break down dhcpd.c into manageable files 0.8.27 (000221) + OFFER also sends gateway/subnet (for picky dhcp clients) + multiple DNS now handled from resolv.conf if available + multiple WINS (from dhcpd.conf) 0.8.25 (000120) + now compiles *and* runs on a generic linux system tested with a windows 98 client and the sample config files in the samples directory. 0.8.24 (000117) + makeiplist tool has basic functionality in place + new sample config files + route add -host 255.255.255.255 dev eth0 added for generic linux 0.8.23 (000117) + NETtel specific fix for ignoring dhcp requests on 2nd interface 0.8.22 (000113) + minor changes to compile under a generic linux system + minor config file location changes for a generic linux system + makeiplist fixes.. still incomplete.. but etting closer 0.8.21 (000113) + now sends the correct server ip instead of hardcoded value + minor debugging fixes for critical messages 0.8.20 (000106) + cut out dhcp server checking.. this was causing dialout ppp sessions with idle time set to never time out. + also removed the 10 second pause before launching.. as this was originally to stop it replying to a dhcp client on a NETtel which was really a bad way to do it in the first place :-) 0.8.19 (000104) + fixes for route add -host on a machine that needs to run both a DHCP client and server (dual eth box) 0.8.18 (991220) + Race conditions fixed by disabling alarm whilst the server is busy + Fixed continous clearing of the offered array so that it is only cleared when it is dirty - (could change the position of when dirty is set) 0.8.17 (991212) - has problems clearing out the offered array 0.8.16 (991203) + Non blocking error is changes to informational as it is not really an error 0.8.15 (991129) + Servs the dns field 3 times (Nettel only) so that windows servers dont time out whilst nettel is booting 0.8.14 (991126) + added owner check for the offered array so clean out time may be increased + added new func to print out chadder/MAC 0.8.13 (991125) + added win95 support (w95 changed xid halfway through conversation) + had to change the offered array to use hardware addresses instead of xid + fixed re offered bug + added more debugging 0.8.12 (991111) + debugging was real bad.. cleaned up a bit.. needs overhaul 0.8.11 (991110) + fixed up offeredAddr array to actually be used now!! offeredAddr is used to see if another simultaneous connecting client was offered an address that we are about to offer another client (multiple client bug) + removed re_offered variable as it breaks multiple client support + added lease time to ACK -- doesn't work if in OFFER + decreased internal array clear delay to 60 seconds + minor findAddr bug (returning -1 instead of 0) + if clients xid already in offeredAddr offer the same addr and don't add a new addr to offered (caused by a client issuing multiple DISCOVERs) 0.8.10 (991105) + \n bug in arpping + minor debugging changes (removed printfs etc) + started browseiplist (not finished) 0.8.9 (19991105) + fixed options array size bug (options were cut off) 0.8.8 (19991105) + ignores requests from dhcpcd on the same machine 0.8.7 (19991104) + don't die if we can't bind to search for existing DHCP server + slightly more verbose syslogging 0.8.6 (19991103) + added makeiplist (not finished -- core dumps) + minor debug changes 0.8.5 (19991029) + exits if another DHCP server is already on the network + added Linux Makefile 0.8.4 (19991026) + minor bug fix in findaddr preventing an addr being found 0.8.3 (19991025) + fixed up debugging + minor hwaddr issues 0.8.2 (19991022) + free leases (new arpping code from dhcpcd) + fixed bug where crashes if no leases/iplist file + syslogging and debugging switch + serve DNS from resolv.conf + fixed bug where new lease added if same mac offered + now checks the ip is free b4 offering + now supports wins server