1
0
mirror of https://github.com/golang/go synced 2024-11-19 02:04:42 -07:00

net: relax TestInterfaces and TestInterfaceAddrs for BSD variants

Fixes #15249.

Change-Id: I91fc3d6a2df294b21a67d085da6fe661827a850e
Reviewed-on: https://go-review.googlesource.com/22079
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
Mikio Hara 2016-04-14 16:31:52 +09:00
parent 77d374940e
commit 19db745664

View File

@ -183,10 +183,16 @@ func testInterfaceMulticastAddrs(t *testing.T, ifi *Interface) (nmaf4, nmaf6 int
}
func testAddrs(t *testing.T, ifat []Addr) (naf4, naf6 int) {
// Note: BSD variants allow assigning any IPv4/IPv6 address
// prefix to IP interface. For example,
// - 0.0.0.0/0 through 255.255.255.255/32
// - ::/0 through ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128
// In other words, there is no tightly-coupled combination of
// interface address prefixes and connected routes.
for _, ifa := range ifat {
switch ifa := ifa.(type) {
case *IPNet:
if ifa == nil || ifa.IP == nil || ifa.IP.IsUnspecified() || ifa.IP.IsMulticast() || ifa.Mask == nil {
if ifa == nil || ifa.IP == nil || ifa.IP.IsMulticast() || ifa.Mask == nil {
t.Errorf("unexpected value: %#v", ifa)
continue
}
@ -219,7 +225,7 @@ func testAddrs(t *testing.T, ifat []Addr) (naf4, naf6 int) {
}
t.Logf("interface address %q", ifa.String())
case *IPAddr:
if ifa == nil || ifa.IP == nil || ifa.IP.IsUnspecified() || ifa.IP.IsMulticast() {
if ifa == nil || ifa.IP == nil || ifa.IP.IsMulticast() {
t.Errorf("unexpected value: %#v", ifa)
continue
}