]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#260,!120] Added dhcp-queue-control parser defaults
authorThomas Markwalder <tmark@isc.org>
Mon, 12 Nov 2018 20:04:02 +0000 (15:04 -0500)
committerThomas Markwalder <tmark@isc.org>
Tue, 20 Nov 2018 18:23:49 +0000 (13:23 -0500)
    Added dhcp-queue-control defaults to SimpleParser<4/6>
    Revamped server config unit tests

12 files changed:
src/bin/dhcp4/ctrl_dhcp4_srv.cc
src/bin/dhcp4/dhcp4_messages.mes
src/bin/dhcp4/tests/config_parser_unittest.cc
src/bin/dhcp4/tests/get_config_unittest.cc
src/bin/dhcp6/ctrl_dhcp6_srv.cc
src/bin/dhcp6/dhcp6_messages.mes
src/bin/dhcp6/tests/config_parser_unittest.cc
src/bin/dhcp6/tests/get_config_unittest.cc
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser4.h
src/lib/dhcpsrv/parsers/simple_parser6.cc
src/lib/dhcpsrv/parsers/simple_parser6.h

index b78154bc5584a80b4dd95c58e63c7af975213eb1..3320feacb70f788e56149680ba75e6bb6557e477 100644 (file)
@@ -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());
         }
 
index 495ffa424f0bfd8162042b06a0cc9856a653940e..b1e504f5668c3e68cf61bdbbde4695aeec3dc7b9 100644 (file)
@@ -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
index 9188b5f8a38bc7b75ce8cba6344a7902aa04f4a8..93d1baa6e5636c53a0129f2333b38cc158248e8c 100644 (file)
@@ -24,6 +24,7 @@
 #include <dhcpsrv/cfg_expiration.h>
 #include <dhcpsrv/cfg_hosts.h>
 #include <dhcpsrv/cfg_subnets4.h>
+#include <dhcpsrv/parsers/simple_parser4.h>
 #include <dhcpsrv/testutils/config_result_check.h>
 #include <dhcpsrv/testutils/test_config_backend_dhcp4.h>
 #include <process/config_ctl_info.h>
@@ -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>(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));
         }
     }
 }
index 184b3038a2205c529132c5fa5492bdb57ff406b7..203bac50a9b4689122b004227bce61222a631d66 100644 (file)
@@ -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"
index 08e6e2f65d6088d75a254390f98534d5f80ca9d5..c9cf5a1ff9160c75ccbe384d7cbbface95f1adec 100644 (file)
@@ -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) {
index 0207c5c4c202bf3ef6c0e3771c02436ae7f56f8b..c7e3aab83e955b80cbe2b738d64105563cf7dade 100644 (file)
@@ -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.
index 12f6f2f240787d67d59adc40b26839f789650671..d7583ad4aeb387c207c753bf4da527a3d06d1d29 100644 (file)
@@ -21,6 +21,7 @@
 #include <dhcpsrv/cfgmgr.h>
 #include <dhcpsrv/cfg_expiration.h>
 #include <dhcpsrv/cfg_hosts.h>
+#include <dhcpsrv/parsers/simple_parser6.h>
 #include <dhcpsrv/subnet.h>
 #include <dhcpsrv/subnet_selector.h>
 #include <dhcpsrv/testutils/config_result_check.h>
@@ -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>(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));
         }
     }
 }
index e57ef3817ecc512125468549585a693ef070e553..2f2bf24fe276623e9e36a4c9e3f9dbb7d02cfb1a 100644 (file)
@@ -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"
index eb83fc539d139231f6ff7570f437c6379298adca..4f90553af39253592c1c8c4f42a8b837ae206885 100644 (file)
@@ -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<Element>(queue_control);
+    } else {
+        mutable_cfg = Element::createMap();
+        global->set("dhcp-queue-control", mutable_cfg);
+    }
+
+    cnt += setDefaults(mutable_cfg, DHCP_QUEUE_CONTROL4_DEFAULTS);
+
     return (cnt);
 }
 
index c4663bf63da3538e490845e68f14f3934e14447c..b3487a3be315d279e8ac46e8e4a4736efa693b0a 100644 (file)
@@ -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;
 };
 
index dbb2b463b1bb16b89421ad1474f19589dacb78f6..df07d0d4274060f1185c80ce32bdd9d14e61f983 100644 (file)
@@ -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<Element>(queue_control);
+    } else {
+        mutable_cfg = Element::createMap();
+        global->set("dhcp-queue-control", mutable_cfg);
+    }
+
+    cnt += setDefaults(mutable_cfg, DHCP_QUEUE_CONTROL6_DEFAULTS);
+
     return (cnt);
 }
 
index 252d71387903bcc2bb7193432c6f52acfc02b909..8c2173e51daf9454bbebde5d387cf6f66cfaf036 100644 (file)
@@ -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;
 };