diff options
Diffstat (limited to 'net/examples/dane-generate.rs')
-rw-r--r-- | net/examples/dane-generate.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/net/examples/dane-generate.rs b/net/examples/dane-generate.rs new file mode 100644 index 00000000..04ece1aa --- /dev/null +++ b/net/examples/dane-generate.rs @@ -0,0 +1,28 @@ +//! Demonstrates how to generate DANE records. + +use std::env; + +use sequoia_openpgp::{ + Cert, + Result, + parse::Parse, + policy::StandardPolicy, +}; + +use sequoia_net::dane; + +fn main() -> Result<()> { + let domain = env::args() + .nth(1).expect("Usage: dane-get <DOMAIN> <CERT-FILE>"); + let cert_file = env::args() + .nth(2).expect("Usage: dane-get <DOMAIN> <CERT-FILE>"); + + let p = StandardPolicy::new(); + let cert = Cert::from_file(cert_file)?; + let vcert = cert.with_policy(&p, None)?; + for record in dane::generate(&vcert, domain, None, None)? { + println!("{}", record); + } + + Ok(()) +} |