Documentation ¶
Index ¶
- func GetSockOpts(fd uintptr, opts ...SockOpt) error
- func MarshalCmsg(opts ...SockOpt) []byte
- func MarshalOpt(b []byte, o SockOpt)
- func NewMsghdr(sa, p, oob []byte) unix.Msghdr
- func Recvmmsg(s uintptr, hs []Mmsghdr, flags int) (int, error)
- func Sendmmsg(s uintptr, hs []Mmsghdr, flags int) (int, error)
- func SetSockOpts(fd uintptr, opts ...SockOpt) error
- func SockaddrLen(family int) uint32
- func UnmarshalOpt(b []byte, o SockOpt)
- type BoolSockOpt
- type BytesSockOpt
- func (o BytesSockOpt[T]) Get() T
- func (o BytesSockOpt[T]) Len() uint32
- func (o *BytesSockOpt) Level() int32
- func (o BytesSockOpt[T]) Ptr() unsafe.Pointer
- func (o *BytesSockOpt[T]) Set(v T) *BytesSockOpt[T]
- func (o *BytesSockOpt[T]) SetSize(size int) *BytesSockOpt[T]
- func (o *BytesSockOpt) Type() int32
- type IValueSockOpt
- type Mmsghdr
- type SockMsg
- type SockOpt
- type SocketConn
- func (c *SocketConn) Accept() (nfd int, sa unix.Sockaddr, err error)
- func (c *SocketConn) AttachFilter(instrs []bpf.Instruction) error
- func (c *SocketConn) AttachFilterRaw(f []bpf.RawInstruction) error
- func (c *SocketConn) Bind(sa unix.Sockaddr) error
- func (c *SocketConn) BindToDevice(dev string) error
- func (c *SocketConn) BindToIfIndex(ifIndex int) error
- func (c *SocketConn) BoundToDevice() (string, error)
- func (c *SocketConn) BoundToIfIndex() (int, error)
- func (c *SocketConn) Close() error
- func (c *SocketConn) Connect(sa unix.Sockaddr) error
- func (c *SocketConn) Control(f func(fd uintptr)) error
- func (c *SocketConn) Disconnect() error
- func (c *SocketConn) Domain() (int, error)
- func (c *SocketConn) GetSockOpts(opts ...SockOpt) error
- func (c *SocketConn) Listen(backlog int) error
- func (c *SocketConn) ListenPacket(ctx context.Context, flags int, numMsgs, dataLen, controlLen int, ...) error
- func (c *SocketConn) Lock() error
- func (c *SocketConn) Proto() (int, error)
- func (c *SocketConn) RLock() error
- func (c *SocketConn) RUnlock() error
- func (c *SocketConn) Read(f func(fd uintptr) (done bool)) error
- func (c *SocketConn) RecvFrom(buf []byte, flags int) (n int, from unix.Sockaddr, err error)
- func (c *SocketConn) RecvMmsg(hs []Mmsghdr, flags int) (n int, err error)
- func (c *SocketConn) RecvMsg(buf []byte, oob []byte, flags int) (n, oobn int, recvflags int, from unix.Sockaddr, err error)
- func (c *SocketConn) SendMmsg(hs []Mmsghdr, flags int) (n int, err error)
- func (c *SocketConn) SendMsg(buf []byte, to unix.Sockaddr, flags int, opts ...SockOpt) (n int, err error)
- func (c *SocketConn) SendTo(buf []byte, flags int, to unix.Sockaddr) error
- func (c *SocketConn) SetContext(ctx context.Context) (context.CancelFunc, error)
- func (c *SocketConn) SetDeadline(t time.Time) error
- func (c *SocketConn) SetReadContext(ctx context.Context) (context.CancelFunc, error)
- func (c *SocketConn) SetReadDeadline(t time.Time) error
- func (c *SocketConn) SetSockOpts(opts ...SockOpt) error
- func (c *SocketConn) SetWriteContext(ctx context.Context) (context.CancelFunc, error)
- func (c *SocketConn) SetWriteDeadline(t time.Time) error
- func (c *SocketConn) Type() (int, error)
- func (c *SocketConn) Unlock() error
- func (c *SocketConn) WLock() error
- func (c *SocketConn) WUnlock() error
- func (c *SocketConn) Write(f func(fd uintptr) (done bool)) error
- type ValueSockOpt
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetSockOpts ¶ added in v1.2.0
func MarshalCmsg ¶ added in v1.2.0
func MarshalOpt ¶ added in v1.4.2
func SetSockOpts ¶ added in v1.2.0
func SockaddrLen ¶ added in v1.3.0
func UnmarshalOpt ¶ added in v1.4.2
Types ¶
type BoolSockOpt ¶ added in v1.2.0
type BoolSockOpt struct { *ValueSockOpt[int32] }
func NewBoolSockOpt ¶ added in v1.2.0
func NewBoolSockOpt(lvl, typ int32) BoolSockOpt
func (BoolSockOpt) Get ¶ added in v1.2.0
func (o BoolSockOpt) Get() bool
func (BoolSockOpt) Set ¶ added in v1.2.0
func (o BoolSockOpt) Set(v bool) BoolSockOpt
type BytesSockOpt ¶ added in v1.2.0
type BytesSockOpt[T bytes] struct {
// contains filtered or unexported fields
}
func NewBytesSockOpt ¶ added in v1.2.0
func NewBytesSockOpt[T bytes](lvl, typ int32) *BytesSockOpt[T]
func (BytesSockOpt[T]) Get ¶ added in v1.2.0
func (o BytesSockOpt[T]) Get() T
func (BytesSockOpt[T]) Len ¶ added in v1.4.2
func (o BytesSockOpt[T]) Len() uint32
func (BytesSockOpt[T]) Ptr ¶ added in v1.4.2
func (o BytesSockOpt[T]) Ptr() unsafe.Pointer
func (*BytesSockOpt[T]) Set ¶ added in v1.2.0
func (o *BytesSockOpt[T]) Set(v T) *BytesSockOpt[T]
func (*BytesSockOpt[T]) SetSize ¶ added in v1.2.0
func (o *BytesSockOpt[T]) SetSize(size int) *BytesSockOpt[T]
type IValueSockOpt ¶ added in v1.4.5
type IValueSockOpt[T, U constraints.Integer] struct { *ValueSockOpt[U] }
func NewIValueSockOpt ¶ added in v1.4.5
func NewIValueSockOpt[T, U constraints.Integer](lvl, typ int32) IValueSockOpt[T, U]
func (IValueSockOpt[T, U]) Get ¶ added in v1.4.5
func (o IValueSockOpt[T, U]) Get() T
func (IValueSockOpt[T, U]) Set ¶ added in v1.4.5
func (o IValueSockOpt[T, U]) Set(v T) IValueSockOpt[T, U]
type Mmsghdr ¶
func MakeMmsghdr ¶ added in v1.2.0
func MakeMmsghdrs ¶ added in v1.2.0
func NewMmsghdr ¶ added in v1.2.0
type SockOpt ¶ added in v1.2.0
type SockOpt interface { Level() int32 Type() int32 // Len returns length of option value in bytes Len() uint32 Ptr() unsafe.Pointer // contains filtered or unexported methods }
SockOpt is a socket option
type SocketConn ¶ added in v1.2.0
type SocketConn struct {
// contains filtered or unexported fields
}
func NewSocketConn ¶ added in v1.2.0
func NewSocketConn(domain, typ, proto int) (*SocketConn, error)
func (*SocketConn) Accept ¶ added in v1.2.0
func (c *SocketConn) Accept() (nfd int, sa unix.Sockaddr, err error)
func (*SocketConn) AttachFilter ¶ added in v1.2.0
func (c *SocketConn) AttachFilter(instrs []bpf.Instruction) error
func (*SocketConn) AttachFilterRaw ¶ added in v1.2.0
func (c *SocketConn) AttachFilterRaw(f []bpf.RawInstruction) error
func (*SocketConn) BindToDevice ¶ added in v1.2.0
func (c *SocketConn) BindToDevice(dev string) error
func (*SocketConn) BindToIfIndex ¶ added in v1.2.0
func (c *SocketConn) BindToIfIndex(ifIndex int) error
func (*SocketConn) BoundToDevice ¶ added in v1.2.0
func (c *SocketConn) BoundToDevice() (string, error)
func (*SocketConn) BoundToIfIndex ¶ added in v1.2.0
func (c *SocketConn) BoundToIfIndex() (int, error)
func (*SocketConn) Close ¶ added in v1.2.0
func (c *SocketConn) Close() error
func (*SocketConn) Control ¶ added in v1.2.0
func (c *SocketConn) Control(f func(fd uintptr)) error
func (*SocketConn) Disconnect ¶ added in v1.2.0
func (c *SocketConn) Disconnect() error
func (*SocketConn) Domain ¶ added in v1.3.0
func (c *SocketConn) Domain() (int, error)
func (*SocketConn) GetSockOpts ¶ added in v1.2.0
func (c *SocketConn) GetSockOpts(opts ...SockOpt) error
func (*SocketConn) Listen ¶ added in v1.2.0
func (c *SocketConn) Listen(backlog int) error
func (*SocketConn) ListenPacket ¶ added in v1.3.0
func (*SocketConn) Lock ¶ added in v1.2.0
func (c *SocketConn) Lock() error
func (*SocketConn) Proto ¶ added in v1.3.0
func (c *SocketConn) Proto() (int, error)
func (*SocketConn) RLock ¶ added in v1.2.0
func (c *SocketConn) RLock() error
func (*SocketConn) RUnlock ¶ added in v1.2.0
func (c *SocketConn) RUnlock() error
func (*SocketConn) Read ¶ added in v1.2.0
func (c *SocketConn) Read(f func(fd uintptr) (done bool)) error
func (*SocketConn) RecvMmsg ¶ added in v1.2.0
func (c *SocketConn) RecvMmsg(hs []Mmsghdr, flags int) (n int, err error)
func (*SocketConn) SendMmsg ¶ added in v1.2.0
func (c *SocketConn) SendMmsg(hs []Mmsghdr, flags int) (n int, err error)
func (*SocketConn) SetContext ¶ added in v1.2.0
func (c *SocketConn) SetContext(ctx context.Context) (context.CancelFunc, error)
func (*SocketConn) SetDeadline ¶ added in v1.2.0
func (c *SocketConn) SetDeadline(t time.Time) error
func (*SocketConn) SetReadContext ¶ added in v1.2.0
func (c *SocketConn) SetReadContext(ctx context.Context) (context.CancelFunc, error)
func (*SocketConn) SetReadDeadline ¶ added in v1.2.0
func (c *SocketConn) SetReadDeadline(t time.Time) error
func (*SocketConn) SetSockOpts ¶ added in v1.2.0
func (c *SocketConn) SetSockOpts(opts ...SockOpt) error
func (*SocketConn) SetWriteContext ¶ added in v1.2.0
func (c *SocketConn) SetWriteContext(ctx context.Context) (context.CancelFunc, error)
func (*SocketConn) SetWriteDeadline ¶ added in v1.2.0
func (c *SocketConn) SetWriteDeadline(t time.Time) error
func (*SocketConn) Type ¶ added in v1.3.0
func (c *SocketConn) Type() (int, error)
func (*SocketConn) Unlock ¶ added in v1.2.0
func (c *SocketConn) Unlock() error
func (*SocketConn) WLock ¶ added in v1.2.0
func (c *SocketConn) WLock() error
func (*SocketConn) WUnlock ¶ added in v1.2.0
func (c *SocketConn) WUnlock() error
type ValueSockOpt ¶ added in v1.4.2
type ValueSockOpt[T any] struct { // contains filtered or unexported fields }
func NewSockOpt ¶ added in v1.2.0
func NewSockOpt[T any](lvl, typ int32) *ValueSockOpt[T]
func (*ValueSockOpt[T]) Get ¶ added in v1.4.2
func (o *ValueSockOpt[T]) Get() T
func (*ValueSockOpt[T]) Len ¶ added in v1.4.2
func (o *ValueSockOpt[T]) Len() uint32
func (*ValueSockOpt[T]) Ptr ¶ added in v1.4.2
func (o *ValueSockOpt[T]) Ptr() unsafe.Pointer
func (*ValueSockOpt[T]) Set ¶ added in v1.4.2
func (o *ValueSockOpt[T]) Set(v T) *ValueSockOpt[T]
Click to show internal directories.
Click to hide internal directories.