Kea 3.1.1
container.h File Reference
#include <dhcpsrv/host.h>
#include <dhcpsrv/subnet_id.h>
#include <boost/multi_index_container.hpp>
#include <boost/multi_index/composite_key.hpp>
#include <boost/multi_index/mem_fun.hpp>
#include <boost/multi_index/member.hpp>
#include <boost/multi_index/ordered_index.hpp>
#include <boost/multi_index/sequenced_index.hpp>
#include <boost/multi_index/hashed_index.hpp>
#include <boost/multi_index/identity.hpp>
+ Include dependency graph for container.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  isc::host_cache::HostAddress4IndexTag
 Tag for the index for searching by reserved IPv4 address. More...
 
struct  isc::host_cache::HostHashedIndexTag
 Tag for the hashed index. More...
 
struct  isc::host_cache::HostIdentifierIndexTag
 Tag for the index for searching by identifier. More...
 
struct  isc::host_cache::HostResrv6Tuple
 Defines one entry for the Host Container for v6 hosts. More...
 
struct  isc::host_cache::HostSequencedIndexTag
 Tag for the sequenced index. More...
 
struct  isc::host_cache::Resv6AddressIndexTag
 Tag for the index for searching by address. More...
 
struct  isc::host_cache::Resv6SubnetAddressIndexTag
 Tag for the index for searching by subnet and address. More...
 

Namespaces

namespace  isc
 Defines the logger used by the top-level component of kea-lfc.
 
namespace  isc::host_cache
 

Typedefs

typedef boost::multi_index_container< dhcp::HostPtr, boost::multi_index::indexed_by< boost::multi_index::sequenced< boost::multi_index::tag< HostSequencedIndexTag > >, boost::multi_index::hashed_unique< boost::multi_index::tag< HostHashedIndexTag >, boost::multi_index::identity< dhcp::HostPtr > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< HostIdentifierIndexTag >, boost::multi_index::composite_key< dhcp::Host, boost::multi_index::const_mem_fun< dhcp::Host, const std::vector< uint8_t > &, &dhcp::Host::getIdentifier >, boost::multi_index::const_mem_fun< dhcp::Host, dhcp::Host::IdentifierType, &dhcp::Host::getIdentifierType > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< HostAddress4IndexTag >, boost::multi_index::const_mem_fun< dhcp::Host, const asiolink::IOAddress &, &dhcp::Host::getIPv4Reservation > > > > isc::host_cache::HostContainer
 Multi-index container holding host cache entries.
 
typedef HostContainer::index< HostAddress4IndexTag >::type isc::host_cache::HostContainerAddress4Index
 Reserved Ipv4 address index type in the HostContainer.
 
typedef std::pair< HostContainerAddress4Index::iterator, HostContainerAddress4Index::iterator > isc::host_cache::HostContainerAddress4IndexRange
 Results range returned using the HostContainerAddress4Index.
 
typedef HostContainer::index< HostHashedIndexTag >::type isc::host_cache::HostContainerHashedIndex
 Hashed index type in the HostContainer.
 
typedef HostContainer::index< HostIdentifierIndexTag >::type isc::host_cache::HostContainerIdentifierIndex
 Identifier index type in the HostContainer.
 
typedef std::pair< HostContainerIdentifierIndex::iterator, HostContainerIdentifierIndex::iterator > isc::host_cache::HostContainerIdentifierIndexRange
 Results range returned using the HostContainerIdentifierIndex.
 
typedef HostContainer::index< HostSequencedIndexTag >::type isc::host_cache::HostContainerSequencedIndex
 Sequenced index type in the HostContainer.
 
typedef boost::multi_index_container< HostResrv6Tuple, boost::multi_index::indexed_by< boost::multi_index::ordered_non_unique< boost::multi_index::tag< Resv6AddressIndexTag >, boost::multi_index::const_mem_fun< HostResrv6Tuple, const asiolink::IOAddress &, &HostResrv6Tuple::getKey > >, boost::multi_index::ordered_unique< boost::multi_index::tag< Resv6SubnetAddressIndexTag >, boost::multi_index::composite_key< HostResrv6Tuple, boost::multi_index::member< HostResrv6Tuple, const dhcp::SubnetID, &HostResrv6Tuple::subnet_id_ >, boost::multi_index::const_mem_fun< HostResrv6Tuple, const asiolink::IOAddress &, &HostResrv6Tuple::getKey > > > > > isc::host_cache::Resv6Container
 Multi-index container holding IPv6 reservations.
 
typedef Resv6Container::index< Resv6AddressIndexTag >::type isc::host_cache::Resv6ContainerAddressIndex
 First index type in the Resv6Container.
 
typedef std::pair< Resv6ContainerAddressIndex::iterator, Resv6ContainerAddressIndex::iterator > isc::host_cache::Resv6ContainerAddressIndexRange
 Results range returned using the Resv6ContainerAddressIndex.
 
typedef Resv6Container::index< Resv6SubnetAddressIndexTag >::type isc::host_cache::Resv6ContainerSubnetAddressIndex
 Second index type in the Resv6Container.
 
typedef std::pair< Resv6ContainerSubnetAddressIndex::iterator, Resv6ContainerSubnetAddressIndex::iterator > isc::host_cache::Resv6ContainerSubnetAddressIndexRange
 Results range returned using the Resv6ContainerSubnetAddressIndex.