diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java index 3468e9a3f06089e5e716066af99b4325e5c99fb8..3f77d73a7eaa7ce07d22fbb64eaa968ce4e6707f 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java +++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java @@ -1545,9 +1545,10 @@ class NTCPConnection { } } catch (I2NPMessageException ime) { if (_log.shouldLog(Log.WARN)) { - _log.warn("Error parsing I2NP message", ime); - _log.warn("DUMP:\n" + HexDump.dump(_dataBuf.getData(), 0, _size)); - _log.warn("RAW:\n" + Base64.encode(_dataBuf.getData(), 0, _size)); + _log.warn("Error parsing I2NP message" + + "\nDUMP:\n" + HexDump.dump(_dataBuf.getData(), 0, _size) + + "\nRAW:\n" + Base64.encode(_dataBuf.getData(), 0, _size) + + ime); } _context.statManager().addRateData("ntcp.corruptI2NPIME", 1); // Don't close the con, possible attack vector, not necessarily the peer's fault, diff --git a/router/java/src/net/i2p/router/transport/udp/InboundMessageState.java b/router/java/src/net/i2p/router/transport/udp/InboundMessageState.java index 8c20dba177f527b7f23a1bc88267f37f2e578334..f2209674f775e2b83dfcc47fa7138d20c5dcb100 100644 --- a/router/java/src/net/i2p/router/transport/udp/InboundMessageState.java +++ b/router/java/src/net/i2p/router/transport/udp/InboundMessageState.java @@ -342,7 +342,8 @@ class InboundMessageState implements CDQEntry { buf.append(" completely received with "); //buf.append(getCompleteSize()).append(" bytes"); // may display -1 but avoid cascaded exceptions after release - buf.append(_completeSize).append(" bytes"); + buf.append(_completeSize).append(" bytes in "); + buf.append(_lastFragment + 1).append(" fragments"); } else { for (int i = 0; i <= _lastFragment; i++) { buf.append(" fragment ").append(i);