2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-28 12:37:55 +00:00

44 Commits

Author SHA1 Message Date
Thomas Markwalder
1ea70ecc43 [#2719] Adds offer_lft to globali and network scopes
offer-lft added to global, shared-network4, and subnet4
Can be set/fetched/parsed but does nothing yet.

src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/cfg_globals.*
    Add offer-lft to global, shared-network4, and subnet4 values

src/lib/dhcpsrv/network.*
    Add offer_lft_ to Network4

src/lib/dhcpsrv/parsers/base_network_parser.*
    BaseNetworkParser::parseOfferLft() - new function

src/lib/dhcpsrv/parsers/dhcp_parsers.cc
    Subnet4ConfigParser::initSubnet()

src/lib/dhcpsrv/parsers/shared_network_parser.cc
    SharedNetwork4Parser::parse() - add call to parseOfferLft()

src/lib/dhcpsrv/tests/alloc_engine4_unittest.cc
    TEST_F(AllocEngine4Test, discoverOfferLft) - new test, currently
    fails because impl is missing.

src/lib/dhcpsrv/tests/cfg_shared_networks4_unittest.cc
src/lib/dhcpsrv/tests/cfg_subnets4_unittest.cc
src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
src/lib/dhcpsrv/tests/network_unittest.cc
src/lib/dhcpsrv/tests/shared_network_parser_unittest.cc
    Updated tests to account for offer-lft

src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy
src/bin/dhcp4/json_config_parser.cc
    Added offer-lft

src/bin/dhcp4/tests/get_config_unittest.cc
    Regenerated tests.
2023-03-23 07:17:48 -04:00
Thomas Markwalder
7c41640ad9 [#2677] Ignore invalid renew-timer values
src/lib/dhcpsrv/dhcpsrv_messages.*
    DHCPSRV_CFGMGR_RENEW_GTR_REBIND - new message

src/lib/dhcpsrv/network.h
    Added Network::getLabel()

src/lib/dhcpsrv/parsers/base_network_parser.cc
    BaseNetworkParser::parseCommon() - log renew > rebind
    rather than throw

src/lib/dhcpsrv/parsers/dhcp_parsers.cc
    Subnet4ConfigParser::initSubnet() - removed duplicate timer check
    Subnet6ConfigParser::initSubnet() - removed duplicate timer check

src/lib/dhcpsrv/shared_network.h
    Added SharedNetwork4::getLabel()
    Added SharedNetwork6::getLabel()

src/lib/dhcpsrv/subnet.h
    Added Subnet::getLabel()

src/lib/dhcpsrv/tests/cfg_subnets4_unittest.cc
    TEST_F(Subnet4ParserTest, parseWithInvalidRenewRebind) - new test

src/lib/dhcpsrv/tests/cfg_subnets6_unittest.cc
    TEST_F(Subnet4ParserTest, parseWithInvalidRenewRebind) - new test

src/lib/dhcpsrv/tests/shared_network_parser_unittest.cc
    Updated tests
2023-02-10 13:59:00 -05:00
Wlodek Wencel
e0f96268f8 [#2732] release changes 2023-01-23 19:18:49 +01:00
Marcin Siodelski
927ac35562 [#969] Improve allocator parsing code 2023-01-07 11:45:06 +01:00
Andrei Pavel
cd64f52014
[#2290] release changes 2022-01-25 18:17:54 +02:00
Francis Dupont
54b5106142 [#1082] Moved get property templates to indexes 2022-01-06 14:48:45 +02:00
Francis Dupont
a5871b3983 [#1082] Checkpoint: updated failing UTs 2022-01-06 14:48:45 +02:00
Thomas Markwalder
fe31eee4ed [#1848] Moves Triplet to isc::util
renamed:    src/lib/dhcpsrv/triplet.h -> src/lib/util/triplet.h

    modified:
    src/hooks/dhcp/pgsql_cb/pgsql_cb_impl.h
    src/hooks/dhcp/pgsql_cb/tests/pgsql_cb_impl_unittest.cc
    src/lib/cc/simple_parser.cc
    src/lib/cc/simple_parser.h
    src/lib/dhcpsrv/Makefile.am
    src/lib/dhcpsrv/client_class_def.cc
    src/lib/dhcpsrv/client_class_def.h
    src/lib/dhcpsrv/network.h
    src/lib/dhcpsrv/parsers/base_network_parser.cc
    src/lib/dhcpsrv/parsers/client_class_def_parser.cc
    src/lib/dhcpsrv/subnet.h
    src/lib/dhcpsrv/tests/Makefile.am
    src/lib/dhcpsrv/tests/alloc_engine4_unittest.cc
    src/lib/dhcpsrv/tests/alloc_engine6_unittest.cc
    src/lib/dhcpsrv/tests/alloc_engine_utils.cc
    src/lib/dhcpsrv/tests/cfg_shared_networks4_unittest.cc
    src/lib/dhcpsrv/tests/cfg_shared_networks6_unittest.cc
    src/lib/dhcpsrv/tests/cfg_subnets4_unittest.cc
    src/lib/dhcpsrv/tests/cfg_subnets6_unittest.cc
    src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc
    src/lib/dhcpsrv/tests/shared_network_unittest.cc
    src/lib/dhcpsrv/tests/srv_config_unittest.cc
    src/lib/dhcpsrv/tests/subnet_unittest.cc
    src/lib/dhcpsrv/tests/triplet_unittest.cc
    src/lib/util/Makefile.am
2021-11-17 15:35:19 +01:00
Andrei Pavel
76cc84f8d9 [#2025] simplify concatenating strings (minor) 2021-08-16 15:33:26 +00:00
Thomas Markwalder
ba98ea39a4 [#1635] Added valid-lifetime to v4 client class
Client class definitions in kea-dhcp4 will now parse
and store valid lifetime triplet (e.g. min-valid-lifetime,
valid-lifetime, and max-valid-lifetime).  Does nothing
with it yet.

src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy b/src/bin/dhcp4/dhcp4_parser.yy
    Added support for valid-lifetime triplet to client class
    definitions

src/lib/cc/simple_parser.*
    SimpleParser::const Triplet<uint32_t>SimpleParser::parseIntTriplet()
    - was formerly dhcp::BaseNetworkParser::parseLifetime()

src/lib/dhcpsrv/client_class_def.*
    ClientClassDef::ClientClassDef
    - added Triplet<uint32_t>valid_  member

src/lib/dhcpsrv/parsers/base_network_parser.*
    Extracted BaseNetworkParser::parseLifetime - relocated
    to cc::SimpleParser

src/lib/dhcpsrv/parsers/client_class_def_parser.cc
    ClientClassDefParser::parse - added call to parseIntTriplet
    to parse valid-lifetime

src/lib/dhcpsrv/parsers/dhcp_parsers.cc
src/lib/dhcpsrv/parsers/shared_network_parser.cc
    Replaced calls parseLifeTime() with parseIntTriplet()

src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc
    TEST_F(ClientClassDefParserTest, validLifetimeTests) - new test
2021-02-19 13:21:17 -05:00
Andrei Pavel
c53e135833
[#1656] 1.9.4 release: update copyrights 2021-01-25 13:52:09 +02:00
Andrei Pavel
96f049b111
[#1656] 1.9.4 release: spelling check 2021-01-25 13:52:09 +02:00
Razvan Becheriu
d66b4b70a0 [1598] convert reservation-mode from CB to new flags 2021-01-19 13:37:45 +02:00
Razvan Becheriu
45126cf3f7 [#1405] clean up 2020-11-18 15:55:24 +02:00
Razvan Becheriu
f06b3ffde9 [#1405] ignore out of pool if in subnet is disabled 2020-11-18 15:55:24 +02:00
Razvan Becheriu
d26a72f560 [#1405] merged second pass 2020-11-18 15:55:23 +02:00
Razvan Becheriu
67f5492bac [#1405] addressed comments 2020-11-18 15:55:23 +02:00
Razvan Becheriu
21f9a8f82c [#1405] in-subnet is equivalent to all 2020-11-18 15:55:23 +02:00
Razvan Becheriu
e65f8627f9 [#1405] do not set reservation mode if not explicitly specified 2020-11-18 15:55:23 +02:00
Razvan Becheriu
378451e9b0 [#1405] fixed unittests 2020-11-18 15:55:23 +02:00
Razvan Becheriu
d8b440feab [#1405] fixed compilation 2020-11-18 15:55:22 +02:00
Razvan Becheriu
4bb89f01a7 [#1405] implemented separate boolean flags for reservation modes 2020-11-18 15:55:22 +02:00
Razvan Becheriu
02ac459451 [#1405] added parser class 2020-11-18 15:55:22 +02:00
Thomas Markwalder
00305bc7d4 [#1386] kea-dhcp4/6 now parse ddns-use-conflict-resolution
Both servers parse and store ddns-use-conflict-resolution but
do nothing with it.

doc/examples/kea4/all-keys.json
doc/examples/kea4/with-ddns.json
doc/examples/kea6/all-keys.json
doc/examples/kea6/with-ddns.json
    Added entries for ddns-use-conflict-resolution

src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy
src/bin/dhcp4/json_config_parser.cc
src/bin/dhcp4/tests/get_config_unittest.cc
    Added support for ddns-use-conflict-resolution

src/bin/dhcp4/tests/get_config_unittest.cc.skel
    Changed important calls to ASSERT_NO_THROW_LOG to ease debugging

src/bin/dhcp6/dhcp6_lexer.ll
src/bin/dhcp6/dhcp6_parser.yy
src/bin/dhcp6/json_config_parser.cc
src/bin/dhcp6/tests/get_config_unittest.cc
    Added support for ddns-use-conflict-resolution

src/bin/dhcp6/tests/get_config_unittest.cc.skel
    Changed important calls to ASSERT_NO_THROW_LOG to ease debugging

src/lib/dhcpsrv/parsers/base_network_parser.cc
    Fixed copy/paste error
2020-10-21 14:19:52 -04:00
Thomas Markwalder
f8174588d5 [1386] Added support for ddns-use-conflict-resolution to dhcpsrv
src/lib/dhcpsrv/network.*
    Added Network::ddns_use_conflict_resolution_

src/lib/dhcpsrv/parsers/base_network_parser.cc
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser6.cc
    Added "ddns-use-conflict-resolution"

src/lib/dhcpsrv/srv_config.*
    Added DdnsParams::use_conflict_resolution_

src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
src/lib/dhcpsrv/tests/network_unittest.cc
src/lib/dhcpsrv/tests/srv_config_unittest.cc
    Updated tests
2020-10-21 14:19:52 -04:00
Thomas Markwalder
3a4455a4a7 [#1385] kea-dhcp4 supporst ddns-update-on-renew
(Parsers need to be regenerated)

src/bin/dhcp4/dhcp4_lexer.ll
src/bin/dhcp4/dhcp4_parser.yy
src/bin/dhcp4/json_config_parser.cc
    added ddns-update-on-renew parameter

src/bin/dhcp4/dhcp4_srv.*
    Dhcpv4Srv::createNameChangeRequests() - added DdnsParams
    argument and modified to use ddns-update-on-renew in logic

src/bin/dhcp4/tests/fqdn_unittest.cc
    TEST_F(NameDhcpv4SrvTest, createNameChangeRequestsUpdateOnRenew)
    - new test

src/bin/dhcp4/tests/get_config_unittest.cc
    Updated

src/lib/dhcpsrv/network.*
src/lib/dhcpsrv/parsers/base_network_parser.cc
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser6.cc
src/lib/dhcpsrv/srv_config.*
    Added ddns-update-on-renew

src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
src/lib/dhcpsrv/tests/network_unittest.cc
src/lib/dhcpsrv/tests/shared_network_parser_unittest.cc
src/lib/dhcpsrv/tests/shared_network_unittest.cc
src/lib/dhcpsrv/tests/srv_config_unittest.cc
src/lib/dhcpsrv/tests/subnet_unittest.cc
    updated tests
2020-10-09 16:51:28 +02:00
Francis Dupont
2fbc4fc0e3 [#1418] Checkpoint: more renames 2020-10-02 17:10:31 +02:00
Francis Dupont
2505d5e3fd [#1418] Checkpoint: updated library, a syntax regen is required 2020-10-02 16:48:59 +02:00
Razvan Becheriu
6833b3d16b [#505] addressed review 2020-08-21 10:04:30 +00:00
Razvan Becheriu
3c2028c1aa [#505] addressed review 2020-08-21 10:04:30 +00:00
Razvan Becheriu
7c8c11dc36 [#505] add check for T1 and T2 at subnet and network level 2020-08-21 10:04:30 +00:00
Wlodek Wencel
a8aed452db [#1201] 1.7.7 pre-release changees 2020-04-27 10:46:30 +02:00
Thomas Markwalder
4d3cb9ab14 [#1010] Modified AllocateEngine and parsers to store extended v6 lease info
src/lib/dhcpsrv/alloc_engine.*
    AllocEngine::reuseExpiredLease()
    AllocEngine::createLease6()
    AllocEngine::extendLease6() - added call to AllocEngine::updateLase6ExtendedInfo()

    AllocEngine::updateLease4ExtendedInfo() - create Elements directly

    AllocEngine::updateLease6ExtendedInfo() - new method

src/lib/dhcpsrv/tests/alloc_engine6_unittest.cc
    TEST_F(AllocEngine6ExtendedInfoTest, updateExtendedInfo6)
    TEST_F(AllocEngine6ExtendedInfoTest, storeExtendedInfoEnabled6)
    TEST_F(AllocEngine6ExtendedInfoTest, storeExtendedInfoDisabled6)
    TEST_F(AllocEngine6ExtendedInfoTest, reuseExpiredLease6)
    - new tests

src/lib/dhcpsrv/parsers/dhcp_parsers.cc
src/lib/dhcpsrv/parsers/shared_network_parser.cc
src/lib/dhcpsrv/parsers/base_network_parser.*
    Renamed BaseNetworkParser::parseCommonTimer() to parseCommon() and
    added handling of store-extended-info.

src/lib/dhcpsrv/parsers/simple_parser6.cc
    Added store-extended-info

src/lib/dhcpsrv/tests/cfg_shared_networks6_unittest.cc
src/lib/dhcpsrv/tests/cfg_subnets6_unittest.cc
src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
src/lib/dhcpsrv/tests/network_unittest.cc
src/lib/dhcpsrv/tests/shared_network_parser_unittest.cc
    updated tests
2020-04-02 21:08:09 +02:00
Thomas Markwalder
7cfc5d3fd3 [#35,!517] Addressed review comments
Addressed a myriad of minor typos and wording issues.

modified:
ChangeLog
doc/examples/kea4/all-keys.json
doc/examples/kea6/all-keys.json
doc/sphinx/arm/dhcp4-srv.rst
doc/sphinx/arm/dhcp6-srv.rst
src/bin/dhcp4/dhcp4_srv.cc
src/bin/dhcp4/tests/config_parser_unittest.cc
src/bin/dhcp4/tests/fqdn_unittest.cc
src/bin/dhcp6/tests/config_parser_unittest.cc
src/bin/dhcp6/tests/d2_unittest.cc
src/bin/dhcp6/tests/fqdn_unittest.cc
src/lib/dhcpsrv/alloc_engine.cc
src/lib/dhcpsrv/alloc_engine.h
src/lib/dhcpsrv/d2_client_cfg.h
src/lib/dhcpsrv/parsers/base_network_parser.cc
src/lib/dhcpsrv/srv_config.h
2019-10-10 08:36:39 -04:00
Thomas Markwalder
590767d4d6 [#35,!517] Added hostname-char-set to hostname-char-replacement network/subnet scopes
src/lib/dhcpsrv/d2_client_cfg.*
    Added hostname-char-set and hostname-char-replacement to DdnsParms
    DdnsParams::getHostnameSanitizer()  - new function to return a sanitizer

src/lib/dhcpsrv/d2_client_mgr.h
    D2ClientMgr::adjustDomainName() - now gets sanitizer from ddns_params

src/lib/dhcpsrv/network.*
src/lib/dhcpsrv/parsers/base_network_parser.cc
src/lib/dhcpsrv/parsers/simple_parser4.cc
src/lib/dhcpsrv/parsers/simple_parser6.cc
    Added hostname-char-set and hostname-char-replacement to networks and subnets
2019-10-10 08:32:44 -04:00
Thomas Markwalder
e782a9d5a7 [#35,!517] Added DDDNS parameters to networks,subnets, and their parsers
src/lib/dhcpsrv/network.*
    Network - added DDNS parameters: Optional members, getters, setters
    Network::toElement() - added DDNS parameters

src/lib/dhcpsrv/parsers/base_network_parser.*
    BaseNetworkParser::parseDdnsParams() - new method to parse DDNS parameters

    BaseNetworkParser::parseLifetime() - fixed unitialized variables warning

src/lib/dhcpsrv/parsers/dhcp_parsers.cc
    Subnet4ConfigParser::initSubnet()
    Subnet6ConfigParser::initSubnet()  - added call to parseDdnsParms().

src/lib/dhcpsrv/parsers/shared_network_parser.cc
    SharedNetwork4Parser::parse()
    SharedNetwork6Parser::parse() - added call to parseDdnsParms().

src/lib/dhcpsrv/parsers/simple_parser4.cc
    SimpleParser4::GLOBAL4_PARAMETERS
    SimpleParser4::GLOBAL4_DEFAULTS
    SimpleParser4::SUBNET4_PARAMETERS
    SimpleParser4::INHERIT_TO_SUBNET4
    SimpleParser4::SHARED_NETWORK4_PARAMETERS - added DDNS parameters

src/lib/dhcpsrv/parsers/simple_parser6.cc
    SimpleParser6::GLOBAL6_PARAMETERS
    SimpleParser6::GLOBAL6_DEFAULTS
    SimpleParser6::SUBNET6_PARAMETERS
    SimpleParser6::INHERIT_TO_SUBNET6
    SimpleParser6::SHARED_NETWORK6_PARAMETERS - added DDNS parameters

src/lib/dhcpsrv/tests/cfg_shared_networks4_unittest.cc
src/lib/dhcpsrv/tests/cfg_shared_networks6_unittest.cc
src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
src/lib/dhcpsrv/tests/network_unittest.cc
src/lib/dhcpsrv/tests/shared_network_parser_unittest.cc
src/lib/dhcpsrv/tests/shared_network_unittest.cc
src/lib/dhcpsrv/tests/subnet_unittest.cc
    Updated tests.
2019-10-10 08:32:44 -04:00
Francis Dupont
92f5408595 [295-min-max-lease-time-configuration-options] Improved lifetime bound checks 2019-06-22 10:05:24 -04:00
Francis Dupont
25c3e87cf6 [295-min-max-lease-time-configuration-options] Added bad lifetime error checks 2019-06-22 10:05:24 -04:00
Francis Dupont
9ef628e779 [295-min-max-lease-time-configuration-options] Removed default- keywords 2019-06-22 10:05:23 -04:00
Francis Dupont
da42fc316e [295-min-max-lease-time-configuration-options] checkpoint 2019-06-22 10:05:23 -04:00
Francis Dupont
a445d32933 [655-typo-in-parseteepercents] Fixed parseTeePercents cut & paste typo 2019-06-18 12:47:52 -04:00
Marcin Siodelski
e6533001e9 [#517,!301] Shared network parser supports reservation-mode parameter. 2019-04-16 11:11:07 +02:00
Marcin Siodelski
f3400b9872 [#488,!259] Rename parameters in the base network parser. 2019-03-07 08:00:36 -05:00
Marcin Siodelski
09c5653d82 [#488,!259] Extracted common parsing functions to a new class. 2019-03-07 08:00:36 -05:00