Enum rustls::TLSError [−][src]
pub enum TLSError { InappropriateMessage { expect_types: Vec<ContentType>, got_type: ContentType, }, InappropriateHandshakeMessage { expect_types: Vec<HandshakeType>, got_type: HandshakeType, }, CorruptMessage, CorruptMessagePayload(ContentType), NoCertificatesPresented, DecryptError, PeerIncompatibleError(String), PeerMisbehavedError(String), AlertReceived(AlertDescription), WebPKIError(Error), InvalidSCT(Error), General(String), FailedToGetCurrentTime, HandshakeNotComplete, PeerSentOversizedRecord, NoApplicationProtocol, }
rustls reports protocol errors using this type.
Variants
We received a TLS message that isn’t valid right now.
expect_types
lists the message types we can expect right now.
got_type
is the type we found. This error is typically
caused by a buggy TLS stack (the peer or this one), a broken
network, or an attack.
Fields of InappropriateMessage
We received a TLS handshake message that isn’t valid right now.
expect_types
lists the handshake message types we can expect
right now. got_type
is the type we found.
Fields of InappropriateHandshakeMessage
expect_types: Vec<HandshakeType>
Which handshake type we expected
got_type: HandshakeType
What handshake type we received
The peer sent us a syntactically incorrect TLS message.
CorruptMessagePayload(ContentType)
The peer sent us a TLS message with invalid contents.
The peer didn’t give us any certificates.
We couldn’t decrypt a message. This is invariably fatal.
PeerIncompatibleError(String)
The peer doesn’t support a protocol version/feature we require. The parameter gives a hint as to what version/feature it is.
PeerMisbehavedError(String)
The peer deviated from the standard TLS protocol. The parameter gives a hint where.
AlertReceived(AlertDescription)
We received a fatal alert. This means the peer is unhappy.
WebPKIError(Error)
The presented certificate chain is invalid.
InvalidSCT(Error)
The presented SCT(s) were invalid.
General(String)
A catch-all error for unlikely errors.
We failed to figure out what time it currently is.
This function doesn’t work until the TLS handshake is complete.
The peer sent an oversized record/fragment.
An incoming connection did not support any known application protocol.
Trait Implementations
impl Clone for TLSError
[src][+]
impl Debug for TLSError
[src][+]
impl Display for TLSError
[src][+]
impl Error for TLSError
[src][+]
impl PartialEq<TLSError> for TLSError
[src][+]
impl StructuralPartialEq for TLSError
[src]
Auto Trait Implementations
impl RefUnwindSafe for TLSError
impl Send for TLSError
impl Sync for TLSError
impl Unpin for TLSError
impl UnwindSafe for TLSError
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T> ToString for T where
T: Display + ?Sized,
[src][+]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,