aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTobias Klauser <tklauser@distanz.ch>2022-05-03 11:47:44 +0200
committerGopher Robot <gobot@golang.org>2022-05-03 18:23:13 +0000
commit35d02791b990082fe80da54352050bd095ebd1e7 (patch)
tree8b204ab248b2eece05d0ddbeaf7e8669d84d6358 /src
parent356c8c54521efb02cc2a103ac2b80c77f54b4bcd (diff)
downloadgo-35d02791b990082fe80da54352050bd095ebd1e7.tar.xz
net: remove fallback path in sysSocket
Support for operating system versions requiring this fallback path was dropped from recent Go versions. The minimum Linux kernel version is 2.6.32 as of Go 1.18. FreeBSD 10 is no longer supported as of Go 1.13. Change-Id: I7e74768146dd43a36d0d26fcb08eed9ace82189f Reviewed-on: https://go-review.googlesource.com/c/go/+/403634 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> Auto-Submit: Tobias Klauser <tobias.klauser@gmail.com> Run-TryBot: Ian Lance Taylor <iant@google.com> Auto-Submit: Ian Lance Taylor <iant@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: David Chase <drchase@google.com>
Diffstat (limited to 'src')
-rw-r--r--src/net/sock_cloexec.go25
1 files changed, 0 insertions, 25 deletions
diff --git a/src/net/sock_cloexec.go b/src/net/sock_cloexec.go
index f4c1165028..3f1cc9827a 100644
--- a/src/net/sock_cloexec.go
+++ b/src/net/sock_cloexec.go
@@ -10,7 +10,6 @@
package net
import (
- "internal/poll"
"os"
"syscall"
)
@@ -19,32 +18,8 @@ import (
// descriptor as nonblocking and close-on-exec.
func sysSocket(family, sotype, proto int) (int, error) {
s, err := socketFunc(family, sotype|syscall.SOCK_NONBLOCK|syscall.SOCK_CLOEXEC, proto)
- // On Linux the SOCK_NONBLOCK and SOCK_CLOEXEC flags were
- // introduced in 2.6.27 kernel and on FreeBSD both flags were
- // introduced in 10 kernel. If we get an EINVAL error on Linux
- // or EPROTONOSUPPORT error on FreeBSD, fall back to using
- // socket without them.
- switch err {
- case nil:
- return s, nil
- default:
- return -1, os.NewSyscallError("socket", err)
- case syscall.EPROTONOSUPPORT, syscall.EINVAL:
- }
-
- // See ../syscall/exec_unix.go for description of ForkLock.
- syscall.ForkLock.RLock()
- s, err = socketFunc(family, sotype, proto)
- if err == nil {
- syscall.CloseOnExec(s)
- }
- syscall.ForkLock.RUnlock()
if err != nil {
return -1, os.NewSyscallError("socket", err)
}
- if err = syscall.SetNonblock(s, true); err != nil {
- poll.CloseFunc(s)
- return -1, os.NewSyscallError("setnonblock", err)
- }
return s, nil
}