Shawn Routhier [Thu, 11 Feb 2010 23:55:36 +0000 (23:55 +0000)]
Primarly fix the trace code. This was broken during the modfictions of the
DDNS code to use the bind libraries. This patch fixes that breakage and
includes support for the new DDNS code. This patch also deletes some dead
code and neatens up some log messages.
David Hankins [Wed, 3 Feb 2010 23:25:25 +0000 (23:25 +0000)]
- An optimization described in the failover protocol draft is now included,
which permits a DHCP server operating in communications-interrupted state
to 'rewind' a lease to the state most recently transmitted to its peer,
greatly increasing a server's endurance in communications-interrupted.
This is supported using a new 'rewind state' record on the dhcpd.leases
entry for each lease. [ISC-Bugs #19601]
David Hankins [Thu, 21 Jan 2010 22:17:17 +0000 (22:17 +0000)]
- Helpfully (hopefully) edit documentation in dhcp-options to reinforce that
the ia* options are not for direct configuration, and are only documented
for completeness...
Shawn Routhier [Wed, 2 Dec 2009 20:43:52 +0000 (20:43 +0000)]
ticket 20687
Update README and RELNOTES for 4.2
Include building the bind libraries as part of the make system instead
of as a separate step by the customer.
David Hankins [Thu, 19 Nov 2009 23:57:41 +0000 (23:57 +0000)]
- The 'hardware [ethernet|etc] ...;' parameter in host records has been
extended to attempt to match DHCPv6 clients by the last octets of a
DUID-LL or DUID-LLT provided by the client. [ISC-Bugs #19599]
Shawn Routhier [Thu, 19 Nov 2009 23:49:57 +0000 (23:49 +0000)]
Ticket 20540 - clean ups for DHCP-DDNS work, add an change dropped in the
merge, arrange to handle callbacks from the socket code after we've deleted
the socket and deal with the quantum issue in the tasks. This last will
be removed shortly as a better fix is now available.
David Hankins [Tue, 6 Oct 2009 23:06:00 +0000 (23:06 +0000)]
- ./configure now checks to ensure the intX_t and u_intX_t types are defined,
correcting a compilation failure when using Sun's compiler. [ISC-Bugs #20370]
David Hankins [Wed, 30 Sep 2009 20:59:59 +0000 (20:59 +0000)]
- Both host and subnet6 configuration groups are now included whether a
fixed-address6 (DHCPv6) is in use or not. Host scoped configuration takes
precedence. This fixes two bugs, one where host scoped configuration
would not be included from a non-fixed-address6 host record, and the equal
and opposite bug where subnet6 scoped configuration would not be used when
over-riding vlaues were not present in a matching fixed-address6 host
configuration. [ISC-Bugs #20069]
Fix the check in the signal handler code to check if there is an inner
signal handler before calling it. Previously we check if there was a
get_value function.
David Hankins [Wed, 22 Jul 2009 21:58:14 +0000 (21:58 +0000)]
- A patch supplied by David Cantrell at RedHat was applied that detects
invalid calling parameters given to the ns_name_ntop() function.
Specifically, it detects if the caller passed a pointer and size pair
that causes the pointer to integer-wrap past zero. [ISC-Bugs #17737]
David Hankins [Wed, 22 Jul 2009 17:00:01 +0000 (17:00 +0000)]
- Secondary servers in a failover pair will now perform ddns removals if
they had performed ddns updates on a lease that is expiring, or was
released through the primary. As part of the same fix, stale binding scopes
will now be removed if a change in identity of a lease's active client is
detected, rather than simply if a lease is noticed to have expired (which it
may have expired without a failover server noticing in some situations).
[ISC-Bugs #19826b]
David Hankins [Thu, 16 Jul 2009 18:02:28 +0000 (18:02 +0000)]
- Versions 3.0.x syntax with multiple name->code option definitions is now
supported. Note that, similarly to 3.0.x, for by-code lookups only the
last option definition is used. [ISC-Bugs #17613]
David Hankins [Mon, 6 Jul 2009 23:29:52 +0000 (23:29 +0000)]
- Added a configuration function, 'gethostname()', which calls the system
function of the same name and presents the results as a data expression.
This function can be used to incorporate the system level hostname of
the system the DHCP software is operating on in responses or queries (such
as including a failover partner's hostname in a dhcp message or binding
scope, or having a DHCP client send any system hostname in the host-name or
FQDN options by default). [ISC-Bugs #17351]
David Hankins [Fri, 19 Jun 2009 23:24:19 +0000 (23:24 +0000)]
! A stack overflow vulnerability was fixed in dhclient that could allow
remote attackers to execute arbitrary commands as root on the system,
or simply terminate the client, by providing an over-long subnet-mask
option. [ISC-Bugs #19839]
David Hankins [Wed, 17 Jun 2009 22:08:42 +0000 (22:08 +0000)]
- A new failover configuration parameter has been introduced for those
environments where DHCP servers can be reasonably guaranteed to be
"down" when the failover TCP socket is severed, "auto-partner-down".
This parameter is not generally safe, and by default is disabled, so
please carefully review the documentation of this parameter in the
dhcpd.conf(5) manpage before determining to use it yourself.
[ISC-Bugs #19600]
David Hankins [Wed, 20 May 2009 23:58:53 +0000 (23:58 +0000)]
- Fixed a bug where an OMAPI socket disconnection message would not result
in scheduling a failover reconnection, if the link had not negotiated a
failover connect yet (e.g.: connection refused, asynch socket connect()
timeouts). [ISC-Bugs #19684]
David Hankins [Thu, 30 Apr 2009 18:42:52 +0000 (18:42 +0000)]
- Compilation on Solaris with USE_SOCKETS defined in includes/site.h has
been repaired. Other USE_ overrides should work better. [ISC-Bugs #19434]
- A check for the local flavor of IFNAMSIZ had a broken 'else' condition,
that probably still resulted in the correct behaviour (but wouldn't use
a larger defined value provided by the host OS). [ISC-Bugs #19434]
David Hankins [Tue, 7 Apr 2009 19:55:52 +0000 (19:55 +0000)]
- Memory leak in the load_balance_mine() function is fixed. This would
leak ~20-30 octets per DHCPDISCOVER packet while failover was in use
and in normal state. [ISC-Bugs #19548]
- Various compilation fixes have been included for the memory related
DEBUG #defines in includes/site.h. [ISC-Bugs #19548]
David Hankins [Thu, 26 Mar 2009 17:20:23 +0000 (17:20 +0000)]
- The update-conflict-detection feature would leave an FQDN updated without
a DHCID (still currently implemented as a TXT RR). This would cause later
expiration or release events to fail to remove the domain name. The feature
now also inserts the client's up to date DHCID record, so records may safely
be removed at expiration or release time. Thanks to a patch submitted by
Christof Chen. [ISC-Bugs #19500]
David Hankins [Tue, 24 Mar 2009 18:33:52 +0000 (18:33 +0000)]
- A bug in DLPI packet transmission (Solaris, HP/UX) that caused the server
to stop receiving packets is fixed. The same fix also means that the MAC
address will no longer appear 'bogus' on DLPI-based systems.
[ISC-Bugs #19186]
- A bug in select handling was discovered where the results of one select()
call were discarded, causing the server to process the next select() call
and use more system calls than required. This has been repaired - the
sockets will be handled after the first return from select(), resulting in
fewer system calls. [ISC-Bugs #19186]
David Hankins [Fri, 13 Mar 2009 21:41:45 +0000 (21:41 +0000)]
- If configured, dhclient may now transmit to an anycast MAC address,
rather than using a broadcast address. Thanks to a patch from David
Cantrell at Red Hat. [ISC-Bugs #17740]
David Hankins [Tue, 10 Mar 2009 20:54:02 +0000 (20:54 +0000)]
- Fixed a cosmetic bug where pretty-printing valid domain-search options would
result in an erroneous error log message ('garbage in format string').
[ISC-Bugs #19327]