]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#3659] Fixed unit tests
authorThomas Markwalder <tmark@isc.org>
Mon, 21 Apr 2025 12:26:23 +0000 (08:26 -0400)
committerThomas Markwalder <tmark@isc.org>
Tue, 3 Jun 2025 11:27:32 +0000 (11:27 +0000)
modified:   src/bin/dhcp4/tests/get_config_unittest.cc
modified:   src/bin/dhcp4/tests/http_control_socket_unittest.cc
modified:   src/bin/dhcp6/tests/get_config_unittest.cc
modified:   src/bin/dhcp6/tests/hooks_unittest.cc
modified:   src/bin/dhcp6/tests/http_control_socket_unittest.cc

src/bin/dhcp4/tests/get_config_unittest.cc
src/bin/dhcp4/tests/http_control_socket_unittest.cc
src/bin/dhcp6/tests/get_config_unittest.cc
src/bin/dhcp6/tests/hooks_unittest.cc
src/bin/dhcp6/tests/http_control_socket_unittest.cc

index 6de2ed5fb415def94860211aa5c731daebb2e2b3..f93a1cf290daeb922c559d8c56dac9ce18b7b736 100644 (file)
@@ -2767,6 +2767,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -2847,6 +2848,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -2879,6 +2881,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -2959,6 +2962,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -2991,6 +2995,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3076,6 +3081,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3159,6 +3165,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 5000,\n"
@@ -3192,6 +3199,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3273,6 +3281,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3301,6 +3310,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 34,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3329,6 +3339,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 100,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3357,6 +3368,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1024,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3390,6 +3402,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3471,6 +3484,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3499,6 +3513,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3527,6 +3542,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 3,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3555,6 +3571,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 4,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3588,6 +3605,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"bar\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3669,6 +3687,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3702,6 +3721,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3784,6 +3804,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
 "                \"boot-file-name\": \"bar\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3819,6 +3840,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"nofile\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3901,6 +3923,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
 "                \"boot-file-name\": \"bootfile.efi\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3936,6 +3959,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4017,6 +4041,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4050,6 +4075,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4131,6 +4157,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4164,6 +4191,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"compatibility\": {\n"
 "            \"exclude-first-last-24\": true,\n"
@@ -4251,6 +4279,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4284,6 +4313,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4365,6 +4395,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"match-client-id\": true,\n"
@@ -4394,6 +4425,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"match-client-id\": false,\n"
@@ -4428,6 +4460,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4509,6 +4542,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"match-client-id\": false,\n"
@@ -4538,6 +4572,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4571,6 +4606,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4653,6 +4689,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
 "                \"authoritative\": true,\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4682,6 +4719,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
 "                \"authoritative\": false,\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4715,6 +4753,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": true,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4797,6 +4836,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
 "                \"authoritative\": false,\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4825,6 +4865,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -4858,6 +4899,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4941,6 +4983,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 5,\n"
@@ -4974,6 +5017,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5055,6 +5099,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"interface\": \"eth0\",\n"
@@ -5089,6 +5134,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5170,6 +5216,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -5202,6 +5249,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -5239,6 +5287,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5320,6 +5369,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -5353,6 +5403,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5446,6 +5497,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5539,6 +5591,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5641,6 +5694,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5734,6 +5788,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5827,6 +5882,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5920,6 +5976,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6013,6 +6070,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6113,6 +6171,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -6146,6 +6205,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6227,6 +6287,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -6279,6 +6340,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6389,6 +6451,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -6422,6 +6485,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6545,6 +6609,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6682,6 +6747,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 3000,\n"
@@ -6715,6 +6781,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6806,6 +6873,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -6858,6 +6926,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6939,6 +7008,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -6977,6 +7047,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -7020,6 +7091,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7101,6 +7173,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -7153,6 +7226,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7234,6 +7308,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -7291,6 +7366,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7391,6 +7467,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -7424,6 +7501,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7547,6 +7625,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7675,6 +7754,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 3000,\n"
@@ -7708,6 +7788,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7806,6 +7887,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -7839,6 +7921,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7940,6 +8023,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -7973,6 +8057,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8058,6 +8143,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8143,6 +8229,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8224,6 +8311,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4,\n"
@@ -8257,6 +8345,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8338,6 +8427,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4,\n"
@@ -8371,6 +8461,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8452,6 +8543,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"client-classes\": [ \"alpha\" ],\n"
 "                \"id\": 1,\n"
@@ -8481,6 +8573,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"client-classes\": [ \"beta\" ],\n"
 "                \"id\": 2,\n"
@@ -8510,6 +8603,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"client-classes\": [ \"gamma\" ],\n"
 "                \"id\": 3,\n"
@@ -8539,6 +8633,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 4,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -8572,6 +8667,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8653,6 +8749,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -8701,6 +8798,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8782,6 +8880,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -8815,6 +8914,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8896,6 +8996,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 123,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -8924,6 +9025,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 234,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9011,6 +9113,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 542,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9094,6 +9197,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9185,6 +9289,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 234,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9239,6 +9344,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9320,6 +9426,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9351,6 +9458,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9382,6 +9490,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 3,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9412,6 +9521,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 4,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9442,6 +9552,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 5,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9470,6 +9581,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 6,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9501,6 +9613,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 7,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9537,6 +9650,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9618,6 +9732,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9649,6 +9764,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -9682,6 +9798,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9765,6 +9882,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9848,6 +9966,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9931,6 +10050,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10014,6 +10134,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10095,6 +10216,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -10128,6 +10250,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10209,6 +10332,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"2001:db8::123/45\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -10242,6 +10366,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10323,6 +10448,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -10356,6 +10482,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10437,6 +10564,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"2001:db8::543/21\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -10470,6 +10598,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10551,6 +10680,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"vlan123\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -10584,6 +10714,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -10691,6 +10822,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -10724,6 +10856,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -10824,6 +10957,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 7200,\n"
@@ -10855,6 +10989,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -10957,6 +11092,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 7200,\n"
@@ -10988,6 +11124,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11069,6 +11206,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -11102,6 +11240,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11183,6 +11322,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -11217,6 +11357,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11298,6 +11439,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -11336,6 +11478,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11417,6 +11560,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -11455,6 +11599,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11555,6 +11700,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -11734,6 +11880,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"max-valid-lifetime\": 7200,\n"
 "                \"min-valid-lifetime\": 7200,\n"
@@ -11749,6 +11896,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"id\": 100,\n"
 "                        \"max-valid-lifetime\": 7200,\n"
@@ -11828,6 +11976,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11968,6 +12117,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 123,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -11996,6 +12146,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 542,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12029,6 +12180,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12100,6 +12252,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"max-valid-lifetime\": 4000,\n"
 "                \"min-valid-lifetime\": 4000,\n"
@@ -12115,6 +12268,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"id\": 100,\n"
 "                        \"max-valid-lifetime\": 4000,\n"
@@ -12141,6 +12295,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"id\": 200,\n"
 "                        \"max-valid-lifetime\": 4000,\n"
@@ -12178,6 +12333,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 300,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12209,6 +12365,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12290,6 +12447,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12318,6 +12476,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12351,6 +12510,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12432,6 +12592,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12460,6 +12621,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 2,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12493,6 +12655,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12578,6 +12741,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12661,6 +12825,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12744,6 +12909,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"no-check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12825,6 +12991,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "                \"id\": 1,\n"
@@ -12854,6 +13021,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-conflict-resolution-mode\": \"check-exists-with-dhcid\",\n"
 "                \"id\": 2,\n"
@@ -12883,6 +13051,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-conflict-resolution-mode\": \"no-check-without-dhcid\",\n"
 "                \"id\": 3,\n"
@@ -12912,6 +13081,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-conflict-resolution-mode\": \"no-check-with-dhcid\",\n"
 "                \"id\": 4,\n"
@@ -12941,6 +13111,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 5,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -12974,6 +13145,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -13079,6 +13251,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"max-valid-lifetime\": 4000,\n"
 "                \"min-valid-lifetime\": 4000,\n"
@@ -13107,6 +13280,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"id\": 1,\n"
 "                        \"max-valid-lifetime\": 4000,\n"
@@ -13193,6 +13367,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13289,6 +13464,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13362,6 +13538,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"evaluate-additional-classes\": [ \"one\" ],\n"
 "                \"max-valid-lifetime\": 400,\n"
@@ -13380,6 +13557,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"evaluate-additional-classes\": [ \"two\" ],\n"
 "                        \"id\": 1,\n"
@@ -13425,6 +13603,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -13521,6 +13700,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13594,6 +13774,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"client-classes\": [ \"one\" ],\n"
 "                \"max-valid-lifetime\": 400,\n"
@@ -13612,6 +13793,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"client-classes\": [ \"two\" ],\n"
 "                        \"id\": 1,\n"
@@ -13657,6 +13839,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13729,6 +13912,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-ttl-percent\": 0.5,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -13745,6 +13929,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"ddns-ttl-percent\": 0.25,\n"
 "                        \"id\": 1,\n"
@@ -13782,6 +13967,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13854,6 +14040,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-ttl\": 500,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -13870,6 +14057,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"ddns-ttl\": 250,\n"
 "                        \"id\": 1,\n"
@@ -13907,6 +14095,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13979,6 +14168,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-ttl-min\": 500,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -13995,6 +14185,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"ddns-ttl-min\": 250,\n"
 "                        \"id\": 1,\n"
@@ -14032,6 +14223,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -14104,6 +14296,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"ddns-ttl-max\": 500,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -14120,6 +14313,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                        \"4o6-interface-id\": \"\",\n"
 "                        \"4o6-subnet\": \"\",\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"ddns-ttl-max\": 250,\n"
 "                        \"id\": 1,\n"
@@ -14157,6 +14351,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"allocator\": \"iterative\",\n"
 "        \"authoritative\": false,\n"
 "        \"boot-file-name\": \"\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": false,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -14236,6 +14431,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"4o6-interface-id\": \"\",\n"
 "                \"4o6-subnet\": \"\",\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": false,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -14496,7 +14692,7 @@ TEST_P(Dhcp4GetConfigTest, run) {
 
     // emit unparsed header if wanted
     if ((config_counter == 0) && generate_action) {
-        std::cerr << "///put this after const char* UNPARSED_CONFIGS[] = {\n";
+        std::cerr << "/// put this after const char* UNPARSED_CONFIGS[] = {\n";
     }
 
     // get the extracted configuration
index 88c970e47f275b4ee0636968cf8f4e05ca7c2fd8..8c3fb1c2d2fccd353b92ffa9f2c3e1a66aa1ef4f 100644 (file)
@@ -1101,7 +1101,7 @@ TEST_F(HttpCtrlChannelDhcpv4Test, configSet) {
     // Send the config-set command
     std::string response;
     sendHttpCommand(os.str(), response);
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"F6137301FF10D81585E041FD5FD8E91347ACADDE64F92ED03432FB100874DE02\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"CEA228E014102D623F40E6E9C68EC166A6021A81E220A15276F8C87F68866FDF\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -1165,7 +1165,7 @@ TEST_F(HttpCtrlChannelDhcpv4Test, configSet) {
     EXPECT_FALSE(HttpCommandMgr::instance().getHttpListener());
 
     // With no command channel, should still receive the response.
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"04D35DF3CE1A558C6CCA9EA48B0F355C392CA9071B08E90E80A34F33C5939507\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"20B7D29A883976112AF6EEC12D5EEFDCD872AB207AA321E3C38CA4ACBE442FFF\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was not lost
@@ -1350,7 +1350,7 @@ TEST_F(HttpsCtrlChannelDhcpv4Test, configSet) {
     EXPECT_FALSE(HttpCommandMgr::instance().getHttpListener());
 
     // With no command channel, should still receive the response.
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"04D35DF3CE1A558C6CCA9EA48B0F355C392CA9071B08E90E80A34F33C5939507\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"20B7D29A883976112AF6EEC12D5EEFDCD872AB207AA321E3C38CA4ACBE442FFF\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was not lost
@@ -1507,7 +1507,7 @@ TEST_F(HttpCtrlChannelDhcpv4Test, configTest) {
     std::string response;
     sendHttpCommand(os.str(), response);
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"16940B601E652CAAC99B643AB6DF18D3FE6216DD22F535EE0676FB28A5ED40C9\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"A8315C1349C3EF19DBCC19577818FB70174133FA7093DBD8FAF9B62A0D4423C8\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -2537,7 +2537,7 @@ BaseCtrlChannelDhcpv4Test::testConfigReloadValid() {
     // This command should reload test8.json config.
     sendHttpCommand("{ \"command\": \"config-reload\" }", response);
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"5309678B9BC94F19D3A35D8BF7AC5E91B1C4FCAE86AE5B31FC85DE79DFFDCA2C\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"919EAD559EE03E96A057CCABB5B6EA23FF08C5D4F3D8A6BA11A53C626D5521DA\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -2617,7 +2617,7 @@ BaseCtrlChannelDhcpv4Test::testConfigReloadDetectInterfaces() {
     // This command should reload test8.json config.
     sendHttpCommand("{ \"command\": \"config-reload\" }", response);
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"53FF817F06103B24149E83F3A36993ADF641A478F11930A4670D36BACC8E1DE1\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"2E74C5444A48F5D9E6BDAB410DC5C257B7BE6F80CFCF2A33EE84EC1569848166\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -3594,7 +3594,7 @@ TEST_F(HttpCtrlChannelDhcpv4Test, noListenerChange) {
     // Send the config-set command
     std::string response;
     sendHttpCommand(os.str(), response);
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"F6137301FF10D81585E041FD5FD8E91347ACADDE64F92ED03432FB100874DE02\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"CEA228E014102D623F40E6E9C68EC166A6021A81E220A15276F8C87F68866FDF\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -3618,7 +3618,7 @@ TEST_F(HttpCtrlChannelDhcpv4Test, noListenerChange) {
     EXPECT_EQ(listener, HttpCommandMgr::instance().getHttpListener().get());
     ASSERT_FALSE(HttpCommandMgr::instance().getHttpListener()->getTlsContext());
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"F6137301FF10D81585E041FD5FD8E91347ACADDE64F92ED03432FB100874DE02\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"CEA228E014102D623F40E6E9C68EC166A6021A81E220A15276F8C87F68866FDF\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was not lost
@@ -3859,7 +3859,7 @@ TEST_F(HttpCtrlChannelDhcpv4Test, handleHttpToHttpsSwitch) {
     // Send the config-set command
     std::string response;
     sendHttpCommand(os.str(), response);
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"F6137301FF10D81585E041FD5FD8E91347ACADDE64F92ED03432FB100874DE02\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"CEA228E014102D623F40E6E9C68EC166A6021A81E220A15276F8C87F68866FDF\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
index 6bfd64465ad35060aba5cd13819bbe8d2b3f5011..b502e210ecb60d58f9e67429c5fc0e0e184eb405 100644 (file)
@@ -2781,6 +2781,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 0
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -2864,6 +2865,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -2897,6 +2899,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 1
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -2980,6 +2983,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -3013,6 +3017,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 2
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3103,6 +3108,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 3
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3192,6 +3198,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 4000,\n"
@@ -3229,6 +3236,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 4
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3314,6 +3322,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3345,6 +3354,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 34,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3376,6 +3386,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 100,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3407,6 +3418,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1024,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3444,6 +3456,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 5
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3529,6 +3542,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3560,6 +3574,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3591,6 +3606,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 3,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3622,6 +3638,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 4,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3659,6 +3676,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 6
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"compatibility\": {\n"
 "            \"lenient-option-parsing\": true\n"
@@ -3747,6 +3765,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -3784,6 +3803,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 7
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3873,6 +3893,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 4,\n"
@@ -3910,6 +3931,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 8
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -3995,6 +4017,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"interface\": \"eth0\",\n"
@@ -4033,6 +4056,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 9
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4118,6 +4142,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"interface-id\": \"foobar\",\n"
@@ -4156,6 +4181,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 10
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4241,6 +4267,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4276,6 +4303,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4317,6 +4345,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 11
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4402,6 +4431,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4439,6 +4469,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 12
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4524,6 +4555,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4563,6 +4595,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 13
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4648,6 +4681,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4689,6 +4723,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 14
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4774,6 +4809,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4830,6 +4866,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 15
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -4915,6 +4952,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -4954,6 +4992,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 16
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5051,6 +5090,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 17
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5148,6 +5188,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 18
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5254,6 +5295,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 19
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5351,6 +5393,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 20
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5448,6 +5491,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 21
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5545,6 +5589,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 22
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5642,6 +5687,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 23
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5746,6 +5792,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -5783,6 +5830,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 24
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -5868,6 +5916,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -5924,6 +5973,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 25
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6038,6 +6088,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -6075,6 +6126,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 26
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6203,6 +6255,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 27
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6344,6 +6397,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -6381,6 +6435,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 28
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6476,6 +6531,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -6532,6 +6588,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 29
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6617,6 +6674,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -6658,6 +6716,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -6705,6 +6764,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 30
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6790,6 +6850,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -6846,6 +6907,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 31
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -6931,6 +6993,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -7025,6 +7088,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 32
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7127,6 +7191,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -7164,6 +7229,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 33
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7269,6 +7335,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -7306,6 +7373,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 34
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7396,6 +7464,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 35
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7486,6 +7555,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 36
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7571,6 +7641,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -7608,6 +7679,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 37
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7693,6 +7765,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -7730,6 +7803,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 38
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -7815,6 +7889,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"client-classes\": [ \"alpha\" ],\n"
 "                \"id\": 1,\n"
@@ -7847,6 +7922,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"client-classes\": [ \"beta\" ],\n"
 "                \"id\": 2,\n"
@@ -7879,6 +7955,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"client-classes\": [ \"gamma\" ],\n"
 "                \"id\": 3,\n"
@@ -7911,6 +7988,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 4,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -7948,6 +8026,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 39
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8033,6 +8112,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8085,6 +8165,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 40
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8170,6 +8251,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8230,6 +8312,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 41
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8315,6 +8398,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8352,6 +8436,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 42
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8437,6 +8522,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 123,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8468,6 +8554,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 234,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8549,6 +8636,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 542,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8617,6 +8705,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 43
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8712,6 +8801,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 234,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -8763,6 +8853,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 44
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8853,6 +8944,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 45
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -8943,6 +9035,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 46
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9028,6 +9121,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9062,6 +9156,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9096,6 +9191,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 3,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9129,6 +9225,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 4,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9162,6 +9259,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 5,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9193,6 +9291,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 6,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9227,6 +9326,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 7,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9267,6 +9367,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 47
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9352,6 +9453,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9386,6 +9488,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9423,6 +9526,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 48
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9510,6 +9614,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 49
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9600,6 +9705,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 50
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9687,6 +9793,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 51
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9774,6 +9881,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 52
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -9861,6 +9969,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 53
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -9960,6 +10069,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -9997,6 +10107,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 54
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -10092,6 +10203,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 7200,\n"
@@ -10124,6 +10236,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 55
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -10221,6 +10334,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 7200,\n"
@@ -10253,6 +10367,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 56
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10338,6 +10453,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -10375,6 +10491,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 57
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10460,6 +10577,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -10498,6 +10616,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 58
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10583,6 +10702,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -10626,6 +10746,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 59
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10711,6 +10832,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -10754,6 +10876,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 60
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10839,6 +10962,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -10882,6 +11006,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 61
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -10967,6 +11092,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -11006,6 +11132,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 62
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11091,6 +11218,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -11131,6 +11259,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 63
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11216,6 +11345,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -11261,6 +11391,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 64
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11366,6 +11497,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 65
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -11543,6 +11675,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"max-valid-lifetime\": 7200,\n"
 "                \"min-valid-lifetime\": 7200,\n"
@@ -11557,6 +11690,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"id\": 100,\n"
 "                        \"max-valid-lifetime\": 7200,\n"
@@ -11644,6 +11778,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 66
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11785,6 +11920,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 123,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -11816,6 +11952,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 234,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -11842,6 +11979,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 542,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -11874,6 +12012,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 67
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -11953,6 +12092,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -11970,6 +12110,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": false,\n"
 "                        \"id\": 100,\n"
 "                        \"max-preferred-lifetime\": 3000,\n"
@@ -11998,6 +12139,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                    },\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"id\": 200,\n"
 "                        \"max-preferred-lifetime\": 3000,\n"
@@ -12036,6 +12178,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 300,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -12071,6 +12214,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 68
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12156,6 +12300,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -12187,6 +12332,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -12224,6 +12370,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 69
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12309,6 +12456,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -12340,6 +12488,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 2,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
@@ -12377,6 +12526,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 70
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12467,6 +12617,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 71
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12554,6 +12705,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 72
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12641,6 +12793,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 73
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -12739,6 +12892,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 7200,\n"
@@ -12771,6 +12925,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 74
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -12871,6 +13026,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 7200,\n"
@@ -12903,6 +13059,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 75
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"no-check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -12987,6 +13144,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "                \"id\": 1,\n"
@@ -13016,6 +13174,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-conflict-resolution-mode\": \"check-exists-with-dhcid\",\n"
 "                \"id\": 2,\n"
@@ -13045,6 +13204,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-conflict-resolution-mode\": \"no-check-without-dhcid\",\n"
 "                \"id\": 3,\n"
@@ -13074,6 +13234,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-conflict-resolution-mode\": \"no-check-with-dhcid\",\n"
 "                \"id\": 4,\n"
@@ -13103,6 +13264,7 @@ const char* UNPARSED_CONFIGS[] = {
 "            },\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 5,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -13137,6 +13299,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 76
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -13246,6 +13409,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"max-preferred-lifetime\": 3000,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -13276,6 +13440,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"id\": 1,\n"
 "                        \"max-preferred-lifetime\": 3000,\n"
@@ -13381,6 +13546,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 77
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13481,6 +13647,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 78
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13561,6 +13728,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"evaluate-additional-classes\": [ \"one\" ],\n"
 "                \"max-valid-lifetime\": 400,\n"
@@ -13578,6 +13746,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"evaluate-additional-classes\": [ \"two\" ],\n"
 "                        \"id\": 1,\n"
@@ -13630,6 +13799,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 79
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"client-classes\": [\n"
 "            {\n"
@@ -13726,6 +13896,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 80
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13806,6 +13977,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"client-classes\": [ \"one\" ],\n"
 "                \"max-valid-lifetime\": 400,\n"
@@ -13823,6 +13995,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"client-classes\": [ \"two\" ],\n"
 "                        \"id\": 1,\n"
@@ -13875,6 +14048,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 81
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -13954,6 +14128,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-ttl-percent\": 0.5,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -13969,6 +14144,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"ddns-ttl-percent\": 0.25,\n"
 "                        \"id\": 1,\n"
@@ -14005,6 +14181,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 82
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -14084,6 +14261,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-ttl\": 500,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -14099,6 +14277,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"ddns-ttl\": 250,\n"
 "                        \"id\": 1,\n"
@@ -14135,6 +14314,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 83
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -14214,6 +14394,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-ttl-min\": 500,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -14229,6 +14410,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"ddns-ttl-min\": 250,\n"
 "                        \"id\": 1,\n"
@@ -14265,6 +14447,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 84
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -14344,6 +14527,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"shared-networks\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"ddns-ttl-max\": 500,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -14359,6 +14543,7 @@ const char* UNPARSED_CONFIGS[] = {
 "                \"subnet6\": [\n"
 "                    {\n"
 "                        \"allocator\": \"iterative\",\n"
+"                        \"cache-threshold\": 0.25,\n"
 "                        \"calculate-tee-times\": true,\n"
 "                        \"ddns-ttl-max\": 250,\n"
 "                        \"id\": 1,\n"
@@ -14395,6 +14580,7 @@ const char* UNPARSED_CONFIGS[] = {
     // CONFIGURATION 85
 "{\n"
 "        \"allocator\": \"iterative\",\n"
+"        \"cache-threshold\": 0.25,\n"
 "        \"calculate-tee-times\": true,\n"
 "        \"ddns-conflict-resolution-mode\": \"check-with-dhcid\",\n"
 "        \"ddns-generated-prefix\": \"myhost\",\n"
@@ -14477,6 +14663,7 @@ const char* UNPARSED_CONFIGS[] = {
 "        \"subnet6\": [\n"
 "            {\n"
 "                \"allocator\": \"iterative\",\n"
+"                \"cache-threshold\": 0.25,\n"
 "                \"calculate-tee-times\": true,\n"
 "                \"id\": 1,\n"
 "                \"max-valid-lifetime\": 4000,\n"
@@ -14743,7 +14930,7 @@ TEST_P(Dhcp6GetConfigTest, run) {
 
     // emit unparsed header if wanted
     if ((config_counter == 0) && generate_action) {
-        std::cerr << "///put this after const char* UNPARSED_CONFIGS[] = {\n";
+        std::cerr << "/// put this after const char* UNPARSED_CONFIGS[] = {\n";
     }
 
     // get the extracted configuration
index ba25b5e1bc6c7c8eff46fe7fa69910c95bc1a163..327cb501b884d98dc0558aa33db1c7451713f3aa 100644 (file)
@@ -2270,6 +2270,7 @@ TEST_F(HooksDhcpv6SrvTest, leases6CommittedRequest) {
         "\"preferred-lifetime\": 3000,"
         "\"rebind-timer\": 2000, "
         "\"renew-timer\": 1000, "
+        "\"cache-threshold\": 0.0, "
         "\"subnet6\": [ { "
         "    \"id\": 1, "
         "    \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
@@ -2446,6 +2447,7 @@ TEST_F(HooksDhcpv6SrvTest, leases6CommittedRequestPrefix) {
         "\"preferred-lifetime\": 3000,"
         "\"rebind-timer\": 2000, "
         "\"renew-timer\": 1000, "
+        "\"cache-threshold\": 0.0, "
         "\"subnet6\": [ { "
         "    \"id\": 1, "
         "    \"pd-pools\": [ {"
@@ -2629,6 +2631,7 @@ TEST_F(HooksDhcpv6SrvTest, leases6CommittedRenew) {
         "\"preferred-lifetime\": 3000,"
         "\"rebind-timer\": 2000, "
         "\"renew-timer\": 1000, "
+        "\"cache-threshold\": 0.0, "
         "\"subnet6\": [ { "
         "    \"id\": 1, "
         "    \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
@@ -2802,6 +2805,7 @@ TEST_F(HooksDhcpv6SrvTest, leases6CommittedRenewPrefix) {
         "\"preferred-lifetime\": 3000,"
         "\"rebind-timer\": 2000, "
         "\"renew-timer\": 1000, "
+        "\"cache-threshold\": 0.0, "
         "\"subnet6\": [ { "
         "    \"id\": 1, "
         "    \"pd-pools\": [ {"
@@ -2982,6 +2986,7 @@ TEST_F(HooksDhcpv6SrvTest, leases6CommittedRebind) {
         "\"preferred-lifetime\": 3000,"
         "\"rebind-timer\": 2000, "
         "\"renew-timer\": 1000, "
+        "\"cache-threshold\": 0.0, "
         "\"subnet6\": [ { "
         "    \"id\": 1, "
         "    \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
@@ -3158,6 +3163,7 @@ TEST_F(HooksDhcpv6SrvTest, leases6CommittedRebindPrefix) {
         "\"preferred-lifetime\": 3000,"
         "\"rebind-timer\": 2000, "
         "\"renew-timer\": 1000, "
+        "\"cache-threshold\": 0.0, "
         "\"subnet6\": [ { "
         "    \"id\": 1, "
         "    \"pd-pools\": [ {"
index 31dc697dfda952e5f9c0289ac01d13202a96b981..8bf8994dd0f1870542794203d6dcf9693ac86c96 100644 (file)
@@ -1120,7 +1120,7 @@ TEST_F(HttpCtrlChannelDhcpv6Test, configSet) {
     // Send the config-set command
     std::string response;
     sendHttpCommand(os.str(), response);
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"BCE3D0CC68CBBB49C3F5967E3FFCB4E44E55CBFB53814761B12ADB5C7CD95C1F\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"7B1A2256CDB80F66DEBFC9C86D1210717A1F2DB45BEF532C30865FD50ECCDC3D\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -1184,7 +1184,7 @@ TEST_F(HttpCtrlChannelDhcpv6Test, configSet) {
     EXPECT_FALSE(HttpCommandMgr::instance().getHttpListener());
 
     // With no command channel, should still receive the response.
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"48035E8F9CC25FC1F6175B78CCC6B8A673CACBA9E956C0ED3079C478BF1F2D1A\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"05CE8F8C853EFA5C87A4C90E104133FBE534A0B9E08AC047600CC5F34C06A61B\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was not lost
@@ -1370,7 +1370,7 @@ TEST_F(HttpsCtrlChannelDhcpv6Test, configSet) {
     EXPECT_FALSE(HttpCommandMgr::instance().getHttpListener());
 
     // With no command channel, should still receive the response.
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"48035E8F9CC25FC1F6175B78CCC6B8A673CACBA9E956C0ED3079C478BF1F2D1A\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"05CE8F8C853EFA5C87A4C90E104133FBE534A0B9E08AC047600CC5F34C06A61B\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was not lost
@@ -1528,7 +1528,7 @@ TEST_F(HttpCtrlChannelDhcpv6Test, configTest) {
     std::string response;
     sendHttpCommand(os.str(), response);
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"DE129E7DD1C402721C83B74C5BBD7C330A0B705108A198CB868377031169BBC2\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"4DC395744F9024B3ABD67F88835CC0BCD7D772B39B679116B0503006329C6330\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -2535,7 +2535,7 @@ BaseCtrlChannelDhcpv6Test::testConfigReloadValid() {
     // This command should reload test8.json config.
     sendHttpCommand("{ \"command\": \"config-reload\" }", response);
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"2D97C398AFE8414A818D9F04C9ADB62D493861EDD3689015D081880D6A85A3C3\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"CBED4A3135FB363DFB30E71D09129BC9341B0A0A71BD3BED5F96D9AE4CF41652\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -2614,7 +2614,7 @@ BaseCtrlChannelDhcpv6Test::testConfigReloadDetectInterfaces() {
     // This command should reload test8.json config.
     sendHttpCommand("{ \"command\": \"config-reload\" }", response);
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"A3FB93A0D56418589F9368478403AA6164B94D907F3D7BA7FDF764AD58448611\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"FF82DF6BF9126943E5A3CFA7685A06A7E1181382D7AC0C5927916D752F94A54D\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -3592,7 +3592,7 @@ TEST_F(HttpCtrlChannelDhcpv6Test, noListenerChange) {
     // Send the config-set command
     std::string response;
     sendHttpCommand(os.str(), response);
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"BCE3D0CC68CBBB49C3F5967E3FFCB4E44E55CBFB53814761B12ADB5C7CD95C1F\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"7B1A2256CDB80F66DEBFC9C86D1210717A1F2DB45BEF532C30865FD50ECCDC3D\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.
@@ -3616,7 +3616,7 @@ TEST_F(HttpCtrlChannelDhcpv6Test, noListenerChange) {
     EXPECT_EQ(listener, HttpCommandMgr::instance().getHttpListener().get());
     ASSERT_FALSE(HttpCommandMgr::instance().getHttpListener()->getTlsContext());
 
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"BCE3D0CC68CBBB49C3F5967E3FFCB4E44E55CBFB53814761B12ADB5C7CD95C1F\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"7B1A2256CDB80F66DEBFC9C86D1210717A1F2DB45BEF532C30865FD50ECCDC3D\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was not lost
@@ -3859,7 +3859,7 @@ TEST_F(HttpCtrlChannelDhcpv6Test, handleHttpToHttpsSwitch) {
     // Send the config-set command
     std::string response;
     sendHttpCommand(os.str(), response);
-    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"BCE3D0CC68CBBB49C3F5967E3FFCB4E44E55CBFB53814761B12ADB5C7CD95C1F\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
+    EXPECT_EQ("[ { \"arguments\": { \"hash\": \"7B1A2256CDB80F66DEBFC9C86D1210717A1F2DB45BEF532C30865FD50ECCDC3D\" }, \"result\": 0, \"text\": \"Configuration successful.\" } ]",
               response);
 
     // Check that the config was indeed applied.