#[non_exhaustive]pub enum OidcError {
Oidc(Error),
Discovery(OauthDiscoveryError),
NoRegistrationSupport,
NotRegistered,
MissingDeviceId,
NotAuthenticated,
AuthorizationCode(OauthAuthorizationCodeError),
RefreshToken(BasicRequestTokenError<HttpClientError<Error>>),
Logout(OauthTokenRevocationError),
Url(ParseError),
LockError(CrossProcessRefreshLockError),
UnknownError(Box<dyn Error + Send + Sync>),
}
experimental-oidc
only.Expand description
All errors that can occur when using the OpenID Connect API.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Oidc(Error)
An error occurred when interacting with the provider.
Discovery(OauthDiscoveryError)
An error occurred when discovering the authorization server’s issuer.
NoRegistrationSupport
The OpenID Connect Provider doesn’t support dynamic client registration.
The provider probably offers another way to register clients.
NotRegistered
The client has not registered while the operation requires it.
MissingDeviceId
The device ID was not returned by the homeserver after login.
NotAuthenticated
The client is not authenticated while the request requires it.
AuthorizationCode(OauthAuthorizationCodeError)
An error occurred using the OAuth 2.0 authorization code grant.
RefreshToken(BasicRequestTokenError<HttpClientError<Error>>)
An error occurred interacting with the OAuth 2.0 authorization server while refreshing the access token.
Logout(OauthTokenRevocationError)
An error occurred revoking an OAuth 2.0 access token.
Url(ParseError)
An error occurred parsing a URL.
LockError(CrossProcessRefreshLockError)
An error occurred caused by the cross-process locks.
UnknownError(Box<dyn Error + Send + Sync>)
An unknown error occurred.
Trait Implementations§
Source§impl Error for OidcError
impl Error for OidcError
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<CrossProcessRefreshLockError> for OidcError
impl From<CrossProcessRefreshLockError> for OidcError
Source§fn from(source: CrossProcessRefreshLockError) -> Self
fn from(source: CrossProcessRefreshLockError) -> Self
Source§impl From<OauthAuthorizationCodeError> for OidcError
impl From<OauthAuthorizationCodeError> for OidcError
Source§fn from(source: OauthAuthorizationCodeError) -> Self
fn from(source: OauthAuthorizationCodeError) -> Self
Source§impl From<OauthDiscoveryError> for OidcError
impl From<OauthDiscoveryError> for OidcError
Source§fn from(source: OauthDiscoveryError) -> Self
fn from(source: OauthDiscoveryError) -> Self
Source§impl From<OauthTokenRevocationError> for OidcError
impl From<OauthTokenRevocationError> for OidcError
Source§fn from(source: OauthTokenRevocationError) -> Self
fn from(source: OauthTokenRevocationError) -> Self
Source§impl From<OidcError> for DeviceAuthorizationOauthError
Available on crate feature e2e-encryption
and non-WebAssembly only.
impl From<OidcError> for DeviceAuthorizationOauthError
e2e-encryption
and non-WebAssembly only.Auto Trait Implementations§
impl !Freeze for OidcError
impl !RefUnwindSafe for OidcError
impl Send for OidcError
impl Sync for OidcError
impl Unpin for OidcError
impl !UnwindSafe for OidcError
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> CompatExt for T
impl<T> CompatExt for T
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
Source§fn consume_handle(handle: Handle) -> Arc<T>
fn consume_handle(handle: Handle) -> Arc<T>
Arc<>
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,
§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> 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