aboutsummaryrefslogtreecommitdiffstats
path: root/src/transport/mycelium/mod.rs
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-10-26 17:58:00 +0100
committertv <tv@krebsco.de>2026-10-26 17:58:00 +0100
commit904291630429dba56ed4f13e90d0801541b3bfec (patch)
tree1aa02f68fb0358d9f9f43a529c60386f664d7abf /src/transport/mycelium/mod.rs
parente13cbc232b2438caac834f3573a42349517ff0c0 (diff)
show sender on mycelium transport parse error
Diffstat (limited to 'src/transport/mycelium/mod.rs')
-rw-r--r--src/transport/mycelium/mod.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/transport/mycelium/mod.rs b/src/transport/mycelium/mod.rs
index 0b74793..f8569c1 100644
--- a/src/transport/mycelium/mod.rs
+++ b/src/transport/mycelium/mod.rs
@@ -322,8 +322,17 @@ impl Transport for MyceliumTransport {
}
}
Err(transport_error) => {
+ // Who sent it and what it claims to be: a peer on another build
+ // shows up as one sender whose messages of one kind all fail.
+ let kind = BASE64
+ .decode(&inbound_message.payload)
+ .ok()
+ .and_then(|payload| payload.first().copied());
tracing::error!(
error = %transport_error,
+ from = %inbound_message.src_pk,
+ kind = ?kind,
+ payload_bytes = base64_decoded_len(&inbound_message.payload),
topic = %inbound_message.topic,
"Dropping poisoned packet: parsing failed gracefully"
);