![]() |
Kea 3.0.0
|
#include <asiolink/io_address.h>#include <dhcpsrv/lease.h>#include <dhcpsrv/subnet_id.h>#include <boost/multi_index/indexed_by.hpp>#include <boost/multi_index/member.hpp>#include <boost/multi_index/mem_fun.hpp>#include <boost/multi_index/hashed_index.hpp>#include <boost/multi_index/ordered_index.hpp>#include <boost/multi_index_container.hpp>#include <boost/multi_index/composite_key.hpp>#include <functional>#include <vector>Go to the source code of this file.
Classes | |
| struct | isc::dhcp::AddressIndexTag |
| Tag for indexes by address. More... | |
| struct | isc::dhcp::ClientIdSubnetIdIndexTag |
| Tag for indexes by client-id, subnet-id tuple. More... | |
| struct | isc::dhcp::DuidIaidTypeIndexTag |
| Tag for indexes by DUID, IAID, lease type tuple. More... | |
| struct | isc::dhcp::DuidIndexTag |
| Tag for index using DUID. More... | |
| struct | isc::dhcp::ExpirationIndexTag |
| Tag for indexes by expiration time. More... | |
| struct | isc::dhcp::HostnameIndexTag |
| Tag for index using hostname. More... | |
| struct | isc::dhcp::HWAddressSubnetIdIndexTag |
| Tag for indexes by HW address, subnet-id tuple. More... | |
| class | isc::dhcp::Lease6ExtendedInfo |
| Lease6 extended informations for Bulk Lease Query. More... | |
| struct | isc::dhcp::LeaseAddressIndexTag |
| Tag for indexes by lease address. More... | |
| struct | isc::dhcp::RelayIdIndexTag |
| Tag for index using relay-id. More... | |
| struct | isc::dhcp::RemoteIdIndexTag |
| Tag for index using remote-id. More... | |
| struct | isc::dhcp::SubnetIdIndexTag |
| Tag for indexes by subnet-id (and address for v6). More... | |
| struct | isc::dhcp::SubnetIdPoolIdIndexTag |
| Tag for indexes by subnet-id and pool-id. More... | |
Namespaces | |
| namespace | isc |
| Defines the logger used by the top-level component of kea-lfc. | |
| namespace | isc::dhcp |
Typedefs | |
Multi index containers holding DHCPv4 and DHCPv6 leases. | |
| typedef boost::multi_index_container< Lease4Ptr, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< AddressIndexTag >, boost::multi_index::member< Lease, isc::asiolink::IOAddress, &Lease::addr_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< HWAddressSubnetIdIndexTag >, boost::multi_index::composite_key< Lease4, boost::multi_index::const_mem_fun< Lease, const std::vector< uint8_t > &, &Lease::getHWAddrVector >, boost::multi_index::member< Lease, SubnetID, &Lease::subnet_id_ > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< ClientIdSubnetIdIndexTag >, boost::multi_index::composite_key< Lease4, boost::multi_index::const_mem_fun< Lease4, const std::vector< uint8_t > &, &Lease4::getClientIdVector >, boost::multi_index::member< Lease, uint32_t, &Lease::subnet_id_ > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< ExpirationIndexTag >, boost::multi_index::composite_key< Lease4, boost::multi_index::const_mem_fun< Lease, bool, &Lease::stateExpiredReclaimed >, boost::multi_index::const_mem_fun< Lease, int64_t, &Lease::getExpirationTime > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetIdIndexTag >, boost::multi_index::member< Lease, isc::dhcp::SubnetID, &Lease::subnet_id_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< HostnameIndexTag >, boost::multi_index::member< Lease, std::string, &Lease::hostname_ > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< RemoteIdIndexTag >, boost::multi_index::member< Lease4, std::vector< uint8_t >, &Lease4::remote_id_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< RelayIdIndexTag >, boost::multi_index::composite_key< Lease4, boost::multi_index::member< Lease4, std::vector< uint8_t >, &Lease4::relay_id_ >, boost::multi_index::member< Lease, isc::asiolink::IOAddress, &Lease::addr_ > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetIdPoolIdIndexTag >, boost::multi_index::composite_key< Lease4, boost::multi_index::member< Lease, SubnetID, &Lease::subnet_id_ >, boost::multi_index::member< Lease, uint32_t, &Lease::pool_id_ > > > > > | isc::dhcp::Lease4Storage |
| A multi index container holding DHCPv4 leases. | |
| typedef boost::multi_index_container< Lease6Ptr, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< AddressIndexTag >, boost::multi_index::member< Lease, isc::asiolink::IOAddress, &Lease::addr_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< DuidIaidTypeIndexTag >, boost::multi_index::composite_key< Lease6, boost::multi_index::const_mem_fun< Lease6, const std::vector< uint8_t > &, &Lease6::getDuidVector >, boost::multi_index::member< Lease6, uint32_t, &Lease6::iaid_ >, boost::multi_index::member< Lease6, Lease::Type, &Lease6::type_ > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< ExpirationIndexTag >, boost::multi_index::composite_key< Lease6, boost::multi_index::const_mem_fun< Lease, bool, &Lease::stateExpiredReclaimed >, boost::multi_index::const_mem_fun< Lease, int64_t, &Lease::getExpirationTime > > >, boost::multi_index::ordered_unique< boost::multi_index::tag< SubnetIdIndexTag >, boost::multi_index::composite_key< Lease6, boost::multi_index::member< Lease, isc::dhcp::SubnetID, &Lease::subnet_id_ >, boost::multi_index::member< Lease, isc::asiolink::IOAddress, &Lease::addr_ > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< DuidIndexTag >, boost::multi_index::const_mem_fun< Lease6, const std::vector< uint8_t > &, &Lease6::getDuidVector > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< HostnameIndexTag >, boost::multi_index::member< Lease, std::string, &Lease::hostname_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SubnetIdPoolIdIndexTag >, boost::multi_index::composite_key< Lease6, boost::multi_index::member< Lease, SubnetID, &Lease::subnet_id_ >, boost::multi_index::member< Lease, uint32_t, &Lease::pool_id_ > > > > > | isc::dhcp::Lease6Storage |
| A multi index container holding DHCPv6 leases. | |
Indexes used by the multi index containers | |
| typedef Lease4Storage::index< AddressIndexTag >::type | isc::dhcp::Lease4StorageAddressIndex |
| DHCPv4 lease storage index by address. | |
| typedef Lease4Storage::index< ClientIdSubnetIdIndexTag >::type | isc::dhcp::Lease4StorageClientIdSubnetIdIndex |
| DHCPv4 lease storage index by client-id and subnet-id. | |
| typedef Lease4Storage::index< ExpirationIndexTag >::type | isc::dhcp::Lease4StorageExpirationIndex |
| DHCPv4 lease storage index by expiration time. | |
| typedef Lease4Storage::index< HostnameIndexTag >::type | isc::dhcp::Lease4StorageHostnameIndex |
| DHCPv4 lease storage index by hostname. | |
| typedef Lease4Storage::index< HWAddressSubnetIdIndexTag >::type | isc::dhcp::Lease4StorageHWAddressSubnetIdIndex |
| DHCPv4 lease storage index by HW address and subnet-id. | |
| typedef Lease4Storage::index< RelayIdIndexTag >::type | isc::dhcp::Lease4StorageRelayIdIndex |
| DHCPv4 lease storage index by relay-id. | |
| typedef Lease4Storage::index< RemoteIdIndexTag >::type | isc::dhcp::Lease4StorageRemoteIdIndex |
| DHCPv4 lease storage index by remote-id. | |
| typedef std::pair< Lease4StorageRemoteIdIndex::const_iterator, Lease4StorageRemoteIdIndex::const_iterator > | isc::dhcp::Lease4StorageRemoteIdRange |
| DHCPv4 lease storage range by remote-id. | |
| typedef Lease4Storage::index< SubnetIdIndexTag >::type | isc::dhcp::Lease4StorageSubnetIdIndex |
| DHCPv4 lease storage index subnet-id. | |
| typedef Lease4Storage::index< SubnetIdPoolIdIndexTag >::type | isc::dhcp::Lease4StorageSubnetIdPoolIdIndex |
| DHCPv4 lease storage index subnet-id and pool-id. | |
| typedef Lease6Storage::index< AddressIndexTag >::type | isc::dhcp::Lease6StorageAddressIndex |
| DHCPv6 lease storage index by address. | |
| typedef Lease6Storage::index< DuidIaidTypeIndexTag >::type | isc::dhcp::Lease6StorageDuidIaidTypeIndex |
| DHCPv6 lease storage index by DUID, IAID, lease type. | |
| typedef Lease6Storage::index< DuidIndexTag >::type | isc::dhcp::Lease6StorageDuidIndex |
| DHCPv6 lease storage index by DUID. | |
| typedef Lease6Storage::index< ExpirationIndexTag >::type | isc::dhcp::Lease6StorageExpirationIndex |
| DHCPv6 lease storage index by expiration time. | |
| typedef Lease6Storage::index< HostnameIndexTag >::type | isc::dhcp::Lease6StorageHostnameIndex |
| DHCPv6 lease storage index by hostname. | |
| typedef Lease6Storage::index< SubnetIdIndexTag >::type | isc::dhcp::Lease6StorageSubnetIdIndex |
| DHCPv6 lease storage index by subnet-id. | |
| typedef Lease6Storage::index< SubnetIdPoolIdIndexTag >::type | isc::dhcp::Lease6StorageSubnetIdPoolIdIndex |
| DHCPv6 lease storage index subnet-id and pool-id. | |
Multi index containers holding DHCPv6 lease extended informations | |
for Bulk Lease Query. | |
| typedef boost::shared_ptr< Lease6ExtendedInfo > | isc::dhcp::Lease6ExtendedInfoPtr |
| Pointer to a Lease6ExtendedInfo object. | |
| typedef boost::multi_index_container< Lease6ExtendedInfoPtr, boost::multi_index::indexed_by< boost::multi_index::ordered_non_unique< boost::multi_index::tag< RelayIdIndexTag >, boost::multi_index::composite_key< Lease6ExtendedInfo, boost::multi_index::member< Lease6ExtendedInfo, std::vector< uint8_t >, &Lease6ExtendedInfo::id_ >, boost::multi_index::member< Lease6ExtendedInfo, isc::asiolink::IOAddress, &Lease6ExtendedInfo::lease_addr_ > > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< LeaseAddressIndexTag >, boost::multi_index::member< Lease6ExtendedInfo, isc::asiolink::IOAddress, &Lease6ExtendedInfo::lease_addr_ > > > > | isc::dhcp::Lease6ExtendedInfoRelayIdTable |
| A multi index container holding lease6 extended info for by relay id. | |
| typedef boost::multi_index_container< Lease6ExtendedInfoPtr, boost::multi_index::indexed_by< boost::multi_index::hashed_non_unique< boost::multi_index::tag< RemoteIdIndexTag >, boost::multi_index::member< Lease6ExtendedInfo, std::vector< uint8_t >, &Lease6ExtendedInfo::id_ > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< LeaseAddressIndexTag >, boost::multi_index::member< Lease6ExtendedInfo, isc::asiolink::IOAddress, &Lease6ExtendedInfo::lease_addr_ > > > > | isc::dhcp::Lease6ExtendedInfoRemoteIdTable |
| A multi index container holding lease6 extended info for by remote id. | |
| typedef Lease6ExtendedInfoRelayIdTable::index< LeaseAddressIndexTag >::type | isc::dhcp::LeaseAddressRelayIdIndex |
| Lease6 extended information by lease address index of by relay id table. | |
| typedef Lease6ExtendedInfoRemoteIdTable::index< LeaseAddressIndexTag >::type | isc::dhcp::LeaseAddressRemoteIdIndex |
| Lease6 extended information by lease address index of by remote id table. | |
| typedef Lease6ExtendedInfoRelayIdTable::index< RelayIdIndexTag >::type | isc::dhcp::RelayIdIndex |
| Lease6 extended information by relay id index. | |
| typedef Lease6ExtendedInfoRemoteIdTable::index< RemoteIdIndexTag >::type | isc::dhcp::RemoteIdIndex |
| Lease6 extended information by remote id index. | |
| typedef std::pair< RemoteIdIndex::const_iterator, RemoteIdIndex::const_iterator > | isc::dhcp::RemoteIdIndexRange |
| Lease6 extended information by remote id range. | |