rpcinet

package
v0.0.0-...-522126a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 23, 2019 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Overview

Package rpcinet implements sockets using an RPC for each syscall.

Index

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 NewStack

func NewStack(fd int32) (*Stack, error)

NewStack returns a Stack containing the current state of the host network stack.

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

func (s *Stack) Interfaces() map[int32]inet.Interface

Interfaces implements inet.Stack.Interfaces.

func (*Stack) RPCReadFile

func (s *Stack) RPCReadFile(path string) ([]byte, *syserr.Error)

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

func (s *Stack) RPCWriteFile(path string, data []byte) (int64, *syserr.Error)

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) Resume

func (s *Stack) Resume()

Resume implements inet.Stack.Resume.

func (*Stack) RouteTable

func (s *Stack) RouteTable() []inet.Route

RouteTable implements inet.Stack.RouteTable.

func (*Stack) SetTCPReceiveBufferSize

func (s *Stack) SetTCPReceiveBufferSize(size inet.TCPBufferSize) error

SetTCPReceiveBufferSize implements inet.Stack.SetTCPReceiveBufferSize.

func (*Stack) SetTCPSACKEnabled

func (s *Stack) SetTCPSACKEnabled(enabled bool) error

SetTCPSACKEnabled implements inet.Stack.SetTCPSACKEnabled.

func (*Stack) SetTCPSendBufferSize

func (s *Stack) SetTCPSendBufferSize(size inet.TCPBufferSize) error

SetTCPSendBufferSize implements inet.Stack.SetTCPSendBufferSize.

func (*Stack) Statistics

func (s *Stack) Statistics(stat interface{}, arg string) error

Statistics implements inet.Stack.Statistics.

func (*Stack) SupportsIPv6

func (s *Stack) SupportsIPv6() bool

SupportsIPv6 implements inet.Stack.SupportsIPv6.

func (*Stack) TCPReceiveBufferSize

func (s *Stack) TCPReceiveBufferSize() (inet.TCPBufferSize, error)

TCPReceiveBufferSize implements inet.Stack.TCPReceiveBufferSize.

func (*Stack) TCPSACKEnabled

func (s *Stack) TCPSACKEnabled() (bool, error)

TCPSACKEnabled implements inet.Stack.TCPSACKEnabled.

func (*Stack) TCPSendBufferSize

func (s *Stack) TCPSendBufferSize() (inet.TCPBufferSize, error)

TCPSendBufferSize implements inet.Stack.TCPSendBufferSize.

Directories

Path Synopsis
Package conn is an RPC connection to a syscall RPC server.
Package conn is an RPC connection to a syscall RPC server.
Package notifier implements an FD notifier implementation over RPC.
Package notifier implements an FD notifier implementation over RPC.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL