]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[4097a] Addressed not configured class VENDOR_CLASS_*
authorFrancis Dupont <fdupont@isc.org>
Tue, 24 Nov 2015 00:51:10 +0000 (01:51 +0100)
committerFrancis Dupont <fdupont@isc.org>
Tue, 24 Nov 2015 00:51:10 +0000 (01:51 +0100)
src/bin/dhcp4/dhcp4_srv.cc
src/bin/dhcp6/dhcp6_srv.cc

index 04f6a019639747125c5daa6b8a6a16e0744cdd11..11decc3d3df5f29b23568d1941c28841a2112e92 100644 (file)
@@ -840,9 +840,14 @@ Dhcpv4Srv::buildCfgOptionList(Dhcpv4Exchange& ex) {
             getClientClassDictionary()->findClass(*cclass);
         if (!ccdef) {
             // Not found: the class is not configured
-            LOG_DEBUG(options4_logger, DBG_DHCP4_BASIC, DHCP4_CLASS_UNCONFIGURED)
-                .arg(ex.getQuery()->getLabel())
-                .arg(*cclass);
+            if (((*cclass).size() <= VENDOR_CLASS_PREFIX.size()) ||
+                ((*cclass).compare(0, VENDOR_CLASS_PREFIX.size(), VENDOR_CLASS_PREFIX) != 0)) {
+                // Not a VENDOR_CLASS_* so should be configured
+                LOG_DEBUG(options4_logger, DBG_DHCP4_BASIC, DHCP4_CLASS_UNCONFIGURED)
+                    .arg(ex.getQuery()->getLabel())
+                    .arg(*cclass);
+            }
+            // Skip it
             continue;
         }
         if (ccdef->getCfgOption()->empty()) {
index 3a3027aeb8a12704ff15b2a927e92ece1c3687d4..03ad687cb2343dc5ef36e4dd7bc09e5b8f50c360 100644 (file)
@@ -908,8 +908,13 @@ Dhcpv6Srv::buildCfgOptionList(const Pkt6Ptr& question,
             getClientClassDictionary()->findClass(*cclass);
         if (!ccdef) {
             // Not found: the class is not configured
-            LOG_DEBUG(dhcp6_logger, DBG_DHCP6_BASIC, DHCP6_CLASS_UNCONFIGURED)
-                .arg(*cclass);
+            if (((*cclass).size() <= VENDOR_CLASS_PREFIX.size()) ||
+                ((*cclass).compare(0, VENDOR_CLASS_PREFIX.size(), VENDOR_CLASS_PREFIX) != 0)) {
+                // Not a VENDOR_CLASS_* so should be configured
+                LOG_DEBUG(dhcp6_logger, DBG_DHCP6_BASIC, DHCP6_CLASS_UNCONFIGURED)
+                    .arg(*cclass);
+            }
+            // Skip it
             continue;
         }
         if (ccdef->getCfgOption()->empty()) {