blob: 5ccff9d9b2b8814a496e7868d5f8436a5ef5a9f1 [file] [log] [blame]
// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos
// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos
package ipv6_test
import (
"fmt"
"runtime"
)
func supportsIPv6MulticastDeliveryOnLoopback() (string, bool) {
switch runtime.GOOS {
case "freebsd":
// See http://www.freebsd.org/cgi/query-pr.cgi?pr=180065.
// Even after the fix, it looks like the latest
// kernels don't deliver link-local scoped multicast
// packets correctly.
return fmt.Sprintf("not supported on %s/%s", runtime.GOOS, runtime.GOARCH), false
case "openbsd":
// Multicast packets don't seem to be delivered locally.
// Issue 42064.
return fmt.Sprintf("not supported on %s/%s", runtime.GOOS, runtime.GOARCH), false
default:
return "", true
}
}