pub mod esc8;
use crate::modules::adcs::esc8::{check_esc8, Esc8Result};
use crate::objects::enterpriseca::WebEnrollmentEndpoint;
pub struct Esc8Data {
pub http_enrollment_endpoints: Vec<WebEnrollmentEndpoint>,
}
impl Default for Esc8Data {
fn default() -> Self {
Self { http_enrollment_endpoints: vec![] }
}
}
impl From<Esc8Result> for Esc8Data {
fn from(r: Esc8Result) -> Self {
Self { http_enrollment_endpoints: r.endpoints }
}
}
pub fn probe_enterpriseca_esc8(dns_host: &str) -> Esc8Data {
if dns_host.is_empty() {
log::debug!("[adcs] ESC8 probe skipped: CA has no dnshostname");
return Esc8Data::default();
}
Esc8Data::from(check_esc8(dns_host))
}