Kea 2.7.6
|
Parsers for client class definitions. More...
#include <cc/data.h>
#include <cc/simple_parser.h>
#include <eval/eval_context.h>
#include <dhcpsrv/client_class_def.h>
#include <dhcpsrv/parsers/option_data_parser.h>
#include <functional>
#include <list>
Go to the source code of this file.
Classes | |
class | isc::dhcp::ClientClassDefListParser |
Parser for a list of client class definitions. More... | |
class | isc::dhcp::ClientClassDefParser |
Parser for a single client class definition. More... | |
class | isc::dhcp::ExpressionParser |
Parser for a logical expression. More... | |
Namespaces | |
namespace | isc |
Defines the logger used by the top-level component of kea-lfc. | |
namespace | isc::dhcp |
Typedefs | |
typedef boost::shared_ptr< ClientClassDefParser > | isc::dhcp::ClientClassDefParserPtr |
Defines a pointer to a ClientClassDefParser. | |
Parsers for client class definitions.
These parsers are used to parse lists of client class definitions into a ClientClassDictionary of ClientClassDef instances. Each ClientClassDef consists of (at least) a name, an expression, option-def and option-data. Currently only a not empty name is required.
There parsers defined are:
ClientClassDefListParser - creates a ClientClassDictionary from a list of element maps, where each map contains the entries that specify a single class. The names of the classes in the are expected to be unique. Attempting to define a duplicate class will result in an DhcpConfigError throw. At the end the dictionary is stored by the CfgMgr.
ClientClassDefParser - creates a ClientClassDefinition from an element map. The elements are as follows:
ExpressionParser - creates an eval::Expression from a string element, using the Eval Parser.
Definition in file client_class_def_parser.h.