ISC DHCP Changelog

What's new in ISC DHCP 4.3.0 Beta 1

Jan 22, 2014
  • Address static analysis warnings. [ISC-Bugs #33510] [ISC-Bugs #33511]
  • Silence benign static analysis warnings. [ISC-Bugs #33428]
  • Add check for 64-bit package for atf. [ISC-Bugs #32206]
  • Use newer auto* tool packages and turn on RFC_3542 support on Mac OS. [ISC-Bugs #26303]
  • Remove a variable when it isn't being used due to #ifdefs to avoid a compiler warning on Solaris using GCC. [ISC-Bugs #33032]
  • Add a check for too much whitespace in a config or lease file. Thanks to Paolo Pellegrino for finding the issue and a suggestion for the patch. [ISC-Bugs #33351]
  • Fix several problems with using OMAPI to manipulate class and subclass objects. [ISC-Bugs #27452]
  • Added a sleep call after killing the old client to allow time for the sockets to be cleaned. This should allow the -r option to work more consistently. [ISC-Bugs #18175]
  • Missing files for ISC DHCP Developer's Guide are now included in the release tarballs. To generate this documentation, please use make devel command in doc directory. [ISC-Bugs #32767]
  • Update client script for use with openwrt. [ISC-Bugs #29843]
  • Fix the socket handling for DHCPv6 clients to allow multiple instances of a client on a single machine to work properly. Previously only one client would receive the packets. Thanks to Jiri Popelka at Red Hat for the bug report and a potential patch. [ISC-Bugs #34784]
  • Added support for gentle shutdown after signal is received. [ISC-Bugs #32692] [ISC-Bugs 34945]
  • Enhance the DHCPv6 server logging to include the addresses that are assigned to the clients. [ISC-Bugs #26377]

New in ISC DHCP 4.2.5-P1 (Mar 27, 2013)

  • A security issue in Bind9 was found and fixed. This release includes the fixed Bind9 code. There have been no code changes to the DHCP code. [ISC-Bugs #32688] CVE: CVE-2013-2266.

New in ISC DHCP 4.2.5 (Jan 10, 2013)

  • Correct code to calculate timing values in client to compare rebind value to infinity instead of renew value. Thanks to Chenda Huang from H3C Technologies Co., Limited for reporting this issue. [ISC-Bugs #29062]
  • Fix some issues in the code for parsing and printing options. [ISC-Bugs #22625] - properly print options that have several fields followed by an array of something for example "fIa" [ISC-Bugs #27289] - properly parse options in declarations that have several fields followed by an array of something for example "fIa" [ISC-Bugs #27296] - properly determine if we parsed a 16 or 32 bit value in evaluate_numeric_expression (extract-int). [ISC-Bugs #27314] - properly parse a zero length option from a lease file. Thanks to Marius Tomaschewski from SUSE for the report and prototype patch for this ticket as well as ticket 27289.
  • Previously the server code was relaxed to allow packets with zero length client ids to be processed. Under some situations use of zero length client ids can cause the server to go into an infinite loop. As such ids are not valid according to RFC 2132 section 9.14 the server no longer accepts them. Client ids with a length of 1 are also invalid but the server still accepts them in order to minimize disruption. The restriction will likely be tightened in the future to disallow ids with a length of 1. Thanks to Markus Hietava of Codenomicon CROSS project for the finding this issue and CERT-FI for vulnerability coordination. [ISC-Bugs #29851] CVE: CVE-2012-3571
  • When attempting to convert a DUID from a client id option into a hardware address handle unexpected client ids properly. Thanks to Markus Hietava of Codenomicon CROSS project for the finding this issue and CERT-FI for vulnerability coordination. [ISC-Bugs #29852] CVE: CVE-2012-3570
  • A pair of memory leaks were found and fixed. Thanks to Glen Eustace of Massey University, New Zealand for finding this issue. [ISC-Bugs #30024] CVE: CVE-2012-3954
  • Existing legacy unit-tests have been migrated to Automated Test Framework (ATF). Several new tests have been developed. To enable unit-tests, please use --with-atf in configure script. A Developer's Guide has been added. To generate it, please use make devel in the doc directory. It is currently in early stages of development, but is expected to grow in the near future. [ISC-Bugs 25901]
  • An issue with the use of lease times was found and fixed. Making certain changes to the end time of an IPv6 lease could cause the server to abort. Thanks to Glen Eustace of Massey University, New Zealand for finding this issue. [ISC-Bugs #30281] CVE: CVE-2012-3955
  • Update the memory leakage debug code to work with v6. [ISC-Bugs #30297]
  • Relax the requirements for deleting an A or AAAA record. Previously the DDNS removal code required both the A or AAAA record and the TXT record to exist. This requirement could cause problems if something interrupted the removal leaving the TXT record alone. This relaxation was codified in RFC 4703. [ISC-Bugs #30734]
  • Modify the failover code to handle incorrect peer names better. Previously the structure holding the name might have been freed inappropriately in some cases and not freed in other cases. [ISC-Bugs #30320]
  • Add a configure option, enable-secs-byteorder, to deal with clients that do the byte ordering on the secs field incorrectly. This field should be in network byte order but some clients get it wrong. When this option is enabled the server will examine the secs field and if it looks wrong (high byte non zero and low byte zero) swap the bytes. The default is disabled. This option is only useful when doing load balancing within failover. [ISC-Bugs #26108]
  • Fix a set of issues that were discovered via a code inspection tool. Thanks to Jiri Popelka and Tomas Hozza Red Hat for the logs and patches. [ISC-Bugs #23833]
  • Parsing unquoted base64 strings improved. Parser now properly handles strings that contain reserved names. [ISC-Bugs #23048]
  • Modify the nak_lease function to make some attempts to find a server-identifier option to use for the NAK. This feature is enabled by defining SERVER_ID_FOR_NAK in includes/site.h and currently defaults to disabled. [ISC-Bugs #25689]
  • The client now passes information about the options it requested from the server to the script code via environment variables. These variables are of the form requested_=1 with the option name being the same as used in the new_* and old_* variables. [ISC-Bugs #29068]
  • Add support for a simple check that the server id in a request message to a failover peer matches the server id of the server. This support is enabled by editing the file includes/site.h and uncommenting the definition for SERVER_ID_CHECK. The option has several restrictions and issues - please read the comment in the site.h file before enabling it. [ISC-Bugs #31463]
  • Tidy up some compiler issues in the debug code. [ISC-Bugs #26460]
  • Move the dhcpd.conf exmample file to dhcpd.conf.example to avoid overwriting the dhcpd.conf file when installing a new version of ISC DHCP. The user will now need to manual copy and edit the dhcpd.conf file as desired. [ISC-Bugs #19337]
  • Check the status value when trying to read from a connection to see if it may have been closed. If it appears closed don't try to read from it again. This avoids a potential busy-wait like loop when the peer names are mismatched. [ISC-Bugs #31231]
  • Remove an unused variable to keep compilers happy. [ISC-Bugs #31983]

New in ISC DHCP 4.2.4-P2 (Sep 14, 2012)

  • An issue with the use of lease times was found and fixed. Making certain changes to the end time of an IPv6 lease could cause the server to abort. Thanks to Glen Eustace of Massey University, New Zealand for finding this issue. [ISC-Bugs #30281] CVE: CVE-2012-3955

New in ISC DHCP 4.2.0-P1 (Nov 3, 2010)

  • Handle a relay forward message with an unspecified address in the link address field. Previously such a message would cause the server to crash.