Revision control

Copy as Markdown

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#[derive(Debug, thiserror::Error)]
pub enum ErrorKind {
#[error("NSS error: {0}")]
NSSError(#[from] nss::Error),
#[error("Internal crypto error")]
InternalError,
#[error("Conversion error: {0}")]
ConversionError(#[from] std::num::TryFromIntError),
#[error("Root hash format error: {0}")]
RootHashFormatError(String),
#[error("PEM content format error: {0}")]
PEMFormatError(String),
#[error("Certificate content error: {0}")]
CertificateContentError(String),
#[error("Certificate not yet valid or expired")]
CertificateValidityError,
#[error("Certificate subject mismatch")]
CertificateSubjectError,
#[error("Certificate issuer mismatch")]
CertificateIssuerError,
#[error("Certificate chain of trust error: {0}")]
CertificateChainError(String),
#[error("Signature content error: {0}")]
SignatureContentError(String),
#[error("Content signature mismatch error: {0}")]
SignatureMismatchError(String),
}
error_support::define_error! {
ErrorKind {
(ConversionError, std::num::TryFromIntError),
(NSSError, nss::Error),
}
}