summaryrefslogtreecommitdiffstats
path: root/sq/src/commands/inspect.rs
diff options
context:
space:
mode:
Diffstat (limited to 'sq/src/commands/inspect.rs')
-rw-r--r--sq/src/commands/inspect.rs18
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)?;
}
}