]> git.ipfire.org Git - thirdparty/kea.git/commit
[5110] Entire D2 configuration is now handled through new parsing scheme
authorThomas Markwalder <tmark@isc.org>
Tue, 31 Jan 2017 20:28:22 +0000 (15:28 -0500)
committerThomas Markwalder <tmark@isc.org>
Tue, 31 Jan 2017 20:28:22 +0000 (15:28 -0500)
commit7e1ef0b29601d93d6de0e6b0da038c1534b44a06
treeaca49cf5d320768cd0d0f72997b1eb7cff8b5c1c
parente93455bd5c3ff2788dc0833a73049c105e5348db
[5110] Entire D2 configuration is now handled through new parsing scheme

src/bin/d2/d2_cfg_mgr.h
src/bin/d2/d2_cfg_mgr.cc
    "forward-ddns" and "reverse-ddns" are now parsed using SimpleParsers

src/bin/d2/d2_config.h
src/bin/d2/d2_config.cc
    TSIGKeyInfoParser converted to flat style
    DnsServerInfoParser, DnsServerInfoListParser, DdnsDomainParser,
    DdnsDomainListParser, DdnsDomainListMgrParser
    - now all derive from SimpleParser

src/bin/d2/d2_lexer.ll
    Added sub-grammar/contexts for PARSER_TSIG_KEY, PARSER_DDNS_DOMAIN,
    PARSER_DNS_SERVER:

src/bin/d2/d2_parser.yy
    Added "false" tokens for sub-contexts:
        SUB_TSIG_KEY, SUB_TSIG_KEYS, SUB_DDNS_DOMAIN,SUB_DDNS_DOMAINS,
        SUB_DNS_SERVER, SUB_DNS_SERVERS

src/bin/d2/d2_simple_parser.h
src/bin/d2/d2_simple_parser.cc
    Added Defaults:
        TSIG_KEY_DEFAULTS, DDNS_DOMAIN_MGR_DEFAULTS, DDNS_DOMAIN_DEFAULTS,
        DNS_SERVER_DEFAULTS

    D2SimpleParser::setDdnsDomainDefaults()
    D2SimpleParser::setManagerDefaults() - new methods to handle setting
    scalar defaults and defaults of child elements

    D2SimpleParser::setAllDefaults() - now sets defaults for entire D2
    config

parser_context.h
parser_context.cc
    Added parser types:
        PARSER_SUB_DHCPDDNS,
        PARSER_TSIG_KEY,
        PARSER_TSIG_KEYS,
        PARSER_DDNS_DOMAIN,
        PARSER_DDNS_DOMAINS,
        PARSER_DNS_SERVER,
        PARSER_DNS_SERVERS

src/bin/d2/tests/d2_cfg_mgr_unittests.h
src/bin/d2/tests/d2_cfg_mgr_unittests.cc
    Moved all component SimpleParser tests to d2_simple_parser_unittest.cc/h
    Revamped D2CfgMgrTest

src/bin/d2/tests/d2_simple_parser_unittest.h
src/bin/d2/tests/d2_simple_parser_unittest.cc
    Moved component SimpleParser tests here.

src/bin/d2/tests/nc_test_utils.h
src/bin/d2/tests/nc_test_utils.cc
    Moved valid_d2_config global from lib/process/tests to here

src/bin/d2/tests/testdata/d2_cfg_tests.json
    Updated format and error messages

src/lib/process/testutils/d_test_stubs.h
src/lib/process/testutils/d_test_stubs.cc
    Removed valid_d2_config
22 files changed:
src/bin/d2/d2_cfg_mgr.cc
src/bin/d2/d2_cfg_mgr.h
src/bin/d2/d2_config.cc
src/bin/d2/d2_config.h
src/bin/d2/d2_lexer.cc
src/bin/d2/d2_lexer.ll
src/bin/d2/d2_parser.cc
src/bin/d2/d2_parser.h
src/bin/d2/d2_parser.yy
src/bin/d2/d2_simple_parser.cc
src/bin/d2/d2_simple_parser.h
src/bin/d2/parser_context.cc
src/bin/d2/parser_context.h
src/bin/d2/tests/d2_cfg_mgr_unittests.cc
src/bin/d2/tests/d2_controller_unittests.cc
src/bin/d2/tests/d2_process_unittests.cc
src/bin/d2/tests/d2_simple_parser_unittest.cc
src/bin/d2/tests/nc_test_utils.cc
src/bin/d2/tests/nc_test_utils.h
src/bin/d2/tests/testdata/d2_cfg_tests.json
src/lib/process/testutils/d_test_stubs.cc
src/lib/process/testutils/d_test_stubs.h