From: Francis Dupont Date: Thu, 9 May 2019 12:55:27 +0000 (+0200) Subject: [509-improve-disabling-client-id] [509-improve-disabling-client-id-] Change subnetsAl... X-Git-Tag: Kea-1.6.0-beta~168 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fheads%2F509-improve-disabling-client-id;p=thirdparty%2Fkea.git [509-improve-disabling-client-id] [509-improve-disabling-client-id-] Change subnetsAllHRGlobal type --- diff --git a/src/lib/dhcpsrv/shared_network.cc b/src/lib/dhcpsrv/shared_network.cc index 8f69913779..8424f2d3f0 100644 --- a/src/lib/dhcpsrv/shared_network.cc +++ b/src/lib/dhcpsrv/shared_network.cc @@ -370,14 +370,14 @@ SharedNetwork4::subnetsIncludeMatchClientId(const Subnet4Ptr& first_subnet, return (false); } -void -SharedNetwork4::subnetsAllHRGlobal(Subnet4Ptr& bad_subnet) const { +Subnet4Ptr +SharedNetwork4::subnetsAllHRGlobal() const { for (auto subnet : *getAllSubnets()) { if (subnet->getHostReservationMode() != Network::HR_GLOBAL) { - bad_subnet = subnet; - return; + return (subnet); } } + return (Subnet4Ptr()); } ElementPtr @@ -463,14 +463,14 @@ SharedNetwork6::getPreferredSubnet(const Subnet6Ptr& selected_subnet, return (Impl::getPreferredSubnet(subnets_, selected_subnet, lease_type)); } -void -SharedNetwork6::subnetsAllHRGlobal(Subnet6Ptr& bad_subnet) const { +Subnet6Ptr +SharedNetwork6::subnetsAllHRGlobal() const { for (auto subnet : *getAllSubnets()) { if (subnet->getHostReservationMode() != Network::HR_GLOBAL) { - bad_subnet = subnet; - return; + return (subnet); } } + return (Subnet6Ptr()); } ElementPtr diff --git a/src/lib/dhcpsrv/shared_network.h b/src/lib/dhcpsrv/shared_network.h index e1e84b5b9e..2c450cbcde 100644 --- a/src/lib/dhcpsrv/shared_network.h +++ b/src/lib/dhcpsrv/shared_network.h @@ -190,9 +190,8 @@ public: /// @brief Check if the shared network includes a subnet with /// not global host reservation mode. /// - /// @param [out] bad_subnet First subnet which has not a global host - /// reservation mode. - void subnetsAllHRGlobal(Subnet4Ptr& bad_subnet) const; + /// @return First subnet which has not a global host reservation mode. + Subnet4Ptr subnetsAllHRGlobal() const; /// @brief Unparses shared network object. /// @@ -387,9 +386,8 @@ public: /// @brief Check if the shared network includes a subnet with /// not global host reservation mode. /// - /// @param [out] bad_subnet First subnet which has not a global host - /// reservation mode. - void subnetsAllHRGlobal(Subnet6Ptr& bad_subnet) const; + /// @return First subnet which has not a global host reservation mode. + Subnet6Ptr subnetsAllHRGlobal() const; /// @brief Unparses shared network object. /// diff --git a/src/lib/dhcpsrv/tests/shared_network_unittest.cc b/src/lib/dhcpsrv/tests/shared_network_unittest.cc index dea705bf8f..ad1a756525 100644 --- a/src/lib/dhcpsrv/tests/shared_network_unittest.cc +++ b/src/lib/dhcpsrv/tests/shared_network_unittest.cc @@ -453,7 +453,7 @@ TEST(SharedNetwork4Test, subnetsAllHRGlobal) { Subnet4Ptr bad; // Empty shared network is right. - ASSERT_NO_THROW(network->subnetsAllHRGlobal(bad)); + ASSERT_NO_THROW(bad = network->subnetsAllHRGlobal()); EXPECT_FALSE(bad); // Create a subnet and add it to the shared network. @@ -463,7 +463,7 @@ TEST(SharedNetwork4Test, subnetsAllHRGlobal) { // Default host reservation mode is ALL. bad.reset(); - ASSERT_NO_THROW(network->subnetsAllHRGlobal(bad)); + ASSERT_NO_THROW(bad = network->subnetsAllHRGlobal()); ASSERT_TRUE(bad); EXPECT_EQ(1, bad->getID()); EXPECT_EQ("10.0.0.0/8", bad->toText()); @@ -473,7 +473,7 @@ TEST(SharedNetwork4Test, subnetsAllHRGlobal) { // Now the shared network is all global. bad.reset(); - ASSERT_NO_THROW(network->subnetsAllHRGlobal(bad)); + ASSERT_NO_THROW(bad = network->subnetsAllHRGlobal()); EXPECT_FALSE(bad); } @@ -1041,7 +1041,7 @@ TEST(SharedNetwork6Test, subnetsAllHRGlobal) { Subnet6Ptr bad; // Empty shared network is right. - ASSERT_NO_THROW(network->subnetsAllHRGlobal(bad)); + ASSERT_NO_THROW(bad = network->subnetsAllHRGlobal()); EXPECT_FALSE(bad); // Create a subnet and add it to the shared network. @@ -1051,7 +1051,7 @@ TEST(SharedNetwork6Test, subnetsAllHRGlobal) { // Default host reservation mode is ALL. bad.reset(); - ASSERT_NO_THROW(network->subnetsAllHRGlobal(bad)); + ASSERT_NO_THROW(bad = network->subnetsAllHRGlobal()); ASSERT_TRUE(bad); EXPECT_EQ(1, bad->getID()); EXPECT_EQ("2001:db8:1::/64", bad->toText()); @@ -1061,7 +1061,7 @@ TEST(SharedNetwork6Test, subnetsAllHRGlobal) { // Now the shared network is all global. bad.reset(); - ASSERT_NO_THROW(network->subnetsAllHRGlobal(bad)); + ASSERT_NO_THROW(bad = network->subnetsAllHRGlobal()); EXPECT_FALSE(bad); }