From 9a7cd6e02736039ca62d16fdae1da427d4dbe69a Mon Sep 17 00:00:00 2001 From: Thomas Markwalder Date: Wed, 9 Jan 2019 11:14:01 -0500 Subject: [PATCH] [#365,!194] kea-dhcp4 can be configured to calculate T1 and T2 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 --- doc/guide/dhcp4-srv.xml | 84 +- src/bin/d2/d2_lexer.cc | 12 +- src/bin/dhcp4/dhcp4_lexer.cc | 2127 ++++----- src/bin/dhcp4/dhcp4_lexer.ll | 36 +- src/bin/dhcp4/dhcp4_parser.cc | 3800 ++++++++--------- src/bin/dhcp4/dhcp4_parser.h | 2400 +++++------ src/bin/dhcp4/dhcp4_parser.yy | 29 +- src/bin/dhcp4/dhcp4_srv.cc | 70 +- src/bin/dhcp4/dhcp4_srv.h | 29 +- src/bin/dhcp4/json_config_parser.cc | 7 +- src/bin/dhcp4/location.hh | 171 +- src/bin/dhcp4/position.hh | 192 +- src/bin/dhcp4/stack.hh | 166 +- src/bin/dhcp4/tests/config_parser_unittest.cc | 71 +- src/bin/dhcp4/tests/dhcp4_srv_unittest.cc | 143 +- src/lib/cc/data.cc | 15 +- src/lib/cc/simple_parser.cc | 22 +- src/lib/cc/simple_parser.h | 14 +- src/lib/cc/tests/data_unittests.cc | 17 +- src/lib/cc/tests/simple_parser_unittest.cc | 49 +- src/lib/dhcpsrv/network.cc | 10 +- src/lib/dhcpsrv/network.h | 54 +- src/lib/dhcpsrv/parsers/dhcp_parsers.cc | 32 +- src/lib/dhcpsrv/parsers/simple_parser4.cc | 12 +- .../tests/cfg_shared_networks4_unittest.cc | 10 +- .../dhcpsrv/tests/cfg_subnets4_unittest.cc | 125 +- .../tests/shared_network_parser_unittest.cc | 19 +- src/lib/util/Makefile.am | 2 + src/lib/util/doubles.h | 29 + src/lib/util/tests/Makefile.am | 1 + src/lib/util/tests/doubles_unittest.cc | 32 + 31 files changed, 5213 insertions(+), 4567 deletions(-) create mode 100644 src/lib/util/doubles.h create mode 100644 src/lib/util/tests/doubles_unittest.cc diff --git a/doc/guide/dhcp4-srv.xml b/doc/guide/dhcp4-srv.xml index 88b4ca6916..bad83fe09b 100644 --- a/doc/guide/dhcp4-srv.xml +++ b/doc/guide/dhcp4-srv.xml @@ -1,5 +1,5 @@