[][src]Enum httpbis::Error

pub enum Error {
    IoError(Error),
    TlsError(Error),
    CodeError(ErrorCode),
    RstStreamReceived(ErrorCode),
    AddrResolvedToEmptyList,
    AddrResolvedToMoreThanOneAddr(Vec<SocketAddr>),
    InvalidFrame(String),
    CompressionError(DecoderError),
    WindowSizeOverflow,
    UnknownStreamId,
    UnableToConnect,
    MalformedResponse,
    ConnectionTimeout,
    Shutdown,
    HandlerPanicked(String),
    ParseFrameError(ParseFrameError),
    InternalError(String),
    NotImplemented(&'static str),
    User(String),
    StdError(Box<dyn std_Error + Sync + Send + 'static>),
    ClientDied(Option<Arc<Error>>),
    ClientDiedAndReconnectFailed,
    ClientControllerDied,
    ChannelDied,
    ConnDied,
    ClientPanicked(String),
    ClientCompletedWithoutError,
    SendError(SendError),
    StreamDead(StreamDead),
    CallerDied,
    EofFromStream,
    ExpectingContinuationGot(RawHttpFrameType),
    ExpectingContinuationGotDifferentStreamId(StreamIdStreamId),
    ContinuationFrameWithoutHeaders,
    InitiatedStreamWithServerIdFromClient(StreamId),
    StreamIdLeExistingStream(StreamIdStreamId),
    FailedToSendReqToDumpState,
    OneshotCancelled,
    StreamInWindowOverflow(StreamIdi32u32),
    ConnInWindowOverflow(i32u32),
    PingAckOpaqueDataMismatch(u64u64),
    GoawayAfterGoaway,
    SettingsAckWithoutSettingsSent,
    Goaway,
    GoawayReceived,
    PullStreamDied,
    PayloadTooLarge(u32u32),
    RequestIsMadeUsingHttp1,
    ListenAddrNotSpecified,
}

An enum representing errors that can arise when performing operations involving an HTTP/2 connection.

Variants

IoError(Error)

The underlying IO layer raised an error

TlsError(Error)

TLS error.

CodeError(ErrorCode)

Error code error.

RstStreamReceived(ErrorCode)

RST_STREAM received.

AddrResolvedToEmptyList

Address resolved to empty list.

AddrResolvedToMoreThanOneAddr(Vec<SocketAddr>)

Address resolved to more than one address.

InvalidFrame(String)

The HTTP/2 connection received an invalid HTTP/2 frame

CompressionError(DecoderError)

The HPACK decoder was unable to decode a header chunk and raised an error. Any decoder error is fatal to the HTTP/2 connection as it means that the decoder contexts will be out of sync.

WindowSizeOverflow

Indicates that the local peer has discovered an overflow in the size of one of the connection flow control window, which is a connection error.

UnknownStreamId

Unknown stream id.

UnableToConnect

Cannot connect.

MalformedResponse

Malformed response.

ConnectionTimeout

Connection timed out.

Shutdown

Shutdown of local client or server

HandlerPanicked(String)

Request handler panicked.

ParseFrameError(ParseFrameError)

Failed to parse frame.

InternalError(String)

Generic internal error.

NotImplemented(&'static str)

Something is not implemented

User(String)

User error

StdError(Box<dyn std_Error + Sync + Send + 'static>)

Std error

ClientDied(Option<Arc<Error>>)

Client died

ClientDiedAndReconnectFailed

Client died, reconnect failed

ClientControllerDied

Client controller died.

ChannelDied

Channel died.

ConnDied

Connection died.

ClientPanicked(String)

Client panicked.

ClientCompletedWithoutError

Client completed without error.

SendError(SendError)

Send failed.

StreamDead(StreamDead)

Stream dead.

CallerDied

Called died.

EofFromStream

End of stream.

ExpectingContinuationGot(RawHttpFrameType)

Expecting CONTINUATION frame.

ExpectingContinuationGotDifferentStreamId(StreamIdStreamId)

Expecting CONTINUATION frame with different stream id.

ContinuationFrameWithoutHeaders

CONTINUATION frame without headers.

InitiatedStreamWithServerIdFromClient(StreamId)

Wrong stream id.

StreamIdLeExistingStream(StreamIdStreamId)

Wrong stream id.

FailedToSendReqToDumpState

Failed to send request to dump state.

OneshotCancelled

Need something better.

StreamInWindowOverflow(StreamIdi32u32)

Stream id windows overflow.

ConnInWindowOverflow(i32u32)

Connection in windows overflow.

PingAckOpaqueDataMismatch(u64u64)

Ping response wrong payload.

GoawayAfterGoaway

Goaway after goaway.

SettingsAckWithoutSettingsSent

Got SETTINGS ack without SETTINGS sent.

Goaway

GOAWAY

GoawayReceived

Received GOAWAY

PullStreamDied

Stream died.

PayloadTooLarge(u32u32)

Payload too large.

RequestIsMadeUsingHttp1

Request is made using HTTP/1

ListenAddrNotSpecified

Listen address is not specified.

Trait Implementations

impl Debug for Error[src]

impl Display for Error[src]

impl Error for Error[src]

impl From<Error> for Error[src]

Implement the trait that allows us to automatically convert io::Errors into an HttpError by wrapping the given io::Error into an HttpError::IoError variant.

impl From<Error> for Error[src]

impl From<SendError> for Error[src]

impl From<StreamDead> for Error[src]

impl<F> From<Timeout<F>> for Error[src]

impl From<Void> for Error[src]

Auto Trait Implementations

impl !RefUnwindSafe for Error

impl Send for Error

impl Sync for Error

impl Unpin for Error

impl !UnwindSafe for Error

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.