16 #include <boost/shared_ptr.hpp> 280 #endif // CFG_SUBNETS4_H Subnet4Ptr selectSubnet(const SubnetSelector &selector) const
Returns a pointer to the selected subnet.
static SubnetSelector initSelector(const Pkt4Ptr &query)
Build selector from a client's message.
Subnet4Ptr getSubnet(const SubnetID id) const
Returns subnet with specified subnet-id value.
bool hasSubnetWithServerId(const asiolink::IOAddress &server_id) const
Checks if specified server identifier has been specified for any subnet.
boost::shared_ptr< Subnet4 > Subnet4Ptr
A pointer to a Subnet4 object.
void add(const Subnet4Ptr &subnet)
Adds new subnet to the configuration.
boost::shared_ptr< Element > ElementPtr
boost::shared_ptr< CfgSubnets4 > CfgSubnets4Ptr
Non-const pointer.
boost::shared_ptr< const CfgSubnets4 > ConstCfgSubnets4Ptr
Const pointer.
Subnet selector used to specify parameters used to select a subnet.
Abstract class for configuration Cfg_* classes.
boost::shared_ptr< Pkt4 > Pkt4Ptr
A pointer to Pkt4 object.
Subnet4Ptr selectSubnet4o6(const SubnetSelector &selector) const
Attempts to do subnet selection based on DHCP4o6 information.
Holds subnets configured for the DHCPv4 server.
virtual isc::data::ElementPtr toElement() const
Unparse a configuration object.
Defines the logger used by the top-level component of kea-dhcp-ddns.
boost::shared_ptr< const Subnet4 > ConstSubnet4Ptr
A const pointer to a Subnet4 object.
boost::multi_index_container< Subnet4Ptr, boost::multi_index::indexed_by< boost::multi_index::random_access< boost::multi_index::tag< SubnetRandomAccessIndexTag > >, boost::multi_index::ordered_unique< boost::multi_index::tag< SubnetSubnetIdIndexTag >, boost::multi_index::const_mem_fun< Subnet, SubnetID, &Subnet::getID > >, boost::multi_index::ordered_unique< boost::multi_index::tag< SubnetPrefixIndexTag >, boost::multi_index::const_mem_fun< Subnet, std::string, &Subnet::toText > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetServerIdIndexTag >, boost::multi_index::const_mem_fun< Network4, asiolink::IOAddress, &Network4::getServerId > > >> Subnet4Collection
A collection of Subnet4 objects.
void removeStatistics()
Removes statistics.
ConstSubnet4Ptr getBySubnetId(const SubnetID &subnet_id) const
Returns const pointer to a subnet identified by the specified subnet identifier.
ConstSubnet4Ptr getByPrefix(const std::string &subnet_prefix) const
Returns const pointer to a subnet which matches the specified prefix in the canonical form.
The IOAddress class represents an IP addresses (version agnostic)
void del(const ConstSubnet4Ptr &subnet)
Removes subnet from the configuration.
const Subnet4Collection * getAll() const
Returns pointer to the collection of all IPv4 subnets.
Container for storing client class names.
void updateStatistics()
Updates statistics.
uint32_t SubnetID
Unique identifier for a subnet (both v4 and v6)