pub enum WelcomeError<StorageError> {
Show 23 variants
GroupSecrets(GroupSecretsError),
PrivateInitKeyNotFound,
LibraryError(LibraryError),
CiphersuiteMismatch,
GroupInfo(GroupInfoError),
JoinerSecretNotFound,
MissingRatchetTree,
ConfirmationTagMismatch,
InvalidGroupInfoSignature,
UnsupportedMlsVersion,
UnsupportedCapability,
UnknownSender,
NotAWelcomeMessage,
MalformedWelcomeMessage,
UnableToDecrypt,
UnsupportedExtensions,
Psk(PskError),
NoMatchingEncryptionKey,
NoMatchingKeyPackage,
PublicTreeError(PublicTreeError),
PublicGroupError(CreationFromExternalError<StorageError>),
LeafNodeValidation(LeafNodeValidationError),
StorageError(StorageError),
}
Expand description
Welcome error
Variants§
GroupSecrets(GroupSecretsError)
See GroupSecretsError
for more details.
PrivateInitKeyNotFound
Private part of init_key
not found in key store.
LibraryError(LibraryError)
See LibraryError
for more details.
CiphersuiteMismatch
Ciphersuites in Welcome and key package bundle don’t match.
GroupInfo(GroupInfoError)
See GroupInfoError
for more details.
JoinerSecretNotFound
No joiner secret found in the Welcome message.
MissingRatchetTree
No ratchet tree available to build initial tree after receiving a Welcome message.
ConfirmationTagMismatch
The computed confirmation tag does not match the expected one.
InvalidGroupInfoSignature
The signature on the GroupInfo is not valid.
UnsupportedMlsVersion
We don’t support the version of the group we are trying to join.
UnsupportedCapability
We don’t support all capabilities of the group.
UnknownSender
Sender not found in tree.
NotAWelcomeMessage
The provided message is not a Welcome message.
MalformedWelcomeMessage
Malformed Welcome message.
UnableToDecrypt
Could not decrypt the Welcome message.
UnsupportedExtensions
Unsupported extensions found in the KeyPackage of another member.
Psk(PskError)
See PskError
for more details.
NoMatchingEncryptionKey
No matching encryption key was found in the key store.
NoMatchingKeyPackage
No matching key package was found in the key store.
PublicTreeError(PublicTreeError)
This error indicates the public tree is invalid. See PublicTreeError
for more details.
PublicGroupError(CreationFromExternalError<StorageError>)
This error indicates the public tree is invalid. See
CreationFromExternalError
for more details.
LeafNodeValidation(LeafNodeValidationError)
This error indicates the leaf node is invalid. See LeafNodeValidationError
for more details.
StorageError(StorageError)
This error indicates that an error occurred while reading or writing from/to storage.
Trait Implementations§
Source§impl<StorageError: Clone> Clone for WelcomeError<StorageError>
impl<StorageError: Clone> Clone for WelcomeError<StorageError>
Source§fn clone(&self) -> WelcomeError<StorageError>
fn clone(&self) -> WelcomeError<StorageError>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<StorageError: Debug> Debug for WelcomeError<StorageError>
impl<StorageError: Debug> Debug for WelcomeError<StorageError>
Source§impl<StorageError> Display for WelcomeError<StorageError>where
CreationFromExternalError<StorageError>: Display,
impl<StorageError> Display for WelcomeError<StorageError>where
CreationFromExternalError<StorageError>: Display,
Source§impl<StorageError> Error for WelcomeError<StorageError>
impl<StorageError> Error for WelcomeError<StorageError>
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<StorageError> From<CreationFromExternalError<StorageError>> for WelcomeError<StorageError>
impl<StorageError> From<CreationFromExternalError<StorageError>> for WelcomeError<StorageError>
Source§fn from(source: CreationFromExternalError<StorageError>) -> Self
fn from(source: CreationFromExternalError<StorageError>) -> Self
Source§impl<StorageError> From<GroupInfoError> for WelcomeError<StorageError>
impl<StorageError> From<GroupInfoError> for WelcomeError<StorageError>
Source§fn from(source: GroupInfoError) -> Self
fn from(source: GroupInfoError) -> Self
Source§impl<StorageError> From<GroupSecretsError> for WelcomeError<StorageError>
impl<StorageError> From<GroupSecretsError> for WelcomeError<StorageError>
Source§fn from(source: GroupSecretsError) -> Self
fn from(source: GroupSecretsError) -> Self
Source§impl<StorageError> From<LeafNodeValidationError> for WelcomeError<StorageError>
impl<StorageError> From<LeafNodeValidationError> for WelcomeError<StorageError>
Source§fn from(source: LeafNodeValidationError) -> Self
fn from(source: LeafNodeValidationError) -> Self
Source§impl<StorageError> From<LibraryError> for WelcomeError<StorageError>
impl<StorageError> From<LibraryError> for WelcomeError<StorageError>
Source§fn from(source: LibraryError) -> Self
fn from(source: LibraryError) -> Self
Source§impl<StorageError> From<PskError> for WelcomeError<StorageError>
impl<StorageError> From<PskError> for WelcomeError<StorageError>
Source§impl<StorageError> From<PublicTreeError> for WelcomeError<StorageError>
impl<StorageError> From<PublicTreeError> for WelcomeError<StorageError>
Source§fn from(source: PublicTreeError) -> Self
fn from(source: PublicTreeError) -> Self
Source§impl<StorageError: PartialEq> PartialEq for WelcomeError<StorageError>
impl<StorageError: PartialEq> PartialEq for WelcomeError<StorageError>
impl<StorageError> StructuralPartialEq for WelcomeError<StorageError>
Auto Trait Implementations§
impl<StorageError> Freeze for WelcomeError<StorageError>where
StorageError: Freeze,
impl<StorageError> RefUnwindSafe for WelcomeError<StorageError>where
StorageError: RefUnwindSafe,
impl<StorageError> Send for WelcomeError<StorageError>where
StorageError: Send,
impl<StorageError> Sync for WelcomeError<StorageError>where
StorageError: Sync,
impl<StorageError> Unpin for WelcomeError<StorageError>where
StorageError: Unpin,
impl<StorageError> UnwindSafe for WelcomeError<StorageError>where
StorageError: UnwindSafe,
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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