Skip to main content

04_policy_properties/
04_policy_properties.rs

1use security::{Policy, PolicyIdentifier, PolicyName, PolicyProperties};
2
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4    let basic = Policy::basic_x509()?;
5    let ssl = Policy::ssl(true, Some("localhost"))?;
6    let custom_ssl = Policy::with_properties(
7        PolicyIdentifier::AppleSsl,
8        &PolicyProperties {
9            name: Some(PolicyName::from("localhost")),
10            client: Some(false),
11            ..PolicyProperties::default()
12        },
13    )?;
14    let revocation = Policy::revocation(0)?;
15    println!(
16        "basic={:?} ssl={:?} custom_ssl={:?} revocation={:?}",
17        basic.properties()?,
18        ssl.properties()?,
19        custom_ssl.properties()?,
20        revocation.properties()?
21    );
22    Ok(())
23}