}
}
+\"service-sockets-require-all\" {
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser4Context::INTERFACES_CONFIG:
+ return isc::dhcp::Dhcp4Parser::make_SERVICE_SOCKETS_REQUIRE_ALL(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp4Parser::make_STRING("service-sockets-require-all", driver.loc_);
+ }
+}
+
+\"service-sockets-retry-wait-time\" {
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser4Context::INTERFACES_CONFIG:
+ return isc::dhcp::Dhcp4Parser::make_SERVICE_SOCKETS_RETRY_WAIT_TIME(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp4Parser::make_STRING("service-sockets-retry-wait-time", driver.loc_);
+ }
+}
+
+\"service-sockets-max-retries\" {
+ switch(driver.ctx_) {
+ case isc::dhcp::Parser4Context::INTERFACES_CONFIG:
+ return isc::dhcp::Dhcp4Parser::make_SERVICE_SOCKETS_MAX_RETRIES(driver.loc_);
+ default:
+ return isc::dhcp::Dhcp4Parser::make_STRING("service-sockets-max-retries", driver.loc_);
+ }
+}
+
\"lease-database\" {
switch(driver.ctx_) {
case isc::dhcp::Parser4Context::DHCP4:
SAME_AS_INBOUND "same-as-inbound"
USE_ROUTING "use-routing"
RE_DETECT "re-detect"
+ SERVICE_SOCKETS_REQUIRE_ALL "service-sockets-require-all"
+ SERVICE_SOCKETS_RETRY_WAIT_TIME "service-sockets-retry-wait-time"
+ SERVICE_SOCKETS_MAX_RETRIES "service-sockets-max-retries"
SANITY_CHECKS "sanity-checks"
LEASE_CHECKS "lease-checks"
| dhcp_socket_type
| outbound_interface
| re_detect
+ | service_sockets_require_all
+ | service_sockets_retry_wait_time
+ | service_sockets_max_retries
| user_context
| comment
| unknown_map_entry
ctx.stack_.back()->set("re-detect", b);
};
+service_sockets_require_all: SERVICE_SOCKETS_REQUIRE_ALL COLON BOOLEAN {
+ ctx.unique("service-sockets-require-all", ctx.loc2pos(@1));
+ ElementPtr b(new BoolElement($3, ctx.loc2pos(@3)));
+ ctx.stack_.back()->set("service-sockets-require-all", b);
+};
+
+service_sockets_retry_wait_time: SERVICE_SOCKETS_RETRY_WAIT_TIME COLON INTEGER {
+ ctx.unique("service-sockets-retry-wait-time", ctx.loc2pos(@1));
+ ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
+ ctx.stack_.back()->set("service-sockets-retry-wait-time", n);
+};
+
+service_sockets_max_retries: SERVICE_SOCKETS_MAX_RETRIES COLON INTEGER {
+ ctx.unique("service-sockets-max-retries", ctx.loc2pos(@1));
+ ElementPtr n(new IntElement($3, ctx.loc2pos(@3)));
+ ctx.stack_.back()->set("service-sockets-max-retries", n);
+};
lease_database: LEASE_DATABASE {
ctx.unique("lease-database", ctx.loc2pos(@1));