diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2020-02-17 15:18:40 +0100 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2020-02-17 15:18:40 +0100 |
commit | 6ae9d4ec0661d21f1c1579b901d0cc400811c43c (patch) | |
tree | 7988345586ba44531ed971f2444d23d6ebf73fa7 /openpgp/examples | |
parent | f0944f2e18485dfa693a252956efe0896d225ab7 (diff) |
openpgp: Reduce the number of explicit key conversions.
Diffstat (limited to 'openpgp/examples')
-rw-r--r-- | openpgp/examples/decrypt-with.rs | 10 | ||||
-rw-r--r-- | openpgp/examples/generate-encrypt-decrypt.rs | 5 | ||||
-rw-r--r-- | openpgp/examples/generate-sign-verify.rs | 6 |
3 files changed, 9 insertions, 12 deletions
diff --git a/openpgp/examples/decrypt-with.rs b/openpgp/examples/decrypt-with.rs index 860c4a56..c4b9f56a 100644 --- a/openpgp/examples/decrypt-with.rs +++ b/openpgp/examples/decrypt-with.rs @@ -62,15 +62,11 @@ impl Helper { // Map (sub)KeyIDs to secrets. let mut keys = HashMap::new(); for cert in certs { - for ka in cert.keys().with_policy(p, None) + for ka in cert.keys().unencrypted_secret().with_policy(p, None) .for_storage_encryption().for_transport_encryption() { - // This only works for unencrypted secret keys. - if let Ok(keypair) = - ka.key().clone().mark_parts_secret().unwrap().into_keypair() - { - keys.insert(ka.key().keyid(), keypair); - } + keys.insert(ka.key().keyid(), + ka.key().clone().into_keypair().unwrap()); } } diff --git a/openpgp/examples/generate-encrypt-decrypt.rs b/openpgp/examples/generate-encrypt-decrypt.rs index 110c8b1a..55669c72 100644 --- a/openpgp/examples/generate-encrypt-decrypt.rs +++ b/openpgp/examples/generate-encrypt-decrypt.rs @@ -125,11 +125,12 @@ impl<'a> DecryptionHelper for Helper<'a> { -> openpgp::Result<Option<openpgp::Fingerprint>> where D: FnMut(SymmetricAlgorithm, &SessionKey) -> openpgp::Result<()> { - let key = self.secret.keys().with_policy(self.policy, None) + let key = self.secret.keys().unencrypted_secret() + .with_policy(self.policy, None) .for_transport_encryption().nth(0).unwrap().key().clone(); // The secret key is not encrypted. - let mut pair = key.mark_parts_secret().unwrap().into_keypair().unwrap(); + let mut pair = key.into_keypair().unwrap(); pkesks[0].decrypt(&mut pair, sym_algo) .and_then(|(algo, session_key)| decrypt(algo, &session_key)) diff --git a/openpgp/examples/generate-sign-verify.rs b/openpgp/examples/generate-sign-verify.rs index 12709609..d371a812 100644 --- a/openpgp/examples/generate-sign-verify.rs +++ b/openpgp/examples/generate-sign-verify.rs @@ -45,9 +45,9 @@ fn sign(p: &dyn Policy, sink: &mut dyn Write, plaintext: &str, tsk: &openpgp::Ce -> openpgp::Result<()> { // Get the keypair to do the signing from the Cert. let keypair = tsk - .keys().with_policy(p, None).alive().revoked(false).for_signing() - .nth(0).unwrap() - .key().clone().mark_parts_secret().unwrap().into_keypair()?; + .keys().unencrypted_secret() + .with_policy(p, None).alive().revoked(false).for_signing() + .nth(0).unwrap().key().clone().into_keypair()?; // Start streaming an OpenPGP message. let message = Message::new(sink); |