Files
openpgp-card-test/examples/list_pgp_cards.rs

22 lines
643 B
Rust

use anyhow::Result;
use openpgp_card::OpenPgp;
use openpgp_card_pcsc::PcscBackend;
use openpgp_card_sequoia::card::Open;
fn main() -> Result<()> {
println!("The following OpenPGP cards are connected to your system:");
for mut card in PcscBackend::cards(None)? {
let mut pgp = OpenPgp::new(&mut card);
let open = Open::new(pgp.transaction()?)?;
println!(" {}", open.application_identifier()?.ident());
println!(" {}", open.application_identifier()?.application());
println!(" {}", open.application_identifier()?.version());
println!(" {:?}", open.fingerprints());
}
Ok(())
}