From bc216c2cf0f9b78f94e17acef5ece0ea94250b6c Mon Sep 17 00:00:00 2001 From: Tomek Mrugalski Date: Mon, 3 Feb 2014 19:53:14 +0100 Subject: [PATCH] [3274] ClientClass added, Classes renamed to ClientClasses --- src/bin/dhcp4/tests/config_parser_unittest.cc | 8 ++++---- src/bin/dhcp6/tests/config_parser_unittest.cc | 2 +- src/lib/dhcp/classify.h | 5 ++++- src/lib/dhcp/pkt4.h | 2 +- src/lib/dhcp/pkt6.h | 2 +- src/lib/dhcpsrv/cfgmgr.cc | 8 ++++---- src/lib/dhcpsrv/cfgmgr.h | 8 ++++---- src/lib/dhcpsrv/tests/cfgmgr_unittest.cc | 4 ++-- 8 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/bin/dhcp4/tests/config_parser_unittest.cc b/src/bin/dhcp4/tests/config_parser_unittest.cc index 671deae75a..6df9d21914 100644 --- a/src/bin/dhcp4/tests/config_parser_unittest.cc +++ b/src/bin/dhcp4/tests/config_parser_unittest.cc @@ -456,10 +456,10 @@ public: } - boost::scoped_ptr srv_; // DHCP4 server under test - int rcode_; // Return code from element parsing - ConstElementPtr comment_; // Reason for parse fail - isc::dhcp::Classes classify_; // used in client classification + boost::scoped_ptr srv_; ///< DHCP4 server under test + int rcode_; ///< Return code from element parsing + ConstElementPtr comment_; ///< Reason for parse fail + isc::dhcp::ClientClasses classify_; ///< used in client classification }; // Goal of this test is a verification if a very simple config update diff --git a/src/bin/dhcp6/tests/config_parser_unittest.cc b/src/bin/dhcp6/tests/config_parser_unittest.cc index b7c8e99917..147a85e9c5 100644 --- a/src/bin/dhcp6/tests/config_parser_unittest.cc +++ b/src/bin/dhcp6/tests/config_parser_unittest.cc @@ -476,7 +476,7 @@ public: ConstElementPtr comment_; ///< Comment (see @ref isc::config::parseAnswer) string valid_iface_; ///< Valid network interface name (present in system) string bogus_iface_; ///< invalid network interface name (not in system) - isc::dhcp::Classes classify_; ///< used in client classification + isc::dhcp::ClientClasses classify_; ///< used in client classification }; // Goal of this test is a verification if a very simple config update diff --git a/src/lib/dhcp/classify.h b/src/lib/dhcp/classify.h index 73b34ad819..eed8202daf 100644 --- a/src/lib/dhcp/classify.h +++ b/src/lib/dhcp/classify.h @@ -34,8 +34,11 @@ namespace isc { namespace dhcp { + /// Definition of a single class. + typedef std::string ClientClass; + /// Container for storing client classes - typedef std::set Classes; + typedef std::set ClientClasses; }; diff --git a/src/lib/dhcp/pkt4.h b/src/lib/dhcp/pkt4.h index 37027df0e5..510ee8e221 100644 --- a/src/lib/dhcp/pkt4.h +++ b/src/lib/dhcp/pkt4.h @@ -581,7 +581,7 @@ public: /// existing classes. Having it public also solves the problem of returned /// reference lifetime. It is preferred to use @ref inClass and @ref addClass /// should be used to operate on this field. - Classes classes_; + ClientClasses classes_; private: diff --git a/src/lib/dhcp/pkt6.h b/src/lib/dhcp/pkt6.h index 44e9114ba7..8e5147466f 100644 --- a/src/lib/dhcp/pkt6.h +++ b/src/lib/dhcp/pkt6.h @@ -455,7 +455,7 @@ public: /// /// This field is public, so code can iterate over existing classes. /// Having it public also solves the problem of returned reference lifetime. - Classes classes_; + ClientClasses classes_; protected: /// Builds on wire packet for TCP transmission. diff --git a/src/lib/dhcpsrv/cfgmgr.cc b/src/lib/dhcpsrv/cfgmgr.cc index 926e66b73f..4c5fb2a32d 100644 --- a/src/lib/dhcpsrv/cfgmgr.cc +++ b/src/lib/dhcpsrv/cfgmgr.cc @@ -123,7 +123,7 @@ CfgMgr::getOptionDef(const std::string& option_space, Subnet6Ptr CfgMgr::getSubnet6(const std::string& iface, - const isc::dhcp::Classes& /*classes*/) { + const isc::dhcp::ClientClasses& /*classes*/) { if (!iface.length()) { return (Subnet6Ptr()); @@ -144,7 +144,7 @@ CfgMgr::getSubnet6(const std::string& iface, Subnet6Ptr CfgMgr::getSubnet6(const isc::asiolink::IOAddress& hint, - const isc::dhcp::Classes& /*classes*/) { + const isc::dhcp::ClientClasses& /*classes*/) { // If there's only one subnet configured, let's just use it // The idea is to keep small deployments easy. In a small network - one @@ -180,7 +180,7 @@ CfgMgr::getSubnet6(const isc::asiolink::IOAddress& hint, } Subnet6Ptr CfgMgr::getSubnet6(OptionPtr iface_id_option, - const isc::dhcp::Classes& /*classes*/) { + const isc::dhcp::ClientClasses& /*classes*/) { if (!iface_id_option) { return (Subnet6Ptr()); } @@ -211,7 +211,7 @@ void CfgMgr::addSubnet6(const Subnet6Ptr& subnet) { Subnet4Ptr CfgMgr::getSubnet4(const isc::asiolink::IOAddress& hint, - const isc::dhcp::Classes& /*classes*/) { + const isc::dhcp::ClientClasses& /*classes*/) { // If there's only one subnet configured, let's just use it // The idea is to keep small deployments easy. In a small network - one diff --git a/src/lib/dhcpsrv/cfgmgr.h b/src/lib/dhcpsrv/cfgmgr.h index d4c33f6771..1f548dc786 100644 --- a/src/lib/dhcpsrv/cfgmgr.h +++ b/src/lib/dhcpsrv/cfgmgr.h @@ -170,7 +170,7 @@ public: /// /// @return a subnet object (or NULL if no suitable match was fount) Subnet6Ptr getSubnet6(const isc::asiolink::IOAddress& hint, - const isc::dhcp::Classes& classes); + const isc::dhcp::ClientClasses& classes); /// @brief get IPv6 subnet by interface name /// @@ -180,7 +180,7 @@ public: /// @param iface_name interface name /// @return a subnet object (or NULL if no suitable match was fount) Subnet6Ptr getSubnet6(const std::string& iface_name, - const isc::dhcp::Classes& classes); + const isc::dhcp::ClientClasses& classes); /// @brief get IPv6 subnet by interface-id /// @@ -190,7 +190,7 @@ public: /// /// @return a subnet object Subnet6Ptr getSubnet6(OptionPtr interface_id, - const isc::dhcp::Classes& classes); + const isc::dhcp::ClientClasses& classes); /// @brief adds an IPv6 subnet /// @@ -249,7 +249,7 @@ public: /// /// @return a subnet object Subnet4Ptr getSubnet4(const isc::asiolink::IOAddress& hint, - const isc::dhcp::Classes& classes); + const isc::dhcp::ClientClasses& classes); /// @brief adds a subnet4 void addSubnet4(const Subnet4Ptr& subnet); diff --git a/src/lib/dhcpsrv/tests/cfgmgr_unittest.cc b/src/lib/dhcpsrv/tests/cfgmgr_unittest.cc index e60fbcc52b..29e826af30 100644 --- a/src/lib/dhcpsrv/tests/cfgmgr_unittest.cc +++ b/src/lib/dhcpsrv/tests/cfgmgr_unittest.cc @@ -186,7 +186,7 @@ public: } /// used in client classification (or just empty container for other tests) - isc::dhcp::Classes classify_; + isc::dhcp::ClientClasses classify_; }; // This test verifies that multiple option definitions can be added @@ -352,7 +352,7 @@ TEST_F(CfgMgrTest, addOptionDefNegative) { } // This test verifies if the configuration manager is able to hold and return -// valid leases +// valid subnets. TEST_F(CfgMgrTest, subnet4) { CfgMgr& cfg_mgr = CfgMgr::instance();