From: Thomas Markwalder Date: Mon, 12 Nov 2018 20:04:02 +0000 (-0500) Subject: [#260,!120] Added dhcp-queue-control parser defaults X-Git-Tag: 204-move-models-base~4^2~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c276bb456b602bec76eedf705ff00240dd7a51dd;p=thirdparty%2Fkea.git [#260,!120] Added dhcp-queue-control parser defaults Added dhcp-queue-control defaults to SimpleParser<4/6> Revamped server config unit tests --- diff --git a/src/bin/dhcp4/ctrl_dhcp4_srv.cc b/src/bin/dhcp4/ctrl_dhcp4_srv.cc index b78154bc55..3320feacb7 100644 --- a/src/bin/dhcp4/ctrl_dhcp4_srv.cc +++ b/src/bin/dhcp4/ctrl_dhcp4_srv.cc @@ -639,7 +639,7 @@ ControlledDhcpv4Srv::processConfig(isc::data::ConstElementPtr config) { data::ConstElementPtr qc; qc = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); if (IfaceMgr::instance().configureDHCPPacketQueue(AF_INET, qc)) { - LOG_DEBUG(dhcp4_logger, DBG_DHCP4_BASIC, DHCP4_CONFIG_PACKET_QUEUE) + LOG_INFO(dhcp4_logger, DHCP4_CONFIG_PACKET_QUEUE) .arg(PacketQueueMgr4::instance().getPacketQueue()->getInfoStr()); } diff --git a/src/bin/dhcp4/dhcp4_messages.mes b/src/bin/dhcp4/dhcp4_messages.mes index 495ffa424f..b1e504f566 100644 --- a/src/bin/dhcp4/dhcp4_messages.mes +++ b/src/bin/dhcp4/dhcp4_messages.mes @@ -120,6 +120,11 @@ new configuration. It is output during server startup, and when an updated configuration is committed by the administrator. Additional information may be provided. +% DHCP4_CONFIG_PACKET_QUEUE DHCPv4 packet queue info after configuration: %1 +This informational message is emitted during DHCPv4 server configuration, +immediately after configuring the DHCPv4 packet queue. The information +shown depends upon the packet queue type selected. + % DHCP4_CONFIG_LOAD_FAIL configuration error using file: %1, reason: %2 This error message indicates that the DHCPv4 configuration has failed. If this is an initial configuration (during server's startup) the server diff --git a/src/bin/dhcp4/tests/config_parser_unittest.cc b/src/bin/dhcp4/tests/config_parser_unittest.cc index 9188b5f8a3..93d1baa6e5 100644 --- a/src/bin/dhcp4/tests/config_parser_unittest.cc +++ b/src/bin/dhcp4/tests/config_parser_unittest.cc @@ -24,6 +24,7 @@ #include #include #include +#include #include #include #include @@ -6520,12 +6521,12 @@ TEST_F(Dhcp4ParserTest, dhcpQueueControl) { }; // Let's check the default. It should be empty. - data::ConstElementPtr control; - control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); - ASSERT_FALSE(control); + data::ConstElementPtr staged_control; + staged_control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); + ASSERT_FALSE(staged_control); // Iterate over the valid scenarios and verify they succeed. - data::ConstElementPtr exp_elems; + data::ElementPtr exp_control; for (auto scenario : scenarios) { SCOPED_TRACE(scenario.description_); { @@ -6536,7 +6537,6 @@ TEST_F(Dhcp4ParserTest, dhcpQueueControl) { std::stringstream os; os << "{ " + genIfaceConfig(); if (!scenario.json_.empty()) { - os << ",\n \"dhcp-queue-control\": " << scenario.json_; } @@ -6546,20 +6546,28 @@ TEST_F(Dhcp4ParserTest, dhcpQueueControl) { configure(os.str(), CONTROL_RESULT_SUCCESS, ""); // Fetch the queue control info. - control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); + staged_control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); + + // Make sure the staged queue config exists. + ASSERT_TRUE(staged_control); - // If JSON does not contain queue control, - // the pointer stored in staging should be empty. + // Now build the expected queue control content. if (scenario.json_.empty()) { - ASSERT_FALSE(control); - continue; + exp_control = Element::createMap(); + } else { + try { + exp_control = boost::const_pointer_cast(Element::fromJSON(scenario.json_)); + } catch (const std::exception& ex) { + ADD_FAILURE() << " cannot convert expected JSON, test is broken:" + << ex.what(); + } } - // Make sure the staged config is correct. - ASSERT_TRUE(control); - ASSERT_NO_THROW(exp_elems = Element::fromJSON(scenario.json_)) - << " cannot convert expected JSON, test is broken"; - EXPECT_TRUE(control->equals(*exp_elems)); + // Add the defaults to expected queue control. + SimpleParser4::setDefaults(exp_control, SimpleParser4::DHCP_QUEUE_CONTROL4_DEFAULTS); + + // Verify that the staged queue control equals the expected queue control. + EXPECT_TRUE(staged_control->equals(*exp_control)); } } } diff --git a/src/bin/dhcp4/tests/get_config_unittest.cc b/src/bin/dhcp4/tests/get_config_unittest.cc index 184b3038a2..203bac50a9 100644 --- a/src/bin/dhcp4/tests/get_config_unittest.cc +++ b/src/bin/dhcp4/tests/get_config_unittest.cc @@ -2025,6 +2025,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2075,6 +2080,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2151,6 +2161,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2227,6 +2242,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2305,6 +2325,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2464,6 +2489,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2624,6 +2654,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2704,6 +2739,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2783,6 +2823,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -2863,6 +2908,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": false,\n" " \"expired-leases-processing\": {\n" @@ -2941,6 +2991,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3019,6 +3074,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3124,6 +3184,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3230,6 +3295,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3336,6 +3406,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3441,6 +3516,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3519,6 +3599,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3632,6 +3717,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3710,6 +3800,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3767,6 +3862,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3824,6 +3924,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3890,6 +3995,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -3947,6 +4057,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4004,6 +4119,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4061,6 +4181,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4118,6 +4243,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4213,6 +4343,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4308,6 +4443,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4413,6 +4553,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4499,6 +4644,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4630,6 +4780,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4734,6 +4889,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4857,6 +5017,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -4952,6 +5117,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5052,6 +5222,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5147,6 +5322,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5233,6 +5413,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5355,6 +5540,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5448,6 +5638,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5545,6 +5740,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5595,6 +5795,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5645,6 +5850,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"192.168.2.1\",\n" " \"server-port\": 777\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5723,6 +5933,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5801,6 +6016,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -5879,6 +6099,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6041,6 +6266,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6134,6 +6364,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6369,6 +6604,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6477,6 +6717,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6636,6 +6881,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6742,6 +6992,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6789,6 +7044,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6883,6 +7143,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -6930,6 +7195,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7008,6 +7278,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7086,6 +7361,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7164,6 +7444,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7242,6 +7527,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7346,6 +7636,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7424,6 +7719,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7502,6 +7802,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7581,6 +7886,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7664,6 +7974,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7747,6 +8062,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7850,6 +8170,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" @@ -7981,6 +8306,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring4\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"echo-client-id\": true,\n" " \"expired-leases-processing\": {\n" diff --git a/src/bin/dhcp6/ctrl_dhcp6_srv.cc b/src/bin/dhcp6/ctrl_dhcp6_srv.cc index 08e6e2f65d..c9cf5a1ff9 100644 --- a/src/bin/dhcp6/ctrl_dhcp6_srv.cc +++ b/src/bin/dhcp6/ctrl_dhcp6_srv.cc @@ -658,8 +658,8 @@ ControlledDhcpv6Srv::processConfig(isc::data::ConstElementPtr config) { data::ConstElementPtr qc; qc = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); if (IfaceMgr::instance().configureDHCPPacketQueue(AF_INET6, qc)) { - LOG_DEBUG(dhcp6_logger, DBG_DHCP6_BASIC, DHCP6_CONFIG_PACKET_QUEUE) - .arg(PacketQueueMgr6::instance().getPacketQueue()->getInfoStr()); + LOG_INFO(dhcp6_logger, DHCP6_CONFIG_PACKET_QUEUE) + .arg(PacketQueueMgr6::instance().getPacketQueue()->getInfoStr()); } } catch (const std::exception& ex) { diff --git a/src/bin/dhcp6/dhcp6_messages.mes b/src/bin/dhcp6/dhcp6_messages.mes index 0207c5c4c2..c7e3aab83e 100644 --- a/src/bin/dhcp6/dhcp6_messages.mes +++ b/src/bin/dhcp6/dhcp6_messages.mes @@ -91,9 +91,9 @@ will fail to start. If this is a dynamic reconfiguration attempt the server will continue to use an old configuration. % DHCP6_CONFIG_PACKET_QUEUE DHCPv6 packet queue info after configuration: %1 -This debug message is emitted during DHCPv6 server configuration, immediately -after configuring the DHCPv6 packet queue. The information shown depends -upon the packet queue type selected. +This informational message is emitted during DHCPv6 server configuration, +immediately after configuring the DHCPv6 packet queue. The information +shown depends upon the packet queue type selected. % DHCP6_CONFIG_RECEIVED received configuration: %1 A debug message listing the configuration received by the DHCPv6 server. diff --git a/src/bin/dhcp6/tests/config_parser_unittest.cc b/src/bin/dhcp6/tests/config_parser_unittest.cc index 12f6f2f240..d7583ad4ae 100644 --- a/src/bin/dhcp6/tests/config_parser_unittest.cc +++ b/src/bin/dhcp6/tests/config_parser_unittest.cc @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -7025,12 +7026,12 @@ TEST_F(Dhcp6ParserTest, dhcpQueueControl) { }; // Let's check the default. It should be empty. - data::ConstElementPtr control; - control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); - ASSERT_FALSE(control); + data::ConstElementPtr staged_control; + staged_control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); + ASSERT_FALSE(staged_control); // Iterate over the valid scenarios and verify they succeed. - data::ConstElementPtr exp_elems; + data::ElementPtr exp_control; for (auto scenario : scenarios) { SCOPED_TRACE(scenario.description_); { @@ -7041,7 +7042,6 @@ TEST_F(Dhcp6ParserTest, dhcpQueueControl) { std::stringstream os; os << "{ " + genIfaceConfig(); if (!scenario.json_.empty()) { - os << ",\n \"dhcp-queue-control\": " << scenario.json_; } @@ -7051,20 +7051,28 @@ TEST_F(Dhcp6ParserTest, dhcpQueueControl) { configure(os.str(), CONTROL_RESULT_SUCCESS, ""); // Fetch the queue control info. - control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); + staged_control = CfgMgr::instance().getStagingCfg()->getDHCPQueueControl(); + + // Make sure the staged queue config exists. + ASSERT_TRUE(staged_control); - // If JSON does not contain queue control, - // the pointer stored in staging should be empty. + // Now build the expected queue control content. if (scenario.json_.empty()) { - ASSERT_FALSE(control); - continue; + exp_control = Element::createMap(); + } else { + try { + exp_control = boost::const_pointer_cast(Element::fromJSON(scenario.json_)); + } catch (const std::exception& ex) { + ADD_FAILURE() << " cannot convert expected JSON, test is broken:" + << ex.what(); + } } - // Make sure the staged config is correct. - ASSERT_TRUE(control); - ASSERT_NO_THROW(exp_elems = Element::fromJSON(scenario.json_)) - << " cannot convert expected JSON, test is broken"; - EXPECT_TRUE(control->equals(*exp_elems)); + // Add the defaults to expected queue control. + SimpleParser6::setDefaults(exp_control, SimpleParser6::DHCP_QUEUE_CONTROL6_DEFAULTS); + + // Verify that the staged queue control equals the expected queue control. + EXPECT_TRUE(staged_control->equals(*exp_control)); } } } diff --git a/src/bin/dhcp6/tests/get_config_unittest.cc b/src/bin/dhcp6/tests/get_config_unittest.cc index e57ef3817e..2f2bf24fe2 100644 --- a/src/bin/dhcp6/tests/get_config_unittest.cc +++ b/src/bin/dhcp6/tests/get_config_unittest.cc @@ -78,8 +78,7 @@ const char* EXTRACTED_CONFIGS[] = { " \"preferred-lifetime\": 3000,\n" " \"rebind-timer\": 2000,\n" " \"renew-timer\": 1000,\n" -" \"subnet6\": [ ],\n" -" \"valid-lifetime\": 4000\n" +" \"subnet6\": [ ],\n" " \"valid-lifetime\": 4000\n" " }\n", // CONFIGURATION 1 "{\n" @@ -1880,6 +1879,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -1940,6 +1944,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2023,6 +2032,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2172,6 +2186,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2321,6 +2340,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2470,6 +2494,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2553,6 +2582,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2637,6 +2671,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2721,6 +2760,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2834,6 +2878,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -2917,6 +2966,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3001,6 +3055,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3087,6 +3146,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3188,6 +3252,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3272,6 +3341,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3338,6 +3412,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3404,6 +3483,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3479,6 +3563,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3545,6 +3634,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3611,6 +3705,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3711,6 +3810,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3811,6 +3915,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -3921,6 +4030,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4017,6 +4131,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4153,6 +4272,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4276,6 +4400,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4412,6 +4541,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4510,6 +4644,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4612,6 +4751,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4672,6 +4816,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4732,6 +4881,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4815,6 +4969,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -4898,6 +5057,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5050,6 +5214,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5148,6 +5317,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5254,6 +5428,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"3001::1\",\n" " \"server-port\": 777\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5337,6 +5516,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5539,6 +5723,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5645,6 +5834,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5705,6 +5899,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -5765,6 +5964,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6042,6 +6246,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6102,6 +6311,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6158,6 +6372,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6214,6 +6433,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6270,6 +6494,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 35,\n" @@ -6340,6 +6569,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6423,6 +6657,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6506,6 +6745,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6590,6 +6834,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6679,6 +6928,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6768,6 +7022,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6853,6 +7112,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -6939,6 +7203,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -7030,6 +7299,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -7131,6 +7405,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -7276,6 +7555,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" @@ -7461,6 +7745,11 @@ const char* UNPARSED_CONFIGS[] = { " \"server-ip\": \"127.0.0.1\",\n" " \"server-port\": 53001\n" " },\n" +" \"dhcp-queue-control\": {\n" +" \"capacity\": 500,\n" +" \"enable-queue\": false,\n" +" \"queue-type\": \"kea-ring6\"\n" +" },\n" " \"dhcp4o6-port\": 0,\n" " \"expired-leases-processing\": {\n" " \"flush-reclaimed-timer-wait-time\": 25,\n" diff --git a/src/lib/dhcpsrv/parsers/simple_parser4.cc b/src/lib/dhcpsrv/parsers/simple_parser4.cc index eb83fc539d..4f90553af3 100644 --- a/src/lib/dhcpsrv/parsers/simple_parser4.cc +++ b/src/lib/dhcpsrv/parsers/simple_parser4.cc @@ -135,6 +135,14 @@ const ParamsList SimpleParser4::INHERIT_TO_SUBNET4 = { "valid-lifetime" }; +/// @brief This table defines default values for dhcp-queue-control in DHCPv4. +const SimpleDefaults SimpleParser4::DHCP_QUEUE_CONTROL4_DEFAULTS = { + { "enable-queue", Element::boolean, "false"}, + { "queue-type", Element::string, "kea-ring4"}, + { "capacity", Element::integer, "500"} +}; + + /// @} /// --------------------------------------------------------------------------- @@ -188,6 +196,19 @@ size_t SimpleParser4::setAllDefaults(isc::data::ElementPtr global) { } } + // Set the defaults for dhcp-queue-control. If the element isn't + // there we'll add it. + ConstElementPtr queue_control = global->get("dhcp-queue-control"); + ElementPtr mutable_cfg; + if (queue_control) { + mutable_cfg = boost::const_pointer_cast(queue_control); + } else { + mutable_cfg = Element::createMap(); + global->set("dhcp-queue-control", mutable_cfg); + } + + cnt += setDefaults(mutable_cfg, DHCP_QUEUE_CONTROL4_DEFAULTS); + return (cnt); } diff --git a/src/lib/dhcpsrv/parsers/simple_parser4.h b/src/lib/dhcpsrv/parsers/simple_parser4.h index c4663bf63d..b3487a3be3 100644 --- a/src/lib/dhcpsrv/parsers/simple_parser4.h +++ b/src/lib/dhcpsrv/parsers/simple_parser4.h @@ -44,6 +44,7 @@ public: static const isc::data::SimpleDefaults SHARED_SUBNET4_DEFAULTS; static const isc::data::SimpleDefaults SHARED_NETWORK4_DEFAULTS; static const isc::data::SimpleDefaults IFACE4_DEFAULTS; + static const isc::data::SimpleDefaults DHCP_QUEUE_CONTROL4_DEFAULTS; static const isc::data::ParamsList INHERIT_TO_SUBNET4; }; diff --git a/src/lib/dhcpsrv/parsers/simple_parser6.cc b/src/lib/dhcpsrv/parsers/simple_parser6.cc index dbb2b463b1..df07d0d427 100644 --- a/src/lib/dhcpsrv/parsers/simple_parser6.cc +++ b/src/lib/dhcpsrv/parsers/simple_parser6.cc @@ -116,6 +116,15 @@ const ParamsList SimpleParser6::INHERIT_TO_SUBNET6 = { "reservation-mode", "valid-lifetime" }; + +/// @brief This table defines default values for dhcp-queue-control in DHCPv4. +const SimpleDefaults SimpleParser6::DHCP_QUEUE_CONTROL6_DEFAULTS = { + { "enable-queue", Element::boolean, "false"}, + { "queue-type", Element::string, "kea-ring6"}, + { "capacity", Element::integer, "500"} +}; + + /// @} /// --------------------------------------------------------------------------- @@ -171,6 +180,19 @@ size_t SimpleParser6::setAllDefaults(isc::data::ElementPtr global) { } } + // Set the defaults for dhcp-queue-control. If the element isn't there + // we'll add it. + ConstElementPtr queue_control = global->get("dhcp-queue-control"); + ElementPtr mutable_cfg; + if (queue_control) { + mutable_cfg = boost::const_pointer_cast(queue_control); + } else { + mutable_cfg = Element::createMap(); + global->set("dhcp-queue-control", mutable_cfg); + } + + cnt += setDefaults(mutable_cfg, DHCP_QUEUE_CONTROL6_DEFAULTS); + return (cnt); } diff --git a/src/lib/dhcpsrv/parsers/simple_parser6.h b/src/lib/dhcpsrv/parsers/simple_parser6.h index 252d713879..8c2173e51d 100644 --- a/src/lib/dhcpsrv/parsers/simple_parser6.h +++ b/src/lib/dhcpsrv/parsers/simple_parser6.h @@ -45,6 +45,7 @@ public: static const isc::data::SimpleDefaults SHARED_SUBNET6_DEFAULTS; static const isc::data::SimpleDefaults SHARED_NETWORK6_DEFAULTS; static const isc::data::SimpleDefaults IFACE6_DEFAULTS; + static const isc::data::SimpleDefaults DHCP_QUEUE_CONTROL6_DEFAULTS; static const isc::data::ParamsList INHERIT_TO_SUBNET6; };