solid_pod_rs_didkey/
error.rs1use thiserror::Error;
4
5#[derive(Debug, Error)]
7pub enum DidKeyError {
8 #[error("not a did:key identifier: {0}")]
10 NotDidKey(String),
11
12 #[error("invalid multibase encoding: {0}")]
14 InvalidMultibase(String),
15
16 #[error("unknown multicodec codec 0x{0:04x}")]
18 UnknownCodec(u64),
19
20 #[error("invalid key length for {codec}: expected {expected}, got {actual}")]
22 InvalidKeyLength {
23 codec: &'static str,
24 expected: usize,
25 actual: usize,
26 },
27
28 #[error("malformed JWT: {0}")]
30 MalformedJwt(String),
31
32 #[error("invalid JWT header: {0}")]
35 InvalidHeader(String),
36
37 #[error("invalid JWT claims: {0}")]
39 InvalidClaims(String),
40
41 #[error("signature verification failed: {0}")]
43 BadSignature(String),
44
45 #[error("key material parse error: {0}")]
47 KeyParse(String),
48
49 #[error("json: {0}")]
51 Json(#[from] serde_json::Error),
52
53 #[error("base64: {0}")]
55 Base64(#[from] base64::DecodeError),
56}