src/lib/exceptions/isc_assert.h
New file that defines isc_assert_throw()
src/lib/exceptions/Makefile.am
added isc_asssert.h
src/lib/exceptions/tests/exceptions_unittest.cc
TEST(IscThrowAssert, checkMessage) - new test
src/lib/dns/labelsequence.cc
src/lib/dns/name.cc
Replaced assert() calls with isc_throw_assert() calls
src/lib/dns/tests/name_unittest.cc
TEST_F(NameTest, unexpectedParseError) - new unit test
for hostname option content based on fuzz test failure
src/lib/dhcp_ddns/ncr_msg.cc
Removed unnecessary include of dns/name.h
src/bin/dhcp4/dhcp4_srv.cc
Dhcpv4Srv::processHostnameOption() - added try catch
around OptionDataTypeUtil::getLabelCount() call
src/bin/dhcp4/dhcp4_messages.*
added new log message DHCP4_CLIENT_HOSTNAME_MALFORMED
src/bin/dhcp4/tests/fqdn_unittest.cc
TEST_F(NameDhcpv4SrvTest, serverUpdateMalformedHostname) -
renamed test and augmented it to include the packet of death
produced by fuzz testing.
src/bin/dhcp4/dhcp4_srv.cc
Dhcpv4Srv::setTeeTimes() - added use of round()
src/bin/dhcp6/dhcp6_srv.cc
Dhcpv6Srv::setTeeTimes() - added use of round()
src/bin/dhcp6/tests/dhcp6_test_utils.cc
Dhcpv6SrvTest::checkIA_NA() - replaced used of
EXPECTED_EQ with logic to add a failure so callers
can ASSERT_NO_FATAL_FAILURE and pinpoint the invocation.
src/bin/dhcp6/tests/hooks_unittest.cc
Wrapped calls to checkIA_NA() with ASSERT_NO_FATAL_FAILURE
Updated expected T1 values to adjust for use of round().
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
src/bin/dhcp4/dhcp4_srv.cc
Dhcpv4Srv::processHostnameOption() - sanitizes client hostname
if configured to do so
src/bin/dhcp4/tests/fqdn_unittest.cc
TEST_F(NameDhcpv4SrvTest, sanitizeHostname) - new test to
verify hostname sanitizing works as expected
src/lib/dhcpsrv/d2_client_cfg.h
D2ClientConfig::getHostnameSanitizer() added missing getter
src/lib/dhcpsrv/tests/d2_client_unittest.cc
TEST(D2ClientConfigTest, constructorsAndAccessors) - updated to
verify hostname sanitizing stuff
src/lib/util/strutil.cc
fixed regex compilation issue
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
src/bin/dhcp4/dhcp4_srv.*
- dumpPackets() - new function that frees all cached and parked packets
- Dhcpv4Srv::~Dhcpv4Srv() - added call to dumpPackets() for cleanliness
src/bin/dhcp4/json_config_parser.cc
configureDhcp4Server() - added a call Dhcpv4Srv::dumpPackets()
src/bin/dhcp6/dhcp6_srv.*
- dumpPackets() - new function that frees all cached and parked packets
- Dhcpv6Srv::~Dhcpv6Srv() - added call to dumpPackets() for cleanliness
src/bin/dhcp6/json_config_parser.cc
configureDhcp6Server() - added a call Dhcpv6Srv::dumpPackets()
src/lib/hooks/hooks_manager.h
- clearParkingLots() - new convenience function for clearing
all parking lots
- clearParkingLotsInternal() - private impl of the above