diff options
| author | tv <tv@krebsco.de> | 2026-10-26 17:58:00 +0100 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-10-26 17:58:00 +0100 |
| commit | 92065bdb8ae79f549abd405755df173858e3e573 (patch) | |
| tree | fc40bb65e78d21ebcc1e2a39e4f583a90805d856 /src | |
| parent | c64c2d283ae99581bf5f06fed0303f7f2d82f980 (diff) | |
show sender on mycelium transport parse error
Diffstat (limited to 'src')
| -rw-r--r-- | src/transport/mycelium/mod.rs | 9 |
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" ); |
