oauth2_types::errors

Enum ClientErrorCode

source
pub enum ClientErrorCode {
Show 26 variants InvalidRequest, InvalidClient, InvalidGrant, UnauthorizedClient, UnsupportedGrantType, AccessDenied, UnsupportedResponseType, InvalidScope, ServerError, TemporarilyUnavailable, InteractionRequired, LoginRequired, AccountSelectionRequired, ConsentRequired, InvalidRequestUri, InvalidRequestObject, RequestNotSupported, RequestUriNotSupported, RegistrationNotSupported, InvalidRedirectUri, InvalidClientMetadata, AuthorizationPending, SlowDown, ExpiredToken, UnsupportedTokenType, Unknown(String),
}
Expand description

Client error codes defined in OAuth2.0, OpenID Connect and their extensions.

Variants§

§

InvalidRequest

invalid_request

The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed.

From RFC6749.

§

InvalidClient

invalid_client

Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method).

From RFC6749.

§

InvalidGrant

invalid_grant

The provided authorization grant (e.g., authorization code, resource owner credentials) or refresh token is invalid, expired, revoked, does not match the redirection URI used in the authorization request, or was issued to another client.

From RFC6749.

§

UnauthorizedClient

unauthorized_client

The authenticated client is not authorized to use this authorization grant type.

From RFC6749.

§

UnsupportedGrantType

unsupported_grant_type

The authorization grant type is not supported by the authorization server.

From RFC6749.

§

AccessDenied

access_denied

The resource owner or authorization server denied the request.

From RFC6749.

§

UnsupportedResponseType

unsupported_response_type

The authorization server does not support obtaining an authorization code using this method.

From RFC6749.

§

InvalidScope

invalid_scope

The requested scope is invalid, unknown, malformed, or exceeds the scope granted by the resource owner.

From RFC6749.

§

ServerError

server_error

The authorization server encountered an unexpected condition that prevented it from fulfilling the request.

From RFC6749.

§

TemporarilyUnavailable

temporarily_unavailable

The authorization server is currently unable to handle the request due to a temporary overloading or maintenance of the server.

From RFC6749.

§

InteractionRequired

interaction_required

The authorization server requires end-user interaction of some form to proceed.

From OpenID Connect Core 1.0.

§

LoginRequired

login_required

The authorization server requires end-user authentication.

From OpenID Connect Core 1.0.

§

AccountSelectionRequired

account_selection_required

The end-user is required to select a session at the authorization server.

From OpenID Connect Core 1.0.

§

ConsentRequired

consent_required

The authorization server requires end-user consent.

From OpenID Connect Core 1.0.

§

InvalidRequestUri

invalid_request_uri

The request_uri in the authorization request returns an error or contains invalid data.

From OpenID Connect Core 1.0.

§

InvalidRequestObject

invalid_request_object

The request parameter contains an invalid request object.

From OpenID Connect Core 1.0.

§

RequestNotSupported

request_not_supported

The authorization server does not support use of the request parameter.

From OpenID Connect Core 1.0.

§

RequestUriNotSupported

request_uri_not_supported

The authorization server does not support use of the request_uri parameter.

From OpenID Connect Core 1.0.

§

RegistrationNotSupported

registration_not_supported

The authorization server does not support use of the registration parameter.

From OpenID Connect Core 1.0.

§

InvalidRedirectUri

invalid_redirect_uri

The value of one or more redirection URIs is invalid.

From RFC7591.

§

InvalidClientMetadata

invalid_client_metadata

The value of one of the client metadata fields is invalid and the server has rejected this request.

From RFC7591.

§

AuthorizationPending

authorization_pending

The authorization request is still pending as the end user hasn’t yet completed the user-interaction steps.

The client should repeat the access token request to the token endpoint (a process known as polling). Before each new request, the client must wait at least the number of seconds specified by the interval parameter of the device authorization response, or 5 seconds if none was provided, and respect any increase in the polling interval required by the ClientErrorCode::SlowDown error.

From RFC8628.

§

SlowDown

slow_down

A variant of ClientErrorCode::AuthorizationPending, the authorization request is still pending and polling should continue, but the interval must be increased by 5 seconds for this and all subsequent requests.

From RFC8628.

§

ExpiredToken

expired_token

The device_code has expired, and the device authorization session has concluded.

The client may commence a new device authorization request but should wait for user interaction before restarting to avoid unnecessary polling.

From RFC8628.

§

UnsupportedTokenType

unsupported_token_type

The authorization server does not support the revocation of the presented token type. That is, the client tried to revoke an access token on a server not supporting this feature.

From RFC7009.

§

Unknown(String)

Another error code.

Implementations§

source§

impl ClientErrorCode

source

pub fn default_description(&self) -> &'static str

Get the default description for this ClientErrorCode.

Note that ClientErrorCode::Unknown returns an empty string.

Trait Implementations§

source§

impl Clone for ClientErrorCode

source§

fn clone(&self) -> ClientErrorCode

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ClientErrorCode

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ClientErrorCode
where Self: FromStr, <Self as FromStr>::Err: Display,

source§

fn deserialize<__D>(deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for ClientErrorCode

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<ClientErrorCode> for ClientError

source§

fn from(error: ClientErrorCode) -> Self

Converts to this type from the input type.
source§

impl FromStr for ClientErrorCode

source§

type Err = Infallible

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl PartialEq for ClientErrorCode

source§

fn eq(&self, other: &ClientErrorCode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for ClientErrorCode
where Self: Display,

source§

fn serialize<__S>(&self, serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Eq for ClientErrorCode

source§

impl StructuralPartialEq for ClientErrorCode

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
source§

impl<T> DynClone for T
where T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts 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 more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts 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
source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
source§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

source§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

source§

impl<T> ErasedDestructor for T
where T: 'static,

source§

impl<T> MaybeSendSync for T
where T: Send + Sync,