common

package
v0.7.0 Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// LineLen is the number of bytes that all SCION headers are padded to a multiple of.
	LineLen = 8
	MinMTU  = 1280
	MaxMTU  = (1 << 16) - 1
	// SupportedMTU is the MTU supported by dispatcher/snet and router.
	// Smaller than MaxMTU to avoid excessive overallocation for packet buffers.
	// It's chosen as a common ethernet jumbo frame size minus IP/UDP headers.
	SupportedMTU = 9216 - 20 - 8
	TimeFmt      = "2006-01-02 15:04:05.000000-0700"
	TimeFmtSecs  = "2006-01-02 15:04:05-0700"
)
View Source
const (
	CPService = "Control Plane Service"
)

Variables

View Source
var (
	NativeOrder binary.ByteOrder
	IsBigEndian bool
)

Functions

func FmtError

func FmtError(e error) string

FmtError formats e for logging. It walks through all nested errors, putting each on a new line, and indenting multi-line errors.

func FmtErrors added in v0.4.0

func FmtErrors(es []error) string

FmtErrors formats a slice of errors for logging.

func GetNestedError

func GetNestedError(e error) error

GetNestedError returns the nested error, if any. Returns nil otherwise.

func TypeOf

func TypeOf(v interface{}) string

Types

type ErrMsg added in v0.4.0

type ErrMsg string

ErrMsg should be used for error string constants. The constant can then be used for Is checking in the calling code.

func (ErrMsg) Error added in v0.4.0

func (e ErrMsg) Error() string

type ErrorMsger

type ErrorMsger interface {
	error
	GetMsg() string
}

ErrorMsger allows extracting the message from an error. This means a caller can determine the type of error by comparing the returned message with a const error string. E.g.:

if GetErrorMsg(err) == addr.ErrorBadHostAddrType {
   // Handle bad host addr error
}

type ErrorNester

type ErrorNester interface {
	error
	TopError() string // should not include the nested error
	GetErr() error
}

ErrorNester allows recursing into nested errors.

type IFIDType deprecated

type IFIDType uint64

IFIDType is the type for interface IDs.

Deprecated: with version 2 of the SCION header, there is no interface ID type anymore. Use the appropriate type depending on the path type.

func (IFIDType) String

func (ifid IFIDType) String() string

func (*IFIDType) UnmarshalJSON added in v0.5.0

func (ifid *IFIDType) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals the JSON data into the IfID.

func (*IFIDType) UnmarshalText added in v0.4.0

func (ifid *IFIDType) UnmarshalText(text []byte) error

UnmarshalText unmarshals the text into the IfID.

Jump to

Keyboard shortcuts

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