+1983. [bug] fdupont
+ Minimum and maximum values of lifetimes are no longer
+ skipped when the configuration is retrieved even when
+ they are the same as the default value.
+ (Gitlab #2222)
+
1982. [bug] andrei
The config for an HA peer now accepts an IPv6 address as a valid
value for the "url" entry.
-// Copyright (C) 2017-2021 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2017-2020 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
///@{
/// @brief extracted configurations
const char* EXTRACTED_CONFIGS[] = {
-/// put this after const char* EXTRACTED_CONFIGS[] = {
// CONFIGURATION 0
"{\n"
" \"interfaces-config\": {\n"
/// @brief unparsed configurations
const char* UNPARSED_CONFIGS[] = {
-///put this after const char* UNPARSED_CONFIGS[] = {
// CONFIGURATION 0
"{\n"
" \"authoritative\": false,\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 3,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 4,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 34,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 100,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1024,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"boot-file-name\": \"bar\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"next-server\": \"1.2.3.4\",\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" \"boot-file-name\": \"bootfile.efi\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"next-server\": \"1.2.3.4\",\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
" \"match-client-id\": true,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
" \"match-client-id\": false,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
" \"match-client-id\": false,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"authoritative\": true,\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"authoritative\": false,\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"authoritative\": false,\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 3000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 3000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4,\n"
+" \"min-valid-lifetime\": 4,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4,\n"
+" \"min-valid-lifetime\": 4,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
" \"client-class\": \"alpha\",\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
" \"client-class\": \"beta\",\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
" \"client-class\": \"gamma\",\n"
" \"id\": 3,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 4,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 123,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 234,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 542,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 234,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 3,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 4,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 5,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 6,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 7,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"2001:db8::123/45\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"2001:db8::543/21\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 7200,\n"
+" \"min-valid-lifetime\": 7200,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"shared-networks\": [\n"
" {\n"
" \"calculate-tee-times\": false,\n"
+" \"max-valid-lifetime\": 7200,\n"
+" \"min-valid-lifetime\": 7200,\n"
" \"name\": \"foo\",\n"
" \"option-data\": [ ],\n"
" \"relay\": {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 100,\n"
+" \"max-valid-lifetime\": 7200,\n"
+" \"min-valid-lifetime\": 7200,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 123,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 542,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"shared-networks\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"name\": \"foo\",\n"
" \"option-data\": [ ],\n"
" \"relay\": {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 100,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 200,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 300,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 1,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"4o6-subnet\": \"\",\n"
" \"calculate-tee-times\": false,\n"
" \"id\": 2,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pools\": [\n"
" {\n"
///@{
/// @brief extracted configurations
const char* EXTRACTED_CONFIGS[] = {
-/// put this after const char* EXTRACTED_CONFIGS[] = {
// CONFIGURATION 0
"{\n"
" \"interfaces-config\": {\n"
/// @brief unparsed configurations
const char* UNPARSED_CONFIGS[] = {
-///put this after const char* UNPARSED_CONFIGS[] = {
// CONFIGURATION 0
"{\n"
" \"calculate-tee-times\": true,\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 3,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 4,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 34,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 100,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1024,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 3,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 4,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
" \"interface\": \"eth0\",\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
" \"interface-id\": \"foobar\",\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [\n"
" {\n"
" \"always-send\": false,\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" \"calculate-tee-times\": true,\n"
" \"client-class\": \"alpha\",\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" \"calculate-tee-times\": true,\n"
" \"client-class\": \"beta\",\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" \"calculate-tee-times\": true,\n"
" \"client-class\": \"gamma\",\n"
" \"id\": 3,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 4,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 123,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 234,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 542,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 234,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 3,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 4,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 5,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 6,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 7,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 2,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" \"shared-networks\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
+" \"max-preferred-lifetime\": 3600,\n"
+" \"max-valid-lifetime\": 7200,\n"
+" \"min-preferred-lifetime\": 3600,\n"
+" \"min-valid-lifetime\": 7200,\n"
" \"name\": \"foo\",\n"
" \"option-data\": [ ],\n"
" \"preferred-lifetime\": 3600,\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 100,\n"
+" \"max-preferred-lifetime\": 3600,\n"
+" \"max-valid-lifetime\": 7200,\n"
+" \"min-preferred-lifetime\": 3600,\n"
+" \"min-valid-lifetime\": 7200,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 123,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 234,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 542,\n"
+" \"max-preferred-lifetime\": 3000,\n"
+" \"max-valid-lifetime\": 4000,\n"
+" \"min-preferred-lifetime\": 3000,\n"
+" \"min-valid-lifetime\": 4000,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" {\n"
" \"calculate-tee-times\": true,\n"
" \"id\": 1,\n"
+" \"max-preferred-lifetime\": 3600,\n"
+" \"max-valid-lifetime\": 7200,\n"
+" \"min-preferred-lifetime\": 3600,\n"
+" \"min-valid-lifetime\": 7200,\n"
" \"option-data\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [\n"
-// Copyright (C) 2017-2020 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
if (!valid_.unspecified()) {
map->set("valid-lifetime",
Element::create(static_cast<long long>(valid_.get())));
- if (valid_.getMin() < valid_.get()) {
- map->set("min-valid-lifetime",
- Element::create(static_cast<long long>(valid_.getMin())));
- }
- if (valid_.getMax() > valid_.get()) {
- map->set("max-valid-lifetime",
- Element::create(static_cast<long long>(valid_.getMax())));
- }
+ map->set("min-valid-lifetime",
+ Element::create(static_cast<long long>(valid_.getMin())));
+ map->set("max-valid-lifetime",
+ Element::create(static_cast<long long>(valid_.getMax())));
}
// Set reservations-global
if (!preferred_.unspecified()) {
map->set("preferred-lifetime",
Element::create(static_cast<long long>(preferred_.get())));
- if (preferred_.getMin() < preferred_.get()) {
- map->set("min-preferred-lifetime",
- Element::create(static_cast<long long>(preferred_.getMin())));
- }
- if (preferred_.getMax() > preferred_.get()) {
- map->set("max-preferred-lifetime",
- Element::create(static_cast<long long>(preferred_.getMax())));
- }
+ map->set("min-preferred-lifetime",
+ Element::create(static_cast<long long>(preferred_.getMin())));
+ map->set("max-preferred-lifetime",
+ Element::create(static_cast<long long>(preferred_.getMax())));
}
// Set interface-id
-// Copyright (C) 2017-2021 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
" \"option-data\": [ ],\n"
" \"relay\": { \"ip-addresses\": [ ] },\n"
" \"subnet4\": [ ],\n"
- " \"valid-lifetime\": 100\n"
+ " \"valid-lifetime\": 100,\n"
+ " \"min-valid-lifetime\": 100,\n"
+ " \"max-valid-lifetime\": 100\n"
" },\n"
" {\n"
" \"ddns-send-updates\": false,\n"
" \"renew-timer\": 100,\n"
" \"subnet6\": [ ],\n"
" \"preferred-lifetime\": 200,\n"
- " \"valid-lifetime\": 300\n,"
+ " \"min-preferred-lifetime\": 200,\n"
+ " \"max-preferred-lifetime\": 200,\n"
+ " \"valid-lifetime\": 300,\n"
+ " \"min-valid-lifetime\": 300,\n"
+ " \"max-valid-lifetime\": 300,\n"
" \"store-extended-info\": true,\n"
" \"cache-max-age\": 80\n"
" },\n"
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ ] },\n"
" \"valid-lifetime\": 3,\n"
+ " \"min-valid-lifetime\": 3,\n"
+ " \"max-valid-lifetime\": 3,\n"
" \"client-class\": \"foo\",\n"
" \"4o6-interface\": \"\",\n"
" \"4o6-interface-id\": \"\",\n"
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ \"10.0.0.1\" ] },\n"
" \"valid-lifetime\": 100,\n"
+ " \"min-valid-lifetime\": 100,\n"
+ " \"max-valid-lifetime\": 100,\n"
" \"4o6-interface\": \"\",\n"
" \"4o6-interface-id\": \"\",\n"
" \"4o6-subnet\": \"\",\n"
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ ] },\n"
" \"valid-lifetime\": 3,\n"
+ " \"min-valid-lifetime\": 3,\n"
+ " \"max-valid-lifetime\": 3,\n"
" \"4o6-interface\": \"\",\n"
" \"4o6-interface-id\": \"\",\n"
" \"4o6-subnet\": \"\",\n"
data::ConstElementPtr value = repr->get("valid-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- EXPECT_FALSE(repr->get("min-valid-lifetime"));
- EXPECT_FALSE(repr->get("max-valid-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-valid-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-valid-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
{
data::ConstElementPtr value = repr->get("valid-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- // Bound only: forgot it was a bound.
- EXPECT_FALSE(repr->get("min-valid-lifetime"));
- EXPECT_FALSE(repr->get("max-valid-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-valid-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-valid-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
{
data::ConstElementPtr value = repr->get("valid-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- // Bound only: forgot it was a bound.
- EXPECT_FALSE(repr->get("min-valid-lifetime"));
- EXPECT_FALSE(repr->get("max-valid-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-valid-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-valid-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
{
data::ConstElementPtr min_value = repr->get("min-valid-lifetime");
ASSERT_TRUE(min_value);
EXPECT_EQ("100", min_value->str());
- EXPECT_FALSE(repr->get("max-valid-lifetime"));
+ data::ConstElementPtr max_value = repr->get("max-valid-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("200", max_value->str());
}
{
data::ConstElementPtr value = repr->get("valid-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
+ data::ConstElementPtr min_value = repr->get("min-valid-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
data::ConstElementPtr max_value = repr->get("max-valid-lifetime");
ASSERT_TRUE(max_value);
EXPECT_EQ("200", max_value->str());
- EXPECT_FALSE(repr->get("min-valid-lifetime"));
}
{
}
{
- SCOPED_TRACE("equal bounds are ignored");
+ SCOPED_TRACE("equal bounds are no longer ignored");
data::ElementPtr copied = data::copy(elems);
copied->set("min-valid-lifetime", data::Element::create(100));
copied->set("valid-lifetime", data::Element::create(100));
data::ConstElementPtr value = repr->get("valid-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- EXPECT_FALSE(repr->get("min-valid-lifetime"));
- EXPECT_FALSE(repr->get("max-valid-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-valid-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-valid-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
}
-// Copyright (C) 2014-2021 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2014-2022 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ ] },\n"
" \"preferred-lifetime\": 3,\n"
+ " \"min-preferred-lifetime\": 3,\n"
+ " \"max-preferred-lifetime\": 3,\n"
" \"valid-lifetime\": 4,\n"
+ " \"min-valid-lifetime\": 4,\n"
+ " \"max-valid-lifetime\": 4,\n"
" \"client-class\": \"foo\",\n"
" \"pools\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ \"2001:db8:ff::2\" ] },\n"
" \"preferred-lifetime\": 100,\n"
+ " \"min-preferred-lifetime\": 100,\n"
+ " \"max-preferred-lifetime\": 100,\n"
" \"valid-lifetime\": 200,\n"
+ " \"min-valid-lifetime\": 200,\n"
+ " \"max-valid-lifetime\": 200,\n"
" \"user-context\": { },\n"
" \"pools\": [ ],\n"
" \"pd-pools\": [ ],\n"
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ ] },\n"
" \"preferred-lifetime\": 3,\n"
+ " \"min-preferred-lifetime\": 3,\n"
+ " \"max-preferred-lifetime\": 3,\n"
" \"valid-lifetime\": 4,\n"
+ " \"min-valid-lifetime\": 4,\n"
+ " \"max-valid-lifetime\": 4,\n"
" \"pools\": [\n"
" {\n"
" \"pool\": \"2001:db8:1::100-2001:db8:1::199\",\n"
" \"rebind-timer\": 2,\n"
" \"relay\": { \"ip-addresses\": [ ] },\n"
" \"preferred-lifetime\": 3,\n"
+ " \"min-preferred-lifetime\": 3,\n"
+ " \"max-preferred-lifetime\": 3,\n"
" \"valid-lifetime\": 4,\n"
+ " \"min-valid-lifetime\": 4,\n"
+ " \"max-valid-lifetime\": 4,\n"
" \"pools\": [ ],\n"
" \"pd-pools\": [\n"
" {\n"
data::ConstElementPtr value = repr->get("preferred-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- EXPECT_FALSE(repr->get("min-preferred-lifetime"));
- EXPECT_FALSE(repr->get("max-preferred-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-preferred-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-preferred-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
{
data::ConstElementPtr value = repr->get("preferred-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- // Bound only: forgot it was a bound.
- EXPECT_FALSE(repr->get("min-preferred-lifetime"));
- EXPECT_FALSE(repr->get("max-preferred-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-preferred-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-preferred-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
{
data::ConstElementPtr value = repr->get("preferred-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- // Bound only: forgot it was a bound.
- EXPECT_FALSE(repr->get("min-preferred-lifetime"));
- EXPECT_FALSE(repr->get("max-preferred-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-preferred-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-preferred-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
{
data::ConstElementPtr min_value = repr->get("min-preferred-lifetime");
ASSERT_TRUE(min_value);
EXPECT_EQ("100", min_value->str());
- EXPECT_FALSE(repr->get("max-preferred-lifetime"));
+ data::ConstElementPtr max_value = repr->get("max-preferred-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("200", max_value->str());
}
{
data::ConstElementPtr value = repr->get("preferred-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
+ data::ConstElementPtr min_value = repr->get("min-preferred-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
data::ConstElementPtr max_value = repr->get("max-preferred-lifetime");
ASSERT_TRUE(max_value);
EXPECT_EQ("200", max_value->str());
- EXPECT_FALSE(repr->get("min-preferred-lifetime"));
}
{
}
{
- SCOPED_TRACE("equal bounds are ignored");
+ SCOPED_TRACE("equal bounds are no longer ignored");
data::ElementPtr copied = data::copy(elems);
copied->set("min-preferred-lifetime", data::Element::create(100));
copied->set("preferred-lifetime", data::Element::create(100));
data::ConstElementPtr value = repr->get("preferred-lifetime");
ASSERT_TRUE(value);
EXPECT_EQ("100", value->str());
- EXPECT_FALSE(repr->get("min-preferred-lifetime"));
- EXPECT_FALSE(repr->get("max-preferred-lifetime"));
+ data::ConstElementPtr min_value = repr->get("min-preferred-lifetime");
+ ASSERT_TRUE(min_value);
+ EXPECT_EQ("100", min_value->str());
+ data::ConstElementPtr max_value = repr->get("max-preferred-lifetime");
+ ASSERT_TRUE(max_value);
+ EXPECT_EQ("100", max_value->str());
}
}
-// Copyright (C) 2017-2021 Internet Systems Consortium, Inc. ("ISC")
+// Copyright (C) 2017-2022 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
" },\n"
" \"renew-timer\": 10,\n"
" \"subnet\": \"10.0.0.0/8\",\n"
- " \"valid-lifetime\": 30\n"
+ " \"valid-lifetime\": 30,\n"
+ " \"min-valid-lifetime\": 30,\n"
+ " \"max-valid-lifetime\": 30\n"
" },\n"
" {\n"
" \"4o6-interface\": \"\",\n"
" },\n"
" \"renew-timer\": 10,\n"
" \"subnet\": \"192.0.2.0/24\",\n"
- " \"valid-lifetime\": 30\n"
+ " \"valid-lifetime\": 30,\n"
+ " \"min-valid-lifetime\": 30,\n"
+ " \"max-valid-lifetime\": 30\n"
" }\n"
" ],\n"
" \"user-context\": { \"comment\": \"bar\", \"foo\": 1 },\n"
- " \"valid-lifetime\": 200\n"
+ " \"valid-lifetime\": 200,\n"
+ " \"min-valid-lifetime\": 200,\n"
+ " \"max-valid-lifetime\": 200\n"
"}\n";
test::runToElementTest<SharedNetwork4>(expected, *network);
" \"name\": \"frog\",\n"
" \"option-data\": [ ],\n"
" \"preferred-lifetime\": 200,\n"
+ " \"min-preferred-lifetime\": 200,\n"
+ " \"max-preferred-lifetime\": 200,\n"
" \"rapid-commit\": true,\n"
" \"rebind-timer\": 150,\n"
" \"relay\": {\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" \"preferred-lifetime\": 30,\n"
+ " \"min-preferred-lifetime\": 30,\n"
+ " \"max-preferred-lifetime\": 30,\n"
" \"rebind-timer\": 20,\n"
" \"relay\": {\n"
" \"ip-addresses\": [ ]\n"
" },\n"
" \"renew-timer\": 10,\n"
" \"subnet\": \"2001:db8:1::/64\",\n"
- " \"valid-lifetime\": 40\n"
+ " \"valid-lifetime\": 40,\n"
+ " \"min-valid-lifetime\": 40,\n"
+ " \"max-valid-lifetime\": 40\n"
" },\n"
" {\n"
" \"id\": 2,\n"
" \"pd-pools\": [ ],\n"
" \"pools\": [ ],\n"
" \"preferred-lifetime\": 30,\n"
+ " \"min-preferred-lifetime\": 30,\n"
+ " \"max-preferred-lifetime\": 30,\n"
" \"rebind-timer\": 20,\n"
" \"relay\": {\n"
" \"ip-addresses\": [ \"2001:db8:1::8\" ]\n"
" },\n"
" \"renew-timer\": 10,\n"
" \"subnet\": \"3000::/16\",\n"
- " \"valid-lifetime\": 40\n"
+ " \"valid-lifetime\": 40,\n"
+ " \"min-valid-lifetime\": 40,\n"
+ " \"max-valid-lifetime\": 40\n"
" }\n"
" ],\n"
" \"user-context\": { \"foo\": \"bar\" },\n"
- " \"valid-lifetime\": 300\n"
+ " \"valid-lifetime\": 300,\n"
+ " \"min-valid-lifetime\": 300,\n"
+ " \"max-valid-lifetime\": 300\n"
"}\n";
test::runToElementTest<SharedNetwork6>(expected, *network);