Skip to main content

05_trust_evaluate/
05_trust_evaluate.rs

1#[path = "support/mod.rs"]
2mod support;
3
4use security::{Certificate, Policy, Trust};
5
6fn main() -> Result<(), Box<dyn std::error::Error>> {
7    let certificate = Certificate::from_der(&support::fixture("test-cert.der"))?;
8    let policy = Policy::basic_x509()?;
9    let mut trust = Trust::new(&certificate, &[policy])?;
10    trust.set_anchor_certificates(&[certificate])?;
11    trust.set_anchor_certificates_only(true)?;
12    trust.set_network_fetch_allowed(false)?;
13    trust.evaluate()?;
14    println!("chain_len={}", trust.certificate_chain()?.len());
15    Ok(())
16}