quic-go: github.com/lucas-clemente/quic-go/internal/qerr Index | Files

package qerr

import "github.com/lucas-clemente/quic-go/internal/qerr"


Package Files

error_codes.go quic_error.go

type ErrorCode Uses

type ErrorCode uint64

ErrorCode can be used as a normal error without reason.

const (
    NoError                 ErrorCode = 0x0
    InternalError           ErrorCode = 0x1
    ConnectionRefused       ErrorCode = 0x2
    FlowControlError        ErrorCode = 0x3
    StreamLimitError        ErrorCode = 0x4
    StreamStateError        ErrorCode = 0x5
    FinalSizeError          ErrorCode = 0x6
    FrameEncodingError      ErrorCode = 0x7
    TransportParameterError ErrorCode = 0x8
    ConnectionIDLimitError  ErrorCode = 0x9
    ProtocolViolation       ErrorCode = 0xa
    InvalidToken            ErrorCode = 0xb
    ApplicationError        ErrorCode = 0xc
    CryptoBufferExceeded    ErrorCode = 0xd

The error codes defined by QUIC

func (ErrorCode) Error Uses

func (e ErrorCode) Error() string

func (ErrorCode) Message Uses

func (e ErrorCode) Message() string

Message is a description of the error. It only returns a non-empty string for crypto errors.

func (ErrorCode) String Uses

func (e ErrorCode) String() string

type QuicError Uses

type QuicError struct {
    ErrorCode    ErrorCode
    FrameType    uint64 // only valid if this not an application error
    ErrorMessage string
    // contains filtered or unexported fields

A QuicError consists of an error code plus a error reason

func NewApplicationError Uses

func NewApplicationError(errorCode ErrorCode, errorMessage string) *QuicError

NewApplicationError creates a new QuicError instance for an application error

func NewCryptoError Uses

func NewCryptoError(tlsAlert uint8, errorMessage string) *QuicError

NewCryptoError create a new QuicError instance for a crypto error

func NewError Uses

func NewError(errorCode ErrorCode, errorMessage string) *QuicError

NewError creates a new QuicError instance

func NewErrorWithFrameType Uses

func NewErrorWithFrameType(errorCode ErrorCode, frameType uint64, errorMessage string) *QuicError

NewErrorWithFrameType creates a new QuicError instance for a specific frame type

func NewTimeoutError Uses

func NewTimeoutError(errorMessage string) *QuicError

NewTimeoutError creates a new QuicError instance for a timeout error

func ToQuicError Uses

func ToQuicError(err error) *QuicError

ToQuicError converts an arbitrary error to a QuicError. It leaves QuicErrors unchanged, and properly handles `ErrorCode`s.

func (*QuicError) Error Uses

func (e *QuicError) Error() string

func (*QuicError) IsApplicationError Uses

func (e *QuicError) IsApplicationError() bool

IsApplicationError says if this error is an application error

func (*QuicError) IsCryptoError Uses

func (e *QuicError) IsCryptoError() bool

IsCryptoError says if this error is a crypto error

func (*QuicError) Temporary Uses

func (e *QuicError) Temporary() bool

Temporary says if the error is temporary.

func (*QuicError) Timeout Uses

func (e *QuicError) Timeout() bool

Timeout says if this error is a timeout.

Package qerr imports 3 packages (graph) and is imported by 15 packages. Updated 2020-07-07. Refresh now. Tools for package owners.