pub enum OlmError {
EventError(EventError),
JsonError(Error),
SessionCreation(SessionCreationError),
SessionExport(SessionExportError),
Store(CryptoStoreError),
SessionWedged(OwnedUserId, Curve25519PublicKey),
ReplayedMessage(OwnedUserId, Curve25519PublicKey),
MissingSession,
SessionRecipientCollectionError(SessionRecipientCollectionError),
}
Available on crate feature
e2e-encryption
only.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.
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)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<CryptoStoreError> for OlmError
impl From<CryptoStoreError> for OlmError
Source§fn from(source: CryptoStoreError) -> OlmError
fn from(source: CryptoStoreError) -> OlmError
Converts to this type from the input type.
Source§impl From<EventError> for OlmError
impl From<EventError> for OlmError
Source§fn from(source: EventError) -> OlmError
fn from(source: EventError) -> OlmError
Converts to this type from the input type.
Source§impl From<SessionCreationError> for OlmError
impl From<SessionCreationError> for OlmError
Source§fn from(source: SessionCreationError) -> OlmError
fn from(source: SessionCreationError) -> OlmError
Converts to this type from the input type.
Source§impl From<SessionExportError> for OlmError
impl From<SessionExportError> for OlmError
Source§fn from(source: SessionExportError) -> OlmError
fn from(source: SessionExportError) -> OlmError
Converts to this type from the input type.
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
Mutably borrows from an owned value. Read more
§impl<T> CompatExt for T
impl<T> CompatExt for T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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>
Consume a handle, getting back the initial
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>
Converts
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>
Converts
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