ISC DHCP 4.2.5rc1 is now available

Shawn Routhier sar at isc.org
Wed Dec 19 22:55:29 UTC 2012


ISC DHCP 4.2.5rc1 is now available for download

This is the first release candidate of 4.2.5, a maintenance release for
4.2.  This set of patches includes fixes for several security items
that were previously released in 4.2.4-P1 and 4.2.4-P2.

A list of changes in this release has been appended to this message.
For a complete list of changes from any previous release please
consult the RELNOTES file within the source distribution or
our website:

    http://www.isc.org/software/dhcp/425rc1

This release, and it's OpenPGP-signatures are available now from:

     ftp://ftp.isc.org/isc/dhcp/4.2.5rc1/dhcp-4.2.5rc1.tar.gz
     ftp://ftp.isc.org/isc/dhcp/4.2.5rc1/dhcp-4.2.5rc1-RELNOTES
     ftp://ftp.isc.org/isc/dhcp/4.2.5rc1/dhcp-4.2.5rc1.tar.gz.sha512.asc
     ftp://ftp.isc.org/isc/dhcp/4.2.5rc1/dhcp-4.2.5rc1.tar.gz.sha256.asc
     ftp://ftp.isc.org/isc/dhcp/4.2.5rc1/dhcp-4.2.5rc1.tar.gz.sha1.asc

ISC's Release Signing Key can be obtained at:

      http://www.isc.org/about/openpgp/


                        Changes since 4.2.5b1

- Modify test makefiles to be more similar to standard makefiles
  and comment out a currently unused test.
  [ISC-Bugs #32098]

                        Changes since 4.2.4

- 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 compile time 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_<option_name>=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]



More information about the dhcp-announce mailing list