\"hw-address\" { return isc::dhcp::Dhcp6Parser::make_HW_ADDRESS(loc); }
\"hostname\" { return isc::dhcp::Dhcp6Parser::make_HOSTNAME(loc); }
\"space\" { return isc::dhcp::Dhcp6Parser::make_SPACE(loc); }
+\"csv-format\" { return isc::dhcp::Dhcp6Parser::make_CSV_FORMAT(loc); }
\"hooks-libraries\" { return isc::dhcp::Dhcp6Parser::make_HOOKS_LIBRARIES(loc); }
\"library\" { return isc::dhcp::Dhcp6Parser::make_LIBRARY(loc); }
\"expired-leases-processing\" { return isc::dhcp::Dhcp6Parser::make_EXPIRED_LEASES_PROCESSING(loc); }
+\"dhcp4o6-port\" { return isc::dhcp::Dhcp6Parser::make_DHCP4O6_PORT(loc); }
{JSONString} {
// A string has been matched. It contains the actual string and single quotes.
DATA "data"
CODE "code"
SPACE "space"
+ CSV_FORMAT "csv-format"
POOLS "pools"
POOL "pool"
HTYPE "htype"
TIME "time"
+ DHCP4O6_PORT "dhcp4o6-port"
+
LOGGING "Logging"
LOGGERS "loggers"
OUTPUT_OPTIONS "output_options"
| hooks_libraries
| expired_leases_processing
| server_id
+| dhcp4o6_port
;
preferred_lifetime: PREFERRED_LIFETIME COLON INTEGER {
| option_data_data
| option_data_code
| option_data_space
+| option_data_csv_format
;
ElementPtr space(new StringElement($3)); ctx.stack_.back()->set("space", space);
};
+option_data_csv_format: CSV_FORMAT COLON BOOLEAN {
+ ElementPtr space(new BoolElement($3)); ctx.stack_.back()->set("csv-format", space);
+};
+
// ---- pools ------------------------------------
// This defines the "pools": [ ... ] entry that may appear in subnet6.
ElementPtr time(new IntElement($3));
ctx.stack_.back()->set("time", time);
};
-
-
-
-
// --- end of server-id --------------------------------------
+dhcp4o6_port: DHCP4O6_PORT COLON INTEGER {
+ ElementPtr time(new IntElement($3));
+ ctx.stack_.back()->set("dhcp4o6-port", time);
+};
+
// --- logging entry -----------------------------------------
// This defines the top level "Logging" object. It parses