summaryrefslogtreecommitdiffstats
path: root/openpgp/examples
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2020-02-17 15:18:40 +0100
committerJustus Winter <justus@sequoia-pgp.org>2020-02-17 15:18:40 +0100
commit6ae9d4ec0661d21f1c1579b901d0cc400811c43c (patch)
tree7988345586ba44531ed971f2444d23d6ebf73fa7 /openpgp/examples
parentf0944f2e18485dfa693a252956efe0896d225ab7 (diff)
openpgp: Reduce the number of explicit key conversions.
Diffstat (limited to 'openpgp/examples')
-rw-r--r--openpgp/examples/decrypt-with.rs10
-rw-r--r--openpgp/examples/generate-encrypt-decrypt.rs5
-rw-r--r--openpgp/examples/generate-sign-verify.rs6
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);