#[non_exhaustive]pub enum ErrorKind {
Show 19 variants
InvalidToken,
InvalidSignature,
InvalidEcdsaKey,
InvalidRsaKey(&'static str),
RsaFailedSigning,
InvalidAlgorithmName,
InvalidKeyFormat,
MissingRequiredClaim(String),
ExpiredSignature,
InvalidIssuer,
InvalidAudience,
InvalidSubject,
ImmatureSignature,
InvalidAlgorithm,
MissingAlgorithm,
Base64(DecodeError),
Json(Arc<Error>),
Utf8(FromUtf8Error),
Crypto(Unspecified),
}
Expand description
The specific type of an error.
This enum may grow additional variants, the #[non_exhaustive]
attribute makes sure clients don’t count on exhaustive matching.
(Otherwise, adding a new variant could break existing code.)
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidToken
When a token doesn’t have a valid JWT shape
InvalidSignature
When the signature doesn’t match
InvalidEcdsaKey
When the secret given is not a valid ECDSA key
InvalidRsaKey(&'static str)
When the secret given is not a valid RSA key
RsaFailedSigning
We could not sign with the given key
InvalidAlgorithmName
When the algorithm from string doesn’t match the one passed to from_str
InvalidKeyFormat
When a key is provided with an invalid format
MissingRequiredClaim(String)
When a claim required by the validation is not present
ExpiredSignature
When a token’s exp
claim indicates that it has expired
InvalidIssuer
When a token’s iss
claim does not match the expected issuer
InvalidAudience
When a token’s aud
claim does not match one of the expected audience values
InvalidSubject
When a token’s sub
claim does not match one of the expected subject values
ImmatureSignature
When a token’s nbf
claim represents a time in the future
InvalidAlgorithm
When the algorithm in the header doesn’t match the one passed to decode
or the encoding/decoding key
used doesn’t match the alg requested
MissingAlgorithm
When the Validation struct does not contain at least 1 algorithm
Base64(DecodeError)
An error happened when decoding some base64 text
Json(Arc<Error>)
An error happened while serializing/deserializing JSON
Utf8(FromUtf8Error)
Some of the text was invalid UTF-8
Crypto(Unspecified)
Something unspecified went wrong with crypto
Trait Implementations§
impl Eq for ErrorKind
Auto Trait Implementations§
impl Freeze for ErrorKind
impl !RefUnwindSafe for ErrorKind
impl Send for ErrorKind
impl Sync for ErrorKind
impl Unpin for ErrorKind
impl !UnwindSafe for ErrorKind
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)