Documentation
¶
Overview ¶
Package socket provides functions that return fd and net.Addr based on given the protocol and address with a SO_REUSEPORT option set to the socket.
Index ¶
- func GetTCPSockAddr(proto, addr string) (sa unix.Sockaddr, family int, tcpAddr *net.TCPAddr, ipv6only bool, err error)
- func GetUDPSockAddr(proto, addr string) (sa unix.Sockaddr, family int, udpAddr *net.UDPAddr, ipv6only bool, err error)
- func GetUnixSockAddr(proto, addr string) (sa unix.Sockaddr, family int, unixAddr *net.UnixAddr, err error)
- func SetIPv6Only(fd, ipv6only int) error
- func SetKeepAlive(fd, secs int) error
- func SetNoDelay(fd, noDelay int) error
- func SetRecvBuffer(fd, size int) error
- func SetReuseAddr(fd, reuseAddr int) error
- func SetReuseport(fd, reusePort int) error
- func SetSendBuffer(fd, size int) error
- func SockaddrToTCPOrUnixAddr(sa unix.Sockaddr) net.Addr
- func SockaddrToUDPAddr(sa unix.Sockaddr) net.Addr
- func TCPSocket(proto, addr string, sockopts ...Option) (int, net.Addr, error)
- func UDPSocket(proto, addr string, sockopts ...Option) (int, net.Addr, error)
- func UnixSocket(proto, addr string, sockopts ...Option) (int, net.Addr, error)
- type Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetTCPSockAddr ¶ added in v1.6.0
func GetTCPSockAddr(proto, addr string) (sa unix.Sockaddr, family int, tcpAddr *net.TCPAddr, ipv6only bool, err error)
GetTCPSockAddr the structured addresses based on the protocol and raw address.
func GetUDPSockAddr ¶ added in v1.6.0
func GetUDPSockAddr(proto, addr string) (sa unix.Sockaddr, family int, udpAddr *net.UDPAddr, ipv6only bool, err error)
GetUDPSockAddr the structured addresses based on the protocol and raw address.
func GetUnixSockAddr ¶ added in v1.6.0
func GetUnixSockAddr(proto, addr string) (sa unix.Sockaddr, family int, unixAddr *net.UnixAddr, err error)
GetUnixSockAddr the structured addresses based on the protocol and raw address.
func SetIPv6Only ¶ added in v1.4.4
SetIPv6Only restricts a IPv6 socket to only process IPv6 requests or both IPv4 and IPv6 requests.
func SetKeepAlive ¶
SetKeepAlive sets whether the operating system should send keep-alive messages on the connection and sets period between keep-alive's.
func SetNoDelay ¶
SetNoDelay controls whether the operating system should delay packet transmission in hopes of sending fewer packets (Nagle's algorithm).
The default is true (no delay), meaning that data is sent as soon as possible after a Write.
func SetRecvBuffer ¶
SetRecvBuffer sets the size of the operating system's receive buffer associated with the connection.
func SetReuseAddr ¶ added in v1.6.0
SetReuseAddr enables SO_REUSEADDR option on socket.
func SetReuseport ¶
SetReuseport enables SO_REUSEPORT option on socket.
func SetSendBuffer ¶
SetSendBuffer sets the size of the operating system's transmit buffer associated with the connection.
func SockaddrToTCPOrUnixAddr ¶
SockaddrToTCPOrUnixAddr converts a Sockaddr to a net.TCPAddr or net.UnixAddr. Returns nil if conversion fails.
func SockaddrToUDPAddr ¶
SockaddrToUDPAddr converts a Sockaddr to a net.UDPAddr Returns nil if conversion fails.