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/bin/dhcp4/ctrl_dhcp4_srv.cc
Removed setting D2ClientCfg fetch function
src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy
ddns-send-updates
ddns-override-no-update
ddns-override-client-update
ddns-replace-client-name
ddns-generated-prefix
ddns-qualifying-suffix
- added to DHCP4,SHARED_NETWORK,SUBNET4
hostname-char-set
hostname-char-replacement
- added to SHARED_NETWORK,SUBNET4
src/bin/dhcp4/dhcp4_srv.cc
Dhcpv4Srv::processClientFqdnOption()
Dhcpv4Srv::processHostnameOption()
Dhcpv4Srv::assignLease()
Use scoped DdnsParams from context to make decisions, pass
into D2ClientMgr functions, and supply hostname sanitizer
src/bin/dhcp4/json_config_parser.cc
configureDhcp4Server()
- use SrvConfig::moveDdnsParams() to move dhcp-ddns parameters
- handle new "ddns-" globals
src/bin/dhcp4/tests/config_parser_unittest.cc
src/bin/dhcp4/tests/d2_unittest.cc
src/bin/dhcp4/tests/dhcp4_test_utils.cc
src/bin/dhcp4/tests/fqdn_unittest.cc
src/bin/dhcp4/tests/get_config_unittest.cc
Updated and new tests
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/dhcpsrv_messages.*
DHCPSRV_CFGMGR_DDNS_PARAMETER_IGNORED
DHCPSRV_CFGMGR_DDNS_PARAMETER_MOVED
src/lib/dhcpsrv/srv_config.*
SrvConfig::moveDdnsParams() - new method to move
parameters from dhcp-ddns to configured globals.
src/lib/dhcpsrv/tests/srv_config_unittest.cc
TEST_F(SrvConfigTest, moveDdnsParamsTest) - new test
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
src/lib/dhcpsrv/srv_config.*
SrvConfig::getDdnsParams() - new method to fetch
scoped DDNS parameters based on a given subnet
src/lib/dhcpsrv/tests/srv_config_unittest.cc
TEST_F(SrvConfigTest, getDdnsParamsTest4)
TEST_F(SrvConfigTest, getDdnsParamsTest6) - new tests
D2ClientMgr functions now get behavior parameters from a passed in
structure instead of D2ClientMgr::d2_client_config_.
src/lib/dhcpsrv/d2_client_cfg.h
struct DdnsParams - new structure to convey request specific
(i.e.scopable) Ddns params
src/lib/dhcpsrv/alloc_engine.cc
src/lib/dhcpsrv/alloc_engine.h
Added ddns_params_ to ClientContext4/6
src/lib/dhcpsrv/d2_client_mgr.*
D2ClientMgr::adjustFqdnFlags()
D2ClientMgr::adjustDomainName()
D2ClientMgr::analyzeFqdn()
D2ClientMgr::generateFqdn()
D2ClientMgr::qualifyName() - now accept DdnsParams instance as
parameter
src/lib/dhcpsrv/tests/d2_client_unittest.cc
Reworked tests to use DdnsParams