From: Fazlul Shahriar Date: Mon, 29 Jun 2020 23:22:34 +0000 (-0400) Subject: net: fix TestDialerLocalAddr on Plan 9 X-Git-Tag: go1.15rc1~44 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=4b28f5ded3c3af3d881384e278595426c478e24b;p=gostls13.git net: fix TestDialerLocalAddr on Plan 9 We cannot use "0.0.0.0" (IPv4) or "::" (IPv6) for local address, so don't use those addresses in the control message. Alternatively, we could've used "*" instead. Fixes #39931 Change-Id: Ib2dcbb1a0c648296c3ecaddbe938053a569b1f1b Reviewed-on: https://go-review.googlesource.com/c/go/+/240464 Run-TryBot: David du Colombier <0intro@gmail.com> TryBot-Result: Gobot Gobot Reviewed-by: David du Colombier <0intro@gmail.com> --- diff --git a/src/net/ipsock_plan9.go b/src/net/ipsock_plan9.go index a5d722d3a1..9db01b090d 100644 --- a/src/net/ipsock_plan9.go +++ b/src/net/ipsock_plan9.go @@ -311,25 +311,25 @@ func toLocal(a Addr, net string) Addr { // plan9LocalAddr returns a Plan 9 local address string. // See setladdrport at https://9p.io/sources/plan9/sys/src/9/ip/devip.c. func plan9LocalAddr(addr Addr) string { - ip := "" + var ip IP port := 0 switch a := addr.(type) { case *TCPAddr: if a != nil { - ip = ipEmptyString(a.IP) + ip = a.IP port = a.Port } case *UDPAddr: if a != nil { - ip = ipEmptyString(a.IP) + ip = a.IP port = a.Port } } - if ip == "" { + if len(ip) == 0 || ip.IsUnspecified() { if port == 0 { return "" } return itoa(port) } - return ip + "!" + itoa(port) + return ip.String() + "!" + itoa(port) }