Kea 3.1.1
config_backend_pool_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_POOL_DHCP6_H
8#define CONFIG_BACKEND_POOL_DHCP6_H
9
10#include <cc/server_tag.h>
11#include <cc/stamped_value.h>
15#include <dhcp/option.h>
17#include <dhcpsrv/cfg_option.h>
21#include <dhcpsrv/subnet.h>
22#include <boost/date_time/posix_time/ptime.hpp>
23#include <string>
24
25namespace isc {
26namespace dhcp {
27
32class ConfigBackendPoolDHCPv6 : public cb::BaseConfigBackendPool<ConfigBackendDHCPv6> {
33public:
34
41 virtual Subnet6Ptr
42 getSubnet6(const db::BackendSelector& backend_selector,
43 const db::ServerSelector& server_selector,
44 const std::string& subnet_prefix) const;
45
52 virtual Subnet6Ptr
53 getSubnet6(const db::BackendSelector& backend_selector,
54 const db::ServerSelector& server_selector,
55 const SubnetID& subnet_id) const;
56
62 virtual Subnet6Collection
63 getAllSubnets6(const db::BackendSelector& backend_selector,
64 const db::ServerSelector& server_selector) const;
65
72 virtual Subnet6Collection
73 getModifiedSubnets6(const db::BackendSelector& backend_selector,
74 const db::ServerSelector& server_selector,
75 const boost::posix_time::ptime& modification_time) const;
76
88 virtual Subnet6Collection
89 getSharedNetworkSubnets6(const db::BackendSelector& backend_selector,
90 const db::ServerSelector& server_selector,
91 const std::string& shared_network_name) const;
92
99 virtual SharedNetwork6Ptr
100 getSharedNetwork6(const db::BackendSelector& backend_selector,
101 const db::ServerSelector& server_selector,
102 const std::string& name) const;
103
111 getAllSharedNetworks6(const db::BackendSelector& backend_selector,
112 const db::ServerSelector& server_selector) const;
113
122 getModifiedSharedNetworks6(const db::BackendSelector& backend_selector,
123 const db::ServerSelector& server_selector,
124 const boost::posix_time::ptime& modification_time) const;
125
133 virtual OptionDefinitionPtr
134 getOptionDef6(const db::BackendSelector& backend_selector,
135 const db::ServerSelector& server_selector,
136 const uint16_t code,
137 const std::string& space) const;
138
145 virtual OptionDefContainer
146 getAllOptionDefs6(const db::BackendSelector& backend_selector,
147 const db::ServerSelector& server_selector) const;
148
157 virtual OptionDefContainer
158 getModifiedOptionDefs6(const db::BackendSelector& backend_selector,
159 const db::ServerSelector& server_selector,
160 const boost::posix_time::ptime& modification_time) const;
161
172 virtual OptionDescriptorPtr
173 getOption6(const db::BackendSelector& backend_selector,
174 const db::ServerSelector& server_selector,
175 const uint16_t code,
176 const std::string& space,
177 const ClientClassesPtr client_classes = ClientClassesPtr()) const;
178
185 virtual OptionContainer
186 getAllOptions6(const db::BackendSelector& backend_selector,
187 const db::ServerSelector& server_selector) const;
188
196 virtual OptionContainer
197 getModifiedOptions6(const db::BackendSelector& backend_selector,
198 const db::ServerSelector& server_selector,
199 const boost::posix_time::ptime& modification_time) const;
200
208 getGlobalParameter6(const db::BackendSelector& backend_selector,
209 const db::ServerSelector& server_selector,
210 const std::string& name) const;
211
217 getAllGlobalParameters6(const db::BackendSelector& backend_selector,
218 const db::ServerSelector& server_selector) const;
219
228 const db::ServerSelector& server_selector,
229 const boost::posix_time::ptime& modification_time) const;
230
237 virtual ClientClassDefPtr
238 getClientClass6(const db::BackendSelector& backend_selector,
239 const db::ServerSelector& server_selector,
240 const std::string& name) const;
241
248 getAllClientClasses6(const db::BackendSelector& backend_selector,
249 const db::ServerSelector& server_selector) const;
250
258 getModifiedClientClasses6(const db::BackendSelector& backend_selector,
259 const db::ServerSelector& server_selector,
260 const boost::posix_time::ptime& modification_time) const;
261
273 getRecentAuditEntries(const db::BackendSelector& backend_selector,
274 const db::ServerSelector& server_selector,
275 const boost::posix_time::ptime& modification_time,
276 const uint64_t& modification_id) const;
277
286 getAllServers6(const db::BackendSelector& backend_selector) const;
287
294 virtual db::ServerPtr
295 getServer6(const db::BackendSelector& backend_selector,
296 const data::ServerTag& server_tag) const;
297
303 virtual void
304 createUpdateSubnet6(const db::BackendSelector& backend_selector,
305 const db::ServerSelector& server_selector,
306 const Subnet6Ptr& subnet);
307
313 virtual void
314 createUpdateSharedNetwork6(const db::BackendSelector& backend_selector,
315 const db::ServerSelector& server_selector,
316 const SharedNetwork6Ptr& shared_network);
317
323 virtual void
324 createUpdateOptionDef6(const db::BackendSelector& backend_selector,
325 const db::ServerSelector& server_selector,
326 const OptionDefinitionPtr& option_def);
327
333 virtual void
334 createUpdateOption6(const db::BackendSelector& backend_selector,
335 const db::ServerSelector& server_selector,
336 const OptionDescriptorPtr& option);
337
345 virtual void
346 createUpdateOption6(const db::BackendSelector& backend_selector,
347 const db::ServerSelector& server_selector,
348 const std::string& shared_network_name,
349 const OptionDescriptorPtr& option);
350
357 virtual void
358 createUpdateOption6(const db::BackendSelector& backend_selector,
359 const db::ServerSelector& server_selector,
360 const SubnetID& subnet_id,
361 const OptionDescriptorPtr& option);
362
372 virtual void
373 createUpdateOption6(const db::BackendSelector& backend_selector,
374 const db::ServerSelector& server_selector,
375 const asiolink::IOAddress& pool_start_address,
376 const asiolink::IOAddress& pool_end_address,
377 const OptionDescriptorPtr& option);
378
388 virtual void
389 createUpdateOption6(const db::BackendSelector& backend_selector,
390 const db::ServerSelector& server_selector,
391 const asiolink::IOAddress& pd_pool_prefix,
392 const uint8_t pd_pool_prefix_length,
393 const OptionDescriptorPtr& option);
394
400 virtual void
402 const db::ServerSelector& server_selector,
403 const data::StampedValuePtr& value);
404
414 virtual void
415 createUpdateClientClass6(const db::BackendSelector& backend_selector,
416 const db::ServerSelector& server_selector,
417 const ClientClassDefPtr& client_class,
418 const std::string& follow_class_name);
419
424 virtual void
425 createUpdateServer6(const db::BackendSelector& backend_selector,
426 const db::ServerPtr& server);
427
434 virtual uint64_t
435 deleteSubnet6(const db::BackendSelector& backend_selector,
436 const db::ServerSelector& server_selector,
437 const std::string& subnet_prefix);
438
445 virtual uint64_t
446 deleteSubnet6(const db::BackendSelector& backend_selector,
447 const db::ServerSelector& server_selector,
448 const SubnetID& subnet_id);
449
455 virtual uint64_t
456 deleteAllSubnets6(const db::BackendSelector& backend_selector,
457 const db::ServerSelector& server_selector);
458
466 virtual uint64_t
467 deleteSharedNetworkSubnets6(const db::BackendSelector& backend_selector,
468 const db::ServerSelector& server_selector,
469 const std::string& shared_network_name);
470
477 virtual uint64_t
478 deleteSharedNetwork6(const db::BackendSelector& backend_selector,
479 const db::ServerSelector& server_selector,
480 const std::string& name);
481
487 virtual uint64_t
488 deleteAllSharedNetworks6(const db::BackendSelector& backend_selector,
489 const db::ServerSelector& server_selector);
490
498 virtual uint64_t
499 deleteOptionDef6(const db::BackendSelector& backend_selector,
500 const db::ServerSelector& server_selector,
501 const uint16_t code,
502 const std::string& space);
503
509 virtual uint64_t
510 deleteAllOptionDefs6(const db::BackendSelector& backend_selector,
511 const db::ServerSelector& server_selector);
512
522 virtual uint64_t
523 deleteOption6(const db::BackendSelector& backend_selector,
524 const db::ServerSelector& server_selector,
525 const uint16_t code,
526 const std::string& space,
527 const ClientClassesPtr client_classes = ClientClassesPtr());
528
540 virtual uint64_t
541 deleteOption6(const db::BackendSelector& backend_selector,
542 const db::ServerSelector& server_selector,
543 const std::string& shared_network_name,
544 const uint16_t code,
545 const std::string& space,
546 const ClientClassesPtr client_classes = ClientClassesPtr());
547
559 virtual uint64_t
560 deleteOption6(const db::BackendSelector& backend_selector,
561 const db::ServerSelector& server_selector,
562 const SubnetID& subnet_id,
563 const uint16_t code, const std::string& space,
564 const ClientClassesPtr client_classes = ClientClassesPtr());
565
579 virtual uint64_t
580 deleteOption6(const db::BackendSelector& backend_selector,
581 const db::ServerSelector& server_selector,
582 const asiolink::IOAddress& pool_start_address,
583 const asiolink::IOAddress& pool_end_address,
584 const uint16_t code,
585 const std::string& space,
586 const ClientClassesPtr client_classes = ClientClassesPtr());
587
601 virtual uint64_t
602 deleteOption6(const db::BackendSelector& backend_selector,
603 const db::ServerSelector& server_selector,
604 const asiolink::IOAddress& pd_pool_prefix,
605 const uint8_t pd_pool_prefix_length,
606 const uint16_t code,
607 const std::string& space,
608 const ClientClassesPtr client_classes = ClientClassesPtr());
609
616 virtual uint64_t
617 deleteGlobalParameter6(const db::BackendSelector& backend_selector,
618 const db::ServerSelector& server_selector,
619 const std::string& name);
620
626 virtual uint64_t
627 deleteAllGlobalParameters6(const db::BackendSelector& backend_selector,
628 const db::ServerSelector& server_selector);
629
636 virtual uint64_t
637 deleteClientClass6(const db::BackendSelector& backend_selector,
638 const db::ServerSelector& server_selector,
639 const std::string& name);
640
646 virtual uint64_t
647 deleteAllClientClasses6(const db::BackendSelector& backend_selector,
648 const db::ServerSelector& server_selector);
649
655 virtual uint64_t
656 deleteServer6(const db::BackendSelector& backend_selector,
657 const data::ServerTag& server_tag);
658
664 virtual uint64_t
665 deleteAllServers6(const db::BackendSelector& backend_selector);
666};
667
668
669} // end of namespace isc::dhcp
670} // end of namespace isc
671
672#endif // CONFIG_BACKEND_POOL_DHCP6_H
Base class for configuration backend pools.
Represents a server tag.
Definition server_tag.h:25
Config Backend selector.
Server selector for associating objects in a database with specific servers.
Maintains a list of ClientClassDef's.
Implementation of the Configuration Backend Pool for DHCPv6.
virtual OptionContainer getModifiedOptions6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const
Retrieves option modified after specified time.
virtual SharedNetwork6Collection getAllSharedNetworks6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector) const
Retrieves all shared networks.
virtual uint64_t deleteSharedNetworkSubnets6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &shared_network_name)
Deletes all subnets belonging to a specified shared network.
virtual OptionDefinitionPtr getOptionDef6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const uint16_t code, const std::string &space) const
Retrieves single option definition by code and space.
virtual uint64_t deleteGlobalParameter6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &name)
Deletes global parameter.
virtual ClientClassDefPtr getClientClass6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &name) const
Retrieves a client class by name.
virtual void createUpdateSubnet6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const Subnet6Ptr &subnet)
Creates or updates a subnet.
virtual void createUpdateSharedNetwork6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const SharedNetwork6Ptr &shared_network)
Creates or updates a shared network.
virtual uint64_t deleteAllGlobalParameters6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector)
Deletes all global parameters.
virtual db::ServerCollection getAllServers6(const db::BackendSelector &backend_selector) const
Retrieves all servers from the particular backend.
virtual void createUpdateOption6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const OptionDescriptorPtr &option)
Creates or updates global option.
virtual uint64_t deleteAllClientClasses6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector)
Deletes all client classes.
virtual Subnet6Collection getModifiedSubnets6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const
Retrieves subnets modified after specified time.
virtual uint64_t deleteSubnet6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &subnet_prefix)
Deletes subnet by prefix.
virtual Subnet6Collection getAllSubnets6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector) const
Retrieves all subnets.
virtual db::AuditEntryCollection getRecentAuditEntries(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time, const uint64_t &modification_id) const
Retrieves the most recent audit entries.
virtual SharedNetwork6Collection getModifiedSharedNetworks6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const
Retrieves shared networks modified after specified time.
virtual uint64_t deleteServer6(const db::BackendSelector &backend_selector, const data::ServerTag &server_tag)
Deletes a server from the backend.
virtual Subnet6Collection getSharedNetworkSubnets6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &shared_network_name) const
Retrieves all subnets belonging to a specified shared network.
virtual OptionDefContainer getAllOptionDefs6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector) const
Retrieves all option definitions.
virtual uint64_t deleteAllOptionDefs6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector)
Deletes all option definitions.
virtual db::ServerPtr getServer6(const db::BackendSelector &backend_selector, const data::ServerTag &server_tag) const
Retrieves a server from the particular backend.
virtual uint64_t deleteOptionDef6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const uint16_t code, const std::string &space)
Deletes option definition.
virtual ClientClassDictionary getModifiedClientClasses6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const
Retrieves client classes modified after specified time.
virtual data::StampedValueCollection getAllGlobalParameters6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector) const
Retrieves all global parameters.
virtual uint64_t deleteOption6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, const ClientClassesPtr client_classes=ClientClassesPtr())
Deletes global option.
virtual ClientClassDictionary getAllClientClasses6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector) const
Retrieves all client classes.
virtual void createUpdateGlobalParameter6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const data::StampedValuePtr &value)
Creates or updates global string parameter.
virtual void createUpdateOptionDef6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const OptionDefinitionPtr &option_def)
Creates or updates an option definition.
virtual uint64_t deleteAllServers6(const db::BackendSelector &backend_selector)
Deletes all servers from the backend except the logical server 'all'.
virtual void createUpdateClientClass6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const ClientClassDefPtr &client_class, const std::string &follow_class_name)
Creates or updates DHCPv6 client class.
virtual data::StampedValuePtr getGlobalParameter6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &name) const
Retrieves global parameter value.
virtual OptionDefContainer getModifiedOptionDefs6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const
Retrieves option definitions modified after specified time.
virtual Subnet6Ptr getSubnet6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &subnet_prefix) const
Retrieves a single subnet by subnet_prefix.
virtual data::StampedValueCollection getModifiedGlobalParameters6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const boost::posix_time::ptime &modification_time) const
Retrieves global parameters modified after specified time.
virtual uint64_t deleteAllSharedNetworks6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector)
Deletes all shared networks.
virtual uint64_t deleteSharedNetwork6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &name)
Deletes shared network by name.
virtual OptionContainer getAllOptions6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector) const
Retrieves all global options.
virtual uint64_t deleteAllSubnets6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector)
Deletes all subnets.
virtual OptionDescriptorPtr getOption6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const uint16_t code, const std::string &space, const ClientClassesPtr client_classes=ClientClassesPtr()) const
Retrieves single option by code and space.
virtual SharedNetwork6Ptr getSharedNetwork6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &name) const
Retrieves shared network by name.
virtual void createUpdateServer6(const db::BackendSelector &backend_selector, const db::ServerPtr &server)
Creates or updates a server.
virtual uint64_t deleteClientClass6(const db::BackendSelector &backend_selector, const db::ServerSelector &server_selector, const std::string &name)
Deletes DHCPv6 client class.
Defines classes for storing client class definitions.
boost::shared_ptr< StampedValue > StampedValuePtr
Pointer to the stamped value.
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.
boost::shared_ptr< Server > ServerPtr
Shared pointer to the Server class.
Definition server.h:22
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.
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.
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
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.
boost::shared_ptr< Subnet6 > Subnet6Ptr
A pointer to a Subnet6 object.
Definition subnet.h:626
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:937
boost::shared_ptr< ClientClasses > ClientClassesPtr
Smart pointer to ClientClasses object.
Definition classify.h:281
boost::shared_ptr< ClientClassDef > ClientClassDefPtr
a pointer to an ClientClassDef
boost::shared_ptr< OptionDefinition > OptionDefinitionPtr
Pointer to option definition object.
boost::shared_ptr< SharedNetwork6 > SharedNetwork6Ptr
Pointer to SharedNetwork6 object.
boost::shared_ptr< OptionDescriptor > OptionDescriptorPtr
A pointer to option descriptor.
Definition cfg_option.h:38
uint32_t SubnetID
Defines unique IPv4 or IPv6 subnet identifier.
Definition subnet_id.h:25
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.
Defines the logger used by the top-level component of kea-lfc.