Kea
1.9.9-git
|
Implements parser for IPv4 shared networks. More...
#include <shared_network_parser.h>
Public Member Functions | |
SharedNetwork4Parser (bool check_iface=true) | |
Constructor. More... | |
SharedNetwork4Ptr | parse (const data::ConstElementPtr &shared_network_data) |
Parses shared configuration information for IPv4 shared network. More... | |
Public Member Functions inherited from isc::data::SimpleParser | |
uint16_t | getUint16 (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a value converted to uint16_t. More... | |
uint32_t | getUint32 (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a value converted to uint32_t. More... | |
uint8_t | getUint8 (ConstElementPtr scope, const std::string &name) |
Get an uint8_t value. More... | |
const dhcp::Triplet< uint32_t > | parseIntTriplet (const data::ConstElementPtr &scope, const std::string &name) |
Parses an integer triplet. More... | |
Protected Attributes | |
bool | check_iface_ |
Check if the specified interface exists in the system. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from isc::dhcp::BaseNetworkParser | |
static void | moveReservationMode (isc::data::ElementPtr config) |
Moves deprecated reservation-mode parameter to new reservations flags. More... | |
Static Public Member Functions inherited from isc::data::SimpleParser | |
static void | checkKeywords (const SimpleKeywords &keywords, isc::data::ConstElementPtr scope) |
Checks acceptable keywords with their expected type. More... | |
static void | checkRequired (const SimpleRequiredKeywords &required, isc::data::ConstElementPtr scope) |
Checks that all required keywords are present. More... | |
static size_t | deriveParams (isc::data::ConstElementPtr parent, isc::data::ElementPtr child, const ParamsList ¶ms) |
Derives (inherits) parameters from parent scope to a child. More... | |
static isc::asiolink::IOAddress | getAddress (const ConstElementPtr &scope, const std::string &name) |
Returns a IOAddress parameter from a scope. More... | |
static bool | getBoolean (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a boolean parameter from a scope. More... | |
static double | getDouble (const ConstElementPtr &scope, const std::string &name) |
Returns a floating point parameter from a scope. More... | |
static int64_t | getInteger (isc::data::ConstElementPtr scope, const std::string &name) |
Returns an integer parameter from a scope. More... | |
static int64_t | getInteger (isc::data::ConstElementPtr scope, const std::string &name, int64_t min, int64_t max) |
Returns an integer parameter from a scope and checks its range. More... | |
static const data::Element::Position & | getPosition (const std::string &name, const data::ConstElementPtr parent) |
Utility method that returns position of an element. More... | |
static std::string | getString (isc::data::ConstElementPtr scope, const std::string &name) |
Returns a string parameter from a scope. More... | |
static size_t | setDefaults (isc::data::ElementPtr scope, const SimpleDefaults &default_values) |
Sets the default values. More... | |
static size_t | setListDefaults (isc::data::ConstElementPtr list, const SimpleDefaults &default_values) |
Sets the default values for all entries in a list. More... | |
Protected Member Functions inherited from isc::dhcp::BaseNetworkParser | |
void | parseCacheParams (const data::ConstElementPtr &network_data, NetworkPtr &network) |
Parses parameters related to lease cache settings. More... | |
void | parseCommon (const data::ConstElementPtr &network_data, NetworkPtr &network) |
Parses common parameters. More... | |
void | parseDdnsParams (const data::ConstElementPtr &network_data, NetworkPtr &network) |
Parses parameters pertaining to DDNS behavior. More... | |
void | parseTeePercents (const data::ConstElementPtr &network_data, NetworkPtr &network) |
Parses parameters related to "percent" timers settings. More... | |
Protected Member Functions inherited from isc::data::SimpleParser | |
template<typename target_type , target_type convert> | |
target_type | getAndConvert (isc::data::ConstElementPtr scope, const std::string &name, const std::string &type_name) |
Returns a converted value from a scope. More... | |
template<typename int_type > | |
int_type | getIntType (isc::data::ConstElementPtr scope, const std::string &name) |
Returns an integer value with range checking from a scope. More... | |
Implements parser for IPv4 shared networks.
Definition at line 21 of file shared_network_parser.h.
isc::dhcp::SharedNetwork4Parser::SharedNetwork4Parser | ( | bool | check_iface = true | ) |
Constructor.
check_iface | Check if the specified interface exists in the system. |
Definition at line 29 of file shared_network_parser.cc.
SharedNetwork4Ptr isc::dhcp::SharedNetwork4Parser::parse | ( | const data::ConstElementPtr & | shared_network_data | ) |
Parses shared configuration information for IPv4 shared network.
shared_network_data | Data element holding shared network configuration to be parsed. |
DhcpConfigError | when shared network configuration is invalid. |
Definition at line 34 of file shared_network_parser.cc.
References check_iface_, isc::data::SimpleParser::checkKeywords(), isc::db::error, isc::data::SimpleParser::getBoolean(), isc::dhcp::IfaceMgr::getIface(), isc::data::SimpleParser::getString(), isc::dhcp::CfgMgr::instance(), isc::dhcp::IfaceMgr::instance(), isc_throw, isc::dhcp::Pkt4::MAX_FILE_LEN, isc::dhcp::Pkt4::MAX_SNAME_LEN, isc::dhcp::BaseNetworkParser::moveReservationMode(), isc::dhcp::OptionDataListParser::parse(), isc::dhcp::RelayInfoParser::parse(), isc::dhcp::Subnets4ListConfigParser::parse(), isc::dhcp::BaseNetworkParser::parseCacheParams(), isc::dhcp::BaseNetworkParser::parseCommon(), isc::dhcp::BaseNetworkParser::parseDdnsParams(), isc::dhcp::BaseNetworkParser::parseTeePercents(), isc::dhcp::SimpleParser4::SHARED_NETWORK4_PARAMETERS, isc::dhcp::Option::V4, and isc::Exception::what().
|
protected |
Check if the specified interface exists in the system.
Definition at line 41 of file shared_network_parser.h.
Referenced by parse().