]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#2795] extend impl of MemHostDataSource::getAll4
authorPiotrek Zadroga <piotrek@isc.org>
Mon, 19 Jun 2023 16:25:46 +0000 (18:25 +0200)
committerPiotrek Zadroga <piotrek@isc.org>
Mon, 26 Jun 2023 15:30:59 +0000 (15:30 +0000)
src/lib/dhcpsrv/testutils/memory_host_data_source.cc

index 7e7b21bb97d09ae82092b256658be9dd30146526..2ba8a3737d0d86f997b7bd446e18318c64dccf44 100644 (file)
@@ -177,8 +177,15 @@ MemHostDataSource::getPage6(size_t& /*source_index*/,
 }
 
 ConstHostCollection
-MemHostDataSource::getAll4(const asiolink::IOAddress& /*address*/) const {
-    return (ConstHostCollection());
+MemHostDataSource::getAll4(const asiolink::IOAddress& address) const {
+    ConstHostCollection hosts;
+    for (const auto & h : store_) {
+        if (h->getIPv4Reservation() == address) {
+            hosts.push_back(h);
+        }
+    }
+
+    return (hosts);
 }
 
 ConstHostPtr
@@ -243,10 +250,13 @@ ConstHostCollection
 MemHostDataSource::getAll4(const SubnetID& subnet_id,
                            const asiolink::IOAddress& address) const {
     ConstHostCollection hosts;
-    auto host = get4(subnet_id, address);
-    if (host) {
-        hosts.push_back(host);
+    for (const auto & h : store_) {
+        if (h->getIPv4SubnetID() == subnet_id &&
+            h->getIPv4Reservation() == address) {
+            hosts.push_back(h);
+        }
     }
+
     return (hosts);
 }