Enum secio::SecioError[][src]

pub enum SecioError {
    IoError(IoError),
    ProtobufError(DecodeError),
    HandshakeParsingFailure,
    NoSupportIntersection,
    NonceGenerationFailed,
    EphemeralKeyGenerationFailed,
    SigningFailure,
    SignatureVerificationFailed,
    SecretGenerationFailed,
    NonceVerificationFailed,
    CipherError(LoopError),
    FrameTooShort,
    HmacNotMatching,
    InvalidProposition(&'static str),
    // some variants omitted
}

Error at the SECIO layer communication.

Variants

IoError(IoError)

I/O error.

ProtobufError(DecodeError)

Protocol buffer error.

HandshakeParsingFailure

Failed to parse one of the handshake protobuf messages.

NoSupportIntersection

There is no protocol supported by both the local and remote hosts.

NonceGenerationFailed

Failed to generate nonce.

EphemeralKeyGenerationFailed

Failed to generate ephemeral key.

SigningFailure

Failed to sign a message with our local private key.

SignatureVerificationFailed

The signature of the exchange packet doesn’t verify the remote public key.

SecretGenerationFailed

Failed to generate the secret shared key from the ephemeral key.

NonceVerificationFailed

The final check of the handshake failed.

CipherError(LoopError)

Error with block cipher.

FrameTooShort

The received frame was of invalid length.

HmacNotMatching

The hashes of the message didn’t match.

InvalidProposition(&'static str)

We received an invalid proposition from remote.

Trait Implementations

impl Debug for SecioError[src]

impl Display for SecioError[src]

impl Error for SecioError[src]

impl From<DecodeError> for SecioError[src]

impl From<Error> for SecioError[src]

impl From<LoopError> for SecioError[src]

Auto Trait Implementations

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> Same<T> for T

type Output = T

Should always be Self

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.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,