pub enum CryptoStoreError {
AccountUnset,
MismatchedAccount {
expected: (OwnedUserId, OwnedDeviceId),
got: (OwnedUserId, OwnedDeviceId),
},
Io(Error),
UnpicklingError,
Pickle(PickleError),
SessionCreation(SessionCreationError),
IdentifierValidation(Error),
Serialization(Error),
UnsupportedDatabaseVersion(usize, usize),
Backend(Box<dyn Error + Send + Sync>),
InvalidLockGeneration(String),
}
Expand description
The crypto store’s error type.
Variants§
AccountUnset
The account that owns the sessions, group sessions, and devices wasn’t found.
MismatchedAccount
The store doesn’t support multiple accounts and data from another device was discovered.
Fields
§
expected: (OwnedUserId, OwnedDeviceId)
The expected user/device id pair.
§
got: (OwnedUserId, OwnedDeviceId)
The user/device id pair that was loaded from the store.
Io(Error)
An IO error occurred.
UnpicklingError
Failed to decrypt an pickled object.
Pickle(PickleError)
Failed to decrypt an pickled object.
SessionCreation(SessionCreationError)
The received room key couldn’t be converted into a valid Megolm session.
IdentifierValidation(Error)
A Matrix identifier failed to be validated.
Serialization(Error)
The store failed to (de)serialize a data type.
UnsupportedDatabaseVersion(usize, usize)
The database format has changed in a backwards incompatible way.
Backend(Box<dyn Error + Send + Sync>)
A problem with the underlying database backend
InvalidLockGeneration(String)
An error due to an invalid generation in a cross-process locking scheme.
Implementations§
Trait Implementations§
Source§impl Debug for CryptoStoreError
impl Debug for CryptoStoreError
Source§impl Display for CryptoStoreError
impl Display for CryptoStoreError
Source§impl Error for CryptoStoreError
impl Error for CryptoStoreError
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 DehydrationError
impl From<CryptoStoreError> for DehydrationError
Source§fn from(source: CryptoStoreError) -> DehydrationError
fn from(source: CryptoStoreError) -> DehydrationError
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(source: CryptoStoreError) -> Error
fn from(source: CryptoStoreError) -> Error
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for MegolmError
impl From<CryptoStoreError> for MegolmError
Source§fn from(source: CryptoStoreError) -> MegolmError
fn from(source: CryptoStoreError) -> MegolmError
Converts to this type from the input type.
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<CryptoStoreError> for RoomKeyImportError
impl From<CryptoStoreError> for RoomKeyImportError
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for SecretImportError
impl From<CryptoStoreError> for SecretImportError
Source§fn from(source: CryptoStoreError) -> SecretImportError
fn from(source: CryptoStoreError) -> SecretImportError
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for SecretStorageError
impl From<CryptoStoreError> for SecretStorageError
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for SecretsBundleExportError
impl From<CryptoStoreError> for SecretsBundleExportError
Source§fn from(source: CryptoStoreError) -> SecretsBundleExportError
fn from(source: CryptoStoreError) -> SecretsBundleExportError
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for SetRoomSettingsError
impl From<CryptoStoreError> for SetRoomSettingsError
Source§fn from(source: CryptoStoreError) -> SetRoomSettingsError
fn from(source: CryptoStoreError) -> SetRoomSettingsError
Converts to this type from the input type.
Source§impl From<CryptoStoreError> for SignatureError
impl From<CryptoStoreError> for SignatureError
Source§fn from(source: CryptoStoreError) -> SignatureError
fn from(source: CryptoStoreError) -> SignatureError
Converts to this type from the input type.
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(source: Error) -> CryptoStoreError
fn from(source: Error) -> CryptoStoreError
Converts to this type from the input type.
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(source: Error) -> CryptoStoreError
fn from(source: Error) -> CryptoStoreError
Converts to this type from the input type.
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(e: Error) -> CryptoStoreError
fn from(e: Error) -> CryptoStoreError
Converts to this type from the input type.
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(source: Error) -> CryptoStoreError
fn from(source: Error) -> CryptoStoreError
Converts to this type from the input type.
Source§impl From<Infallible> for CryptoStoreError
impl From<Infallible> for CryptoStoreError
Source§fn from(never: Infallible) -> CryptoStoreError
fn from(never: Infallible) -> CryptoStoreError
Converts to this type from the input type.
Source§impl From<PickleError> for CryptoStoreError
impl From<PickleError> for CryptoStoreError
Source§fn from(source: PickleError) -> CryptoStoreError
fn from(source: PickleError) -> CryptoStoreError
Converts to this type from the input type.
Source§impl From<SessionCreationError> for CryptoStoreError
impl From<SessionCreationError> for CryptoStoreError
Source§fn from(source: SessionCreationError) -> CryptoStoreError
fn from(source: SessionCreationError) -> CryptoStoreError
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for CryptoStoreError
impl !RefUnwindSafe for CryptoStoreError
impl Send for CryptoStoreError
impl Sync for CryptoStoreError
impl Unpin for CryptoStoreError
impl !UnwindSafe for CryptoStoreError
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
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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