]> git.ipfire.org Git - thirdparty/wireguard-go.git/commitdiff
wgcfg: fix bug preventing IPv6 addresses from working
authorBrad Fitzpatrick <bradfitz@tailscale.com>
Fri, 20 Mar 2020 05:37:57 +0000 (22:37 -0700)
committerDavid Crawshaw <david@zentus.com>
Mon, 30 Mar 2020 22:33:08 +0000 (09:33 +1100)
Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
wgcfg/writer.go

index aafb2a7ad7ecfbf9701f4565a562f51b012fc4b3..246a57d0b604d325deabda8eecac0b55948d8189 100644 (file)
@@ -6,7 +6,6 @@
 package wgcfg
 
 import (
-       "errors"
        "fmt"
        "net"
        "strings"
@@ -46,9 +45,8 @@ func (conf *Config) ToUAPI() (string, error) {
                                }
                                var ip net.IP
                                for _, iterip := range ips {
-                                       iterip = iterip.To4()
-                                       if iterip != nil {
-                                               ip = iterip
+                                       if ip4 := iterip.To4(); ip4 != nil {
+                                               ip = ip4
                                                break
                                        }
                                        if ip == nil {
@@ -56,7 +54,7 @@ func (conf *Config) ToUAPI() (string, error) {
                                        }
                                }
                                if ip == nil {
-                                       return "", errors.New("Unable to resolve IP address of endpoint")
+                                       return "", fmt.Errorf("unable to resolve IP address of endpoint %q (%v)", ep.Host, ips)
                                }
                                resolvedEndpoint := Endpoint{ip.String(), ep.Port}
                                reps = append(reps, resolvedEndpoint.String())