examples: use new Card<State> interface
This commit is contained in:
parent
538fc645c5
commit
1104e60b33
2 changed files with 12 additions and 12 deletions
|
@ -2,7 +2,7 @@
|
||||||
// SPDX-License-Identifier: MIT OR Apache-2.0
|
// SPDX-License-Identifier: MIT OR Apache-2.0
|
||||||
|
|
||||||
use openpgp_card_pcsc::PcscBackend;
|
use openpgp_card_pcsc::PcscBackend;
|
||||||
use openpgp_card_sequoia::card::Card;
|
use openpgp_card_sequoia::card::{Card, Open};
|
||||||
|
|
||||||
use openpgp::parse::{stream::DecryptorBuilder, Parse};
|
use openpgp::parse::{stream::DecryptorBuilder, Parse};
|
||||||
use openpgp::policy::StandardPolicy;
|
use openpgp::policy::StandardPolicy;
|
||||||
|
@ -19,16 +19,16 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
let card_ident = &args[0];
|
let card_ident = &args[0];
|
||||||
let pin_file = &args[1];
|
let pin_file = &args[1];
|
||||||
|
|
||||||
let card_backend = PcscBackend::open_by_ident(card_ident, None)?;
|
let backend = PcscBackend::open_by_ident(card_ident, None)?;
|
||||||
|
|
||||||
let mut card = Card::new(card_backend);
|
let mut card: Card<Open> = backend.into();
|
||||||
let mut open = card.transaction()?;
|
let mut transaction = card.transaction()?;
|
||||||
|
|
||||||
let pin = std::fs::read(pin_file)?;
|
let pin = std::fs::read(pin_file)?;
|
||||||
|
|
||||||
open.verify_user(&pin)?;
|
transaction.verify_user(&pin)?;
|
||||||
|
|
||||||
let mut user = open.user_card().unwrap();
|
let mut user = transaction.user_card().unwrap();
|
||||||
|
|
||||||
let p = StandardPolicy::new();
|
let p = StandardPolicy::new();
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
// SPDX-License-Identifier: MIT OR Apache-2.0
|
// SPDX-License-Identifier: MIT OR Apache-2.0
|
||||||
|
|
||||||
use openpgp_card_pcsc::PcscBackend;
|
use openpgp_card_pcsc::PcscBackend;
|
||||||
use openpgp_card_sequoia::card::Card;
|
use openpgp_card_sequoia::card::{Card, Open};
|
||||||
|
|
||||||
use openpgp::serialize::stream::{Armorer, Message, Signer};
|
use openpgp::serialize::stream::{Armorer, Message, Signer};
|
||||||
use sequoia_openpgp as openpgp;
|
use sequoia_openpgp as openpgp;
|
||||||
|
@ -18,16 +18,16 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
let card_ident = &args[0];
|
let card_ident = &args[0];
|
||||||
let pin_file = &args[1];
|
let pin_file = &args[1];
|
||||||
|
|
||||||
let card_backend = PcscBackend::open_by_ident(card_ident, None)?;
|
let backend = PcscBackend::open_by_ident(card_ident, None)?;
|
||||||
|
|
||||||
let mut card = Card::new(card_backend);
|
let mut card: Card<Open> = backend.into();
|
||||||
let mut open = card.transaction()?;
|
let mut transaction = card.transaction()?;
|
||||||
|
|
||||||
let pin = std::fs::read(pin_file)?;
|
let pin = std::fs::read(pin_file)?;
|
||||||
|
|
||||||
open.verify_user_for_signing(&pin)?;
|
transaction.verify_user_for_signing(&pin)?;
|
||||||
|
|
||||||
let mut sign = open.signing_card().unwrap();
|
let mut sign = transaction.signing_card().unwrap();
|
||||||
let s = sign.signer(&|| println!("Touch confirmation needed for signing"))?;
|
let s = sign.signer(&|| println!("Touch confirmation needed for signing"))?;
|
||||||
|
|
||||||
let stdout = std::io::stdout();
|
let stdout = std::io::stdout();
|
||||||
|
|
Loading…
Reference in a new issue