Commit 0cda728e authored by Mikio Hara's avatar Mikio Hara Committed by David du Colombier

go.net/ipv6: fix build on dragonfly, plan9, solaris

R=golang-codereviews, aram, r, 0intro
CC=golang-codereviews
https://golang.org/cl/54350043
parent 46981174
...@@ -12,7 +12,6 @@ import ( ...@@ -12,7 +12,6 @@ import (
) )
var ( var (
errNotSupported = errors.New("not supported")
errMissingAddress = errors.New("missing address") errMissingAddress = errors.New("missing address")
errInvalidConnType = errors.New("invalid conn type") errInvalidConnType = errors.New("invalid conn type")
errNoSuchInterface = errors.New("no such interface") errNoSuchInterface = errors.New("no such interface")
......
...@@ -2,13 +2,13 @@ ...@@ -2,13 +2,13 @@
// Use of this source code is governed by a BSD-style // Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
package ipv6 // +build dragonfly plan9 solaris
import "syscall" package ipv6
func setControlMessage(fd int, opt *rawOpt, cf ControlFlags, on bool) error { func setControlMessage(fd int, opt *rawOpt, cf ControlFlags, on bool) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
func newControlMessage(opt *rawOpt) (oob []byte) { func newControlMessage(opt *rawOpt) (oob []byte) {
...@@ -18,7 +18,7 @@ func newControlMessage(opt *rawOpt) (oob []byte) { ...@@ -18,7 +18,7 @@ func newControlMessage(opt *rawOpt) (oob []byte) {
func parseControlMessage(b []byte) (*ControlMessage, error) { func parseControlMessage(b []byte) (*ControlMessage, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return nil, syscall.EPLAN9 return nil, errOpNoSupport
} }
func marshalControlMessage(cm *ControlMessage) (oob []byte) { func marshalControlMessage(cm *ControlMessage) (oob []byte) {
......
...@@ -2,53 +2,52 @@ ...@@ -2,53 +2,52 @@
// Use of this source code is governed by a BSD-style // Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
// +build dragonfly plan9 solaris
package ipv6 package ipv6
import ( import "net"
"net"
"syscall"
)
// MulticastHopLimit returns the hop limit field value for outgoing // MulticastHopLimit returns the hop limit field value for outgoing
// multicast packets. // multicast packets.
func (c *dgramOpt) MulticastHopLimit() (int, error) { func (c *dgramOpt) MulticastHopLimit() (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
// SetMulticastHopLimit sets the hop limit field value for future // SetMulticastHopLimit sets the hop limit field value for future
// outgoing multicast packets. // outgoing multicast packets.
func (c *dgramOpt) SetMulticastHopLimit(hoplim int) error { func (c *dgramOpt) SetMulticastHopLimit(hoplim int) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// MulticastInterface returns the default interface for multicast // MulticastInterface returns the default interface for multicast
// packet transmissions. // packet transmissions.
func (c *dgramOpt) MulticastInterface() (*net.Interface, error) { func (c *dgramOpt) MulticastInterface() (*net.Interface, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return nil, syscall.EPLAN9 return nil, errOpNoSupport
} }
// SetMulticastInterface sets the default interface for future // SetMulticastInterface sets the default interface for future
// multicast packet transmissions. // multicast packet transmissions.
func (c *dgramOpt) SetMulticastInterface(ifi *net.Interface) error { func (c *dgramOpt) SetMulticastInterface(ifi *net.Interface) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// MulticastLoopback reports whether transmitted multicast packets // MulticastLoopback reports whether transmitted multicast packets
// should be copied and send back to the originator. // should be copied and send back to the originator.
func (c *dgramOpt) MulticastLoopback() (bool, error) { func (c *dgramOpt) MulticastLoopback() (bool, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return false, syscall.EPLAN9 return false, errOpNoSupport
} }
// SetMulticastLoopback sets whether transmitted multicast packets // SetMulticastLoopback sets whether transmitted multicast packets
// should be copied and send back to the originator. // should be copied and send back to the originator.
func (c *dgramOpt) SetMulticastLoopback(on bool) error { func (c *dgramOpt) SetMulticastLoopback(on bool) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// JoinGroup joins the group address group on the interface ifi. // JoinGroup joins the group address group on the interface ifi.
...@@ -57,13 +56,13 @@ func (c *dgramOpt) SetMulticastLoopback(on bool) error { ...@@ -57,13 +56,13 @@ func (c *dgramOpt) SetMulticastLoopback(on bool) error {
// platforms and sometimes it might require routing configuration. // platforms and sometimes it might require routing configuration.
func (c *dgramOpt) JoinGroup(ifi *net.Interface, group net.Addr) error { func (c *dgramOpt) JoinGroup(ifi *net.Interface, group net.Addr) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// LeaveGroup leaves the group address group on the interface ifi. // LeaveGroup leaves the group address group on the interface ifi.
func (c *dgramOpt) LeaveGroup(ifi *net.Interface, group net.Addr) error { func (c *dgramOpt) LeaveGroup(ifi *net.Interface, group net.Addr) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// Checksum reports whether the kernel will compute, store or verify a // Checksum reports whether the kernel will compute, store or verify a
...@@ -72,7 +71,7 @@ func (c *dgramOpt) LeaveGroup(ifi *net.Interface, group net.Addr) error { ...@@ -72,7 +71,7 @@ func (c *dgramOpt) LeaveGroup(ifi *net.Interface, group net.Addr) error {
// field is located. // field is located.
func (c *dgramOpt) Checksum() (on bool, offset int, err error) { func (c *dgramOpt) Checksum() (on bool, offset int, err error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return false, 0, syscall.EPLAN9 return false, 0, errOpNoSupport
} }
// SetChecksum enables the kernel checksum processing. If on is ture, // SetChecksum enables the kernel checksum processing. If on is ture,
...@@ -80,17 +79,17 @@ func (c *dgramOpt) Checksum() (on bool, offset int, err error) { ...@@ -80,17 +79,17 @@ func (c *dgramOpt) Checksum() (on bool, offset int, err error) {
// checksum field is located. // checksum field is located.
func (c *dgramOpt) SetChecksum(on bool, offset int) error { func (c *dgramOpt) SetChecksum(on bool, offset int) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// ICMPFilter returns an ICMP filter. // ICMPFilter returns an ICMP filter.
func (c *dgramOpt) ICMPFilter() (*ICMPFilter, error) { func (c *dgramOpt) ICMPFilter() (*ICMPFilter, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return nil, syscall.EPLAN9 return nil, errOpNoSupport
} }
// SetICMPFilter deploys the ICMP filter. // SetICMPFilter deploys the ICMP filter.
func (c *dgramOpt) SetICMPFilter(f *ICMPFilter) error { func (c *dgramOpt) SetICMPFilter(f *ICMPFilter) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
...@@ -2,33 +2,33 @@ ...@@ -2,33 +2,33 @@
// Use of this source code is governed by a BSD-style // Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
package ipv6 // +build dragonfly plan9 solaris
import "syscall" package ipv6
// TrafficClass returns the traffic class field value for outgoing // TrafficClass returns the traffic class field value for outgoing
// packets. // packets.
func (c *genericOpt) TrafficClass() (int, error) { func (c *genericOpt) TrafficClass() (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
// SetTrafficClass sets the traffic class field value for future // SetTrafficClass sets the traffic class field value for future
// outgoing packets. // outgoing packets.
func (c *genericOpt) SetTrafficClass(tclass int) error { func (c *genericOpt) SetTrafficClass(tclass int) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
// HopLimit returns the hop limit field value for outgoing packets. // HopLimit returns the hop limit field value for outgoing packets.
func (c *genericOpt) HopLimit() (int, error) { func (c *genericOpt) HopLimit() (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
// SetHopLimit sets the hop limit field value for future outgoing // SetHopLimit sets the hop limit field value for future outgoing
// packets. // packets.
func (c *genericOpt) SetHopLimit(hoplim int) error { func (c *genericOpt) SetHopLimit(hoplim int) error {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return syscall.EPLAN9 return errOpNoSupport
} }
...@@ -4,7 +4,12 @@ ...@@ -4,7 +4,12 @@
package ipv6 package ipv6
import "net" import (
"errors"
"net"
)
var errOpNoSupport = errors.New("operation not supported")
func boolint(b bool) int { func boolint(b bool) int {
if b { if b {
......
...@@ -2,21 +2,21 @@ ...@@ -2,21 +2,21 @@
// Use of this source code is governed by a BSD-style // Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
package ipv6 // +build dragonfly plan9 solaris
import "syscall" package ipv6
func (c *genericOpt) sysfd() (int, error) { func (c *genericOpt) sysfd() (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
func (c *dgramOpt) sysfd() (int, error) { func (c *dgramOpt) sysfd() (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
func (c *payloadHandler) sysfd() (int, error) { func (c *payloadHandler) sysfd() (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
// Use of this source code is governed by a BSD-style // Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
// +build dragonfly plan9 solaris
package ipv6 package ipv6
type sysICMPFilter struct { type sysICMPFilter struct {
......
...@@ -34,7 +34,7 @@ func TestICMPString(t *testing.T) { ...@@ -34,7 +34,7 @@ func TestICMPString(t *testing.T) {
func TestICMPFilter(t *testing.T) { func TestICMPFilter(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
...@@ -67,7 +67,7 @@ func TestICMPFilter(t *testing.T) { ...@@ -67,7 +67,7 @@ func TestICMPFilter(t *testing.T) {
func TestSetICMPFilter(t *testing.T) { func TestSetICMPFilter(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -19,7 +19,7 @@ func TestPacketConnReadWriteMulticastUDP(t *testing.T) { ...@@ -19,7 +19,7 @@ func TestPacketConnReadWriteMulticastUDP(t *testing.T) {
case "freebsd": // due to a bug on loopback marking case "freebsd": // due to a bug on loopback marking
// See http://www.freebsd.org/cgi/query-pr.cgi?pr=180065. // See http://www.freebsd.org/cgi/query-pr.cgi?pr=180065.
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -97,7 +97,7 @@ func TestPacketConnReadWriteMulticastUDP(t *testing.T) { ...@@ -97,7 +97,7 @@ func TestPacketConnReadWriteMulticastUDP(t *testing.T) {
func TestPacketConnReadWriteMulticastICMP(t *testing.T) { func TestPacketConnReadWriteMulticastICMP(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -21,7 +21,7 @@ var udpMultipleGroupListenerTests = []net.Addr{ ...@@ -21,7 +21,7 @@ var udpMultipleGroupListenerTests = []net.Addr{
func TestUDPSinglePacketConnWithMultipleGroupListeners(t *testing.T) { func TestUDPSinglePacketConnWithMultipleGroupListeners(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -61,7 +61,7 @@ func TestUDPSinglePacketConnWithMultipleGroupListeners(t *testing.T) { ...@@ -61,7 +61,7 @@ func TestUDPSinglePacketConnWithMultipleGroupListeners(t *testing.T) {
func TestUDPMultiplePacketConnWithMultipleGroupListeners(t *testing.T) { func TestUDPMultiplePacketConnWithMultipleGroupListeners(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -113,7 +113,7 @@ func TestUDPMultiplePacketConnWithMultipleGroupListeners(t *testing.T) { ...@@ -113,7 +113,7 @@ func TestUDPMultiplePacketConnWithMultipleGroupListeners(t *testing.T) {
func TestUDPPerInterfaceSinglePacketConnWithSingleGroupListener(t *testing.T) { func TestUDPPerInterfaceSinglePacketConnWithSingleGroupListener(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -156,7 +156,7 @@ func TestUDPPerInterfaceSinglePacketConnWithSingleGroupListener(t *testing.T) { ...@@ -156,7 +156,7 @@ func TestUDPPerInterfaceSinglePacketConnWithSingleGroupListener(t *testing.T) {
func TestIPSinglePacketConnWithSingleGroupListener(t *testing.T) { func TestIPSinglePacketConnWithSingleGroupListener(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -198,7 +198,7 @@ func TestIPSinglePacketConnWithSingleGroupListener(t *testing.T) { ...@@ -198,7 +198,7 @@ func TestIPSinglePacketConnWithSingleGroupListener(t *testing.T) {
func TestIPPerInterfaceSinglePacketConnWithSingleGroupListener(t *testing.T) { func TestIPPerInterfaceSinglePacketConnWithSingleGroupListener(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "darwin", "plan9", "windows": case "darwin", "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -22,7 +22,7 @@ var packetConnMulticastSocketOptionTests = []struct { ...@@ -22,7 +22,7 @@ var packetConnMulticastSocketOptionTests = []struct {
func TestPacketConnMulticastSocketOptions(t *testing.T) { func TestPacketConnMulticastSocketOptions(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -90,7 +90,7 @@ func benchmarkReadWriteIPv6UDP(b *testing.B, p *ipv6.PacketConn, wb, rb []byte, ...@@ -90,7 +90,7 @@ func benchmarkReadWriteIPv6UDP(b *testing.B, p *ipv6.PacketConn, wb, rb []byte,
func TestPacketConnConcurrentReadWriteUnicastUDP(t *testing.T) { func TestPacketConnConcurrentReadWriteUnicastUDP(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -12,11 +12,11 @@ import ( ...@@ -12,11 +12,11 @@ import (
) )
func ipv6ReceiveTrafficClass(fd int) (bool, error) { func ipv6ReceiveTrafficClass(fd int) (bool, error) {
return false, errNotSupported return false, errOpNoSupport
} }
func setIPv6ReceiveTrafficClass(fd int, v bool) error { func setIPv6ReceiveTrafficClass(fd int, v bool) error {
return errNotSupported return errOpNoSupport
} }
func ipv6ReceiveHopLimit(fd int) (bool, error) { func ipv6ReceiveHopLimit(fd int) (bool, error) {
...@@ -48,15 +48,15 @@ func setIPv6ReceivePacketInfo(fd int, v bool) error { ...@@ -48,15 +48,15 @@ func setIPv6ReceivePacketInfo(fd int, v bool) error {
} }
func ipv6PathMTU(fd int) (int, error) { func ipv6PathMTU(fd int) (int, error) {
return 0, errNotSupported return 0, errOpNoSupport
} }
func ipv6ReceivePathMTU(fd int) (bool, error) { func ipv6ReceivePathMTU(fd int) (bool, error) {
return false, errNotSupported return false, errOpNoSupport
} }
func setIPv6ReceivePathMTU(fd int, v bool) error { func setIPv6ReceivePathMTU(fd int, v bool) error {
return errNotSupported return errOpNoSupport
} }
func ipv6ICMPFilter(fd int) (*ICMPFilter, error) { func ipv6ICMPFilter(fd int) (*ICMPFilter, error) {
......
...@@ -2,11 +2,11 @@ ...@@ -2,11 +2,11 @@
// Use of this source code is governed by a BSD-style // Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
package ipv6 // +build dragonfly plan9 solaris
import "syscall" package ipv6
func ipv6PathMTU(fd int) (int, error) { func ipv6PathMTU(fd int) (int, error) {
// TODO(mikio): Implement this // TODO(mikio): Implement this
return 0, syscall.EPLAN9 return 0, errOpNoSupport
} }
...@@ -24,7 +24,7 @@ func init() { ...@@ -24,7 +24,7 @@ func init() {
var condFatalf = func() func(*testing.T, string, ...interface{}) { var condFatalf = func() func(*testing.T, string, ...interface{}) {
// A few APIs are not implemented yet on some platforms. // A few APIs are not implemented yet on some platforms.
switch runtime.GOOS { switch runtime.GOOS {
case "darwin", "plan9", "windows": case "darwin", "dragonfly", "plan9", "solaris", "windows":
return (*testing.T).Logf return (*testing.T).Logf
} }
return (*testing.T).Fatalf return (*testing.T).Fatalf
...@@ -32,7 +32,7 @@ var condFatalf = func() func(*testing.T, string, ...interface{}) { ...@@ -32,7 +32,7 @@ var condFatalf = func() func(*testing.T, string, ...interface{}) {
func TestConnInitiatorPathMTU(t *testing.T) { func TestConnInitiatorPathMTU(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -65,7 +65,7 @@ func TestConnInitiatorPathMTU(t *testing.T) { ...@@ -65,7 +65,7 @@ func TestConnInitiatorPathMTU(t *testing.T) {
func TestConnResponderPathMTU(t *testing.T) { func TestConnResponderPathMTU(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -98,7 +98,7 @@ func TestConnResponderPathMTU(t *testing.T) { ...@@ -98,7 +98,7 @@ func TestConnResponderPathMTU(t *testing.T) {
func TestPacketConnChecksum(t *testing.T) { func TestPacketConnChecksum(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -16,7 +16,7 @@ import ( ...@@ -16,7 +16,7 @@ import (
func TestPacketConnReadWriteUnicastUDP(t *testing.T) { func TestPacketConnReadWriteUnicastUDP(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -77,7 +77,7 @@ func TestPacketConnReadWriteUnicastUDP(t *testing.T) { ...@@ -77,7 +77,7 @@ func TestPacketConnReadWriteUnicastUDP(t *testing.T) {
func TestPacketConnReadWriteUnicastICMP(t *testing.T) { func TestPacketConnReadWriteUnicastICMP(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
...@@ -14,7 +14,7 @@ import ( ...@@ -14,7 +14,7 @@ import (
func TestConnUnicastSocketOptions(t *testing.T) { func TestConnUnicastSocketOptions(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
...@@ -50,7 +50,7 @@ var packetConnUnicastSocketOptionTests = []struct { ...@@ -50,7 +50,7 @@ var packetConnUnicastSocketOptionTests = []struct {
func TestPacketConnUnicastSocketOptions(t *testing.T) { func TestPacketConnUnicastSocketOptions(t *testing.T) {
switch runtime.GOOS { switch runtime.GOOS {
case "plan9", "windows": case "dragonfly", "plan9", "solaris", "windows":
t.Skipf("not supported on %q", runtime.GOOS) t.Skipf("not supported on %q", runtime.GOOS)
} }
if !supportsIPv6 { if !supportsIPv6 {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment