The Validator Structure
use x509_parser::prelude::*;
#[derive(Debug)]
pub enum SvidValidationError {
ExpiredCert,
NoSpiffeId,
MultipleSpiffeIds,
WrongTrustDomain { expected: String, got: String },
ChainVerificationFailed(String),
CaFlagSet,
MissingDigitalSignature,
}
pub struct SvidValidator {
pub trust_domain: String,
pub trust_bundle: Vec<Vec<u8>>,
}
impl SvidValidator {
pub fn validate(&self, cert_der: &[u8]) -> Result<String, SvidValidationError> {
}
}