summaryrefslogtreecommitdiffstats
path: root/openpgp/src/cert.rs
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2020-11-17 17:15:00 +0100
committerJustus Winter <justus@sequoia-pgp.org>2020-11-18 11:27:21 +0100
commitdf9251ae12f937aa16645e143e06be647a690cfd (patch)
tree74e380fe52dc5f2a85a6cd02253138b2ac920355 /openpgp/src/cert.rs
parent0bcdaa26f0e2201add9795b55c587bf384f3183e (diff)
openpgp: Return iterator over bad signatures.
- This allows us to store verification errors with the signatures. - See #619.
Diffstat (limited to 'openpgp/src/cert.rs')
-rw-r--r--openpgp/src/cert.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/openpgp/src/cert.rs b/openpgp/src/cert.rs
index 73453e07..1b32d87f 100644
--- a/openpgp/src/cert.rs
+++ b/openpgp/src/cert.rs
@@ -1205,13 +1205,13 @@ impl Cert {
/// # .generate()?;
/// println!("{}'s has {} bad signatures.",
/// cert.fingerprint(),
- /// cert.bad_signatures().len());
- /// # assert_eq!(cert.bad_signatures().len(), 0);
+ /// cert.bad_signatures().count());
+ /// # assert_eq!(cert.bad_signatures().count(), 0);
/// # Ok(())
/// # }
/// ```
- pub fn bad_signatures(&self) -> &[Signature] {
- &self.bad
+ pub fn bad_signatures(&self) -> impl Iterator<Item = &Signature> {
+ self.bad.iter()
}
/// Returns a list of any designated revokers for this certificate.
@@ -5611,7 +5611,7 @@ Pu1xwz57O4zo1VYf6TqHJzVC3OMvMUM2hhdecMUe5x6GorNaj6g=
assert_eq!(cert.userids().count(), 1);
assert_eq!(cert.subkeys().count(), 1);
assert_eq!(cert.unknowns().count(), 0);
- assert_eq!(cert.bad_signatures().len(), 0);
+ assert_eq!(cert.bad_signatures().count(), 0);
assert_eq!(cert.userids().nth(0).unwrap().self_signatures().len(), 1);
assert_eq!(cert.subkeys().nth(0).unwrap().self_signatures().len(), 1);
@@ -5635,7 +5635,7 @@ Pu1xwz57O4zo1VYf6TqHJzVC3OMvMUM2hhdecMUe5x6GorNaj6g=
assert_eq!(cert.userids().count(), 1);
assert_eq!(cert.subkeys().count(), 1);
assert_eq!(cert.unknowns().count(), 0);
- assert_eq!(cert.bad_signatures().len(), 0);
+ assert_eq!(cert.bad_signatures().count(), 0);
assert_eq!(cert.userids().nth(0).unwrap().self_signatures().len(), 1);
assert_eq!(cert.subkeys().nth(0).unwrap().self_signatures().len(), 1);
@@ -5688,7 +5688,7 @@ Pu1xwz57O4zo1VYf6TqHJzVC3OMvMUM2hhdecMUe5x6GorNaj6g=
assert_eq!(malicious_cert.with_policy(p, None)?.keys().subkeys()
.for_signing().count(), 0);
// Instead, it should be considered bad.
- assert_eq!(malicious_cert.bad_signatures().len(), 1);
+ assert_eq!(malicious_cert.bad_signatures().count(), 1);
Ok(())
}
@@ -5744,7 +5744,7 @@ Pu1xwz57O4zo1VYf6TqHJzVC3OMvMUM2hhdecMUe5x6GorNaj6g=
let p = &crate::policy::StandardPolicy::new();
assert_eq!(malicious_cert.with_policy(p, None)?.keys().subkeys()
.for_signing().count(), 1);
- assert_eq!(malicious_cert.bad_signatures().len(), 0);
+ assert_eq!(malicious_cert.bad_signatures().count(), 0);
// Now try to merge it in.
let merged = cert.clone().merge(malicious_cert.clone())?;