pub enum Error {
Show 19 variants
BadDER,
BadDERTime,
CAUsedAsEndEntity,
CertExpired,
CertNotValidForName,
CertNotValidYet,
EndEntityUsedAsCA,
ExtensionValueInvalid,
InvalidCertValidity,
InvalidSignatureForPublicKey,
NameConstraintViolation,
PathLenConstraintViolated,
SignatureAlgorithmMismatch,
RequiredEKUNotFound,
UnknownIssuer,
UnsupportedCertVersion,
UnsupportedCriticalExtension,
UnsupportedSignatureAlgorithmForPublicKey,
UnsupportedSignatureAlgorithm,
}
Expand description
An error that occurs during certificate validation or name validation.
Variants
BadDER
The encoding of some ASN.1 DER-encoded item is invalid.
BadDERTime
The encoding of an ASN.1 DER-encoded time is invalid.
CAUsedAsEndEntity
A CA certificate is veing used as an end-entity certificate.
CertExpired
The certificate is expired; i.e. the time it is being validated for is later than the certificate’s notAfter time.
CertNotValidForName
The certificate is not valid for the name it is being validated for.
CertNotValidYet
The certificate is not valid yet; i.e. the time it is being validated for is earlier than the certificate’s notBefore time.
EndEntityUsedAsCA
An end-entity certificate is being used as a CA certificate.
ExtensionValueInvalid
An X.509 extension is invalid.
InvalidCertValidity
The certificate validity period (notBefore, notAfter) is invalid; e.g. the notAfter time is earlier than the notBefore time.
InvalidSignatureForPublicKey
The signature is invalid for the given public key.
NameConstraintViolation
The certificate violates one or more name constraints.
PathLenConstraintViolated
The certificate violates one or more path length constraints.
SignatureAlgorithmMismatch
The algorithm in the TBSCertificate “signature” field of a certificate does not match the algorithm in the signature of the certificate.
RequiredEKUNotFound
The certificate is not valid for the Extended Key Usage for which it is being validated.
UnknownIssuer
A valid issuer for the certificate could not be found.
UnsupportedCertVersion
The certificate is not a v3 X.509 certificate.
UnsupportedCriticalExtension
The certificate contains an unsupported critical extension.
UnsupportedSignatureAlgorithmForPublicKey
The signature’s algorithm does not match the algorithm of the public key it is being validated for. This may be because the public key algorithm’s OID isn’t recognized (e.g. DSA), or the public key algorithm’s parameters don’t match the supported parameters for that algorithm (e.g. ECC keys for unsupported curves), or the public key algorithm and the signature algorithm simply don’t match (e.g. verifying an RSA signature with an ECC public key).
UnsupportedSignatureAlgorithm
The signature algorithm for a signature is not in the set of supported signature algorithms given.
Trait Implementations
sourceimpl Error for Error
impl Error for Error
1.30.0 · sourcefn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
sourcefn backtrace(&self) -> Option<&Backtrace>
fn backtrace(&self) -> Option<&Backtrace>
backtrace
)Returns a stack backtrace, if available, of where this error occurred. Read more
1.0.0 · sourcefn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
impl Copy for Error
impl StructuralPartialEq for Error
Auto Trait Implementations
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more