// id will be used to search for the reservations within the database.
"subnet6": [
{
- "id": 1,
-
"subnet": "2001:db8:1::/48",
"pools": [ { "pool": "2001:db8:1::/80" } ],
// id will be used to search for the reservations within the database.
"subnet6": [
{
- "id": 1,
-
"subnet": "2001:db8:1::/48",
"pools": [ { "pool": "2001:db8:1::/80" } ],
" \"pools\": [ "
" { \"pool\": \"192.0.2.0/28\" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
"}",
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"option-data\": [ {";
string too_small = "{ " + genIfaceConfig() + "," +
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 1000, \"min-valid-lifetime\": 2000 }";
string too_large = "{ " + genIfaceConfig() + "," +
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 2000, \"max-valid-lifetime\": 1000 }";
string before = "{ " + genIfaceConfig() + "," +
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 1000, \"min-valid-lifetime\": 2000, "
string after = "{ " + genIfaceConfig() + "," +
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 5000, \"min-valid-lifetime\": 1000, "
string crossed = "{ " + genIfaceConfig() + "," +
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 1500, \"min-valid-lifetime\": 2000, "
string config = "{ " + genIfaceConfig() + "," +
"\"rebind-timer\": 2000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
string config = "{ " + genIfaceConfig() + "," +
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000,"
EXPECT_EQ(1, subnet->getID());
}
+#if deprecated_unnumbered
// Goal of this test is to verify that multiple subnets get unique
// subnet-ids. Also, test checks that it's possible to do reconfiguration
// multiple times.
// a bit.
} while (++cnt < 10);
}
+#endif
// This test checks that it is possible to assign arbitrary ids for subnets.
TEST_F(Dhcp4ParserTest, multipleSubnetsExplicitIDs) {
"\"server-hostname\": \"foo\", "
"\"boot-file-name\": \"bar\", "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"next-server\": \"1.2.3.4\", "
" \"server-hostname\": \"foo\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
"\"server-hostname\": \"nohost\","
"\"boot-file-name\": \"nofile\","
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"next-server\": \"1.2.3.4\", "
" \"server-hostname\": \"some-name.example.org\","
"\"renew-timer\": 1000, "
"\"echo-client-id\": false,"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"renew-timer\": 1000, "
"\"echo-client-id\": true,"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
" \"exclude-first-last-24\": true"
"},"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
" \"foo-bar\": true"
"},"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
" \"lenient-option-parsing\": 1"
"},"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"renew-timer\": 1000, "
"\"subnet4\": [ "
"{"
+ " \"id\": 1,"
" \"match-client-id\": true,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
"},"
"{"
+ " \"id\": 2,"
" \"match-client-id\": false,"
" \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"subnet\": \"192.0.3.0/24\""
"\"match-client-id\": true,"
"\"subnet4\": [ "
"{"
+ " \"id\": 1,"
" \"match-client-id\": false,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
"},"
"{"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"subnet\": \"192.0.3.0/24\""
"} ],"
"\"renew-timer\": 1000, "
"\"subnet4\": [ "
"{"
+ " \"id\": 1,"
" \"authoritative\": true,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
"},"
"{"
+ " \"id\": 2,"
" \"authoritative\": false,"
" \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"subnet\": \"192.0.3.0/24\""
"\"authoritative\": true,"
"\"subnet4\": [ "
"{"
+ " \"id\": 1,"
" \"authoritative\": false,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
"},"
"{"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"subnet\": \"192.0.3.0/24\""
"} ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"renew-timer\": 1, "
" \"rebind-timer\": 2, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ "
" { \"pool\": \"192.0.2.0/28\" },"
" { \"pool\": \"192.0.2.200-192.0.2.255\" }"
" \"subnet\": \"192.0.2.0/24\" "
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ "
" { \"pool\": \"192.0.3.0/25\" },"
" { \"pool\": \"192.0.3.128/25\" }"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.4.0/28\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"foo/28\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.128/foo\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.128/100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"foo\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"foo - bar\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.200 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.128/1052\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"user-context\": { } } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ ],"
" \"subnet\": \"192.0.2.0/24\","
" \"interface\": \"ethX\" } ],"
" \"csv-format\": false"
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ],"
"\"rebind-timer\": 2000,"
"\"renew-timer\": 1000,"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"option-data\": [ {"
" \"space\": \"isc\""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
" \"space\": \"isc\""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
" \"csv-format\": false"
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"option-data\": [ {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"option-data\": [ {"
" } ]"
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.3.101 - 192.0.3.150\" } ],"
" \"subnet\": \"192.0.3.0/24\", "
" \"option-data\": [ {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { "
" \"pool\": \"192.0.2.1 - 192.0.2.100\","
" \"option-data\": [ {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { "
" \"pool\": \"192.0.2.1 - 192.0.2.100\","
" \"option-data\": [ {"
" \"data\": \"false, \""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ],"
" \"space\": \"vendor-encapsulated-options-space\""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
" \"csv-format\": false"
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1-192.0.2.10\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
" \"space\": \"vendor-4491\""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" "
" } ]"
" \"space\": \"isc\""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ]");
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"renew-timer\": 1, "
" \"rebind-timer\": 2, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"renew-timer\": 1, "
" \"rebind-timer\": 2, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"client-class\": \"alpha\" "
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.3.101 - 192.0.3.150\" } ],"
" \"subnet\": \"192.0.3.0/24\", "
" \"client-class\": \"beta\" "
" },"
" {"
+ " \"id\": 3,"
" \"pools\": [ { \"pool\": \"192.0.4.101 - 192.0.4.150\" } ],"
" \"subnet\": \"192.0.4.0/24\", "
" \"client-class\": \"gamma\" "
" },"
" {"
+ " \"id\": 4,"
" \"pools\": [ { \"pool\": \"192.0.5.101 - 192.0.5.150\" } ],"
" \"subnet\": \"192.0.5.0/24\" "
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { "
" \"pool\": \"192.0.2.1 - 192.0.2.100\", "
" \"client-class\": \"alpha\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.1.0/24\" } ],"
" \"subnet\": \"192.0.1.0/24\", "
" \"reservations-global\": false,"
" \"reservations-out-of-pool\": false"
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"reservations-global\": false,"
" \"reservations-out-of-pool\": true"
" },"
" {"
+ " \"id\": 3,"
" \"pools\": [ { \"pool\": \"192.0.3.0/24\" } ],"
" \"subnet\": \"192.0.3.0/24\", "
" \"reservations-global\": false,"
" \"reservations-in-subnet\": false"
" },"
" {"
+ " \"id\": 4,"
" \"pools\": [ { \"pool\": \"192.0.4.0/24\" } ],"
" \"subnet\": \"192.0.4.0/24\", "
" \"reservations-global\": true,"
" \"reservations-in-subnet\": false"
" },"
" {"
+ " \"id\": 5,"
" \"pools\": [ { \"pool\": \"192.0.5.0/24\" } ],"
" \"subnet\": \"192.0.5.0/24\""
" },"
" {"
+ " \"id\": 6,"
" \"pools\": [ { \"pool\": \"192.0.6.0/24\" } ],"
" \"subnet\": \"192.0.6.0/24\", "
" \"reservations-global\": true,"
" \"reservations-out-of-pool\": false"
" },"
" {"
+ " \"id\": 7,"
" \"pools\": [ { \"pool\": \"192.0.7.0/24\" } ],"
" \"subnet\": \"192.0.7.0/24\", "
" \"reservations-global\": true,"
"\"reservations-in-subnet\": true,"
"\"reservations-out-of-pool\": true,"
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"reservations-global\": false,"
" \"reservations-out-of-pool\": false"
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.3.0/24\" } ],"
" \"subnet\": \"192.0.3.0/24\""
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-subnet\": \"2001:db8::123/45\" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-subnet\": \"2001:db8::123\" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-subnet\": \"2001:db8:bogus/45\" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-subnet\": \"2001:db8::123/200\" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-interface\": \"ethX\" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-subnet\": \"2001:db8::543/21\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\","
" \"4o6-interface-id\": \"vlan123\" } ],"
" } \n"
"], \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], \n"
" \"subnet\": \"192.0.2.0/24\" \n"
" } ] \n"
" } \n"
"], \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], \n"
" \"subnet\": \"192.0.2.0/24\" \n"
" } ] \n"
" } \n"
"], \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], \n"
" \"subnet\": \"192.0.2.0/24\" \n"
" } ] \n"
" } \n"
"], \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], \n"
" \"subnet\": \"192.0.2.0/24\" \n"
" } ] \n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 19.2.0.200\" } ], \n"
" \"subnet\": \"192.0.2.0/24\" \n"
" } ] \n"
"} \n";
string expected = "Failed to create pool defined by: "
- "192.0.2.1-19.2.0.200 (<string>:6:26)";
+ "192.0.2.1-19.2.0.200 (<string>:7:26)";
configure(config, CONTROL_RESULT_ERROR, expected);
}
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], \n"
" \"subnet\": \"10.0.2.0/24\" \n"
" } ] \n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"10.0.2.1 - 10.0.2.100\" } ], \n"
" \"subnet\": \"10.0.2.0/24\" \n"
" } ],\n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"10.0.2.1 - 10.0.2.100\" } ], \n"
" \"subnet\": \"10.0.2.0/24\" \n"
" } ],\n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"10.0.2.1 - 10.0.2.100\" } ], \n"
" \"subnet\": \"10.0.2.0/24\" \n"
" } ],\n"
TEST_F(Dhcp4ParserTest, sharedNetworksName) {
string config = "{\n"
"\"subnet4\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"10.0.2.1 - 10.0.2.100\" } ], \n"
" \"subnet\": \"10.0.2.0/24\" \n"
" } ],\n"
"\"shared-networks\": [ {\n"
" \"name\": \"foo\"\n,"
" \"subnet4\": [ { \n"
+ " \"id\": 1,\n"
" \"subnet\": \"192.0.2.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.2.1-192.0.2.10\" } ]\n"
" } ]\n"
" \"name\": \"foo\"\n,"
" \"subnet4\": [\n"
" { \n"
+ " \"id\": 1,\n"
" \"subnet\": \"192.0.1.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.1.1-192.0.1.10\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2,\n"
" \"subnet\": \"192.0.2.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.2.1-192.0.2.10\" } ],\n"
" \"renew-timer\": 2,\n"
" \"max-valid-lifetime\": 333\n"
" },\n"
" { \n"
+ " \"id\": 3,\n"
" \"subnet\": \"192.0.3.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.3.1-192.0.3.10\" } ]\n"
" }\n"
" \"max-valid-lifetime\": 50,\n"
" \"subnet4\": [\n"
" { \n"
+ " \"id\": 1,\n"
" \"subnet\": \"192.0.1.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.1.1-192.0.1.10\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2,\n"
" \"subnet\": \"192.0.2.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.2.1-192.0.2.10\" } ],\n"
" \"renew-timer\": 100,\n"
" \"name\": \"bar\",\n"
" \"subnet4\": [\n"
" {\n"
+ " \"id\": 3,\n"
" \"subnet\": \"192.0.3.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.3.1-192.0.3.10\" } ]\n"
" }\n"
" \"client-class\": \"alpha\",\n"
" \"subnet4\": [\n"
" { \n"
+ " \"id\": 1,\n"
" \"subnet\": \"192.0.1.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.1.1-192.0.1.10\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2,\n"
" \"subnet\": \"192.0.2.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.2.1-192.0.2.10\" } ],\n"
" \"client-class\": \"beta\"\n"
" \"name\": \"bar\",\n"
" \"subnet4\": [\n"
" {\n"
+ " \"id\": 3,\n"
" \"subnet\": \"192.0.3.0/24\",\n"
" \"pools\": [ { \"pool\": \"192.0.3.1-192.0.3.10\" } ]\n"
" }\n"
"\"renew-timer\": 1000, "
"\"subnet4\": [ "
"{"
+ " \"id\": 1,"
" \"store-extended-info\": true,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
"},"
"{"
+ " \"id\": 2,"
" \"store-extended-info\": false,"
" \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"subnet\": \"192.0.3.0/24\""
"\"store-extended-info\": true,"
"\"subnet4\": [ "
"{"
+ " \"id\": 1,"
" \"store-extended-info\": false,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
"},"
"{"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"subnet\": \"192.0.3.0/24\""
"} ],"
" },"
" \"subnet4\": [ \n";
string subnet1 =
- " {\"subnet\": \"192.2.0.0/24\", \n"
+ " {\"subnet\": \"192.2.0.0/24\", \"id\": 1, \n"
" \"pools\": [{ \"pool\": \"192.2.0.1-192.2.0.50\" }]}\n";
string subnet2 =
- " {\"subnet\": \"192.2.1.0/24\", \n"
+ " {\"subnet\": \"192.2.1.0/24\", \"id\": 2, \n"
" \"pools\": [{ \"pool\": \"192.2.1.1-192.2.1.50\" }]}\n";
string bad_subnet =
- " {\"comment\": \"192.2.2.0/24\", \n"
+ " {\"comment\": \"192.2.2.0/24\", \"id\": 10, \n"
" \"pools\": [{ \"pool\": \"192.2.2.1-192.2.2.50\" }]}\n";
string subnet_footer =
" ] \n";
" },"
" \"subnet4\": [ \n";
string subnet1 =
- " {\"subnet\": \"192.2.0.0/24\", \n"
+ " {\"subnet\": \"192.2.0.0/24\", \"id\": 1, \n"
" \"pools\": [{ \"pool\": \"192.2.0.1-192.2.0.50\" }]}\n";
string subnet2 =
- " {\"subnet\": \"192.2.1.0/24\", \n"
+ " {\"subnet\": \"192.2.1.0/24\", \"id\": 2, \n"
" \"pools\": [{ \"pool\": \"192.2.1.1-192.2.1.50\" }]}\n";
string bad_subnet =
- " {\"comment\": \"192.2.2.0/24\", \n"
+ " {\"comment\": \"192.2.2.0/24\", \"id\": 10, \n"
" \"pools\": [{ \"pool\": \"192.2.2.1-192.2.2.50\" }]}\n";
string subnet_footer =
" ] \n";
" \"interfaces\": [ \"*\" ]"
" },"
" \"subnet4\": ["
- " { \"subnet\": \"192.0.2.0/24\" },"
- " { \"subnet\": \"192.0.3.0/24\" }"
+ " { \"id\": 1, \"subnet\": \"192.0.2.0/24\" },"
+ " { \"id\": 2, \"subnet\": \"192.0.3.0/24\" }"
" ],"
" \"valid-lifetime\": 4000,"
" \"lease-database\": {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
" \"dhcp-ddns\" : {"
},
\"subnet4\": [
{
+ \"id\": 1,
\"subnet\": \"10.0.0.0/8\",
\"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]
} ],
},
\"subnet4\": [
{
+ \"id\": 1,
\"subnet\": \"10.0.0.0/8\",
\"pool\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]
} ],
},
\"subnet4\": [
{
+ \"id\": 1,
\"subnet\": \"10.0.0.0/8\",
\"pools\": [ { \"pool\": \"192.168.0.10-192.168.0.100\" } ]
} ],
},
\"subnet4\": [
{
+ \"id\": 1,
\"subnet\": \"10.0.0.0/8\",
\"pool\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]
} ],
},
\"subnet4\": [
{
+ \"id\": 1,
\"subnet\": \"10.0.0.0/8\",
\"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]
} ],
},
\"subnet4\": [
{
+ \"id\": 1,
\"subnet\": \"10.0.0.0/8\",
\"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]
} ],
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"10.254.226.0/25\" } ],"
" \"subnet\": \"10.254.226.0/24\", "
" \"rebind-timer\": 2000, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"valid-lifetime\": 4000, "
" \"subnet4\": [ {"
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
" \"subnet\": \"192.0.2.0/24\""
" } ], "
" \"renew-timer\": 1000, "
" \"valid-lifetime\": 4000, "
" \"subnet4\": [ {"
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
" \"subnet\": \"192.0.2.0/24\","
" \"option-data\": ["
// - user-contexts defined in both subnet and pool
"{"
" \"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"10.254.226.0/25\","
" \"user-context\": { \"value\": 42 } } ],"
" \"subnet\": \"10.254.226.0/24\", "
"\"server-hostname\": \"nohost\", "
"\"boot-file-name\": \"nofile\", "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"next-server\": \"1.2.3.4\", "
" \"server-hostname\": \"some-name.example.org\", "
"\"server-hostname\": \"some-name.example.org\", "
"\"boot-file-name\": \"bootfile.efi\", "
"\"subnet4\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"valid-lifetime\": 4000 }";
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" } ], "
"\"client-classes\": [ "
"{ \"name\": \"router\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" } ], "
"\"client-classes\": [ "
"{ \"name\": \"router\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" } ], "
"\"client-classes\": [ "
"{ \"name\": \"router\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"option-data\": ["
" { \"name\": \"ip-forwarding\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"option-data\": ["
" { \"name\": \"ip-forwarding\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" } ], "
"\"option-data\": ["
" { \"name\": \"ip-forwarding\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" } ], "
"\"option-data\": ["
" { \"name\": \"ip-forwarding\", "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"client-class\": \"foo\", "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"client-class\": \"xyzzy\", "
+ " \"id\": 2, "
" \"subnet\": \"192.0.3.0/24\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"client-class\": \"foo\" }, "
" { \"pool\": \"192.0.3.1 - 192.0.3.100\", "
" \"client-class\": \"xyzzy\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.0.0/16\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"client-class\": \"KNOWN\" }, "
" { \"pool\": \"192.0.3.1 - 192.0.3.100\", "
" \"client-class\": \"UNKNOWN\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.0.0/16\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"client-class\": \"UNKNOWN\" }, "
" { \"pool\": \"192.0.3.1 - 192.0.3.100\", "
" \"client-class\": \"KNOWN\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.0.0/16\", "
" \"reservations\": [ { "
" \"hw-address\": \"00:00:00:11:22:33\", "
"\"valid-lifetime\": 4000, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"client-classes\": [ "
"{ \"name\": \"private\", "
" \"relay\": { "
" \"ip-address\": \"192.0.5.1\""
" },"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"relay\": { "
" \"ip-address\": \"192.0.5.2\""
" },"
+ " \"id\": 2, "
" \"subnet\": \"192.0.3.0/24\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"relay\": { "
" \"ip-address\": \"192.0.5.1\""
" },"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
" \"relay\": { "
" \"ip-address\": \"192.0.5.1\""
" },"
+ " \"id\": 2, "
" \"subnet\": \"192.0.3.0/24\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"relay\": { "
" \"ip-address\": \"192.0.5.1\""
" },"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
+ " \"id\": 2, "
" \"subnet\": \"192.0.3.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.4.1 - 192.0.4.100\" } ],"
" \"client-class\": \"foo\", "
+ " \"id\": 3, "
" \"subnet\": \"192.0.4.0/24\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"relay\": { "
" \"ip-address\": \"192.0.5.1\""
" },"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
+ " \"id\": 2, "
" \"subnet\": \"192.0.3.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.4.1 - 192.0.4.100\" } ],"
" \"client-class\": \"foo\", "
+ " \"id\": 3, "
" \"subnet\": \"192.0.4.0/24\" } "
"],"
"\"valid-lifetime\": 4000 }";
" \"relay\": { "
" \"ip-address\": \"192.0.5.1\""
" },"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.3.1 - 192.0.3.100\" } ],"
+ " \"id\": 2, "
" \"subnet\": \"192.0.3.0/24\" }, "
"{ \"pools\": [ { \"pool\": \"192.0.4.1 - 192.0.4.100\" } ],"
" \"client-class\": \"foo\", "
+ " \"id\": 3, "
" \"subnet\": \"192.0.4.0/24\" } "
"],"
"\"valid-lifetime\": 4000 }";
"subnet4": [
{
+ "id": 1,
"subnet": "192.0.2.0/24",
"pools": [ { "pool": "192.0.2.1 - 192.0.2.100" } ],
"reservations": [
"\"renew-timer\": 1000, "
"\"option-data\": [ ],"
"\"subnet4\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"" << prefix << "/24\" } ],"
" \"subnet\": \"" << prefix << "/24\", "
" \"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"option-data\": [ ],"
"\"subnet4\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"" << prefix1 << "/24\" } ],"
" \"subnet\": \"" << prefix1 << "/24\", "
" \"rebind-timer\": 2000, "
" \"valid-lifetime\": 4000"
" },"
"{ "
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"" << prefix2 << "/24\" } ],"
" \"subnet\": \"" << prefix2 << "/24\", "
" \"rebind-timer\": 2000, "
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1,"
" \"option-data\": [ {"
" \"name\": \"routers\","
" \"data\": \"192.0.2.200,192.0.2.201\""
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations\": [ "
" {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations\": [ "
" {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations\": [ "
" {"
"\"boot-file-name\": \"nofile\","
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations\": [ "
" {"
"\"subnet4\": ["
" {"
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"interface\": \"eth0\","
" \"option-data\": ["
" },"
" {"
" \"subnet\": \"192.0.2.0/26\", "
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"192.0.2.10-192.0.2.63\" } ],"
" \"interface\": \"eth1\","
" \"option-data\": ["
" },"
" {"
" \"subnet\": \"192.0.2.64/26\", "
+ " \"id\": 3, "
" \"pools\": [ { \"pool\": \"192.0.2.65-192.0.2.100\" } ],"
" \"relay\": {"
" \"ip-address\": \"10.2.3.4\""
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.5-10.0.0.100\" } ],"
" \"reservations\": [ "
" {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\","
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations-global\": false,"
" \"reservations-in-subnet\": true,"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\","
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations-global\": false,"
" \"reservations-in-subnet\": false,"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\","
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations-global\": false,"
" \"reservations-in-subnet\": true,"
"\"subnet4\": ["
" {"
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"store-extended-info\": true,"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"interface\": \"eth0\""
" },"
" {"
" \"subnet\": \"192.0.2.0/26\", "
+ " \"id\": 2, "
" \"store-extended-info\": false,"
" \"pools\": [ { \"pool\": \"192.0.2.10-192.0.2.63\" } ],"
" \"interface\": \"eth1\""
"\"subnet4\": ["
" {"
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": ["
" {"
" \"pool\": \"10.0.0.10-10.0.0.20\""
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"192.0.2.0/25\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\" "
" }, {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"192.0.3.0/25\" } ],"
" \"subnet\": \"192.0.3.0/24\" "
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"192.0.2.0/25\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\" "
" }, {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"192.0.3.0/25\" } ],"
" \"subnet\": \"192.0.3.0/24\" "
" } ],"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/25\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"interface\": \"eth0\", "
" \"reservations\": ["
" {"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/25\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"interface\": \"eth0\", "
" \"reservations\": ["
" {"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"interface\": \"eth1\" "
" } ],"
"\"valid-lifetime\": 4000"
"\"valid-lifetime\": 600,\n"
"\"subnet4\": [ { \n"
" \"subnet\": \"10.0.0.0/24\",\n"
+ " \"id\": 10,\n"
" \"reservations-global\": true,\n"
" \"reservations-in-subnet\": false,\n"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]\n"
"\"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],\n"
" \"interface\": \"eth0\",\n"
" \"reservations\": [ \n"
"\"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],\n"
" \"interface\": \"eth0\",\n"
" \"reservations-global\": false,\n"
"\"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],\n"
" \"interface\": \"eth0\",\n"
" \"reservations-global\": false,\n"
" \"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"pools\": ["
" {"
" \"pool\": \"10.0.0.10-10.0.0.11\","
" \"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"client-class\": \"reserved_class\","
" \"pools\": ["
" {"
"\"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"reservations\": [{ \n"
" \"hw-address\": \"aa:bb:cc:dd:ee:fe\",\n"
" \"client-classes\": [ \"reserved_class\" ]\n"
"\"subnet4\": [\n"
" {\n"
" \"subnet\": \"10.0.0.0/24\", \n"
- " \"id\": 10,"
+ " \"id\": 10, \n"
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],\n"
" \"interface\": \"eth0\",\n"
" \"reservations\": [ \n"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"option-data\": [ {"
" \"name\": \"routers\","
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"option-data\": [ {"
" \"name\": \"routers\","
" \"data\": \"192.0.2.200,192.0.2.201\""
"\"boot-file-name\": \"nofile\","
"\"subnet4\": [ { "
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"reservations\": [ "
" {"
" \"hw-address\": \"aa:bb:cc:dd:ee:ff\","
"],"
"\"subnet4\": [ { "
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"reservations\": [ "
" {"
" \"hw-address\": \"aa:bb:cc:dd:ee:ff\","
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\" "
" },"
" {"
" \"pools\": [ { \"pool\": \"192.0.3.101 - 192.0.3.150\" } ],"
" \"subnet\": \"192.0.3.0/24\", "
- " \"id\": 0 "
+ " \"id\": 2 "
" },"
" {"
" \"pools\": [ { \"pool\": \"192.0.4.101 - 192.0.4.150\" } ],"
+ " \"id\": 3, "
" \"subnet\": \"192.0.4.0/24\" "
" } ],"
"\"valid-lifetime\": 4000 }"
"# comments in the middle should be ignored, too\n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/22\" "
" } ],"
"\"valid-lifetime\": 4000 }"
"// comments in the middle should be ignored, too\n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/22\" "
" } ],"
"\"valid-lifetime\": 4000 }"
"/* comments in the middle should be ignored, too*/\n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/22\" "
" } ],"
"\"valid-lifetime\": 4000 }"
string include = "\n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/22\" "
" } ]\n";
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.0/24\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/22\" "
" } ],"
"\"valid-lifetime\": 4000 }"
"\"renew-timer\": 1000, "
"\"subnet4\": [ { "
" \"pool\": [ \"2001:db8::/80\" ],"
+ " \"id\": 1, "
" \"subnet\": \"2001:db8::/64\" "
" } ]}";
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ],"
" \"reservations\": [ "
" {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.101-10.0.0.200\" } ],"
" \"reservations\": [ "
" {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.101-10.0.0.200\" } ],"
"} ],"
"\"dhcp-ddns\": {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"192.0.2.101-192.0.2.200\" } ],"
" \"reservations\": [ "
" {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"192.0.2.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"192.0.2.101-192.0.2.200\" } ]"
"} ],"
"\"dhcp-ddns\": {"
"\"valid-lifetime\": 600,"
"\"subnet4\": [ { "
" \"subnet\": \"10.0.0.0/24\", "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"10.0.0.10-10.0.0.100\" } ]"
"} ],"
"\"dhcp-ddns\": {"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"test\" } ],\n"
"\"valid-lifetime\": 4000 } }";
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\""
" } ],"
"\"renew-timer\": 1000, // this will be ignored, too\n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\""
" } ],"
"\"renew-timer\": 1000, # this will be ignored, too\n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\""
" } ],"
"\"renew-timer\": 1000, \n"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\""
" } ],"
"\"subnet4\": [ { "
" \"user-context\": { \"comment\": \"indirect\" },"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\""
" } ],"
"pool": "192.168.0.0/24",
},
],
+ "id": 1,
"subnet": "192.168.0.0/24",
},
],
addLog("<string>:32.8");
addLog("<string>:43.37");
addLog("<string>:44.12");
- addLog("<string>:46.35");
- addLog("<string>:47.8");
- addLog("<string>:48.6");
- addLog("<string>:49.4");
+ addLog("<string>:47.35");
+ addLog("<string>:48.8");
+ addLog("<string>:49.6");
+ addLog("<string>:50.4");
EXPECT_TRUE(checkFile());
// Test with many consecutive commas.
" \"subnet4\": ["
" {"
" \"subnet\": \"192.0.2.0/24\","
+ " \"id\": 100,"
" \"allocator\": \"flq\","
" \"pools\": ["
" {"
" },"
" {"
" \"subnet\": \"192.0.3.0/24\","
+ " \"id\": 10,"
" \"allocator\": \"random\","
" \"pools\": ["
" {"
" \"subnet4\": ["
" {"
" \"subnet\": \"192.0.2.0/24\","
+ " \"id\": 100,"
" \"allocator\": \"random\","
" \"pools\": ["
" {"
" },"
" {"
" \"subnet\": \"192.0.3.0/24\","
+ " \"id\": 10,"
" \"allocator\": \"flq\","
" \"pools\": ["
" {"
"pool": "192.0.2.0/25"
}
],
- "subnet": "192.0.2.0/24"
+ "subnet": "192.0.2.0/24",
+ "id": 10
}
]
}
"pool": "192.0.2.0/25"
}
],
- "subnet": "192.0.2.0/24"
+ "subnet": "192.0.2.0/24",
+ "id": 10
}
]
}
"pool": "192.0.2.0/25"
}
],
- "subnet": "192.0.2.0/24"
+ "subnet": "192.0.2.0/24",
+ "id": 10
}
]
}
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"10.254.226.0/25\" } ],"
" \"subnet\": \"10.254.226.0/24\", "
- " \"interface\": \"eth0\" "
+ " \"interface\": \"eth0\", "
+ " \"id\": 10"
" } ],"
"\"valid-lifetime\": 4000 }";
" \"data\": \"bar\""
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 10,"
" \"pools\": [ { \"pool\": \"192.0.2.0/25\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\", "
" \"csv-format\": true"
" }],"
"\"subnet4\": [ { "
+ " \"id\": 10,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.50\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"\""
" } ]"
" } ],"
"\"subnet4\": [ { "
+ " \"id\": 10,"
" \"pools\": [ { \"pool\": \"192.0.2.0/25\" } ],"
" \"subnet\": \"192.0.2.0/24\", "
" \"interface\": \"eth0\" "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"option-def\": [ "
"{ \"code\": 1, "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"option-data\": [ "
"{ \"name\": \"vendor-class-identifier\", "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"option-def\": [ "
"{ \"code\": 1, "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"option-def\": [ "
"{ \"code\": 43, "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"client-classes\": [ "
"{ \"name\": \"vendor\", "
" \"type\": \"uint32\" } ],"
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"client-classes\": [ "
"{ \"name\": \"alpha\", "
" \"data\": \"33\" } ],"
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"client-classes\": [ "
"{ \"name\": \"alpha\", "
" \"type\": \"uint8\" } ],"
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"192.0.2.0/24\" } ],"
"\"client-classes\": [ "
"{ \"name\": \"alpha\", "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"10.0.0.10 - 10.0.0.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"10.0.0.0/24\" } ],"
"\"option-def\": [ "
"{ \"code\": 1, "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"10.0.0.10 - 10.0.0.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"10.0.0.0/24\" } ],"
"\"option-def\": [ "
"{ \"code\": 1, "
" \"interfaces\": [ \"*\" ] }, "
"\"subnet4\": [ "
"{ \"pools\": [ { \"pool\": \"10.0.0.10 - 10.0.0.100\" } ], "
+ " \"id\": 10,"
" \"subnet\": \"10.0.0.0/24\" } ],"
"\"option-def\": [ "
"{ \"code\": 1, "
"},"
"\"subnet4\": [ { "
" \"pools\": [ { \"pool\": \"10.206.80.0/25\" } ],"
+ " \"id\": 10,"
" \"subnet\": \"10.206.80.0/24\", "
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" }"
" ],"
"\"subnet4\": [ { "
+ " \"id\": 10,"
" \"pools\": [ { \"pool\": \"192.0.2.1 - 192.0.2.100\" } ],"
" \"subnet\": \"192.0.2.0/24\""
" } ]"
" }"
" ],"
"\"subnet4\": [ { "
+ " \"id\": 10,"
" \"pools\": [ { \"pool\": \"10.0.0.10 - 10.0.0.100\" } ],"
" \"subnet\": \"10.0.0.0/24\", "
" \"interface\": \"eth0\" "
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
" \"subnet\": \"2001:db8:1::/48\", "
+ " \"id\": 1, "
" \"interface\": \"eth1\","
" \"reservations\": ["
" {"
"],"
"\"subnet6\": [ "
"{ \"subnet\": \"2001:db8:1::/48\", "
+ " \"id\": 1, "
" \"interface\": \"eth1\","
" \"pools\": [ "
" { \"pool\": \"2001:db8:1:1::/64\","
"],"
"\"subnet6\": [ "
"{ \"subnet\": \"2001:db8::/32\", "
+ " \"id\": 1, "
" \"interface\": \"eth1\","
" \"pd-pools\": [ "
" { \"prefix\": \"2001:db8:1::\","
"],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\""
" } ],"
"],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\","
" \"reservations\": ["
"],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\","
" \"reservations\": ["
" \"type\": \"boolean\" }],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" } ],"
"\"client-classes\": [ "
" \"type\": \"boolean\" }],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" } ],"
"\"client-classes\": [ "
" \"type\": \"boolean\" }],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"require-client-classes\": [ \"router\" ], "
" \"interface\": \"eth1\" } ],"
" \"type\": \"boolean\" }],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\", "
" \"option-data\": ["
" \"data\": \"false\" } ], "
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\", "
" \"option-data\": ["
" \"type\": \"boolean\" }],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" } ],"
"\"option-data\": ["
" \"never-send\": false } ], "
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\", "
" \"option-data\": ["
" \"never-send\": false } ], "
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\", "
" \"option-data\": ["
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"client-class\": \"foo\" "
" }, "
" { \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
+ " \"id\": 2, "
" \"subnet\": \"2001:db8:2::/48\", "
" \"client-class\": \"xyzzy\" "
" } "
" \"client-class\": \"xyzzy\" "
" } "
" ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8::/40\" "
" } "
"], "
" \"client-class\": \"UNKNOWN\" "
" } "
" ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8::/40\", "
" \"reservations\": [ "
" { \"duid\": \"01:02:03:04\", \"hostname\": \"foo\" } ] "
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"client-class\": \"foo\", "
" \"relay\": { "
" }"
" }, "
" { \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
+ " \"id\": 2, "
" \"subnet\": \"2001:db8:2::/48\", "
" \"relay\": { "
" \"ip-address\": \"2001:db8:3::1\""
" \"type\": \"boolean\" }],"
"\"subnet6\": [ "
"{ \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" } ],"
"\"client-classes\": [ "
" \"pools\": [ "
" { \"pool\": \"2001:db8::/64\" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" \"prefix-len\": 56,"
" \"delegated-len\": 64 }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" \"user-context\": { }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" }"
" }"
" ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8::/32\""
" } ]"
"}",
" \"space\": \"dhcp6\""
"} ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\", "
" \"option-data\": [ {";
string too_small = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"valid-lifetime\": 1000, \"min-valid-lifetime\": 2000 }";
string too_large = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"valid-lifetime\": 2000, \"max-valid-lifetime\": 1000 }";
string before = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"valid-lifetime\": 1000, \"min-valid-lifetime\": 2000, "
string after = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"valid-lifetime\": 5000, \"min-valid-lifetime\": 1000, "
string crossed = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"valid-lifetime\": 1500, \"min-valid-lifetime\": 2000, "
string too_small = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"preferred-lifetime\": 1000, \"min-preferred-lifetime\": 2000 }";
string too_large = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"preferred-lifetime\": 2000, \"max-preferred-lifetime\": 1000 }";
string before = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"preferred-lifetime\": 1000, \"min-preferred-lifetime\": 2000, "
string after = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"preferred-lifetime\": 5000, \"min-preferred-lifetime\": 1000, "
string crossed = "{ " + genIfaceConfig() + "," +
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/32\" } ],"
"\"preferred-lifetime\": 1500, \"min-preferred-lifetime\": 2000, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000,"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"2001:db8:2::/80\" } ],"
" \"subnet\": \"2001:db8:2::/64\", "
- " \"id\": 0"
" },"
" {"
+ " \"id\": 3,"
" \"pools\": [ { \"pool\": \"2001:db8:3::/80\" } ],"
" \"subnet\": \"2001:db8:3::/64\" "
" },"
" {"
+ " \"id\": 4,"
" \"pools\": [ { \"pool\": \"2001:db8:4::/80\" } ],"
" \"subnet\": \"2001:db8:4::/64\" "
" } ],"
" \"lenient-option-parsing\": true"
"},"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
" \"foo-bar\": true"
"},"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
" \"lenient-option-parsing\": 1"
"},"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"renew-timer\": 1, "
" \"rebind-timer\": 2, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { "
" \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"interface\": \"" + iface + "\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"interface\": \"" + bogus_iface_ + "\","
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"renew-timer\": 1000, "
"\"interface\": \"" + valid_iface_ + "\"," // Not valid. Can be defined in subnet only
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"interface-id\": \"" + valid_interface_id + "\","
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"renew-timer\": 1000, "
"\"interface-id\": \"foobar\"," // Not valid. Can be defined in subnet only
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"interface\": \"" + valid_iface_ + "\","
" \"interface-id\": \"foobar\","
"\"subnet6\": [ { "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - "
"2001:db8:1::ffff\" } ],"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }",
false);
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - "
"2001:db8:1::ffff\" } ],"
" \"rapid-commit\": true,"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }",
true);
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - "
"2001:db8:1::ffff\" } ],"
" \"rapid-commit\": false,"
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }",
false);
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ "
" { \"pool\": \"2001:db8:1::/96\" },"
" { \"pool\": \"2001:db8:1:0:abcd::/112\" }"
" \"subnet\": \"2001:db8:1::/64\" "
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ "
" { \"pool\": \"2001:db8:2::1 - 2001:db8:2::ff\" },"
" { \"pool\": \"2001:db8:2::300 - 2001:db8:2::3ff\" }"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"4001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"foo/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/foo\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/200\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"foo\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"foo - bar\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::ffff - 2001:db8:1::\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/1104\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
"\"valid-lifetime\": 4000 }";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:1::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { \"prefix\": \"3000::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1:04::/80\" } ],"
" \"subnet\": \"2001:db8:1::/40\","
" \"pd-pools\": ["
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:1::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:1::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:1::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:1::\", "
" \"data\": \"01\""
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ],"
"\"rebind-timer\": 2000,"
"\"renew-timer\": 1000,"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\","
" \"option-data\": [ {"
" \"space\": \"isc\""
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ]"
" \"space\": \"isc\""
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ]"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\", "
" \"option-data\": [ {"
" } ]"
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"2001:db8:2::/80\" } ],"
" \"subnet\": \"2001:db8:2::/64\", "
" \"option-data\": [ {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { "
" \"pool\": \"2001:db8:1::10 - 2001:db8:1::100\","
" \"option-data\": [ {"
" \"csv-format\": false"
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ]"
" \"space\": \"vendor-4491\""
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ]"
" \"space\": \"vendor-1234\""
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ]"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"relay\": { "
" \"ip-address\": \"2001:db8:1::abcd\""
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"relay\": { "
" \"ip-addresses\": [ \"2001:db9::abcd\", \"2001:db9::abce\" ]"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\", "
" \"client-class\": \"alpha\" "
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"2001:db8:2::/80\" } ],"
" \"subnet\": \"2001:db8:2::/64\", "
" \"client-class\": \"beta\" "
" },"
" {"
+ " \"id\": 3,"
" \"pools\": [ { \"pool\": \"2001:db8:3::/80\" } ],"
" \"subnet\": \"2001:db8:3::/64\", "
" \"client-class\": \"gamma\" "
" },"
" {"
+ " \"id\": 4,"
" \"pools\": [ { \"pool\": \"2001:db8:4::/80\" } ],"
" \"subnet\": \"2001:db8:4::/64\" "
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { "
" \"pool\": \"2001:db8:1::/80\", "
" \"client-class\": \"alpha\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pd-pools\": [ { "
" \"prefix-len\": 48, "
" \"delegated-len\": 64, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ], "
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ], "
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ], "
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ], "
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"reservations-global\": false,"
" \"reservations-out-of-pool\": false"
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\", "
" \"reservations-global\": false,"
" \"reservations-out-of-pool\": true"
" },"
" {"
+ " \"id\": 3,"
" \"pools\": [ { \"pool\": \"2001:db8:3::/64\" } ],"
" \"subnet\": \"2001:db8:3::/48\", "
" \"reservations-global\": false,"
" \"reservations-in-subnet\": false"
" },"
" {"
+ " \"id\": 4,"
" \"pools\": [ { \"pool\": \"2001:db8:4::/64\" } ],"
" \"subnet\": \"2001:db8:4::/48\", "
" \"reservations-global\": true,"
" \"reservations-in-subnet\": false"
" },"
" {"
+ " \"id\": 5,"
" \"pools\": [ { \"pool\": \"2001:db8:5::/64\" } ],"
" \"subnet\": \"2001:db8:5::/48\" "
" },"
" {"
+ " \"id\": 6,"
" \"pools\": [ { \"pool\": \"2001:db8:6::/64\" } ],"
" \"subnet\": \"2001:db8:6::/48\", "
" \"reservations-global\": true,"
" \"reservations-out-of-pool\": false"
" },"
" {"
+ " \"id\": 7,"
" \"pools\": [ { \"pool\": \"2001:db8:7::/64\" } ],"
" \"subnet\": \"2001:db8:7::/48\", "
" \"reservations-global\": true,"
"\"reservations-in-subnet\": true,"
"\"reservations-out-of-pool\": true,"
"\"subnet6\": [ { "
+ " \"id\": 1,"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"reservations-global\": false,"
" \"reservations-out-of-pool\": false"
" },"
" {"
+ " \"id\": 2,"
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\" "
" } ],"
" } \n"
"], \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ], \n"
" \"subnet\": \"2001:db8:1::/64\" } ], \n"
"\"valid-lifetime\": 4000 } \n";
" } \n"
"], \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8::1 - 2001:db8::ffff\" } ], \n"
" \"subnet\": \"2001:db8::/64\" \n"
" } ] \n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:: - 200:1db8::ffff\" } ], \n"
" \"subnet\": \"2001:db8::/32\" \n"
" } ] \n"
EXPECT_EQ(1, rcode);
string expected = "Failed to create pool defined by: "
- "2001:db8::-200:1db8::ffff (<string>:7:26)";
+ "2001:db8::-200:1db8::ffff (<string>:8:26)";
EXPECT_EQ(expected, text);
}
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:: - 2001:db8::ffff\" } ], \n"
" \"subnet\": \"2001:dc8::/32\" \n"
" } ] \n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8::/48\" \n"
" } ],\n"
"\"shared-networks\": [ ]\n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8::/48\" \n"
" } ],\n"
"\"shared-networks\": [ { } ]\n"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8::/48\" \n"
" } ],\n"
"\"shared-networks\": [ { \"name\": \"\" } ]\n"
TEST_F(Dhcp6ParserTest, sharedNetworksName) {
string config = "{\n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db8::1 - 2001:db8::ffff\" } ]\n"
" } ],\n"
"\"shared-networks\": [ {\n"
" \"name\": \"foo\"\n,"
" \"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db8::1 - 2001:db8::ffff\" } ]\n"
" } ]\n"
" \"name\": \"foo\"\n,"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db1::/64\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db2::/64\" } ],\n"
" \"renew-timer\": 2,\n"
" \"max-valid-lifetime\": 3333\n"
" },\n"
" { \n"
+ " \"id\": 3, \n"
" \"subnet\": \"2001:db3::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db3::/64\" } ]\n"
" }\n"
" \"reservations-in-subnet\": false,\n"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db1::/64\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db2::/64\" } ],\n"
" \"renew-timer\": 100\n,"
" \"name\": \"bar\",\n"
" \"subnet6\": [\n"
" {\n"
+ " \"id\": 3, \n"
" \"subnet\": \"2001:db3::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db3::/64\" } ]\n"
" }\n"
" \"rebind-timer\": 10, \n"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db1::/64\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"rebind-timer\": 100, \n"
" \"pools\": [ { \"pool\": \"2001:db2::/64\" } ],\n"
" \"name\": \"bar\",\n"
" \"subnet6\": [\n"
" {\n"
+ " \"id\": 3, \n"
" \"subnet\": \"2001:db3::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db3::/64\" } ]\n"
" }\n"
" \"name\": \"foo\"\n,"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"interface\": \"eth0\"\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"interface\": \"eth1\"\n"
" }\n"
" \"client-class\": \"alpha\",\n"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db1::/64\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db2::/64\" } ],\n"
" \"client-class\": \"beta\"\n"
" \"name\": \"bar\",\n"
" \"subnet6\": [\n"
" {\n"
+ " \"id\": 3, \n"
" \"subnet\": \"2001:db3::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db3::/64\" } ]\n"
" }\n"
" \"rapid-commit\": true,\n"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db1::/64\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db2::/64\" } ],\n"
" \"client-class\": \"beta\"\n"
" \"rapid-commit\": false,\n"
" \"subnet6\": [\n"
" {\n"
+ " \"id\": 3, \n"
" \"subnet\": \"2001:db3::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db3::/64\" } ]\n"
" }\n"
" \"name\": \"frog\"\n,"
" \"subnet6\": [\n"
" { \n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db1::/48\",\n"
" \"rapid-commit\": true,\n"
" \"pools\": [ { \"pool\": \"2001:db1::/64\" } ]\n"
" },\n"
" { \n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db2::/48\",\n"
" \"rapid-commit\": false,\n"
" \"pools\": [ { \"pool\": \"2001:db2::/64\" } ],\n"
"\"store-extended-info\": true,"
"\"subnet6\": [ "
"{ "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\","
" \"store-extended-info\": false"
"},"
"{"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::1 - 2001:db8:2::ffff\" } ],"
" \"subnet\": \"2001:db8:2::/64\" "
"} ],"
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
"{ "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
"},"
"{"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::1 - 2001:db8:2::ffff\" } ],"
" \"subnet\": \"2001:db8:2::/64\","
" \"store-extended-info\": true"
" } \n"
"], \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ] \n"
" } \n"
"], \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\""
" } ] \n"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth0\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"3000:1::/64\" } ],"
" \"subnet\": \"3000:1::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth0\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"3000:2::/64\" } ],"
" \"subnet\": \"3000:2::/48\", "
" \"interface-id\": \"\","
" },"
" \"subnet6\": [ \n";
string subnet1 =
- " {\"subnet\": \"3002::/64\", \n"
+ " {\"subnet\": \"3002::/64\", \"id\": 1, \n"
" \"pools\": [{ \"pool\": \"3002::100-3002::200\" }]}\n";
string subnet2 =
- " {\"subnet\": \"3003::/64\", \n"
+ " {\"subnet\": \"3003::/64\", \"id\": 2, \n"
" \"pools\": [{ \"pool\": \"3003::100-3003::200\" }]}\n";
string bad_subnet =
- " {\"comment\": \"3005::/64\", \n"
+ " {\"comment\": \"3005::/64\", \"id\": 10, \n"
" \"pools\": [{ \"pool\": \"3005::100-3005::200\" }]}\n";
string subnet_footer =
" ] \n";
" },"
" \"subnet6\": [ \n";
string subnet1 =
- " {\"subnet\": \"3002::/64\", \n"
+ " {\"subnet\": \"3002::/64\", \"id\": 1, \n"
" \"pools\": [{ \"pool\": \"3002::100-3002::200\" }]}\n";
string subnet2 =
- " {\"subnet\": \"3003::/64\", \n"
+ " {\"subnet\": \"3003::/64\", \"id\": 2, \n"
" \"pools\": [{ \"pool\": \"3003::100-3003::200\" }]}\n";
string bad_subnet =
- " {\"comment\": \"3005::/64\", \n"
+ " {\"comment\": \"3005::/64\", \"id\": 10, \n"
" \"pools\": [{ \"pool\": \"3005::100-3005::200\" }]}\n";
string subnet_footer =
" ] \n";
" \"interfaces\": [ \"*\" ]"
" },"
" \"subnet6\": ["
- " { \"subnet\": \"2001:db8:1::/64\" },"
- " { \"subnet\": \"2001:db8:2::/64\" }"
+ " { \"subnet\": \"2001:db8:1::/64\", \"id\": 1 },"
+ " { \"subnet\": \"2001:db8:2::/64\", \"id\": 2 }"
" ],"
" \"lease-database\": {"
" \"type\": \"memfile\", \"persist\": false }"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::ffff\" } ],"
" \"subnet\": \"2001:db8:1::/64\" } ],"
" \"dhcp-ddns\" : {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
\"subnet6\": [
{
\"subnet\": \"2001:db8:1::/64\",
+ \"id\": 1,
\"pools\": [ { \"pool\": \"2001:db8:1::10-2001:db8:1::100\" } ]
} ],
\"dhcp-ddns\": {
\"subnet6\": [
{
\"subnet\": \"2001:db8:1::/64\",
+ \"id\": 1,
\"pool\": [ { \"pool\": \"2001:db8:1::10-2001:db8:1::100\" } ]
} ],
\"loggers\": [
\"subnet6\": [
{
\"subnet\": \"2001:db8:1::/64\",
+ \"id\": 1,
\"pool\": [ { \"pool\": \"2001:db8:1::10-2001:db8:1::100\" } ]
} ],
\"loggers\": [
\"subnet6\": [
{
\"subnet\": \"2001:db8::/64\",
+ \"id\": 1,
\"pools\": [ { \"pool\": \"3000::-3000::ffff\" } ]
} ],
\"dhcp-ddns\": {
\"subnet6\": [
{
\"subnet\": \"2001:db8:1::/64\",
+ \"id\": 1,
\"pools\": [ { \"pool\": \"2001:db8:1::10-2001:db8:1::100\" } ]
} ],
\"dhcp-ddns\": {
\"subnet6\": [
{
\"subnet\": \"2001:db8:1::/64\",
+ \"id\": 1,
\"pools\": [ { \"pool\": \"2001:db8:1::10-2001:db8:1::100\" } ]
} ],
\"dhcp-ddns\": {
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\" "
" } ],"
" \"renew-timer\": 1000, "
" \"valid-lifetime\": 4000, "
" \"subnet6\": [ {"
+ " \"id\": 1, "
" \"interface\": \"eth0\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
" \"subnet\": \"2001:db8:1::/48\""
" \"renew-timer\": 1000, "
" \"valid-lifetime\": 4000, "
" \"subnet6\": [ {"
+ " \"id\": 1, "
" \"interface\": \"eth0\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], "
" \"subnet\": \"2001:db8:1::/48\", "
// - user-contexts defined in subnet and each pool
"{"
" \"subnet6\": [ {"
+ " \"id\": 1, "
" \"pools\": [ {"
" \"pool\": \"2001:db8:1::/64\","
" \"user-context\": { \"value\": 42 }"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"relay\": { "
" \"ip-address\": \"2001:db8:3::1\""
" }"
" }, "
" { \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
+ " \"id\": 2, "
" \"subnet\": \"2001:db8:2::/48\", "
" \"relay\": { "
" \"ip-address\": \"2001:db8:3::2\""
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
" \"rebind-timer\": 2000, "
" \"renew-timer\": 1000, "
" \"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/48\" "
" } ],"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], \n"
" \"subnet\": \"2001:db8:1::/48\", \n"
" \"interface\": \"eth0\" \n"
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1:1::/64\" } ],"
" \"interface\" : \"eth0\" , "
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1:1::/64\" } ],"
" \"interface\" : \"eth0\" , "
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1:1::/64\" } ],"
" \"interface\" : \"eth0\" , "
"\"renew-timer\": 1000,\n"
"\"ddns-send-updates\": false,\n"
"\"subnet6\": [ {\n"
+ " \"id\": 1, \n"
" \"subnet\": \"2001:db8:1::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::10\" } ],\n"
" \"interface\": \"eth0\"\n"
" },\n"
" {\n"
+ " \"id\": 2, \n"
" \"subnet\": \"2001:db8:2::/48\",\n"
" \"pools\": [ { \"pool\": \"2001:db8:2::1 - 2001:db8:2::10\" } ],\n"
" \"interface\": \"eth1\",\n"
"\"name\": \"frog\", \n"
"\"interface\": \"eth0\", \n"
"\"subnet6\": [ { \n"
+ "\"id\": 1, \n"
"\"subnet\": \"2001:db8:1::/64\", \n"
"\"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::1\" } ], \n"
"\"interface\": \"eth0\", \n"
"\"ddns-qualifying-suffix\": \"one.example.com.\" \n"
" }, \n"
" { \n"
+ "\"id\": 2, \n"
"\"subnet\": \"2001:db8:2::/64\", \n"
"\"pools\": [ { \"pool\": \"2001:db8:2::1 - 2001:db8:2::1\" } ], \n"
"\"interface\": \"eth0\", \n"
"\"name\": \"frog\", \n"
"\"interface\": \"eth0\", \n"
"\"subnet6\": [ { \n"
+ "\"id\": 1, \n"
"\"subnet\": \"2001:db8:1::/64\", \n"
"\"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::1\" } ], \n"
"\"interface\": \"eth0\", \n"
"\"ddns-send-updates\": true \n"
" }, \n"
" { \n"
+ "\"id\": 2, \n"
"\"subnet\": \"2001:db8:2::/64\", \n"
"\"pools\": [ { \"pool\": \"2001:db8:2::1 - 2001:db8:2::1\" } ], \n"
"\"interface\": \"eth0\", \n"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"" + valid_iface_ + "\" "
" }, {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\" "
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"" + valid_iface_ + "\" "
" }, {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\" "
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"rapid-commit\": true, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:2::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": [ {"
" \"prefix\": \"2001:db8:1::\", "
" \"prefix-len\": 56, "
"\"renew-timer\": 1000,\n"
"\"host-reservation-identifiers\": [ \"flex-id\" ],\n"
"\"subnet6\": [ {\n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],\n"
" \"subnet\": \"2001:db8::/48\", \n"
" \"interface\": \"" + valid_iface_ + "\",\n"
"\"renew-timer\": 1000,\n"
"\"host-reservation-identifiers\": [ \"flex-id\" ],\n"
"\"subnet6\": [ {\n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],\n"
" \"subnet\": \"2001:db8::/48\", \n"
" \"interface\": \"" + valid_iface_ + "\",\n"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth1\" "
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1:1::/64\" } ],"
" \"interface\" : \"eth0\" , "
"\"mac-sources\": [ \"ipv6-link-local\" ], "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"interface\" : \"eth0\" , "
"\"mac-sources\": [ \"ipv6-link-local\" ], "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"interface\" : \"eth0\" , "
"} ],"
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ {"
" \"pool\": \"2001:db8:1::/64\","
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"interface\" : \"eth0\","
"} ],"
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"interface\" : \"eth0\","
"\"renew-timer\": 10, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::2\" } ],"
" \"pd-pools\": ["
"\"renew-timer\": 10, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::2\" } ],"
" \"pd-pools\": ["
"\"renew-timer\": 1000, "
"\"subnet6\": [ "
" { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8:1::/48\", "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::10\" } ],"
" \"pd-pools\": [ { \"prefix\": \"3001::\", \"prefix-len\": 32,"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:3::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"option-data\": [ {"
" \"name\": \"sip-server-addr\","
" \"data\": \"2001:db8::abcd\""
" \"data\": \"2001:db8::1\""
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"subnet\": \"2001:db8::/32\", "
" \"interface\": \"eth0\","
" \"option-data\": [ {"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/80\" } ],"
" \"subnet\": \"2001:db8:2::/64\", "
- " \"id\": 0"
" },"
" {"
+ " \"id\": 3, "
" \"pools\": [ { \"pool\": \"2001:db8:3::/80\" } ],"
" \"subnet\": \"2001:db8:3::/64\" "
" } ],"
"\"renew-timer\": 1000, \n"
"# comments in the middle should be ignored, too\n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" } ],"
"\"renew-timer\": 1000, \n"
"// comments in the middle should be ignored, too\n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" } ],"
"\"renew-timer\": 1000, \n"
"/* comments in the middle should be ignored, too*/\n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" } ],"
"}";
string include = "\n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" } ]\n";
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/80\" } ],"
" \"subnet\": \"2001:db8:1::/64\" "
" } ],"
"\"rebind-timer\": 2000, \n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"test\" } ],\n"
"# and here\n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\""
"\"rebind-timer\": 2000, // everything after // is ignored\n"
"\"renew-timer\": 1000, // this will be ignored, too\n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\""
"\"rebind-timer\": 2000, # everything after # is ignored\n"
"\"renew-timer\": 1000, # this will be ignored, too\n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\""
"\"rebind-timer\": 2000,\n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\""
"\"rebind-timer\": 2000,\n"
"\"renew-timer\": 1000, \n"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"user-context\": { \"comment\": \"indirect\" },"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
},
],
"subnet": "2001:db8:1::/64",
+ "id": 1,
},
],
},
addLog("<string>:32.8");
addLog("<string>:43.38");
addLog("<string>:44.12");
- addLog("<string>:46.36");
- addLog("<string>:47.8");
- addLog("<string>:48.6");
- addLog("<string>:49.4");
+ addLog("<string>:47.16");
+ addLog("<string>:48.8");
+ addLog("<string>:49.6");
+ addLog("<string>:50.4");
EXPECT_TRUE(checkFile());
// Test with many consecutive commas.
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth0\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:3::/64\" } ],"
" \"subnet\": \"2001:db8:3::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth1\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:4::/64\" } ],"
" \"subnet\": \"2001:db8:4::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"3000:1::/64\" } ],"
" \"subnet\": \"3000:1::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth0\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"3000:2::/64\" } ],"
" \"subnet\": \"3000:2::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"3000:3::/64\" } ],"
" \"subnet\": \"3000:3::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth1\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"3000:4::/64\" } ],"
" \"subnet\": \"3000:4::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": ["
" { \"prefix\": \"3000::\", "
" \"prefix-len\": 72, "
" \"interface\": \"eth0\""
" },"
" {"
+ " \"id\": 2, "
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:2::\", "
" \"prefix-len\": 72, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:3:01::\", "
" \"prefix-len\": 72, "
" \"interface\": \"eth1\""
" },"
" {"
+ " \"id\": 2, "
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:4:01::\", "
" \"prefix-len\": 72, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"pd-pools\": ["
" { \"prefix\": \"3000::\", "
" \"data\": \"normal_erouter_v6.cm\""
"}],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
" \"interface\": \"eth0\""
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::/64\" } ],"
" \"subnet\": \"2001:db8:2::/48\", "
" \"interface-id\": \"\","
" \"data\": \"3000:1::789\""
" } ]"
" } ],"
+ " \"id\": 1, "
" \"subnet\": \"3000::/32\", "
" \"interface\": \"eth0\""
" } ],"
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": ["
" { \"prefix\": \"3000::\", "
" \"prefix-len\": 72, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"pd-pools\": ["
" { \"prefix\": \"3000::\", "
" \"data\": \"normal_erouter_v6.cm\""
"}],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface-id\": \"\","
" \"data\": \"3000:2::1\""
"} ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"option-data\": [ {"
" \"name\": \"dns-servers\","
" \"data\": \"3000:1::567\""
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"pd-pools\": ["
" { \"prefix\": \"3000::\", "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:3::\", "
" \"prefix-len\": 48, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::10\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\","
" \"rapid-commit\": true"
" },"
" {"
+ " \"id\": 2, "
" \"pools\": [ { \"pool\": \"2001:db8:2::1 - 2001:db8:2::10\" } ],"
" \"subnet\": \"2001:db8:2::/48\", "
" \"interface\": \"eth1\","
" \"data\": \"3000:2::1\""
"} ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"option-data\": [ {"
" \"name\": \"dns-servers\","
" \"data\": \"3000:1::567\""
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pd-pools\": ["
" { \"prefix\": \"2001:db8:3::\", "
" \"prefix-len\": 48, "
"\"rebind-timer\": 2000, "
"\"renew-timer\": 1000, "
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::1 - 2001:db8:1::10\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"interface\": \"eth0\", "
" \"delegated-len\": 64"
" }"
" ],"
+ " \"id\": 1, "
" \"subnet\": \"3000::/32\", "
" \"interface\": \"eth0\""
" }"
" \"delegated-len\": 64"
" }"
" ],"
+ " \"id\": 1, "
" \"subnet\": \"3000::/32\", "
" \"interface\": \"eth0\""
" }"
" \"interface\": \"eth1\","
" \"subnet6\": ["
" {"
+ " \"id\": 100, "
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-allocator\": \"flq\","
" \"pd-pools\": ["
" ]"
" },"
" {"
+ " \"id\": 10, "
" \"subnet\": \"2001:db8:2::/64\","
" \"pd-allocator\": \"random\","
" \"pd-pools\": ["
" \"interface\": \"eth1\","
" \"subnet6\": ["
" {"
+ " \"id\": 100, "
" \"subnet\": \"2001:db8:1::/64\","
" \"pd-allocator\": \"random\","
" \"pd-pools\": ["
" ]"
" },"
" {"
+ " \"id\": 10, "
" \"subnet\": \"2001:db8:2::/64\","
" \"pd-allocator\": \"flq\","
" \"pd-pools\": ["
" \"subnet6\": [ { \n"
" \"interface\": \"eth0\", \n"
" \"subnet\": \"2001:db8:1::/48\", \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], \n"
" \"pd-pools\": [ \n"
" { \n"
" \"subnet6\": [ { \n"
" \"interface\": \"eth0\", \n"
" \"subnet\": \"2001:db8:1::/48\", \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], \n"
" \"pd-pools\": [ \n"
" { \n"
" \"subnet6\": [ { \n"
" \"interface\": \"eth0\", \n"
" \"subnet\": \"2001:db8:1::/48\", \n"
+ " \"id\": 1, \n"
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ], \n"
" \"pd-pools\": [ \n"
" { \n"
}
],
"subnet": "2001:db8:1::/48",
+ "id": 1,
"interface-id": ""
}
]
}
],
"subnet": "2001:db8:1::/48",
+ "id": 1,
"interface-id": ""
}
]
}
],
"subnet": "2001:db8:1::/48",
+ "id": 1,
"interface-id": ""
}
]
"pool": "2001:db8::/64"
}
],
- "subnet": "2001:db8::/64"
+ "subnet": "2001:db8::/64",
+ "id": 1
}
]
}
" \"data\": \"ISC\""
" }],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"renew-timer\": 1000, "
" \"csv-format\": true"
" }],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8:1::/64\" } ],"
" \"subnet\": \"2001:db8:1::/48\", "
" \"renew-timer\": 1000, "
" } ]"
" } ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/64\", "
" \"interface\": \"eth0\" "
" }"
" ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/64\", "
" \"interface\": \"eth0\" "
" }"
" ],"
"\"subnet6\": [ { "
+ " \"id\": 1, "
" \"pools\": [ { \"pool\": \"2001:db8::/64\" } ],"
" \"subnet\": \"2001:db8::/64\", "
" \"interface\": \"eth0\" "