1
0
mirror of https://github.com/golang/go synced 2024-10-02 08:18:32 -06:00

net: disable wild use of SO_REUSEPORT on BSD variants

Fixes #2830 (again).

R=rsc
CC=golang-dev
https://golang.org/cl/5651083
This commit is contained in:
Mikio Hara 2012-02-13 12:45:59 +09:00
parent 8040f9bb86
commit 6fa2296e83

View File

@ -34,14 +34,6 @@ func setDefaultListenerSockopts(s int) error {
if err != nil {
return os.NewSyscallError("setsockopt", err)
}
// Allow reuse of recently-used ports.
// This option is supported only in descendants of 4.4BSD,
// to make an effective multicast application and an application
// that requires quick draw possible.
err = syscall.SetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_REUSEPORT, 1)
if err != nil {
return os.NewSyscallError("setsockopt", err)
}
return nil
}
@ -52,6 +44,10 @@ func setDefaultMulticastSockopts(s int) error {
if err != nil {
return os.NewSyscallError("setsockopt", err)
}
// Allow reuse of recently-used ports.
// This option is supported only in descendants of 4.4BSD,
// to make an effective multicast application that requires
// quick draw possible.
err = syscall.SetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_REUSEPORT, 1)
if err != nil {
return os.NewSyscallError("setsockopt", err)