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,
}
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.
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) -> OlmError
fn from(source: CryptoStoreError) -> OlmError
Source§impl From<EventError> for OlmError
impl From<EventError> for OlmError
Source§fn from(source: EventError) -> OlmError
fn from(source: EventError) -> OlmError
Source§impl From<SessionCreationError> for OlmError
impl From<SessionCreationError> for OlmError
Source§fn from(source: SessionCreationError) -> OlmError
fn from(source: SessionCreationError) -> OlmError
Source§impl From<SessionExportError> for OlmError
impl From<SessionExportError> for OlmError
Source§fn from(source: SessionExportError) -> OlmError
fn from(source: SessionExportError) -> OlmError
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync 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