pipe

package
v0.0.0-...-ab9d845 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2024 License: Apache-2.0, MIT Imports: 3 Imported by: 3

Documentation

Overview

Package pipe provides the implementation of pipe-like data-link layer endpoints. Such endpoints allow packets to be sent between two interfaces.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(linkAddr1, linkAddr2 tcpip.LinkAddress, mtu uint32) (*Endpoint, *Endpoint)

New returns both ends of a new pipe.

Types

type Endpoint

type Endpoint struct {
	// contains filtered or unexported fields
}

Endpoint is one end of a pipe.

+stateify savable

func (*Endpoint) ARPHardwareType

func (*Endpoint) ARPHardwareType() header.ARPHardwareType

ARPHardwareType implements stack.LinkEndpoint.

func (*Endpoint) AddHeader

func (*Endpoint) AddHeader(*stack.PacketBuffer)

AddHeader implements stack.LinkEndpoint.

func (*Endpoint) Attach

func (e *Endpoint) Attach(dispatcher stack.NetworkDispatcher)

Attach implements stack.LinkEndpoint.

func (*Endpoint) Capabilities

func (*Endpoint) Capabilities() stack.LinkEndpointCapabilities

Capabilities implements stack.LinkEndpoint.

func (*Endpoint) Close

func (e *Endpoint) Close()

Close implements stack.LinkEndpoint.

func (*Endpoint) IsAttached

func (e *Endpoint) IsAttached() bool

IsAttached implements stack.LinkEndpoint.

func (*Endpoint) LinkAddress

func (e *Endpoint) LinkAddress() tcpip.LinkAddress

LinkAddress implements stack.LinkEndpoint.

func (*Endpoint) MTU

func (e *Endpoint) MTU() uint32

MTU implements stack.LinkEndpoint.

func (*Endpoint) MaxHeaderLength

func (*Endpoint) MaxHeaderLength() uint16

MaxHeaderLength implements stack.LinkEndpoint.

func (*Endpoint) ParseHeader

func (*Endpoint) ParseHeader(*stack.PacketBuffer) bool

ParseHeader implements stack.LinkEndpoint.

func (*Endpoint) SetLinkAddress

func (e *Endpoint) SetLinkAddress(addr tcpip.LinkAddress)

SetLinkAddress implements stack.LinkEndpoint.

func (*Endpoint) SetMTU

func (e *Endpoint) SetMTU(mtu uint32)

SetMTU implements stack.LinkEndpoint.

func (*Endpoint) SetOnCloseAction

func (*Endpoint) SetOnCloseAction(func())

SetOnCloseAction implements stack.LinkEndpoint.SetOnCloseAction.

func (*Endpoint) Wait

func (*Endpoint) Wait()

Wait implements stack.LinkEndpoint.

func (*Endpoint) WritePackets

func (e *Endpoint) WritePackets(pkts stack.PacketBufferList) (int, tcpip.Error)

WritePackets implements stack.LinkEndpoint.

Jump to

Keyboard shortcuts

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