10#include <boost/algorithm/string/classification.hpp>
11#include <boost/algorithm/string/predicate.hpp>
17 :
name_(name), vendor_space_(vendor_space) {
28 using namespace boost::algorithm;
32 if (all(name, boost::is_from_range(
'a',
'z') ||
33 boost::is_from_range(
'A',
'Z') ||
35 boost::is_any_of(std::string(
"-_"))) &&
39 !all(find_head(name, 1), boost::is_any_of(std::string(
"-_"))) &&
40 !all(find_tail(name, 1), boost::is_any_of(std::string(
"-_")))) {
49 enterprise_number_(0) {
53 const uint32_t enterprise_number)
55 enterprise_number_(enterprise_number) {
60 enterprise_number_ = enterprise_number;
Exception to be thrown when invalid option space is specified.
OptionSpace6(const std::string &name)
Constructor for non-vendor-specific options.
void setVendorSpace()
Mark option space as vendor specific.
static bool validateName(const std::string &name)
Checks that the provided option space name is valid.
OptionSpace(const std::string &name, const bool vendor_space=false)
Constructor.
#define isc_throw(type, stream)
A shortcut macro to insert known values into exception arguments.
Defines the logger used by the top-level component of kea-lfc.