spkt

package
v0.0.0-...-c8fc2fc Latest Latest
Warning

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

Go to latest
Published: Mar 2, 2018 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CmnHdrLen    = 8 // Bytes
	SCIONVersion = 0
)
View Source
const (
	ErrorUnsuppVersion = "Unsupported SCION version"
)
View Source
const OneHopPathLen = common.ExtnFirstLineLen
View Source
const (
	TracerouteEntryLen = 8
)

Variables

This section is empty.

Functions

func AddrHdrLen

func AddrHdrLen(dst addr.HostAddr, src addr.HostAddr) int

AddrHdrLen calculates the length of a SCION address header (including padding) for the specified address types.

Types

type CmnHdr

type CmnHdr struct {
	Ver       uint8
	DstType   addr.HostAddrType
	SrcType   addr.HostAddrType
	TotalLen  uint16
	HdrLen    uint8
	CurrInfoF uint8
	CurrHopF  uint8
	NextHdr   common.L4ProtocolType
}

func CmnHdrFromRaw

func CmnHdrFromRaw(b common.RawBytes) (*CmnHdr, error)

func (*CmnHdr) HdrLenBytes

func (c *CmnHdr) HdrLenBytes() int

func (*CmnHdr) HopFOffBytes

func (c *CmnHdr) HopFOffBytes() int

func (*CmnHdr) InfoFOffBytes

func (c *CmnHdr) InfoFOffBytes() int

func (*CmnHdr) Parse

func (c *CmnHdr) Parse(b common.RawBytes) error

func (CmnHdr) String

func (c CmnHdr) String() string

func (*CmnHdr) UpdatePathOffsets

func (c *CmnHdr) UpdatePathOffsets(b common.RawBytes, iOff, hOff uint8)

func (*CmnHdr) Write

func (c *CmnHdr) Write(b common.RawBytes)

type OneHopPath

type OneHopPath struct{}

func (OneHopPath) Class

func (o OneHopPath) Class() common.L4ProtocolType

func (OneHopPath) Copy

func (o OneHopPath) Copy() common.Extension

func (OneHopPath) Len

func (o OneHopPath) Len() int

func (OneHopPath) Pack

func (o OneHopPath) Pack() (common.RawBytes, error)

func (OneHopPath) Reverse

func (o OneHopPath) Reverse() (bool, error)

func (*OneHopPath) String

func (o *OneHopPath) String() string

func (OneHopPath) Type

func (o OneHopPath) Type() common.ExtnType

func (OneHopPath) Write

func (o OneHopPath) Write(b common.RawBytes) error

type ScnPkt

type ScnPkt struct {
	CmnHdr  *CmnHdr // FIXME(scrye): remove this once the SIG no longer needs it
	DstIA   *addr.ISD_AS
	SrcIA   *addr.ISD_AS
	DstHost addr.HostAddr
	SrcHost addr.HostAddr
	Path    *spath.Path
	HBHExt  []common.Extension
	E2EExt  []common.Extension
	L4      l4.L4Header
	Pld     common.Payload
}

SCION Packet structure.

func (*ScnPkt) AddrLen

func (s *ScnPkt) AddrLen() int

func (*ScnPkt) Copy

func (s *ScnPkt) Copy() (*ScnPkt, error)

func (*ScnPkt) HdrLen

func (s *ScnPkt) HdrLen() int

HdrLen returns the length of the header, in bytes.

func (*ScnPkt) Reverse

func (s *ScnPkt) Reverse() error

func (*ScnPkt) TotalLen

func (s *ScnPkt) TotalLen() int

type Traceroute

type Traceroute struct {
	Hops []*TracerouteEntry
}

func NewTraceroute

func NewTraceroute(totalHops int) *Traceroute

func (*Traceroute) Class

func (t *Traceroute) Class() common.L4ProtocolType

func (*Traceroute) Copy

func (t *Traceroute) Copy() common.Extension

func (*Traceroute) Len

func (t *Traceroute) Len() int

func (*Traceroute) NumHops

func (t *Traceroute) NumHops() int

func (*Traceroute) Pack

func (t *Traceroute) Pack() (common.RawBytes, error)

func (*Traceroute) Reverse

func (t *Traceroute) Reverse() (bool, error)

func (*Traceroute) String

func (t *Traceroute) String() string

func (*Traceroute) TotalHops

func (t *Traceroute) TotalHops() int

func (*Traceroute) Type

func (t *Traceroute) Type() common.ExtnType

func (*Traceroute) Write

func (t *Traceroute) Write(b common.RawBytes) error

type TracerouteEntry

type TracerouteEntry struct {
	IA        addr.ISD_AS
	IfID      uint16
	TimeStamp uint16
}

func (*TracerouteEntry) Copy

func (t *TracerouteEntry) Copy() *TracerouteEntry

func (*TracerouteEntry) Write

func (t *TracerouteEntry) Write(b common.RawBytes)

Jump to

Keyboard shortcuts

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