File: hkp-get.rs

package info (click to toggle)
rust-sequoia-net 0.30.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 304 kB
  • sloc: makefile: 6
file content (27 lines) | stat: -rw-r--r-- 576 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use std::{
    env,
    io,
};

use sequoia_openpgp::{
    Fingerprint,
    Result,
    serialize::Serialize,
};

use sequoia_net::KeyServer;

#[tokio::main]
async fn main() -> Result<()> {
    let url = env::args()
        .nth(1).expect("Usage: tor-hkp-get <URL> <FINGERPRINT>");
    let handle: Fingerprint = env::args()
        .nth(2).expect("Usage: tor-hkp-get <SERVER> <FINGERPRINT>")
        .parse()?;

    let keyserver = KeyServer::new(&url)?;
    for cert in keyserver.get(handle).await? {
        cert?.armored().serialize(&mut io::stdout())?;
    }
    Ok(())
}