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 + Sync + Send>),
InvalidLockGeneration(String),
}
e2e-encryption
only.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 + Sync + Send>)
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)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§impl From<CryptoStoreError> for CrossProcessRefreshLockError
impl From<CryptoStoreError> for CrossProcessRefreshLockError
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Source§impl From<CryptoStoreError> for DehydrationError
impl From<CryptoStoreError> for DehydrationError
Source§fn from(source: CryptoStoreError) -> DehydrationError
fn from(source: CryptoStoreError) -> DehydrationError
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(source: CryptoStoreError) -> Error
fn from(source: CryptoStoreError) -> Error
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(error: CryptoStoreError) -> Self
fn from(error: CryptoStoreError) -> Self
Source§impl From<CryptoStoreError> for Error
impl From<CryptoStoreError> for Error
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Source§impl From<CryptoStoreError> for IndexeddbCryptoStoreError
impl From<CryptoStoreError> for IndexeddbCryptoStoreError
Source§fn from(source: CryptoStoreError) -> IndexeddbCryptoStoreError
fn from(source: CryptoStoreError) -> IndexeddbCryptoStoreError
Source§impl From<CryptoStoreError> for MegolmError
impl From<CryptoStoreError> for MegolmError
Source§fn from(source: CryptoStoreError) -> MegolmError
fn from(source: CryptoStoreError) -> MegolmError
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<CryptoStoreError> for RoomKeyImportError
impl From<CryptoStoreError> for RoomKeyImportError
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Source§impl From<CryptoStoreError> for ScanError
impl From<CryptoStoreError> for ScanError
Source§fn from(source: CryptoStoreError) -> ScanError
fn from(source: CryptoStoreError) -> ScanError
Source§impl From<CryptoStoreError> for SecretImportError
impl From<CryptoStoreError> for SecretImportError
Source§fn from(source: CryptoStoreError) -> SecretImportError
fn from(source: CryptoStoreError) -> SecretImportError
Source§impl From<CryptoStoreError> for SecretStorageError
impl From<CryptoStoreError> for SecretStorageError
Source§fn from(source: CryptoStoreError) -> Self
fn from(source: CryptoStoreError) -> Self
Source§impl From<CryptoStoreError> for SecretsBundleExportError
impl From<CryptoStoreError> for SecretsBundleExportError
Source§fn from(source: CryptoStoreError) -> SecretsBundleExportError
fn from(source: CryptoStoreError) -> SecretsBundleExportError
Source§impl From<CryptoStoreError> for SetRoomSettingsError
impl From<CryptoStoreError> for SetRoomSettingsError
Source§fn from(source: CryptoStoreError) -> SetRoomSettingsError
fn from(source: CryptoStoreError) -> SetRoomSettingsError
Source§impl From<CryptoStoreError> for SignatureError
impl From<CryptoStoreError> for SignatureError
Source§fn from(source: CryptoStoreError) -> SignatureError
fn from(source: CryptoStoreError) -> SignatureError
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(source: Error) -> CryptoStoreError
fn from(source: Error) -> CryptoStoreError
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(source: Error) -> CryptoStoreError
fn from(source: Error) -> CryptoStoreError
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(e: Error) -> CryptoStoreError
fn from(e: Error) -> CryptoStoreError
Source§impl From<Error> for CryptoStoreError
impl From<Error> for CryptoStoreError
Source§fn from(source: Error) -> CryptoStoreError
fn from(source: Error) -> CryptoStoreError
Source§impl From<IndexeddbCryptoStoreError> for CryptoStoreError
impl From<IndexeddbCryptoStoreError> for CryptoStoreError
Source§fn from(frm: IndexeddbCryptoStoreError) -> CryptoStoreError
fn from(frm: IndexeddbCryptoStoreError) -> CryptoStoreError
Source§impl From<Infallible> for CryptoStoreError
impl From<Infallible> for CryptoStoreError
Source§fn from(never: Infallible) -> CryptoStoreError
fn from(never: Infallible) -> CryptoStoreError
Source§impl From<PickleError> for CryptoStoreError
impl From<PickleError> for CryptoStoreError
Source§fn from(source: PickleError) -> CryptoStoreError
fn from(source: PickleError) -> CryptoStoreError
Source§impl From<SessionCreationError> for CryptoStoreError
impl From<SessionCreationError> for CryptoStoreError
Source§fn from(source: SessionCreationError) -> CryptoStoreError
fn from(source: SessionCreationError) -> CryptoStoreError
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
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>
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 moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string
, but without panic on OOM.