Kea: config_backend_dhcp6.h Source File

| Kea 3.2.0-git

config_backend_dhcp6.h
Go to the documentation of this file.
1// Copyright (C) 2019-2025 Internet Systems Consortium, Inc. ("ISC")
2//
3// This Source Code Form is subject to the terms of the Mozilla Public
4// License, v. 2.0. If a copy of the MPL was not distributed with this
5// file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
7#ifndef CONFIG_BACKEND_DHCP6_H
8#define CONFIG_BACKEND_DHCP6_H
9
10#include <cc/server_tag.h>
11#include <cc/stamped_value.h>
12#include <config_backend/base_config_backend.h>
13#include <database/audit_entry.h>
14#include <database/server.h>
15#include <database/server_collection.h>
16#include <database/server_selector.h>
17#include <dhcp/option.h>
18#include <dhcp/option_definition.h>
19#include <dhcpsrv/cfg_option.h>
20#include <dhcpsrv/client_class_def.h>
21#include <dhcpsrv/shared_network.h>
22#include <dhcpsrv/subnet.h>
23#include <boost/shared_ptr.hpp>
24#include <boost/date_time/posix_time/ptime.hpp>
25#include <string>
26
27namespace isc {
28namespace dhcp {
29
87 class ConfigBackendDHCPv6 : public cb::BaseConfigBackend {
88public:
89
91 virtual ~ConfigBackendDHCPv6() { }
92
101 virtual Subnet6Ptr
102 getSubnet6(const db::ServerSelector& server_selector,
103 const std::string& subnet_prefix) const = 0;
104
113 virtual Subnet6Ptr
114 getSubnet6(const db::ServerSelector& server_selector, const SubnetID& subnet_id) const = 0;
115
123 virtual Subnet6Collection
124 getAllSubnets6(const db::ServerSelector& server_selector) const = 0;
125
135 virtual Subnet6Collection
136 getSharedNetworkSubnets6(const db::ServerSelector& server_selector,
137 const std::string& shared_network_name) const = 0;
138
147 virtual Subnet6Collection
148 getModifiedSubnets6(const db::ServerSelector& server_selector,
149 const boost::posix_time::ptime& modification_time) const = 0;
150
159 virtual SharedNetwork6Ptr
160 getSharedNetwork6(const db::ServerSelector& server_selector,
161 const std::string& name) const = 0;
162
171 virtual SharedNetwork6Collection
172 getAllSharedNetworks6(const db::ServerSelector& server_selector) const = 0;
173
183 virtual SharedNetwork6Collection
184 getModifiedSharedNetworks6(const db::ServerSelector& server_selector,
185 const boost::posix_time::ptime& modification_time) const = 0;
186
196 virtual OptionDefinitionPtr
197 getOptionDef6(const db::ServerSelector& server_selector, const uint16_t code,
198 const std::string& space) const = 0;
199
208 virtual OptionDefContainer
209 getAllOptionDefs6(const db::ServerSelector& server_selector) const = 0;
210
221 virtual OptionDefContainer
222 getModifiedOptionDefs6(const db::ServerSelector& server_selector,
223 const boost::posix_time::ptime& modification_time) const = 0;
224
237 virtual OptionDescriptorPtr
238 getOption6(const db::ServerSelector& server_selector, const uint16_t code,
239 const std::string& space,
240 const ClientClassesPtr client_classes = ClientClassesPtr()) const = 0;
241
250 virtual OptionContainer
251 getAllOptions6(const db::ServerSelector& server_selector) const = 0;
252
262 virtual OptionContainer
263 getModifiedOptions6(const db::ServerSelector& selector,
264 const boost::posix_time::ptime& modification_time) const = 0;
265
275 virtual data::StampedValuePtr
276 getGlobalParameter6(const db::ServerSelector& selector,
277 const std::string& name) const = 0;
278
286 virtual data::StampedValueCollection
287 getAllGlobalParameters6(const db::ServerSelector& selector) const = 0;
288
297 virtual data::StampedValueCollection
298 getModifiedGlobalParameters6(const db::ServerSelector& selector,
299 const boost::posix_time::ptime& modification_time) const = 0;
300
306 virtual ClientClassDefPtr
307 getClientClass6(const db::ServerSelector& selector, const std::string& name) const = 0;
308
313 virtual ClientClassDictionary
314 getAllClientClasses6(const db::ServerSelector& selector) const = 0;
315
321 virtual ClientClassDictionary
322 getModifiedClientClasses6(const db::ServerSelector& selector,
323 const boost::posix_time::ptime& modification_time) const = 0;
324
337 virtual db::AuditEntryCollection
338 getRecentAuditEntries(const db::ServerSelector& server_selector,
339 const boost::posix_time::ptime& modification_time,
340 const uint64_t& modification_id) const = 0;
341
348 virtual db::ServerCollection
349 getAllServers6() const = 0;
350
356 virtual db::ServerPtr
357 getServer6(const data::ServerTag& server_tag) const = 0;
358
366 virtual void
367 createUpdateSubnet6(const db::ServerSelector& server_selector,
368 const Subnet6Ptr& subnet) = 0;
369
377 virtual void
378 createUpdateSharedNetwork6(const db::ServerSelector& server_selector,
379 const SharedNetwork6Ptr& shared_network) = 0;
380
388 virtual void
389 createUpdateOptionDef6(const db::ServerSelector& server_selector,
390 const OptionDefinitionPtr& option_def) = 0;
391
399 virtual void
400 createUpdateOption6(const db::ServerSelector& server_selector,
401 const OptionDescriptorPtr& option) = 0;
402
412 virtual void
413 createUpdateOption6(const db::ServerSelector& selector,
414 const std::string& shared_network_name,
415 const OptionDescriptorPtr& option) = 0;
416
425 virtual void
426 createUpdateOption6(const db::ServerSelector& server_selector,
427 const SubnetID& subnet_id,
428 const OptionDescriptorPtr& option) = 0;
429
441 virtual void
442 createUpdateOption6(const db::ServerSelector& server_selector,
443 const asiolink::IOAddress& pool_start_address,
444 const asiolink::IOAddress& pool_end_address,
445 const OptionDescriptorPtr& option) = 0;
446
458 virtual void
459 createUpdateOption6(const db::ServerSelector& server_selector,
460 const asiolink::IOAddress& pd_pool_prefix,
461 const uint8_t pd_pool_prefix_length,
462 const OptionDescriptorPtr& option) = 0;
463
471 virtual void
472 createUpdateGlobalParameter6(const db::ServerSelector& server_selector,
473 const data::StampedValuePtr& value) = 0;
474
483 virtual void
484 createUpdateClientClass6(const db::ServerSelector& server_selector,
485 const ClientClassDefPtr& client_class,
486 const std::string& follow_class_name) = 0;
487
491 virtual void
492 createUpdateServer6(const db::ServerPtr& server) = 0;
493
502 virtual uint64_t
503 deleteSubnet6(const db::ServerSelector& server_selector,
504 const std::string& subnet_prefix) = 0;
505
514 virtual uint64_t
515 deleteSubnet6(const db::ServerSelector& server_selector, const SubnetID& subnet_id) = 0;
516
524 virtual uint64_t
525 deleteAllSubnets6(const db::ServerSelector& server_selector) = 0;
526
536 virtual uint64_t
537 deleteSharedNetworkSubnets6(const db::ServerSelector& server_selector,
538 const std::string& shared_network_name) = 0;
539
548 virtual uint64_t
549 deleteSharedNetwork6(const db::ServerSelector& server_selector,
550 const std::string& name) = 0;
551
559 virtual uint64_t
560 deleteAllSharedNetworks6(const db::ServerSelector& server_selector) = 0;
561
573 virtual uint64_t
574 deleteOptionDef6(const db::ServerSelector& server_selector,
575 const uint16_t code,
576 const std::string& space,
577 bool force = false) = 0;
578
586 virtual uint64_t
587 deleteAllOptionDefs6(const db::ServerSelector& server_selector) = 0;
588
600 virtual uint64_t
601 deleteOption6(const db::ServerSelector& server_selector,
602 const uint16_t code,
603 const std::string& space,
604 ClientClassesPtr client_classes = ClientClassesPtr()) = 0;
605
619 virtual uint64_t
620 deleteOption6(const db::ServerSelector& selector,
621 const std::string& shared_network_name,
622 const uint16_t code,
623 const std::string& space,
624 ClientClassesPtr client_classes = ClientClassesPtr()) = 0;
625
639 virtual uint64_t
640 deleteOption6(const db::ServerSelector& server_selector,
641 const SubnetID& subnet_id,
642 const uint16_t code,
643 const std::string& space,
644 ClientClassesPtr client_classes = ClientClassesPtr()) = 0;
645
661 virtual uint64_t
662 deleteOption6(const db::ServerSelector& server_selector,
663 const asiolink::IOAddress& pool_start_address,
664 const asiolink::IOAddress& pool_end_address,
665 const uint16_t code,
666 const std::string& space,
667 ClientClassesPtr client_classes = ClientClassesPtr()) = 0;
668
684 virtual uint64_t
685 deleteOption6(const db::ServerSelector& server_selector,
686 const asiolink::IOAddress& pd_pool_prefix,
687 const uint8_t pd_pool_prefix_length,
688 const uint16_t code,
689 const std::string& space,
690 ClientClassesPtr client_classes = ClientClassesPtr()) = 0;
691
700 virtual uint64_t
701 deleteGlobalParameter6(const db::ServerSelector& server_selector,
702 const std::string& name) = 0;
703
711 virtual uint64_t
712 deleteAllGlobalParameters6(const db::ServerSelector& server_selector) = 0;
713
719 virtual uint64_t
720 deleteClientClass6(const db::ServerSelector& server_selector,
721 const std::string& name) = 0;
722
727 virtual uint64_t
728 deleteAllClientClasses6(const db::ServerSelector& server_selector) = 0;
729
734 virtual uint64_t
735 deleteServer6(const data::ServerTag& server_tag) = 0;
736
741 virtual uint64_t
742 deleteAllServers6() = 0;
743};
744
746 typedef boost::shared_ptr<ConfigBackendDHCPv6> ConfigBackendDHCPv6Ptr;
747
748} // end of namespace isc::dhcp
749} // end of namespace isc
750
751#endif // CONFIG_BACKEND_DHCP6_H
audit_entry.h
base_config_backend.h
cfg_option.h
isc::asiolink::IOAddress
The IOAddress class represents an IP addresses (version agnostic).
Definition io_address.h:53
isc::cb::BaseConfigBackend
Interface for Kea server specific configuration backend implementations.
Definition base_config_backend.h:34
isc::data::ServerTag
Represents a server tag.
Definition server_tag.h:25
isc::db::ServerSelector
Server selector for associating objects in a database with specific servers.
Definition server_selector.h:46
isc::dhcp::ClientClassDictionary
Maintains a list of ClientClassDef's.
Definition client_class_def.h:362
isc::dhcp::ConfigBackendDHCPv6
Interface implemented by DHCPv6 configuration backends.
Definition config_backend_dhcp6.h:87
isc::dhcp::ConfigBackendDHCPv6::~ConfigBackendDHCPv6
virtual ~ConfigBackendDHCPv6()
Virtual destructor.
Definition config_backend_dhcp6.h:91
isc::dhcp::ConfigBackendDHCPv6::getOptionDef6
virtual OptionDefinitionPtr getOptionDef6(const db::ServerSelector &server_selector, const uint16_t code, const std::string &space) const =0
Retrieves single option definition by code and space.
isc::dhcp::ConfigBackendDHCPv6::getModifiedGlobalParameters6
virtual data::StampedValueCollection getModifiedGlobalParameters6(const db::ServerSelector &selector, const boost::posix_time::ptime &modification_time) const =0
Retrieves global parameters modified after specified time.
isc::dhcp::ConfigBackendDHCPv6::getAllOptionDefs6
virtual OptionDefContainer getAllOptionDefs6(const db::ServerSelector &server_selector) const =0
Retrieves all option definitions.
isc::dhcp::ConfigBackendDHCPv6::deleteAllSubnets6
virtual uint64_t deleteAllSubnets6(const db::ServerSelector &server_selector)=0
Deletes all subnets.
isc::dhcp::ConfigBackendDHCPv6::deleteOption6
virtual uint64_t deleteOption6(const db::ServerSelector &server_selector, const asiolink::IOAddress &pd_pool_prefix, const uint8_t pd_pool_prefix_length, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
Deletes prefix delegation pool level option.
isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6
virtual void createUpdateOption6(const db::ServerSelector &server_selector, const asiolink::IOAddress &pd_pool_prefix, const uint8_t pd_pool_prefix_length, const OptionDescriptorPtr &option)=0
Creates or updates prefix delegation pool level option.
isc::dhcp::ConfigBackendDHCPv6::deleteSubnet6
virtual uint64_t deleteSubnet6(const db::ServerSelector &server_selector, const std::string &subnet_prefix)=0
Deletes subnet by prefix.
isc::dhcp::ConfigBackendDHCPv6::deleteOptionDef6
virtual uint64_t deleteOptionDef6(const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, bool force=false)=0
Deletes option definition.
isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6
virtual void createUpdateOption6(const db::ServerSelector &server_selector, const asiolink::IOAddress &pool_start_address, const asiolink::IOAddress &pool_end_address, const OptionDescriptorPtr &option)=0
Creates or updates pool level option.
isc::dhcp::ConfigBackendDHCPv6::getAllGlobalParameters6
virtual data::StampedValueCollection getAllGlobalParameters6(const db::ServerSelector &selector) const =0
Retrieves all global parameters.
isc::dhcp::ConfigBackendDHCPv6::getClientClass6
virtual ClientClassDefPtr getClientClass6(const db::ServerSelector &selector, const std::string &name) const =0
Retrieves a client class by name.
isc::dhcp::ConfigBackendDHCPv6::deleteClientClass6
virtual uint64_t deleteClientClass6(const db::ServerSelector &server_selector, const std::string &name)=0
Deletes a client class.
isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6
virtual void createUpdateOption6(const db::ServerSelector &server_selector, const SubnetID &subnet_id, const OptionDescriptorPtr &option)=0
Creates or updates subnet level option.
isc::dhcp::ConfigBackendDHCPv6::deleteServer6
virtual uint64_t deleteServer6(const data::ServerTag &server_tag)=0
Deletes a server from the backend.
isc::dhcp::ConfigBackendDHCPv6::deleteOption6
virtual uint64_t deleteOption6(const db::ServerSelector &server_selector, const asiolink::IOAddress &pool_start_address, const asiolink::IOAddress &pool_end_address, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
Deletes pool level option.
isc::dhcp::ConfigBackendDHCPv6::getModifiedClientClasses6
virtual ClientClassDictionary getModifiedClientClasses6(const db::ServerSelector &selector, const boost::posix_time::ptime &modification_time) const =0
Retrieves client classes modified after specified time.
isc::dhcp::ConfigBackendDHCPv6::getSharedNetwork6
virtual SharedNetwork6Ptr getSharedNetwork6(const db::ServerSelector &server_selector, const std::string &name) const =0
Retrieves shared network by name.
isc::dhcp::ConfigBackendDHCPv6::getRecentAuditEntries
virtual db::AuditEntryCollection getRecentAuditEntries(const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time, const uint64_t &modification_id) const =0
Retrieves the most recent audit entries.
isc::dhcp::ConfigBackendDHCPv6::getAllSharedNetworks6
virtual SharedNetwork6Collection getAllSharedNetworks6(const db::ServerSelector &server_selector) const =0
Retrieves all shared networks.
isc::dhcp::ConfigBackendDHCPv6::getServer6
virtual db::ServerPtr getServer6(const data::ServerTag &server_tag) const =0
Retrieves a server.
isc::dhcp::ConfigBackendDHCPv6::getAllClientClasses6
virtual ClientClassDictionary getAllClientClasses6(const db::ServerSelector &selector) const =0
Retrieves all client classes.
isc::dhcp::ConfigBackendDHCPv6::createUpdateClientClass6
virtual void createUpdateClientClass6(const db::ServerSelector &server_selector, const ClientClassDefPtr &client_class, const std::string &follow_class_name)=0
Creates or updates a client class.
isc::dhcp::ConfigBackendDHCPv6::deleteSharedNetworkSubnets6
virtual uint64_t deleteSharedNetworkSubnets6(const db::ServerSelector &server_selector, const std::string &shared_network_name)=0
Deletes all subnets belonging to a specified shared network.
isc::dhcp::ConfigBackendDHCPv6::deleteGlobalParameter6
virtual uint64_t deleteGlobalParameter6(const db::ServerSelector &server_selector, const std::string &name)=0
Deletes global parameter.
isc::dhcp::ConfigBackendDHCPv6::deleteOption6
virtual uint64_t deleteOption6(const db::ServerSelector &selector, const std::string &shared_network_name, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
Deletes shared network level option.
isc::dhcp::ConfigBackendDHCPv6::createUpdateServer6
virtual void createUpdateServer6(const db::ServerPtr &server)=0
Creates or updates a server.
isc::dhcp::ConfigBackendDHCPv6::getSubnet6
virtual Subnet6Ptr getSubnet6(const db::ServerSelector &server_selector, const std::string &subnet_prefix) const =0
Retrieves a single subnet by subnet_prefix.
isc::dhcp::ConfigBackendDHCPv6::deleteSharedNetwork6
virtual uint64_t deleteSharedNetwork6(const db::ServerSelector &server_selector, const std::string &name)=0
Deletes shared network by name.
isc::dhcp::ConfigBackendDHCPv6::deleteAllClientClasses6
virtual uint64_t deleteAllClientClasses6(const db::ServerSelector &server_selector)=0
Deletes all client classes.
isc::dhcp::ConfigBackendDHCPv6::deleteAllSharedNetworks6
virtual uint64_t deleteAllSharedNetworks6(const db::ServerSelector &server_selector)=0
Deletes all shared networks.
isc::dhcp::ConfigBackendDHCPv6::getAllServers6
virtual db::ServerCollection getAllServers6() const =0
Retrieves all servers.
isc::dhcp::ConfigBackendDHCPv6::getModifiedOptions6
virtual OptionContainer getModifiedOptions6(const db::ServerSelector &selector, const boost::posix_time::ptime &modification_time) const =0
Retrieves options modified after specified time.
isc::dhcp::ConfigBackendDHCPv6::getSubnet6
virtual Subnet6Ptr getSubnet6(const db::ServerSelector &server_selector, const SubnetID &subnet_id) const =0
Retrieves a single subnet by subnet identifier.
isc::dhcp::ConfigBackendDHCPv6::getOption6
virtual OptionDescriptorPtr getOption6(const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, const ClientClassesPtr client_classes=ClientClassesPtr()) const =0
Retrieves single option by code and space.
isc::dhcp::ConfigBackendDHCPv6::getGlobalParameter6
virtual data::StampedValuePtr getGlobalParameter6(const db::ServerSelector &selector, const std::string &name) const =0
Retrieves global parameter value.
isc::dhcp::ConfigBackendDHCPv6::createUpdateSubnet6
virtual void createUpdateSubnet6(const db::ServerSelector &server_selector, const Subnet6Ptr &subnet)=0
Creates or updates a subnet.
isc::dhcp::ConfigBackendDHCPv6::createUpdateGlobalParameter6
virtual void createUpdateGlobalParameter6(const db::ServerSelector &server_selector, const data::StampedValuePtr &value)=0
Creates or updates global parameter.
isc::dhcp::ConfigBackendDHCPv6::deleteOption6
virtual uint64_t deleteOption6(const db::ServerSelector &server_selector, const SubnetID &subnet_id, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
Deletes subnet level option.
isc::dhcp::ConfigBackendDHCPv6::getAllOptions6
virtual OptionContainer getAllOptions6(const db::ServerSelector &server_selector) const =0
Retrieves all global options.
isc::dhcp::ConfigBackendDHCPv6::deleteSubnet6
virtual uint64_t deleteSubnet6(const db::ServerSelector &server_selector, const SubnetID &subnet_id)=0
Deletes subnet by identifier.
isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6
virtual void createUpdateOption6(const db::ServerSelector &server_selector, const OptionDescriptorPtr &option)=0
Creates or updates global option.
isc::dhcp::ConfigBackendDHCPv6::getSharedNetworkSubnets6
virtual Subnet6Collection getSharedNetworkSubnets6(const db::ServerSelector &server_selector, const std::string &shared_network_name) const =0
Retrieves all subnets belonging to a specified shared network.
isc::dhcp::ConfigBackendDHCPv6::deleteOption6
virtual uint64_t deleteOption6(const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, ClientClassesPtr client_classes=ClientClassesPtr())=0
Deletes global option.
isc::dhcp::ConfigBackendDHCPv6::getModifiedOptionDefs6
virtual OptionDefContainer getModifiedOptionDefs6(const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const =0
Retrieves option definitions modified after specified time.
isc::dhcp::ConfigBackendDHCPv6::createUpdateOption6
virtual void createUpdateOption6(const db::ServerSelector &selector, const std::string &shared_network_name, const OptionDescriptorPtr &option)=0
Creates or updates shared network level option.
isc::dhcp::ConfigBackendDHCPv6::getModifiedSubnets6
virtual Subnet6Collection getModifiedSubnets6(const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const =0
Retrieves subnets modified after specified time.
isc::dhcp::ConfigBackendDHCPv6::deleteAllOptionDefs6
virtual uint64_t deleteAllOptionDefs6(const db::ServerSelector &server_selector)=0
Deletes all option definitions.
isc::dhcp::ConfigBackendDHCPv6::createUpdateSharedNetwork6
virtual void createUpdateSharedNetwork6(const db::ServerSelector &server_selector, const SharedNetwork6Ptr &shared_network)=0
Creates or updates a shared network.
isc::dhcp::ConfigBackendDHCPv6::getAllSubnets6
virtual Subnet6Collection getAllSubnets6(const db::ServerSelector &server_selector) const =0
Retrieves all subnets.
isc::dhcp::ConfigBackendDHCPv6::deleteAllGlobalParameters6
virtual uint64_t deleteAllGlobalParameters6(const db::ServerSelector &server_selector)=0
Deletes all global parameters.
isc::dhcp::ConfigBackendDHCPv6::getModifiedSharedNetworks6
virtual SharedNetwork6Collection getModifiedSharedNetworks6(const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const =0
Retrieves shared networks modified after specified time.
isc::dhcp::ConfigBackendDHCPv6::deleteAllServers6
virtual uint64_t deleteAllServers6()=0
Deletes all servers from the backend except the logical server 'all'.
isc::dhcp::ConfigBackendDHCPv6::createUpdateOptionDef6
virtual void createUpdateOptionDef6(const db::ServerSelector &server_selector, const OptionDefinitionPtr &option_def)=0
Creates or updates an option definition.
client_class_def.h
Defines classes for storing client class definitions.
isc::data::StampedValuePtr
boost::shared_ptr< StampedValue > StampedValuePtr
Pointer to the stamped value.
Definition stamped_value.h:26
isc::data::StampedValueCollection
boost::multi_index_container< StampedValuePtr, boost::multi_index::indexed_by< boost::multi_index::hashed_non_unique< boost::multi_index::tag< StampedValueNameIndexTag >, boost::multi_index::const_mem_fun< StampedValue, std::string, &StampedValue::getName > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< StampedValueModificationTimeIndexTag >, boost::multi_index::const_mem_fun< BaseStampedElement, boost::posix_time::ptime, &BaseStampedElement::getModificationTime > > > > StampedValueCollection
Multi index container for StampedValue.
Definition stamped_value.h:230
isc::db::ServerPtr
boost::shared_ptr< Server > ServerPtr
Shared pointer to the Server class.
Definition server.h:22
isc::db::AuditEntryCollection
boost::multi_index_container< AuditEntryPtr, boost::multi_index::indexed_by< boost::multi_index::ordered_non_unique< boost::multi_index::tag< AuditEntryObjectTypeTag >, boost::multi_index::composite_key< AuditEntry, boost::multi_index::const_mem_fun< AuditEntry, std::string, &AuditEntry::getObjectType >, boost::multi_index::const_mem_fun< AuditEntry, AuditEntry::ModificationType, &AuditEntry::getModificationType > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< AuditEntryModificationTimeIdTag >, boost::multi_index::composite_key< AuditEntry, boost::multi_index::const_mem_fun< AuditEntry, boost::posix_time::ptime, &AuditEntry::getModificationTime >, boost::multi_index::const_mem_fun< AuditEntry, uint64_t, &AuditEntry::getRevisionId > > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< AuditEntryObjectIdTag >, boost::multi_index::const_mem_fun< AuditEntry, uint64_t, &AuditEntry::getObjectId > > > > AuditEntryCollection
Multi index container holding AuditEntry instances.
Definition audit_entry.h:291
isc::db::ServerCollection
boost::multi_index_container< ServerPtr, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< ServerTagIndexTag >, boost::multi_index::const_mem_fun< Server, std::string, &Server::getServerTagAsText > > > > ServerCollection
Multi index container for Server.
Definition server_collection.h:35
isc::dhcp
Definition dhcp4/client_handler.cc:20
isc::dhcp::ConfigBackendDHCPv6Ptr
boost::shared_ptr< ConfigBackendDHCPv6 > ConfigBackendDHCPv6Ptr
Shared pointer to the ConfigBackendDHCPv6 instance.
Definition config_backend_dhcp6.h:746
isc::dhcp::OptionContainer
boost::multi_index_container< OptionDescriptor, boost::multi_index::indexed_by< boost::multi_index::sequenced<>, boost::multi_index::hashed_non_unique< KeyFromKeyExtractor< boost::multi_index::const_mem_fun< Option, uint16_t, &Option::getType >, boost::multi_index::member< OptionDescriptor, OptionPtr, &OptionDescriptor::option_ > > >, boost::multi_index::hashed_non_unique< boost::multi_index::member< OptionDescriptor, bool, &OptionDescriptor::persistent_ > >, boost::multi_index::ordered_non_unique< boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime, &data::BaseStampedElement::getModificationTime > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< OptionIdIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, uint64_t, &data::BaseStampedElement::getId > >, boost::multi_index::hashed_non_unique< boost::multi_index::member< OptionDescriptor, bool, &OptionDescriptor::cancelled_ > >, boost::multi_index::hashed_non_unique< boost::multi_index::composite_key< OptionDescriptor, KeyFromKeyExtractor< boost::multi_index::const_mem_fun< Option, uint16_t, &Option::getType >, boost::multi_index::member< OptionDescriptor, OptionPtr, &OptionDescriptor::option_ > >, boost::multi_index::member< OptionDescriptor, ClientClasses, &OptionDescriptor::client_classes_ > > > > > OptionContainer
Multi index container for DHCP option descriptors.
Definition cfg_option.h:347
isc::dhcp::SharedNetwork6Collection
boost::multi_index_container< SharedNetwork6Ptr, boost::multi_index::indexed_by< boost::multi_index::random_access< boost::multi_index::tag< SharedNetworkRandomAccessIndexTag > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< SharedNetworkIdIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, uint64_t, &data::BaseStampedElement::getId > >, boost::multi_index::ordered_unique< boost::multi_index::tag< SharedNetworkNameIndexTag >, boost::multi_index::const_mem_fun< SharedNetwork6, std::string, &SharedNetwork6::getName > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< SharedNetworkModificationTimeIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime, &data::BaseStampedElement::getModificationTime > > > > SharedNetwork6Collection
Multi index container holding shared networks.
Definition shared_network.h:462
isc::dhcp::Subnet6Ptr
boost::shared_ptr< Subnet6 > Subnet6Ptr
A pointer to a Subnet6 object.
Definition subnet.h:623
isc::dhcp::Subnet6Collection
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 > > > > Subnet6Collection
A collection of Subnet6 objects.
Definition subnet.h:934
isc::dhcp::ClientClassesPtr
boost::shared_ptr< ClientClasses > ClientClassesPtr
Smart pointer to ClientClasses object.
Definition classify.h:281
isc::dhcp::ClientClassDefPtr
boost::shared_ptr< ClientClassDef > ClientClassDefPtr
a pointer to an ClientClassDef
Definition client_class_def.h:347
isc::dhcp::OptionDefinitionPtr
boost::shared_ptr< OptionDefinition > OptionDefinitionPtr
Pointer to option definition object.
Definition option_definition.h:55
isc::dhcp::SharedNetwork6Ptr
boost::shared_ptr< SharedNetwork6 > SharedNetwork6Ptr
Pointer to SharedNetwork6 object.
Definition shared_network.h:267
isc::dhcp::OptionDescriptorPtr
boost::shared_ptr< OptionDescriptor > OptionDescriptorPtr
A pointer to option descriptor.
Definition cfg_option.h:38
isc::dhcp::SubnetID
uint32_t SubnetID
Defines unique IPv4 or IPv6 subnet identifier.
Definition subnet_id.h:25
isc::dhcp::OptionDefContainer
boost::multi_index_container< OptionDefinitionPtr, boost::multi_index::indexed_by< boost::multi_index::sequenced<>, boost::multi_index::hashed_non_unique< boost::multi_index::const_mem_fun< OptionDefinition, uint16_t, &OptionDefinition::getCode > >, boost::multi_index::hashed_non_unique< boost::multi_index::const_mem_fun< OptionDefinition, std::string, &OptionDefinition::getName > >, boost::multi_index::ordered_non_unique< boost::multi_index::const_mem_fun< data::BaseStampedElement, boost::posix_time::ptime, &data::StampedElement::getModificationTime > >, boost::multi_index::hashed_non_unique< boost::multi_index::tag< OptionIdIndexTag >, boost::multi_index::const_mem_fun< data::BaseStampedElement, uint64_t, &data::BaseStampedElement::getId > > > > OptionDefContainer
Multi index container for DHCP option definitions.
Definition option_definition.h:856
isc
Defines the logger used by the top-level component of kea-lfc.
Definition check_exists_add.cc:18
option.h
option_definition.h
server.h
server_collection.h
server_selector.h
server_tag.h
shared_network.h
stamped_value.h
subnet.h