use snafu::Snafu;
use tibba_error::Error as BaseError;
#[derive(Debug, Snafu)]
pub enum Error {
#[snafu(display("hmac sha256 error: {source}"))]
HmacSha256 { source: hmac::digest::InvalidLength },
#[snafu(display("key grip empty"))]
KeyGripEmpty,
}
impl From<Error> for BaseError {
fn from(val: Error) -> Self {
let err = match val {
Error::HmacSha256 { source } => BaseError::new(source).with_sub_category("hmac_sha256"),
Error::KeyGripEmpty => BaseError::new("key grip empty")
.with_sub_category("key_grip")
.with_status(500)
.with_exception(true),
};
err.with_category("crypto")
}
}
mod key_grip;
pub use key_grip::*;