esteid_cryptoki/error.rs
1/// An error from an `esteid` operation.
2#[derive(Debug, thiserror::Error)]
3pub enum EstEidError {
4 /// No token matches EstEID structure.
5 #[error("no Estonian ID card found")]
6 NoCard,
7
8 /// More than one ID card was found.
9 #[error("multiple Estonian ID cards found: {0:?}")]
10 MultipleCards(Vec<String>),
11
12 /// The ID card is missing an expected key.
13 #[error("token looks like an ID card but lacks {0}")]
14 IncompleteCard(String),
15
16 /// A `tokenkey` operation failed.
17 #[error(transparent)]
18 Token(#[from] tokenkey::TokenkeyError),
19}
20
21pub type Result<T> = std::result::Result<T, EstEidError>;