src/bin/dhcp4/tests/get_config_unittest.cc
src/bin/dhcp6/tests/get_config_unittest.cc
regenerated tests
src/lib/dhcpsrv/parsers/simple_parser4.cc
Removed DDNS params from INHERIT_TO_SUBNET4 list
src/lib/dhcpsrv/parsers/simple_parser6.cc
Removed DDNS params from INHERIT_TO_SUBNET6 list
src/lib/dhcpsrv/alloc_engine.*
AllocEngine::ClientContext6::getDdnsParams()
AllocEngine::ClientContext4::getDdnsParams() - new
methods which return a DdnsParams instance scoped by
currently selected subnet
Replaced direct references to context::ddns_params_ with
new getter methods.
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser6.cc
Removed global defaults for hostname-char-set/replacement
Moving the parameters needs to be done before defaults are applied to the
config, so moveDdnsParams was changed to modify a mutable top level
element map instead of SrvConfig contents.
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser6.cc
Change ddns-send-updates default to true.
src/lib/dhcpsrv/srv_config.*
SrvConfig::getConfiguredGlobal() - new method to fetch a
global by name
SrvConfig::moveDdnsParams() - changed to accept/modify
a top-level Element map
src/lib/dhcpsrv/tests/srv_config_unittest.cc
updated unit tests accordingly
src/lib/dhcpsrv/d2_client_cfg.*
Added hostname-char-set and hostname-char-replacement to DdnsParms
DdnsParams::getHostnameSanitizer() - new function to return a sanitizer
src/lib/dhcpsrv/d2_client_mgr.h
D2ClientMgr::adjustDomainName() - now gets sanitizer from ddns_params
src/lib/dhcpsrv/network.*
src/lib/dhcpsrv/parsers/base_network_parser.cc
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser6.cc
Added hostname-char-set and hostname-char-replacement to networks and subnets
Add CfgConsistency defaults to application level parsing
src/lib/dhcpsrv/cfg_consistency.h
Changed constructor default mode to LEASE_CHECK_NONE
src/lib/dhcpsrv/lease_file_loader.h
LeaseFileLoader::load() - modified to create and use a
sanity_checker only if checking is enabled. This avoids
senselessly making the same decisions for every lease loaded.
src/lib/dhcpsrv/parsers/simple_parser4.*
src/lib/dhcpsrv/parsers/simple_parser6.*
Added sanity checks defaults so they can be properly set at
the application level.
src/lib/dhcpsrv/sanity_checker.h
SanityChecker::leaseCheckingEnabled() - new static function
to test if sanity checking for leases is enabled
src/lib/dhcpsrv/tests/sanity_checks_unittest.cc
src/lib/dhcpsrv/tests/srv_config_unittest.cc
updated tests for new constructor default value
doc/guide/dhcp4-srv.xml
Updated user guide with new parameters and details on rules
src/lib/cc/data.cc
DoubleElement::toJSON(std::ostream& ss) - modified to ensure whole number
values are suffixed with ".0"
src/lib/utils/doubles.h - new file
provides a function for equating doubles within a given tolerance
src/lib/cc/simple_parser.*
SimpleParser::getDouble() - new method for fetching real number
parameters as DoulbeElements
src/lib/dhcpsrv/network.*
Added members and support for new paramters to Network4:
calculate_tee_times_, t1_percent_, t2_percent_
src/lib/dhcpsrv/parsers/dhcp_parsers.cc
src/lib/dhcpsrv/parsers/simple_parser4.cc
Added support for new parameters to Subnet4ConfigParser
src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy
src/bin/dhcp4/json_config_parser.cc
Added parser support for calculate-tee-times, t1-percent, and t2-percent
src/bin/dhcp4/dhcp4_srv.*
Dhcpv4Srv::setTeeTimes(lease, subnet, resp) - new method for
determining T1 adn T2 values
v4 Parsing now allows renew/rebind timers to be unspecified,
and kea-dhcp4 logic now matchs ISC DHCP:
1. Send T2 only if it is specified and is less than lease lifetime
2. Send T1 only if it is specified and is less than either T2
if specified, or lease lifetime in the absence of T2
doc/guide/dhcp4-srv.xml
Updated discussion of rebind/renew-timers
src/bin/dhcp4/dhcp4_srv.cc
Dhcpv4Srv::assignLease() - modified to sanity check
T1 and T2
src/bin/dhcp4/tests/config_parser_unittest.cc
src/bin/dhcp4/tests/get_config_unittest.cc
src/bin/dhcp4/tests/simple_parser4_unittest.cc
src/bin/dhcp6/tests/get_config_unittest.cc
src/lib/dhcpsrv/tests/cfg_shared_networks4_unittest.cc
src/lib/dhcpsrv/tests/cfg_shared_networks6_unittest.cc
updated numerous tests
src/lib/dhcpsrv/network.cc
Network::toElement() - only outputs T1, T2, and
valid lifetime if they are specified
src/lib/dhcpsrv/network.h
Network() - inits t1_, t2_, and valid_ to unspecified
Triplet value
src/lib/dhcpsrv/parsers/dhcp_parsers.cc
Subnet4ConfigParser::initSubnet() - allow renew-timer and
rebind-timer to be optional
src/lib/dhcpsrv/parsers/simple_parser4.cc
SimpleDefaults SimpleParser4::GLOBAL4_DEFAULTS - removed
entries for renew-timer and rebind-timer
- many more parameters are now inherited from shared-network to subnet4
- parameters now passed as const reference
- it is no longer possible to specify echo-client-id on shared-network
level (because it's a global parameter)
- example config commented properly