pub enum PqxdhError {
Show 21 variants
InboxNotFound,
NoContent,
Serialization(Error),
SystemTime(SystemTimeError),
MessageCreation(String),
Rpc(RpcError),
MessagesService(ClientError),
Crypto(String),
SessionNotFound,
InvalidContentType,
NoPrivateKeys,
NoInbox,
NotInitialMessage,
InvalidSender,
NotPqxdhMessage,
InboxAlreadyPublished,
ServiceNotPublished,
NoInboxSubscription,
KeyGeneration(String),
PqxdhProtocol(PqxdhError),
MessageService(MessageError),
}Expand description
Error type for PQXDH protocol operations
This error type wraps all possible errors that can occur during PQXDH protocol operations, providing structured error handling with proper error context and conversion from underlying error types.
§Error Categories
§Connection and Service Errors
InboxNotFound: Service provider inbox not availableServiceNotPublished: Service must be published firstNoInboxSubscription: Missing inbox subscriptionInboxAlreadyPublished: Inbox already exists
§Session Management Errors
SessionNotFound: No active session for given IDInvalidSender: Message from wrong sender (security issue)NotInitialMessage: Expected initial PQXDH message
§Cryptographic Errors
Crypto: General cryptographic operation failuresKeyGeneration: Key generation failuresPqxdhProtocol: Wire protocol PQXDH errors
§Message and Data Errors
InvalidContentType: Wrong message content typeNotPqxdhMessage: Expected PQXDH encrypted messageNoContent: Message missing contentMessageCreation: Failed to create message
§Infrastructure Errors
Rpc: RPC communication failuresMessagesService: Message service errorsSerialization: Postcard serialization errorsSystemTime: System time errors
Variants§
InboxNotFound
NoContent
Serialization(Error)
SystemTime(SystemTimeError)
MessageCreation(String)
Rpc(RpcError)
MessagesService(ClientError)
Crypto(String)
SessionNotFound
InvalidContentType
NoPrivateKeys
NoInbox
NotInitialMessage
InvalidSender
NotPqxdhMessage
InboxAlreadyPublished
ServiceNotPublished
NoInboxSubscription
KeyGeneration(String)
PqxdhProtocol(PqxdhError)
MessageService(MessageError)
Trait Implementations§
Source§impl Debug for PqxdhError
impl Debug for PqxdhError
Source§impl Display for PqxdhError
impl Display for PqxdhError
Source§impl Error for PqxdhError
impl Error for PqxdhError
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<ClientError> for PqxdhError
impl From<ClientError> for PqxdhError
Source§fn from(source: ClientError) -> Self
fn from(source: ClientError) -> Self
Converts to this type from the input type.
Source§impl From<Error> for PqxdhError
impl From<Error> for PqxdhError
Source§impl From<MessageError> for PqxdhError
impl From<MessageError> for PqxdhError
Source§fn from(source: MessageError) -> Self
fn from(source: MessageError) -> Self
Converts to this type from the input type.
Source§impl From<PqxdhError> for PqxdhError
impl From<PqxdhError> for PqxdhError
Source§fn from(source: PqxdhError) -> Self
fn from(source: PqxdhError) -> Self
Converts to this type from the input type.
Source§impl From<RpcError> for PqxdhError
impl From<RpcError> for PqxdhError
Source§impl From<SystemTimeError> for PqxdhError
impl From<SystemTimeError> for PqxdhError
Source§fn from(source: SystemTimeError) -> Self
fn from(source: SystemTimeError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl !Freeze for PqxdhError
impl !RefUnwindSafe for PqxdhError
impl Send for PqxdhError
impl Sync for PqxdhError
impl Unpin for PqxdhError
impl !UnwindSafe for PqxdhError
Blanket Implementations§
§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
For maximum effectiveness, this needs to be called as a method
to benefit from Rust’s automatic dereferencing of method
receivers.
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
§impl<T> Classify for T
impl<T> Classify for T
type Classified = T
fn classify(self) -> T
§impl<T> Classify for T
impl<T> Classify for T
type Classified = T
fn classify(self) -> T
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T> Declassify for T
impl<T> Declassify for T
type Declassified = T
fn declassify(self) -> T
§impl<T> Declassify for T
impl<T> Declassify for T
type Declassified = T
fn declassify(self) -> T
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§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>
§impl<E> InstrumentError for Ewhere
TracedError<E>: From<E>,
impl<E> InstrumentError for Ewhere
TracedError<E>: From<E>,
§type Instrumented = TracedError<E>
type Instrumented = TracedError<E>
The type of the wrapped error after instrumentation
§fn in_current_span(self) -> <E as InstrumentError>::Instrumented
fn in_current_span(self) -> <E as InstrumentError>::Instrumented
Instrument an Error by bundling it with a SpanTrace Read more
§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.