Signed-off-by: Fabian Ebner <f.eb...@proxmox.com> --- New in v2.
src/PVE/Network.pm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/PVE/Network.pm b/src/PVE/Network.pm index 48268b1..bb574e0 100644 --- a/src/PVE/Network.pm +++ b/src/PVE/Network.pm @@ -665,4 +665,24 @@ sub canonical_ip { return $ip_obj->canon(); } +# List of unique, canonical IPs in the provided list. +# Keeps the original order, filtering later duplicates. +sub unique_ips { + my ($ips) = @_; + + my $res = []; + my $seen = {}; + + for my $ip (@{$ips}) { + $ip = canonical_ip($ip); + + next if $seen->{$ip}; + + $seen->{$ip} = 1; + push @{$res}, $ip; + } + + return $res; +} + 1; -- 2.20.1 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel