continue;
}
Element::types expected = keywords.at(entry.first);
- if (entry.second->getType() == expected) {
+ if ((expected == Element::any) ||
+ (entry.second->getType() == expected)) {
continue;
}
isc_throw(DhcpConfigError, "'" << entry.first << "' parameter is not "
const SimpleKeywords KEYWORDS = {
{ "id", Element::integer },
{ "prefix", Element::string },
- { "map", Element::map }
+ { "map", Element::map },
+ { "any", Element::any }
};
/// This table defines sample default values. Although these are DHCPv6
EXPECT_NO_THROW(SimpleParser::checkKeywords(KEYWORDS, empty));
ConstElementPtr id = Element::fromJSON("{ \"id\": 1 }");
EXPECT_NO_THROW(SimpleParser::checkKeywords(KEYWORDS, id));
+ ConstElementPtr any = Element::fromJSON("{ \"any\": 1 }");
+ EXPECT_NO_THROW(SimpleParser::checkKeywords(KEYWORDS, any));
ConstElementPtr bad_id = Element::fromJSON("{ \"id\": true }");
EXPECT_THROW(SimpleParser::checkKeywords(KEYWORDS, bad_id),
DhcpConfigError);