it will only appear prior to the routers option if it is present on the
Parameter-Request-List. The subnet-mask option will also only be
included by default (if it is not on the PRL) in response to DISCOVER
or REQUEST messages.
[ISC-Bugs #17117]
- The FQDN option is only supplied if the client supplied an FQDN option or
if the FQDN option was explicitly requested on the PRL.
[ISC-Bugs #17117]
initialized. [ISC-Bugs #16865]
- Silenced several other compiler warnings. [ISC-Bugs #16865]
- Include the more standard sys/uio.h rather than rely upon other header
files to include it (fixes a BSDI compile failure). [ISC-Bugs #16865]
added. This permits dhcpd or dhclient to execute a named external
program with command line arguments specified from other configuration
language. Thanks to a patch written by Mattias Ronnblom, gotten to us
via Robin Breathe. [ISC-Bugs #13728]
priority. This helps a small minority of clients that provide parameter
request lists, but do not list the subnet-mask option because they were
designed to interoperate with a server that behaves in this manner.
[ISC-Bugs #1196]
- The FQDN option is similarly supplied even if it does not appear on the
parameter request list, but not to the exclusion of options that do
appear at the parameter request list. Up until now it had ultimate
priority over the client's parameter request list. [ISC-Bugs #1196]
<draft-ietf-dhc-dhcp-dns-12.txt>.
common/options.c, common/tables.c, includes/dhcp.h:
Split the fqdn.name option into fqdn.hostname and fqdn.domainname.
includes/dhcpd.h, server/Makefile.dist, server/ddns.c, server/dhcp.c,
server/mdb.c, server/stables.c:
Added a new file (server/ddns.c) containing the DDNS updates code.
This file exports two functions: ddns_updates() and ddns_removals().
ddns_updates() is called when a lease is granted, and ddns_removals()
is called when the lease expires or is released.
server/dhcpd.c:
Remove the previous DDNS update code, and add default code for the
ddns-hostname, ddns-domainname, ddns-ttl, and ddns-rev-domainname
server options.
- Use these spaces for the agent option space, fqdn option space and
nwip option space.
- Make encapsulator and decoder for fqdn option space.
- Support the agent option space the way all option spaces are supported
to the extent possibol, rather than special-casing it.
- Add an enumerator function for defined options in an option space.
- Support encapsulated options directly with a format string, rather than
as another special case.