chore(all): use netip.Prefix for ip networks

- remove usage of `net.IPNet`
- remove usage of `netaddr.IPPrefix`
This commit is contained in:
Quentin McGaw
2023-04-27 13:41:05 +00:00
parent 801a7fd6fe
commit d21a943779
32 changed files with 344 additions and 315 deletions

View File

@@ -2,6 +2,7 @@ package utils
import (
"net"
"net/netip"
"github.com/qdm12/gluetun/internal/configuration/settings"
"github.com/qdm12/gluetun/internal/models"
@@ -25,17 +26,12 @@ func BuildWireguardSettings(connection models.Connection,
copy(settings.Endpoint.IP, connection.IP)
settings.Endpoint.Port = int(connection.Port)
settings.Addresses = make([]*net.IPNet, 0, len(userSettings.Addresses))
settings.Addresses = make([]netip.Prefix, 0, len(userSettings.Addresses))
for _, address := range userSettings.Addresses {
ipv6Address := address.IP.To4() == nil
if !ipv6Supported && ipv6Address {
if !ipv6Supported && address.Addr().Is6() {
continue
}
addressCopy := new(net.IPNet)
addressCopy.IP = make(net.IP, len(address.IP))
copy(addressCopy.IP, address.IP)
addressCopy.Mask = make(net.IPMask, len(address.Mask))
copy(addressCopy.Mask, address.Mask)
addressCopy := netip.PrefixFrom(address.Addr(), address.Bits())
settings.Addresses = append(settings.Addresses, addressCopy)
}