周玉环 d906a41c2e first commit 2 days ago
..
CHANGELOG.md d906a41c2e first commit 2 days ago
LICENSE.md d906a41c2e first commit 2 days ago
README.md d906a41c2e first commit 2 days ago
accept.go d906a41c2e first commit 2 days ago
accept4.go d906a41c2e first commit 2 days ago
conn.go d906a41c2e first commit 2 days ago
conn_linux.go d906a41c2e first commit 2 days ago
doc.go d906a41c2e first commit 2 days ago
netns_linux.go d906a41c2e first commit 2 days ago
netns_others.go d906a41c2e first commit 2 days ago
setbuffer_linux.go d906a41c2e first commit 2 days ago
setbuffer_others.go d906a41c2e first commit 2 days ago
typ_cloexec_nonblock.go d906a41c2e first commit 2 days ago
typ_none.go d906a41c2e first commit 2 days ago

README.md

socket Test Status Go Reference Go Report Card

Package socket provides a low-level network connection type which integrates with Go's runtime network poller to provide asynchronous I/O and deadline support. MIT Licensed.

This package focuses on UNIX-like operating systems which make use of BSD sockets system call APIs. It is meant to be used as a foundation for the creation of operating system-specific socket packages, for socket families such as Linux's AF_NETLINK, AF_PACKET, or AF_VSOCK. This package should not be used directly in end user applications.

Any use of package socket should be guarded by build tags, as one would also use when importing the syscall or golang.org/x/sys packages.

Stability

See the CHANGELOG file for a description of changes between releases.

This package only supports the two most recent major versions of Go, mirroring Go's own release policy. Older versions of Go may lack critical features and bug fixes which are necessary for this package to function correctly.