mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
The SOCK_CLOEXEC and SOCK_NONBLOCK flags to the socket syscall and the accept4 syscall are supported since OpenBSD 5.7. Follows CL 40895 and CL 94295 Change-Id: Icaf35ace2ef5e73279a70d4f1a9fbf3be9371e6c Reviewed-on: https://go-review.googlesource.com/97196 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
27 lines
669 B
Go
27 lines
669 B
Go
// 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.
|
|
|
|
// +build dragonfly freebsd linux netbsd openbsd
|
|
|
|
package net
|
|
|
|
import "internal/poll"
|
|
|
|
func init() {
|
|
extraTestHookInstallers = append(extraTestHookInstallers, installAccept4TestHook)
|
|
extraTestHookUninstallers = append(extraTestHookUninstallers, uninstallAccept4TestHook)
|
|
}
|
|
|
|
var (
|
|
// Placeholders for saving original socket system calls.
|
|
origAccept4 = poll.Accept4Func
|
|
)
|
|
|
|
func installAccept4TestHook() {
|
|
poll.Accept4Func = sw.Accept4
|
|
}
|
|
|
|
func uninstallAccept4TestHook() {
|
|
poll.Accept4Func = origAccept4
|
|
}
|