Squashed commit of the following:
commit 70eb39525494f0c8ee6d1b1f1ae2cca391ab309e
Author: Shawn Routhier <sar@isc.org>
Date: Mon Jun 27 13:46:37 2016 -0700
[rt23954] Update DDNS code to remove PTR even if removing FWD had issues
[rt27912]
Add code to suppor on {commit expiry release} statements for DHCPv6.
There are several pieces to this change
1) Add space in the iasubopt structure to hold the statement pointers
2) Update the execute code to fill in the structures as necessary
3) Execute the statements when appropriate
Many of the changes in the non-v6 code are to pass the v6 structures
around to the execute code.
should be cancelled. This patch results in cancelling the
outstanding request less often. It fixes the problem caused
by a client doing a release where the txt and ptr records
weren't removed from the DNS.
[ISC-BUGS #27858]
code to the DDNS handling. This code included a bug that caused it
to attempt to dereference a NULL pointer and eventually segfault.
While reviewing the code as we addressed this problem, we determined
that some of the updates to the lease structures would not work as
planned since the structures being updated were in the process of
being freed: these updates were removed. In addition we removed an
incorrect call to the DDNS removal function that could cause a failure
during the removal of DDNS information from the DNS server.
Thanks to Jasper Jongmans for reporting this issue.
[ISC-Bugs #27078]
CVE: CVE-2011-4868
when removing DDNS information, so that we will continue with the
processing if we have a lease even if it doesn't have an outstanding
transaction. [ISC-Bugs #24682]
processing if the configuration included overlapping pools or
multiple fixed-address entries for a single address. This issue
affected both IPv4 and IPv6. The fix allows a server to detect such
conditions, provides the user with extra information and recommended
steps to fix the problem. If the user enables the appropriate option
in site.h then server will be terminated
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.
should send out option 81 (FQDN). Defaults to "on". If set to "off",
the FQDN option is not sent, even if the client requested it. This is
needed because some clients misbehave otherwise. [rt16624]
'deny client-updates;'. The client's request is not truly ignored,
rather it is encouraged. Should this value be configured, the server
updates DNS as though client-updates were set to 'deny'. That is, it
enters into DNS whatever it is configured to do already, provided it is
configured to. Then it sends a response to the client that lets the
client believe it is performing client updates (which it will), probably
for a different name. In essence, this lets the client do as it will,
ignoring this aspect of their request. [ISC-Bugs #16185]
added. If this option is enabled, dhcpd will perform normal DHCID
conflict resolution (the default). If this option is disabled, it will
instead trust the assigned name implicitly (removing any other bindings
on that name). This option has not been made available in dhclient.
[ISC-Bugs #16165]