+2252. [bug] tmark, razvan
+ Corrected an issue in MySQL config back end that
+ causes preferred life time values to be overwritten
+ when updating client classes via remote-set-class6.
+ command.
+ (Gitlab #3509, #3469)
+
2251. [build] razvan
The library version numbers have been bumped up for the Kea 2.6.1
stable release.
sometimes not returned when they were specified at the subnet,
shared network or client class level.
(Gitlab #3485)
+
2248. [bug] razvan
Fixed a file descriptor leak in the High Availability hook
library.
ASSERT_NO_THROW_LOG(client_class = cbptr_->getClientClass4(ServerSelector::ALL(), class1->getName()));
ASSERT_TRUE(client_class);
+ // Verify lifetime values.
+ EXPECT_EQ(30, client_class->getValid().getMin());
+ EXPECT_EQ(60, client_class->getValid().get());
+ EXPECT_EQ(90, client_class->getValid().getMax());
+
// Validate options belonging to the class.
ASSERT_TRUE(client_class->getCfgOption());
OptionDescriptor returned_opt_boot_file_name =
ASSERT_NO_THROW_LOG(client_class = cbptr_->getClientClass4(ServerSelector::ALL(), class1->getName()));
ASSERT_TRUE(client_class);
+ // Re-check lifetime values. This ensure bindings line up.
+ EXPECT_EQ(30, client_class->getValid().getMin());
+ EXPECT_EQ(60, client_class->getValid().get());
+ EXPECT_EQ(90, client_class->getValid().getMax());
+
// Ensure that the first option definition is gone.
ASSERT_TRUE(client_class->getCfgOptionDef());
returned_def_foo = client_class->getCfgOptionDef()->get(test_option_defs_[0]->getOptionSpaceName(),
EXPECT_EQ(30, client_class->getValid().getMin());
EXPECT_EQ(60, client_class->getValid().get());
EXPECT_EQ(90, client_class->getValid().getMax());
+ EXPECT_EQ(25, client_class->getPreferred().getMin());
+ EXPECT_EQ(55, client_class->getPreferred().get());
+ EXPECT_EQ(85, client_class->getPreferred().getMax());
// Validate options belonging to this class.
ASSERT_TRUE(client_class->getCfgOption());
ASSERT_NO_THROW_LOG(client_class = cbptr_->getClientClass6(ServerSelector::ALL(), class1->getName()));
ASSERT_TRUE(client_class);
+ // Verify lifetime values.
+ EXPECT_EQ(30, client_class->getValid().getMin());
+ EXPECT_EQ(60, client_class->getValid().get());
+ EXPECT_EQ(90, client_class->getValid().getMax());
+ EXPECT_EQ(25, client_class->getPreferred().getMin());
+ EXPECT_EQ(55, client_class->getPreferred().get());
+ EXPECT_EQ(85, client_class->getPreferred().getMax());
+
// Validate options belonging to the class.
ASSERT_TRUE(client_class->getCfgOption());
OptionDescriptor returned_opt_new_posix_timezone =
ASSERT_NO_THROW_LOG(client_class = cbptr_->getClientClass6(ServerSelector::ALL(), class1->getName()));
ASSERT_TRUE(client_class);
+ // Re-check lifetime values. This ensure bindings line up.
+ EXPECT_EQ(30, client_class->getValid().getMin());
+ EXPECT_EQ(60, client_class->getValid().get());
+ EXPECT_EQ(90, client_class->getValid().getMax());
+ EXPECT_EQ(25, client_class->getPreferred().getMin());
+ EXPECT_EQ(55, client_class->getPreferred().get());
+ EXPECT_EQ(85, client_class->getPreferred().getMax());
+
// Ensure that the first option definition is gone.
ASSERT_TRUE(client_class->getCfgOptionDef());
returned_def_foo = client_class->getCfgOptionDef()->get(test_option_defs_[0]->getOptionSpaceName(),