]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[3588] Removed the setCfgOptionDef modifier.
authorMarcin Siodelski <marcin@isc.org>
Wed, 17 Sep 2014 05:53:50 +0000 (07:53 +0200)
committerMarcin Siodelski <marcin@isc.org>
Wed, 17 Sep 2014 05:53:50 +0000 (07:53 +0200)
The modifications to the staging configuration are performed on the pointer
returned by getCfgOptionDef.

src/bin/dhcp4/tests/dhcp4_srv_unittest.cc
src/bin/dhcp6/tests/dhcp6_srv_unittest.cc
src/lib/dhcpsrv/srv_config.cc
src/lib/dhcpsrv/srv_config.h
src/lib/dhcpsrv/tests/srv_config_unittest.cc

index 4879560a66f65626a002dc785a0e5d43e25f9b69..bb328307b0b9662ea9390d4cece79e5c440cf1dc 100644 (file)
@@ -1315,11 +1315,11 @@ TEST_F(Dhcpv4SrvTest, unpackOptions) {
 
     // Add option definitions to the Configuration Manager. Each goes under
     // different option space.
-    CfgOptionDef cfg_option_def;
-    ASSERT_NO_THROW(cfg_option_def.add(opt_def, "space-foobar"));
-    ASSERT_NO_THROW(cfg_option_def.add(opt_def2, "space-foo"));
-    ASSERT_NO_THROW(cfg_option_def.add(opt_def3, "space-bar"));
-    CfgMgr::instance().getStagingCfg()->setCfgOptionDef(cfg_option_def);
+    CfgOptionDefPtr cfg_option_def =
+        CfgMgr::instance().getStagingCfg()->getCfgOptionDef();
+    ASSERT_NO_THROW(cfg_option_def->add(opt_def, "space-foobar"));
+    ASSERT_NO_THROW(cfg_option_def->add(opt_def2, "space-foo"));
+    ASSERT_NO_THROW(cfg_option_def->add(opt_def3, "space-bar"));
     CfgMgr::instance().commit();
 
     // Create the buffer holding the structure of options.
index bacca6361888e113faed43035987c9b1e61a5366..cac225fad5205db7931f08809a4e1afced89caa9 100644 (file)
@@ -1713,11 +1713,11 @@ TEST_F(Dhcpv6SrvTest, unpackOptions) {
 
     // Add option definitions to the Configuration Manager. Each goes under
     // different option space.
-    CfgOptionDef cfg_option_def;
-    ASSERT_NO_THROW(cfg_option_def.add(opt_def, "space-foobar"));
-    ASSERT_NO_THROW(cfg_option_def.add(opt_def2, "space-foo"));
-    ASSERT_NO_THROW(cfg_option_def.add(opt_def3, "space-bar"));
-    CfgMgr::instance().getStagingCfg()->setCfgOptionDef(cfg_option_def);
+    CfgOptionDefPtr cfg_option_def =
+        CfgMgr::instance().getStagingCfg()->getCfgOptionDef();
+    ASSERT_NO_THROW(cfg_option_def->add(opt_def, "space-foobar"));
+    ASSERT_NO_THROW(cfg_option_def->add(opt_def2, "space-foo"));
+    ASSERT_NO_THROW(cfg_option_def->add(opt_def3, "space-bar"));
     CfgMgr::instance().commit();
 
     // Create the buffer holding the structure of options.
index a7215a911a376454020e7c3272cf0ad62770ec7d..210c40a1cf9a46cdbb1ac10a8158fead4e474db4 100644 (file)
@@ -89,7 +89,7 @@ SrvConfig::copy(SrvConfig& new_config) const {
     // Replace interface configuration.
     new_config.setCfgIface(cfg_iface_);
     // Replace option definitions.
-    new_config.setCfgOptionDef(*cfg_option_def_);
+    cfg_option_def_->copy(*new_config.cfg_option_def_);
 }
 
 void
index a5cb11f96feb0e25463d2dc48974ffd5360c879a..a566d2dd26ca4a65a9e253f1d507d1fd3826e2ff 100644 (file)
@@ -163,13 +163,6 @@ public:
         return (cfg_option_def_);
     }
 
-    /// @brief Sets the object representing user-defined option definitions.
-    ///
-    /// @param cfg_option_def New object representing option definitions.
-    void setCfgOptionDef(const CfgOptionDef& cfg_option_def) {
-        *cfg_option_def_ = cfg_option_def;
-    }
-
     //@}
 
     /// @brief Copies the currnet configuration to a new configuration.
index fa59f9354e01e5d4ef8084f2852f874f7a89ff98..835246047ac3629213b79f1f2eacf959a9431e3c 100644 (file)
@@ -279,14 +279,10 @@ TEST_F(SrvConfigTest, copy) {
     CfgIface cfg_iface;
     cfg_iface.use(AF_INET, "eth0");
 
-    CfgOptionDef cfg_option_def;
-    cfg_option_def.add(OptionDefinitionPtr(new OptionDefinition("option-foo", 5,
-                                                                "string")),
-                       "isc");
-
     conf1.addLoggingInfo(info);
     conf1.setCfgIface(cfg_iface);
-    conf1.setCfgOptionDef(cfg_option_def);
+    conf1.getCfgOptionDef()->add(OptionDefinitionPtr(new OptionDefinition("option-foo", 5,
+                                                                          "string")), "isc");
 
     // Make sure both configurations are different.
     ASSERT_TRUE(conf1 != conf2);
@@ -346,24 +342,16 @@ TEST_F(SrvConfigTest, equality) {
     EXPECT_FALSE(conf1 != conf2);
 
     // Differ by option definitions.
-    CfgOptionDef cfg_option_def1;
-    CfgOptionDef cfg_option_def2;
-
-    cfg_option_def1.add(OptionDefinitionPtr(new OptionDefinition("option-foo",
-                                                                 123,
-                                                                 "uint16_t")),
-                        "isc");
-    conf1.setCfgOptionDef(cfg_option_def1);
+    conf1.getCfgOptionDef()->
+        add(OptionDefinitionPtr(new OptionDefinition("option-foo", 123,
+                                                     "uint16_t")), "isc");
 
     EXPECT_FALSE(conf1 == conf2);
     EXPECT_TRUE(conf1 != conf2);
 
-    cfg_option_def2.add(OptionDefinitionPtr(new OptionDefinition("option-foo",
-                                                                 123,
-                                                                 "uint16_t")),
-                        "isc");
-    conf2.setCfgOptionDef(cfg_option_def2);
-
+    conf2.getCfgOptionDef()->
+        add(OptionDefinitionPtr(new OptionDefinition("option-foo", 123,
+                                                     "uint16_t")), "isc");
     EXPECT_TRUE(conf1 == conf2);
     EXPECT_FALSE(conf1 != conf2);
 }