Kea: subnet.h File Reference

| Kea 3.2.0-git

subnet.h File Reference
`#include <asiolink/io_address.h>`
`#include <cc/data.h>`
`#include <cc/user_context.h>`
`#include <dhcp/option_space_container.h>`
`#include <dhcpsrv/allocator.h>`
`#include <dhcpsrv/allocation_state.h>`
`#include <dhcpsrv/lease.h>`
`#include <dhcpsrv/network.h>`
`#include <dhcpsrv/pool.h>`
`#include <dhcpsrv/subnet_id.h>`
`#include <util/bigints.h>`
`#include <util/dhcp_space.h>`
`#include <util/triplet.h>`
`#include <boost/enable_shared_from_this.hpp>`
`#include <boost/multi_index/mem_fun.hpp>`
`#include <boost/multi_index/indexed_by.hpp>`
`#include <boost/multi_index/ordered_index.hpp>`
`#include <boost/multi_index/random_access_index.hpp>`
`#include <boost/multi_index_container.hpp>`
`#include <boost/date_time/posix_time/posix_time.hpp>`
`#include <boost/pointer_cast.hpp>`
`#include <boost/shared_ptr.hpp>`
`#include <cstdint>`
`#include <map>`
`#include <utility>`
Include dependency graph for subnet.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
class | isc::dhcp::Subnet
class | isc::dhcp::Subnet4
| A configuration holder for IPv4 subnet. More...
class | isc::dhcp::Subnet6
| A configuration holder for IPv6 subnet. More...
class | isc::dhcp::SubnetFetcher< ReturnPtrType, CollectionType >
| A class containing static convenience methods to fetch the subnets from the containers. More...
struct | isc::dhcp::SubnetModificationTimeIndexTag
| Tag for the index for searching by subnet modification time. More...
struct | isc::dhcp::SubnetPrefixIndexTag
| Tag for the index for searching by subnet prefix. More...
struct | isc::dhcp::SubnetServerIdIndexTag
| Tag for the index for searching by server identifier. More...
struct | isc::dhcp::SubnetSubnetIdIndexTag
| Tag for the index for searching by subnet identifier. More...

## Namespaces
namespace | isc
| Defines the logger used by the top-level component of kea-lfc.
namespace | isc::dhcp

## Typedefs
typedef boost::shared_ptr< const Subnet4 > | isc::dhcp::ConstSubnet4Ptr
| A const pointer to a `Subnet4` object.
typedef boost::shared_ptr< const Subnet6 > | isc::dhcp::ConstSubnet6Ptr
| A const pointer to a `Subnet6` object.
typedef boost::shared_ptr< const Subnet > | isc::dhcp::ConstSubnetPtr
| A generic pointer to either const Subnet4 or const Subnet6 object.
typedef boost::shared_ptr< Subnet4 > | isc::dhcp::Subnet4Ptr
| A pointer to a `Subnet4` object.
typedef boost::shared_ptr< Subnet6 > | isc::dhcp::Subnet6Ptr
| A pointer to a Subnet6 object.
typedef boost::shared_ptr< Subnet > | isc::dhcp::SubnetPtr
| A generic pointer to either Subnet4 or Subnet6 object.
Definition of the multi index container holding subnet information
template<isc::util::DhcpSpace D>
using | isc::dhcp::ConstSubnetTPtr = boost::shared_ptr<const SubnetT<D>>
typedef boost::multi_index_container< Subnet4Ptr, boost::multi_index::indexed_by< 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 > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetModificationTimeIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime, &data::BaseStampedElement::getModificationTime > > > > | isc::dhcp::Subnet4Collection
| A collection of `Subnet4` objects.
typedef boost::multi_index_container< Subnet4Ptr, boost::multi_index::indexed_by< 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 > > > > | isc::dhcp::Subnet4SimpleCollection
| A simple collection of `Subnet4` objects.
typedef boost::multi_index_container< Subnet6Ptr, boost::multi_index::indexed_by< 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< SubnetModificationTimeIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime, &data::BaseStampedElement::getModificationTime > > > > | isc::dhcp::Subnet6Collection
| A collection of `Subnet6` objects.
typedef boost::multi_index_container< Subnet6Ptr, boost::multi_index::indexed_by< 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 > > > > | isc::dhcp::Subnet6SimpleCollection
| A simple collection of `Subnet6` objects.
using | isc::dhcp::SubnetFetcher4 = SubnetFetcher<Subnet4Ptr, Subnet4Collection>
| Type of the `SubnetFetcher` used for IPv4.
using | isc::dhcp::SubnetFetcher6 = SubnetFetcher<Subnet6Ptr, Subnet6Collection>
| Type of the `SubnetFetcher` used for IPv6.
template<isc::util::DhcpSpace D>
using | isc::dhcp::SubnetT = typename AdapterSubnet<D>::type
template<isc::util::DhcpSpace D>
using | isc::dhcp::SubnetTPtr = boost::shared_ptr<SubnetT<D>>