Remove wrong TODO comment

The IPAddr.new().prefix function does not work as intended. This change
removes the TODO comment to use the function because we can't really
replace the current implementation by that built-in feature.

irb(main):001:0> IPAddr.new('ffff:ffff:ffff:ffff::').to_i.to_s(2).count("1")
=> 64
irb(main):002:0> IPAddr.new('ffff:ffff:ffff:ffff::').prefix
=> 128

Change-Id: I07a340e1716f6ab8db718b89bf4535f989df7929
This commit is contained in:
Takashi Kajinami 2022-08-25 10:33:04 +09:00
parent 3213f8e2df
commit c4c5372851

@ -7,8 +7,6 @@ Puppet::Functions.create_function(:ipv6_normalize_dnsmasq_ip_subnets) do
begin begin
if ip_subnet["netmask"] if ip_subnet["netmask"]
if IPAddr.new(ip_subnet["netmask"]).ipv6? if IPAddr.new(ip_subnet["netmask"]).ipv6?
# TODO(hjensas) Once we have ruby stdlib >= 2.5.x we can use
# IPAddr.new().prefix instead of counting 1's.
prefix = IPAddr.new(ip_subnet["netmask"]).to_i.to_s(2).count("1") prefix = IPAddr.new(ip_subnet["netmask"]).to_i.to_s(2).count("1")
Puppet.debug("Netmask #{ip_subnet["netmask"]} changed to prefix #{prefix}") Puppet.debug("Netmask #{ip_subnet["netmask"]} changed to prefix #{prefix}")
ip_subnet_dup["netmask"] = prefix ip_subnet_dup["netmask"] = prefix