2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-09-05 08:25:16 +00:00

[#1710] Added lifetimes to v6 client classes

kea-dhcp6 client classes now support valid and preferred
lifetime triplets.  Need to update ARM and CB yet.

/doc/examples/kea6/all-keys.json
    Updated

/src/bin/dhcp6/dhcp6_lexer.ll b/src/bin/dhcp6/dhcp6_lexer.ll
    Added preferred and valid lifetime parameters to client class

/src/bin/dhcp6/dhcp6_parser.yy
    Added preferred and valid lifetime parameters to client class

src/bin/dhcp6/tests/config_parser_unittest.cc
    TEST_F(Dhcp6ParserTest, clientClassValidPreferredLifetime)  - new test

/src/bin/dhcp6/tests/parser_unittest.cc
    Added use of EXPECT_NO_THROW_LOG to ease finding JSON errors

/src/lib/dhcpsrv/alloc_engine.*
    AllocEngine::getLifetimes6() - new function
    Lease6Ptr AllocEngine::createLease6() - calls new function

/src/lib/dhcpsrv/client_class_def.*
/src/lib/dhcpsrv/parsers/client_class_def_parser.cc
    ClientClassDef - added support for preferred lifetime triplet

/src/lib/dhcpsrv/tests/alloc_engine6_unittest.cc
    TEST_F(AllocEngine6Test, getValidLifetime)
    TEST_F(AllocEngine6Test, getPreferredLifetime) - new tests

/src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc
    TEST_F(ClientClassDefParserTest, preferredLifetimeTests) - new test

/src/lib/dhcpsrv/tests/client_class_def_unittest.cc
    updated tests
This commit is contained in:
Thomas Markwalder
2021-08-05 14:05:32 -04:00
parent 5400f23dea
commit d98770b09c
17 changed files with 1539 additions and 973 deletions

View File

@@ -22,7 +22,25 @@
// Class selection expression. The DHCP packet is assigned to this
// class when the given expression evaluates to true.
"test": "member('HA_server1')"
"test": "member('HA_server1')",
// Class valid lifetime.
"valid-lifetime": 6000,
// Class min valid lifetime.
"min-valid-lifetime": 4000,
// Class max valid lifetime.
"max-valid-lifetime": 8000,
// Class preferred lifetime.
"preferred-lifetime": 7000,
// Class min preferred lifetime.
"min-preferred-lifetime": 5000,
// Class max preferred lifetime.
"max-preferred-lifetime": 9000
},
{
// Second class name.