diff options
author | Wiktor Kwapisiewicz <wiktor@metacode.biz> | 2020-12-15 11:08:38 +0100 |
---|---|---|
committer | Wiktor Kwapisiewicz <wiktor@metacode.biz> | 2020-12-15 11:08:38 +0100 |
commit | 4df9befdb10cc336a9df49b65fdfef659296aa61 (patch) | |
tree | 62f5d97a982293199a2c396b838c388983c2e76c /sq/src/commands | |
parent | c31ceb8dab94d2ea08879e36ad450547136ca2e1 (diff) |
openpgp: Make ComponentAmalgamation return iterator for signatures.
- Adjust `self_signatures`, `certifications`, `self_revocations` and
`other_revocations` to return `impl Iterator` over the signatures.
- Adjust all call-sites including doc tests.
- Adjust downstream projects (sq, autocrypt).
Diffstat (limited to 'sq/src/commands')
-rw-r--r-- | sq/src/commands/inspect.rs | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/sq/src/commands/inspect.rs b/sq/src/commands/inspect.rs index 29223422..53d7c8e5 100644 --- a/sq/src/commands/inspect.rs +++ b/sq/src/commands/inspect.rs @@ -278,7 +278,7 @@ fn inspect_key(policy: &dyn Policy, writeln!(output, "{} Key flags: {}", indent, flags)?; } } - inspect_certifications(output, bundle.certifications(), + inspect_certifications(output, bundle.certifications().iter(), print_certifications)?; Ok(()) @@ -382,11 +382,14 @@ fn inspect_signatures(output: &mut dyn io::Write, Ok(()) } -fn inspect_certifications(output: &mut dyn io::Write, - certs: &[openpgp::packet::Signature], - print_certifications: bool) -> Result<()> { +fn inspect_certifications<'a, A>(output: &mut dyn io::Write, + certs: A, + print_certifications: bool) -> Result<()> where + A: std::iter::Iterator<Item=&'a openpgp::packet::Signature> { if print_certifications { + let mut verified_cerifications = false; for sig in certs { + verified_cerifications = true; let mut fps: Vec<_> = sig.issuer_fingerprints().collect(); fps.sort(); fps.dedup(); @@ -403,14 +406,15 @@ fn inspect_certifications(output: &mut dyn io::Write, } } } - if ! certs.is_empty() { + if !verified_cerifications { writeln!(output, " \ Certifications have NOT been verified!")?; } } else { - if ! certs.is_empty() { + let count = certs.count(); + if count > 0 { writeln!(output, " Certifications: {}, \ - use --certifications to list", certs.len())?; + use --certifications to list", count)?; } } |