pub enum SignalProtocolError {
Show 35 variants
InvalidArgument(String),
InvalidState(&'static str, String),
InvalidProtobufEncoding,
CiphertextMessageTooShort(usize),
LegacyCiphertextVersion(u8),
UnrecognizedCiphertextVersion(u8),
UnrecognizedMessageVersion(u32),
NoKeyTypeIdentifier,
BadKeyType(u8),
BadKeyLength(KeyType, usize),
InvalidKeyAgreement,
SignatureValidationFailed,
UntrustedIdentity(ProtocolAddress),
InvalidPreKeyId,
InvalidSignedPreKeyId,
InvalidKyberPreKeyId,
InvalidMacKeyLength(usize),
NoSenderKeyState {
distribution_id: Uuid,
},
InvalidProtocolAddress {
name: String,
device_id: u32,
},
SessionNotFound(ProtocolAddress),
InvalidSessionStructure(&'static str),
InvalidSenderKeySession {
distribution_id: Uuid,
},
InvalidRegistrationId(ProtocolAddress, u32),
DuplicatedMessage(u32, u32),
InvalidMessage(CiphertextMessageType, &'static str),
FfiBindingError(String),
ApplicationCallbackError(&'static str, Box<dyn Error + UnwindSafe + Send + Sync>),
InvalidSealedSenderMessage(String),
UnknownSealedSenderVersion(u8),
SealedSenderSelfSend,
UnknownSealedSenderServerCertificateId(u32),
BadKEMKeyType(u8),
WrongKEMKeyType(u8, u8),
BadKEMKeyLength(KeyType, usize),
BadKEMCiphertextLength(KeyType, usize),
}Variants§
InvalidArgument(String)
invalid argument: {0}
InvalidState(&'static str, String)
invalid state for call to {0} to succeed: {1}
InvalidProtobufEncoding
protobuf encoding was invalid
CiphertextMessageTooShort(usize)
ciphertext serialized bytes were too short <{0}>
LegacyCiphertextVersion(u8)
ciphertext version was too old <{0}>
UnrecognizedCiphertextVersion(u8)
ciphertext version was unrecognized <{0}>
UnrecognizedMessageVersion(u32)
unrecognized message version <{0}>
NoKeyTypeIdentifier
no key type identifier
BadKeyType(u8)
bad key type <{0:#04x}>
BadKeyLength(KeyType, usize)
bad key length <{1}> for key with type <{0}>
InvalidKeyAgreement
invalid key agreement
SignatureValidationFailed
invalid signature detected
UntrustedIdentity(ProtocolAddress)
untrusted identity for address {0}
InvalidPreKeyId
invalid prekey identifier
InvalidSignedPreKeyId
invalid signed prekey identifier
InvalidKyberPreKeyId
invalid Kyber prekey identifier
InvalidMacKeyLength(usize)
invalid MAC key length <{0}>
NoSenderKeyState
missing sender key state for distribution ID {distribution_id}
InvalidProtocolAddress
protocol address is invalid: {name}.{device_id}
SessionNotFound(ProtocolAddress)
session with {0} not found
InvalidSessionStructure(&'static str)
invalid session: {0}
InvalidSenderKeySession
invalid sender key session with distribution ID {distribution_id}
InvalidRegistrationId(ProtocolAddress, u32)
session for {0} has invalid registration ID {1:X}
DuplicatedMessage(u32, u32)
message with old counter {0} / {1}
InvalidMessage(CiphertextMessageType, &'static str)
invalid {0:?} message: {1}
FfiBindingError(String)
error while invoking an ffi callback: {0}
ApplicationCallbackError(&'static str, Box<dyn Error + UnwindSafe + Send + Sync>)
error in method call ‘{0}’: {1}
InvalidSealedSenderMessage(String)
invalid sealed sender message: {0}
UnknownSealedSenderVersion(u8)
unknown sealed sender message version {0}
SealedSenderSelfSend
self send of a sealed sender message
UnknownSealedSenderServerCertificateId(u32)
unknown server certificate ID: {0}
BadKEMKeyType(u8)
bad KEM key type <{0:#04x}>
WrongKEMKeyType(u8, u8)
unexpected KEM key type <{0:#04x}> (expected <{1:#04x}>)
BadKEMKeyLength(KeyType, usize)
bad KEM key length <{1}> for key with type <{0}>
BadKEMCiphertextLength(KeyType, usize)
bad KEM ciphertext length <{1}> for key with type <{0}>
Implementations§
Source§impl SignalProtocolError
impl SignalProtocolError
Sourcepub fn for_application_callback<E>(
method: &'static str,
) -> impl FnOnce(E) -> SignalProtocolError
pub fn for_application_callback<E>( method: &'static str, ) -> impl FnOnce(E) -> SignalProtocolError
Convenience factory for SignalProtocolError::ApplicationCallbackError.
Trait Implementations§
Source§impl Debug for SignalProtocolError
impl Debug for SignalProtocolError
Source§impl Display for SignalProtocolError
impl Display for SignalProtocolError
Source§impl Error for SignalProtocolError
impl Error for SignalProtocolError
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<CurveError> for SignalProtocolError
impl From<CurveError> for SignalProtocolError
Source§fn from(e: CurveError) -> SignalProtocolError
fn from(e: CurveError) -> SignalProtocolError
Source§impl From<InvalidSessionError> for SignalProtocolError
impl From<InvalidSessionError> for SignalProtocolError
Source§fn from(e: InvalidSessionError) -> SignalProtocolError
fn from(e: InvalidSessionError) -> SignalProtocolError
Source§impl From<SignalProtocolError> for InvalidKeyError
impl From<SignalProtocolError> for InvalidKeyError
Source§fn from(source: SignalProtocolError) -> Self
fn from(source: SignalProtocolError) -> Self
Source§impl From<SignalProtocolError> for MessageSenderError
impl From<SignalProtocolError> for MessageSenderError
Source§fn from(source: SignalProtocolError) -> Self
fn from(source: SignalProtocolError) -> Self
Source§impl From<SignalProtocolError> for ProvisioningError
impl From<SignalProtocolError> for ProvisioningError
Source§fn from(source: SignalProtocolError) -> Self
fn from(source: SignalProtocolError) -> Self
Source§impl From<SignalProtocolError> for ServiceError
impl From<SignalProtocolError> for ServiceError
Source§fn from(source: SignalProtocolError) -> Self
fn from(source: SignalProtocolError) -> Self
Auto Trait Implementations§
impl Freeze for SignalProtocolError
impl !RefUnwindSafe for SignalProtocolError
impl Send for SignalProtocolError
impl Sync for SignalProtocolError
impl Unpin for SignalProtocolError
impl UnwindSafe for SignalProtocolError
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> Classify for T
impl<T> Classify for T
type Classified = T
fn classify(self) -> T
§impl<T> Declassify for T
impl<T> Declassify for T
type Declassified = T
fn declassify(self) -> T
§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> 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 more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.