Documentation ¶
Index ¶
- type ASEntry
- type HopEntry
- type Meta
- type PathSegment
- func (ps *PathSegment) AddASEntry(ase *ASEntry, signType proto.SignType, signSrc common.RawBytes) error
- func (ps *PathSegment) ContainsInterface(ia addr.IA, ifid common.IFIDType) bool
- func (ps *PathSegment) ID() (common.RawBytes, error)
- func (ps *PathSegment) InfoF() (*spath.InfoField, error)
- func (ps *PathSegment) MaxAEIdx() int
- func (ps *PathSegment) Pack() (common.RawBytes, error)
- func (ps *PathSegment) ParseRaw() error
- func (ps *PathSegment) ProtoId() proto.ProtoIdType
- func (ps *PathSegment) SignLastASEntry(key common.RawBytes) error
- func (ps *PathSegment) String() string
- func (ps *PathSegment) Validate() error
- func (ps *PathSegment) VerifyASEntry(key common.RawBytes, idx int) error
- func (ps *PathSegment) WalkHopEntries() error
- func (ps *PathSegment) Write(b common.RawBytes) (int, error)
- type PathSegmentSignedData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ASEntry ¶
type ASEntry struct { RawIA addr.IAInt `capnp:"isdas"` TrcVer uint64 CertVer uint64 IfIDSize uint8 HopEntries []*HopEntry `capnp:"hops"` MTU uint16 `capnp:"mtu"` Exts struct { RoutingPolicy common.RawBytes `capnp:"-"` // Not supported yet Sibra common.RawBytes `capnp:"-"` // Not supported yet } }
func (*ASEntry) ProtoId ¶
func (ase *ASEntry) ProtoId() proto.ProtoIdType
type HopEntry ¶
type Meta ¶
type Meta struct { Type proto.PathSegType Segment PathSegment `capnp:"pathSeg"` }
type PathSegment ¶
type PathSegment struct { RawSData common.RawBytes `capnp:"sdata"` SData *PathSegmentSignedData `capnp:"-"` RawASEntries []*proto.SignedBlobS `capnp:"asEntries"` ASEntries []*ASEntry `capnp:"-"` // contains filtered or unexported fields }
func NewSegFromRaw ¶
func NewSegFromRaw(b common.RawBytes) (*PathSegment, error)
func (*PathSegment) AddASEntry ¶
func (*PathSegment) ContainsInterface ¶
func (*PathSegment) MaxAEIdx ¶
func (ps *PathSegment) MaxAEIdx() int
func (*PathSegment) ParseRaw ¶
func (ps *PathSegment) ParseRaw() error
func (*PathSegment) ProtoId ¶
func (ps *PathSegment) ProtoId() proto.ProtoIdType
func (*PathSegment) SignLastASEntry ¶
func (ps *PathSegment) SignLastASEntry(key common.RawBytes) error
func (*PathSegment) String ¶
func (ps *PathSegment) String() string
func (*PathSegment) Validate ¶
func (ps *PathSegment) Validate() error
func (*PathSegment) VerifyASEntry ¶
func (ps *PathSegment) VerifyASEntry(key common.RawBytes, idx int) error
func (*PathSegment) WalkHopEntries ¶
func (ps *PathSegment) WalkHopEntries() error
walkHopEntries iterates through the hop entries of asEntries, checking that the hop fields within can be parsed. If an parse error is found, the function immediately returns with an error.
type PathSegmentSignedData ¶
func NewPathSegmentSignedDataFromRaw ¶
func NewPathSegmentSignedDataFromRaw(b common.RawBytes) (*PathSegmentSignedData, error)
func (*PathSegmentSignedData) InfoF ¶
func (pss *PathSegmentSignedData) InfoF() (*spath.InfoField, error)
func (*PathSegmentSignedData) ProtoId ¶
func (pss *PathSegmentSignedData) ProtoId() proto.ProtoIdType
func (*PathSegmentSignedData) String ¶
func (pss *PathSegmentSignedData) String() string
Click to show internal directories.
Click to hide internal directories.