summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeal H. Walfield <neal@pep.foundation>2020-12-22 13:09:12 +0100
committerNeal H. Walfield <neal@pep.foundation>2020-12-22 13:09:12 +0100
commitecf20895409317d41ff8646c58aa4237fc8f7545 (patch)
tree62a7078431f2d4bed1282873b552db725bf6d188
parentfae15076622472d6adc888b4a8f03fff30c4b079 (diff)
openpgp: Improve debugging output.
-rw-r--r--openpgp/src/cert/parser/mod.rs23
1 files changed, 21 insertions, 2 deletions
diff --git a/openpgp/src/cert/parser/mod.rs b/openpgp/src/cert/parser/mod.rs
index 002f08e3..af5f2a38 100644
--- a/openpgp/src/cert/parser/mod.rs
+++ b/openpgp/src/cert/parser/mod.rs
@@ -963,8 +963,27 @@ impl<'a> Iterator for CertParser<'a> {
Some(mut iter) => {
let r = match iter.next() {
Some(Ok(packet)) => {
- t!("Got packet #{} ({})",
- self.packets.len(), packet.tag());
+ t!("Got packet #{} ({}{})",
+ self.packets.len(), packet.tag(),
+ match &packet {
+ Packet::PublicKey(k) =>
+ Some(k.fingerprint().to_hex()),
+ Packet::SecretKey(k) =>
+ Some(k.fingerprint().to_hex()),
+ Packet::PublicSubkey(k) =>
+ Some(k.fingerprint().to_hex()),
+ Packet::SecretSubkey(k) =>
+ Some(k.fingerprint().to_hex()),
+ Packet::UserID(u) =>
+ Some(String::from_utf8_lossy(u.value())
+ .into()),
+ Packet::Signature(s) =>
+ Some(format!("{}", s.typ())),
+ _ => None,
+ }
+ .map(|s| format!(", {}", s))
+ .unwrap_or("".into())
+ );
self.source = Some(iter);
self.parse(packet)
}