Documentation
¶
Overview ¶
Package rpcinet implements sockets using an RPC for each syscall.
Index ¶
- type Stack
- func (s *Stack) CleanupEndpoints() []stack.TransportEndpoint
- func (s *Stack) DoNetlinkRouteRequest(req int) ([]syscall.NetlinkMessage, error)
- func (s *Stack) InterfaceAddrs() map[int32][]inet.InterfaceAddr
- func (s *Stack) Interfaces() map[int32]inet.Interface
- func (s *Stack) RPCReadFile(path string) ([]byte, *syserr.Error)
- func (s *Stack) RPCWriteFile(path string, data []byte) (int64, *syserr.Error)
- func (s *Stack) RegisteredEndpoints() []stack.TransportEndpoint
- func (s *Stack) RestoreCleanupEndpoints([]stack.TransportEndpoint)
- func (s *Stack) Resume()
- func (s *Stack) RouteTable() []inet.Route
- func (s *Stack) SetTCPReceiveBufferSize(size inet.TCPBufferSize) error
- func (s *Stack) SetTCPSACKEnabled(enabled bool) error
- func (s *Stack) SetTCPSendBufferSize(size inet.TCPBufferSize) error
- func (s *Stack) Statistics(stat interface{}, arg string) error
- func (s *Stack) SupportsIPv6() bool
- func (s *Stack) TCPReceiveBufferSize() (inet.TCPBufferSize, error)
- func (s *Stack) TCPSACKEnabled() (bool, error)
- func (s *Stack) TCPSendBufferSize() (inet.TCPBufferSize, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Stack ¶
type Stack struct {
// contains filtered or unexported fields
}
Stack implements inet.Stack for RPC backed sockets.
func (*Stack) CleanupEndpoints ¶
func (s *Stack) CleanupEndpoints() []stack.TransportEndpoint
CleanupEndpoints implements inet.Stack.CleanupEndpoints.
func (*Stack) DoNetlinkRouteRequest ¶
func (s *Stack) DoNetlinkRouteRequest(req int) ([]syscall.NetlinkMessage, error)
DoNetlinkRouteRequest returns routing information base, also known as RIB, which consists of network facility information, states and parameters.
func (*Stack) InterfaceAddrs ¶
func (s *Stack) InterfaceAddrs() map[int32][]inet.InterfaceAddr
InterfaceAddrs implements inet.Stack.InterfaceAddrs.
func (*Stack) Interfaces ¶
Interfaces implements inet.Stack.Interfaces.
func (*Stack) RPCReadFile ¶
RPCReadFile will execute the ReadFile helper RPC method which avoids the common pattern of open(2), read(2), close(2) by doing all three operations as a single RPC. It will read the entire file or return EFBIG if the file was too large.
func (*Stack) RPCWriteFile ¶
RPCWriteFile will execute the WriteFile helper RPC method which avoids the common pattern of open(2), write(2), write(2), close(2) by doing all operations as a single RPC.
func (*Stack) RegisteredEndpoints ¶
func (s *Stack) RegisteredEndpoints() []stack.TransportEndpoint
RegisteredEndpoints implements inet.Stack.RegisteredEndpoints.
func (*Stack) RestoreCleanupEndpoints ¶
func (s *Stack) RestoreCleanupEndpoints([]stack.TransportEndpoint)
RestoreCleanupEndpoints implements inet.Stack.RestoreCleanupEndpoints.
func (*Stack) RouteTable ¶
RouteTable implements inet.Stack.RouteTable.
func (*Stack) SetTCPReceiveBufferSize ¶
func (s *Stack) SetTCPReceiveBufferSize(size inet.TCPBufferSize) error
SetTCPReceiveBufferSize implements inet.Stack.SetTCPReceiveBufferSize.
func (*Stack) SetTCPSACKEnabled ¶
SetTCPSACKEnabled implements inet.Stack.SetTCPSACKEnabled.
func (*Stack) SetTCPSendBufferSize ¶
func (s *Stack) SetTCPSendBufferSize(size inet.TCPBufferSize) error
SetTCPSendBufferSize implements inet.Stack.SetTCPSendBufferSize.
func (*Stack) Statistics ¶
Statistics implements inet.Stack.Statistics.
func (*Stack) SupportsIPv6 ¶
SupportsIPv6 implements inet.Stack.SupportsIPv6.
func (*Stack) TCPReceiveBufferSize ¶
func (s *Stack) TCPReceiveBufferSize() (inet.TCPBufferSize, error)
TCPReceiveBufferSize implements inet.Stack.TCPReceiveBufferSize.
func (*Stack) TCPSACKEnabled ¶
TCPSACKEnabled implements inet.Stack.TCPSACKEnabled.
func (*Stack) TCPSendBufferSize ¶
func (s *Stack) TCPSendBufferSize() (inet.TCPBufferSize, error)
TCPSendBufferSize implements inet.Stack.TCPSendBufferSize.