Kea 2.5.8
d2_simple_parser.h
Go to the documentation of this file.
1// Copyright (C) 2017-2021 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 D2_SIMPLE_PARSER_H
8#define D2_SIMPLE_PARSER_H
9
10#include <cc/simple_parser.h>
11#include <d2srv/d2_cfg_mgr.h>
12
13namespace isc {
14namespace d2 {
15
23public:
24
31 static size_t setAllDefaults(data::ElementPtr global);
32
33 // see d2_simple_parser.cc for comments for those parameters
35
36 // Defaults for tsig-keys list elements, TSIGKeyInfos
38
39 // Defaults for <forward|reverse>-ddns elements, DdnsDomainListMgrs
41
42 // Defaults for ddns-domains list elements, DdnsDomains
44
45 // Defaults for dns-servers list elements, DnsServerInfos
47
57 static size_t setDdnsDomainDefaults(data::ElementPtr domain,
59 domain_defaults);
60
77 static size_t setManagerDefaults(data::ElementPtr global,
78 const std::string& mgr_name,
79 const data::SimpleDefaults& mgr_defaults);
80
88 void parse(const D2CfgContextPtr& ctx,
89 const isc::data::ConstElementPtr& config,
90 bool check_only);
91};
92
93};
94};
95
96#endif
static const data::SimpleDefaults D2_GLOBAL_DEFAULTS
This table defines default global values for D2.
static size_t setManagerDefaults(data::ElementPtr global, const std::string &mgr_name, const data::SimpleDefaults &mgr_defaults)
Adds default values to a DDNS Domain List Manager.
static const data::SimpleDefaults TSIG_KEY_DEFAULTS
Supplies defaults for ddns-domains list elements (i.e. DdnsDomains)
static size_t setDdnsDomainDefaults(data::ElementPtr domain, const data::SimpleDefaults &domain_defaults)
Adds default values to a DDNS Domain element.
void parse(const D2CfgContextPtr &ctx, const isc::data::ConstElementPtr &config, bool check_only)
Parses the whole D2 configuration.
static size_t setAllDefaults(data::ElementPtr global)
Sets all defaults for D2 configuration.
static const data::SimpleDefaults DNS_SERVER_DEFAULTS
Supplies defaults for optional values DdnsDomain entries.
static const data::SimpleDefaults DDNS_DOMAIN_MGR_DEFAULTS
Supplies defaults for optional values in DDNS domain managers (e.g.
static const data::SimpleDefaults DDNS_DOMAIN_DEFAULTS
Supplies defaults for ddns-domains list elements (i.e. DdnsDomains)
boost::shared_ptr< D2CfgContext > D2CfgContextPtr
Pointer to a configuration context.
Definition: d2_cfg_mgr.h:25
boost::shared_ptr< const Element > ConstElementPtr
Definition: data.h:29
std::vector< SimpleDefault > SimpleDefaults
This specifies all default values in a given scope (e.g. a subnet).
boost::shared_ptr< Element > ElementPtr
Definition: data.h:28
Defines the logger used by the top-level component of kea-lfc.