The DHCP server now responds to DHCPLEASEQUERY messages from agents using
IP addresses not covered by a subnet in configuration. Server also returns
vendor-class-id option, if client sent it. [ISC-Bugs #21094]
- Parameters configured to evaluate from user defined function calls can
now be correctly written to dhcpd.leases
- If a 'next-server' parameter is configured in a dynamic host record via
OMAPI as a domain name, the syntax written to disk is now correctly parsed
upon restart. [ISC-Bugs #22266]
Several time related improvements:
- set initial delay to 0 to speed up client start
- added 'initial-delay' parameter to possibly revert to old behavior
- better handling of very short (1 or 2s) leases
- client lease records are recorded at most once every 15 seconds
- ICMP ping-check is now timed more precisely
- Servers that don't offer lease-time are now black-listed
[ISC-Bugs #19660]
Add the option "--no-pid" to the client, relay and server code,
to disable writing a pid file. Add the option "-pf pidfile"
to the relay to allow the user to supply the pidfile name at
runtime. Add the "with-relay6-pid-file" option to configure
to allow the user to supply the pidfile name for the relay
in v6 mode at configure time.
[ISC-Bugs #23351] [ISC-Bugs #17541]
Shawn Routhier [Thu, 24 Mar 2011 21:11:01 +0000 (21:11 +0000)]
In dhclient check the data for some string options for
reasonableness before passing it along to the script that
interfaces with the OS. [ISC-Bugs #23722]
Shawn Routhier [Fri, 18 Feb 2011 18:18:20 +0000 (18:18 +0000)]
Handle some DDNS corner cases better. Maintain the DDNS transaction
information when updating a lease and cancel any existing transactions
when removing the ddns information.
[ISC-Bugs #23103]
Mark Andrews [Fri, 18 Feb 2011 01:41:30 +0000 (01:41 +0000)]
- Removed the restriction on using IPv6 address in IPv4 mode. This allow
IPv4 options which contain IPv6 address to be specified. For example
the 6rd option can be specified and use like this:
Shawn Routhier [Thu, 20 Jan 2011 19:13:41 +0000 (19:13 +0000)]
When processing a request in the DHCPv6 server code that specifies
an address that is tagged as abondened (meaning we received a
decline request for it previously) don't attempt to move it from
the inactive to active pool as doing so can result in the server
crshing on an assert failure. Also retag the lease as active
and reset it's timeout value.
[ISC-Bugs #21921]
Shawn Routhier [Thu, 30 Dec 2010 22:35:48 +0000 (22:35 +0000)]
Disable the use of kqueue in the ISC library. This avoids a problem
between the fork and socket code that caused the dhcpd process to
use all available cpu if the program daemonized itself.
[ISC-Bugs #21911]
Shawn Routhier [Wed, 29 Dec 2010 22:56:01 +0000 (22:56 +0000)]
When processing the format flags for a given option consume the
flag indicating an optional value correctly. A symptom of this
bug was an infinite loop when trying to parse the slp-service-scope
option. Thanks to a patch from Marius Tomaschewski.
[ISC-Bugs #22055]
Shawn Routhier [Tue, 14 Dec 2010 23:06:50 +0000 (23:06 +0000)]
Limit the timeout period allowed in the dispatch code to 2^^32-1 seconds.
Thanks to a report from Jiri Popelka at Red Hat.
[ISC-Bugs #22033], [Red Hat Bug #628258]
Shawn Routhier [Tue, 14 Dec 2010 21:59:44 +0000 (21:59 +0000)]
Don't pass the ISC_R_INPROGRESS status to the omapi signal handlers.
Passing it through to the handlers caused the omshell program to fail
to connect to the server. [ISC-Bugs #21839]
Fix the paranthesis in the code to process configuration statements
beginning with "auth". The previous arrangement caused
"auto-partner-down" to be processed incorrectly. [ISC-Bugs #21854]
Shawn Routhier [Mon, 13 Dec 2010 20:31:08 +0000 (20:31 +0000)]
Fix the handling of connection requests on the failover port.
Previously a connection request from a source that wasn't
listed as a failover peer would cause the server to become
non-responsive. [ISC-Bugs #22679]
CERT: VU#159528 CVE: CVE-2010-3616
Shawn Routhier [Fri, 3 Dec 2010 20:27:51 +0000 (20:27 +0000)]
Restore printing of values in omshell to the style pre 21518. For
21518 we changed the print routines to always display time values
as a hex list. This had a side effect of printing all data strings
as a hex list. We shall investigate other ways of displaying time
values more usefully. [ISC-Bugs #22626]
David Hankins [Wed, 3 Nov 2010 23:22:02 +0000 (23:22 +0000)]
- ./configure on longer searches for -lcrypto to explicitly link against.
This fixes a bug where 'dhclient' would have shared library dependencies
on '/usr/lib'. [ISC-Bugs #21967]
Shawn Routhier [Fri, 22 Oct 2010 19:50:24 +0000 (19:50 +0000)]
Handle a relay forward message with an unspecified address in the
link address field. Previously such a message would cause the
server to crash. [ISC-Bugs #21992]
Shawn Routhier [Wed, 13 Oct 2010 22:28:18 +0000 (22:28 +0000)]
Update the code to parse dhcpv6 lease files to accept a semi-colon at
the end of the max-life and preferred-life clauses. In order to be
backwards compatible with older lease files not finding a semi-colon
is also accepted. [ISC-Bugs #22303].
Minor changes for scripts, configure.ac and Makefiles
[ISC-Bugs #19147] Use domain-search instead of domain-name in manual and
example conf file. Thanks to a patch from David Cantrell
at Red Hat.
[ISC-Bugs #19761] Restore address when doing a rebind in DHCPv6
[ISC-Bugs #19945] Properly close the quote on some arguments.
[ISC-Bugs #20952] Add 64 bit types to configure.ac
[ISC-Bugs #21308] Add "PATH=" to CLIENT_PATH envrionment variable
Fixes to lease input and output.
[ISC-Bugs #20418] - Some systems don't support the "%s" argument to
strftime, paste together the same string using mktime instead.
[ISC-Bugs #19596] - When parsing iaid values accept printable
characters.
[ISC-Bugs #21585] - Always print time values in omshell as hex
instead of ascii if the values happen to be printable characters.
Parse date strings more properly - the code now handles semi-colons in
date strings correctly. Thanks to a patch from Jiri Popelka at Red Hat.
[ISC-Bugs #21501, #20598]
Another batch of fixes
Correct error handling in DLPI [ISC-Bugs #20378]
Remove __sun__ and __hpux__ typedefs in osdep.h as they are now being
checked in configure. [ISC-Bugs #20443]
Modify how the cmsg header is allocated the v6 send and received routines
to compile on more compilers. [ISC-Bugs #20524]
When parsing a domain name free the memory for the name after we are
done with it. [ISC-Bugs #20824]
Minor code fixes
[ISC-Bugs #19566] When trying to find the zone for a name for ddns allow
the name to be at the apex of the zone.
[ISC-Bugs #19617] Restrict length of interface name read from command line
in dhcpd - based on a patch from David Cantrell at Red Hat.
[ISC-Bugs #20039] Correct some error messages in dhcpd.c
[ISC-Bugs #20070] Better range check on values when creating a DHCID.
[ISC-Bugs #20198] Avoid writing past the end of the field when adding
overly long file or server names to a packet and add a log message
if the configuration supplied overly long names for these fields.
[ISC-Bugs #21497] Add a little more randomness to rng seed in client
David Hankins [Tue, 7 Sep 2010 23:55:24 +0000 (23:55 +0000)]
- Fixed a bug that leaks host record references onto lease structures,
causing the server to apply configuration intended for one host to any
other innocent clients that come along later. [ISC-Bugs #22018]
David Hankins [Tue, 20 Jul 2010 21:09:14 +0000 (21:09 +0000)]
- The .TH tag for the dhcp-options manpage was typo repaired
thanks to a report from jidanni and the Debian package maintenance
team. [ISC-Bugs #21676] {Debian Bug#563613}
David Hankins [Tue, 13 Jul 2010 18:43:41 +0000 (18:43 +0000)]
- 'get-host-names true;' now also works even if 'use-host-decl-names true;'
was also configured. The nature of this repair also fixes another
error; the host-name supplied by a client is no longer overridden by a
reverse lookup of the lease address. Thanks to a patch from Wilco Baan
Hofman supplied to us by the Debian package maintenance team.
[ISC-Bugs #21691] {Debian Bug#509445}
Documentation cleanup covering multiple tickets
[ISC-Bugs #20265] [ISC-Bugs #20259] minor cleanup
[ISC-Bugs #20263] add text describing some default values
[ISC-Bugs #20193] single quotes at the start of a line indicate a control
line to nroff, escape them if we actually want a quote.
[ISC-Bugs #18916] sync the pointer to web pages amongst the different docs
David Hankins [Tue, 25 May 2010 17:40:28 +0000 (17:40 +0000)]
- A bug was fixed that could cause the DHCPv6 server to advertise/assign a
previously allocated (active) lease to a client that has changed subnets,
despite being on different shared networks. Dynamic prefixes specifically
allocated in shared networks also now are not offered if the client has
moved. [ISC-Bugs #21152]
Shawn Routhier [Tue, 25 May 2010 00:22:29 +0000 (00:22 +0000)]
Patch for 21093 - handle v4 or v6 only a little better. If we can't contstruct
the context log it and leave, if we can but then try and do a DDNS transaction
using the protocol we don't have log it and continue.
Don't include lease time information in the response to a DHCPINFORM
request. We do this by removing any time information from the option
cache before building the reponse packet. Bug ticket 21092.