pub enum OlmError {
EventError(EventError),
JsonError(Error),
SessionCreation(SessionCreationError),
SessionExport(SessionExportError),
Store(CryptoStoreError),
SessionWedged(OwnedUserId, Curve25519PublicKey),
ReplayedMessage(OwnedUserId, Curve25519PublicKey),
MissingSession,
SessionRecipientCollectionError(SessionRecipientCollectionError),
Withheld(WithheldCode),
UnverifiedSenderDevice,
}
Expand description
Error representing a failure during a device to device cryptographic operation.
Variants§
EventError(EventError)
The event that should have been decrypted is malformed.
JsonError(Error)
The received decrypted event couldn’t be deserialized.
SessionCreation(SessionCreationError)
The received room key couldn’t be converted into a valid Megolm session.
SessionExport(SessionExportError)
The room key that should be exported can’t be converted into a
m.forwarded_room_key
event.
Store(CryptoStoreError)
The storage layer returned an error.
SessionWedged(OwnedUserId, Curve25519PublicKey)
The session with a device has become corrupted.
ReplayedMessage(OwnedUserId, Curve25519PublicKey)
An Olm message got replayed while the Olm ratchet has already moved forward.
MissingSession
Encryption failed because the device does not have a valid Olm session with us.
SessionRecipientCollectionError(SessionRecipientCollectionError)
Encryption failed due to an error collecting the recipient devices.
Withheld(WithheldCode)
Encrypted content is withheld from this device
UnverifiedSenderDevice
Refused to decrypt because the sender was not verified or did not meet the required VerificationLevel.
Trait Implementations§
Source§impl Error for OlmError
impl Error for OlmError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§impl From<CryptoStoreError> for OlmError
impl From<CryptoStoreError> for OlmError
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Source§impl From<Error> for OlmError
impl From<Error> for OlmError
Source§fn from(source: SerdeError) -> Self
fn from(source: SerdeError) -> Self
Source§impl From<EventError> for OlmError
impl From<EventError> for OlmError
Source§fn from(source: EventError) -> Self
fn from(source: EventError) -> Self
Source§impl From<SessionCreationError> for OlmError
impl From<SessionCreationError> for OlmError
Source§fn from(source: SessionCreationError) -> Self
fn from(source: SessionCreationError) -> Self
Source§impl From<SessionExportError> for OlmError
impl From<SessionExportError> for OlmError
Source§fn from(source: SessionExportError) -> Self
fn from(source: SessionExportError) -> Self
Auto Trait Implementations§
impl Freeze for OlmError
impl !RefUnwindSafe for OlmError
impl Send for OlmError
impl Sync for OlmError
impl Unpin for OlmError
impl !UnwindSafe for OlmError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CompatExt for T
impl<T> CompatExt for T
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
Source§impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
impl<T, W> HasTypeWitness<W> for Twhere
W: MakeTypeWitness<Arg = T>,
T: ?Sized,
Source§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more