mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-30 21:45:37 +00:00
[5098] Specialized list2 to string only - migrated global client class defs
This commit is contained in:
@@ -441,8 +441,7 @@ DhcpConfigParser* createGlobalDhcp4ConfigParser(const std::string& config_id,
|
||||
// control-socket has been converted to SimpleParser already.
|
||||
} else if (config_id.compare("expired-leases-processing") == 0) {
|
||||
parser = new ExpirationConfigParser();
|
||||
} else if (config_id.compare("client-classes") == 0) {
|
||||
parser = new ClientClassDefListParser(config_id, globalContext());
|
||||
// client-classes has been converted to SimpleParser already.
|
||||
// host-reservation-identifiers have been converted to SimpleParser already.
|
||||
} else {
|
||||
isc_throw(DhcpConfigError,
|
||||
@@ -573,7 +572,6 @@ configureDhcp4Server(Dhcpv4Srv&, isc::data::ConstElementPtr config_set) {
|
||||
ParserPtr subnet_parser;
|
||||
ParserPtr iface_parser;
|
||||
ParserPtr leases_parser;
|
||||
ParserPtr client_classes_parser;
|
||||
|
||||
// Some of the parsers alter the state of the system in a way that can't
|
||||
// easily be undone. (Or alter it in a way such that undoing the change has
|
||||
@@ -646,6 +644,13 @@ configureDhcp4Server(Dhcpv4Srv&, isc::data::ConstElementPtr config_set) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
if (config_pair.first == "client-classes") {
|
||||
ClientClassDefListParser parser;
|
||||
parser.parse(config_pair.second, AF_INET);
|
||||
continue;
|
||||
}
|
||||
|
||||
ParserPtr parser(createGlobalDhcp4ConfigParser(config_pair.first,
|
||||
config_pair.second));
|
||||
LOG_DEBUG(dhcp4_logger, DBG_DHCP4_DETAIL, DHCP4_PARSER_CREATED)
|
||||
@@ -665,8 +670,6 @@ configureDhcp4Server(Dhcpv4Srv&, isc::data::ConstElementPtr config_set) {
|
||||
// but defer the commit until everything else has committed.
|
||||
hooks_parser = parser;
|
||||
parser->build(config_pair.second);
|
||||
} else if (config_pair.first == "client-classes") {
|
||||
client_classes_parser = parser;
|
||||
} else {
|
||||
// Those parsers should be started before other
|
||||
// parsers so we can call build straight away.
|
||||
@@ -679,15 +682,6 @@ configureDhcp4Server(Dhcpv4Srv&, isc::data::ConstElementPtr config_set) {
|
||||
}
|
||||
}
|
||||
|
||||
// The class definitions parser is the next one to be run.
|
||||
std::map<std::string, ConstElementPtr>::const_iterator cc_config =
|
||||
values_map.find("client-classes");
|
||||
if (cc_config != values_map.end()) {
|
||||
config_pair.first = "client-classes";
|
||||
client_classes_parser->build(cc_config->second);
|
||||
client_classes_parser->commit();
|
||||
}
|
||||
|
||||
// The subnet parser is the next one to be run.
|
||||
std::map<std::string, ConstElementPtr>::const_iterator subnet_config =
|
||||
values_map.find("subnet4");
|
||||
|
Reference in New Issue
Block a user