2024-02-19 15:55:46 +00:00
|
|
|
use cosmwasm_std::StdError;
|
|
|
|
use k256::ecdsa::Error as K256Error;
|
|
|
|
use quartz_tee_ra::Error as RaVerificationError;
|
|
|
|
use thiserror::Error;
|
|
|
|
|
|
|
|
#[derive(Error, Debug)]
|
|
|
|
pub enum Error {
|
|
|
|
#[error("{0}")]
|
|
|
|
Std(#[from] StdError),
|
|
|
|
#[error("{0}")]
|
|
|
|
RaVerification(#[from] RaVerificationError),
|
|
|
|
#[error("Not Secp256K1")]
|
|
|
|
K256(K256Error),
|
|
|
|
#[error("invalid session nonce or attempt to reset pub_key")]
|
|
|
|
BadSessionTransition,
|
2024-09-05 10:07:35 +00:00
|
|
|
#[error("Invalid FMSPC: {0}")]
|
|
|
|
InvalidFmspc(String),
|
|
|
|
#[error("TCB Info query error: {0}")]
|
|
|
|
TcbInfoQueryError(String),
|
2024-09-25 19:14:06 +00:00
|
|
|
#[error("DCAP verification query error: {0}")]
|
|
|
|
DcapVerificationQueryError(String),
|
2024-02-19 15:55:46 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
impl From<K256Error> for Error {
|
|
|
|
fn from(e: K256Error) -> Self {
|
|
|
|
Self::K256(e)
|
|
|
|
}
|
|
|
|
}
|