net: don't run IP stack required tests on IP stack unimplemented kernels

Fixes #10787.

Change-Id: I35c96808a713dafb1f0fea301fa3f3528fe6a5bf
Reviewed-on: https://go-review.googlesource.com/9948
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
diff --git a/src/net/platform_test.go b/src/net/platform_test.go
index b700091..d624852 100644
--- a/src/net/platform_test.go
+++ b/src/net/platform_test.go
@@ -14,7 +14,8 @@
 // testableNetwork reports whether network is testable on the current
 // platform configuration.
 func testableNetwork(network string) bool {
-	switch ss := strings.Split(network, ":"); ss[0] {
+	ss := strings.Split(network, ":")
+	switch ss[0] {
 	case "ip+nopriv":
 		switch runtime.GOOS {
 		case "nacl":
@@ -46,6 +47,16 @@
 			return false
 		}
 	}
+	switch ss[0] {
+	case "tcp4", "udp4", "ip4":
+		if !supportsIPv4 {
+			return false
+		}
+	case "tcp6", "udp6", "ip6":
+		if !supportsIPv6 {
+			return false
+		}
+	}
 	return true
 }