Due to the wrong check an IP was allocated for every DHCP range,
instead of only allocating an IP in the first free DHCP range.

Suggested-By: Stefan Lendl <s.le...@proxmox.com>
Signed-off-by: Stefan Hanreich <s.hanre...@proxmox.com>
---
The fix I talked about off-list was actually unrelated to this. It
prevented allocating IP addresses in multiple IPv4/6 subnets, not
allocating multiple IP addresses for multiple DHCP ranges. So I did
not remove anything in this patch.

 src/PVE/Network/SDN/Subnets.pm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/PVE/Network/SDN/Subnets.pm b/src/PVE/Network/SDN/Subnets.pm
index b05b3d9..8e2a6aa 100644
--- a/src/PVE/Network/SDN/Subnets.pm
+++ b/src/PVE/Network/SDN/Subnets.pm
@@ -238,7 +238,7 @@ sub add_next_free_ip {
 
                foreach my $range (@$dhcp_ranges) {
                    $ip = $plugin->add_range_next_freeip($plugin_config, 
$subnet, $range, $data);
-                   next if !$ip;
+                   last if $ip;
                }
            } else {
                $ip = $plugin->add_next_freeip($plugin_config, $subnetid, 
$subnet, $hostname, $mac, $vmid);
-- 
2.39.2


_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to