diff --git a/history.txt b/history.txt index 453c568b59..398eff6bed 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,10 @@ +2008-09-19 zzz + * Tunnels: + - Add missing message accounting for inbound gateways, + we were underestimating participating traffic because of it, + and the tunnels were classified "inactive" + - Add participating tunnel role on tunnels.jsp + 2008-09-18 zzz * Throttle: - Correctly check inbound and outbound total bw limits separately diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 64471fafd3..15a18a6d74 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -17,7 +17,7 @@ import net.i2p.CoreVersion; public class RouterVersion { public final static String ID = "$Revision: 1.548 $ $Date: 2008-06-07 23:00:00 $"; public final static String VERSION = "0.6.3"; - public final static long BUILD = 6; + public final static long BUILD = 7; public static void main(String args[]) { System.out.println("I2P Router version: " + VERSION + "-" + BUILD); System.out.println("Router ID: " + RouterVersion.ID); diff --git a/router/java/src/net/i2p/router/tunnel/InboundGatewayReceiver.java b/router/java/src/net/i2p/router/tunnel/InboundGatewayReceiver.java index ffb4c356bf..1d198a0b48 100644 --- a/router/java/src/net/i2p/router/tunnel/InboundGatewayReceiver.java +++ b/router/java/src/net/i2p/router/tunnel/InboundGatewayReceiver.java @@ -33,6 +33,7 @@ public class InboundGatewayReceiver implements TunnelGateway.Receiver { } } + _config.incrementProcessedMessages(); TunnelDataMessage msg = new TunnelDataMessage(_context); msg.setData(encrypted); msg.setTunnelId(_config.getSendTunnel()); diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java index 1c3e4b4135..342f53b2ee 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java +++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPoolManager.java @@ -448,7 +448,7 @@ public class TunnelPoolManager implements TunnelManagerFacade { out.write("

Participating tunnels:

\n"); out.write("" - + "\n"); + + "\n"); long processed = 0; RateStat rs = _context.statManager().getRate("tunnel.participatingMessageCount"); if (rs != null) @@ -468,21 +468,27 @@ public class TunnelPoolManager implements TunnelManagerFacade { if (cfg.getReceiveFrom() != null) out.write(""); else - out.write(""); + out.write(""); if (cfg.getSendTunnel() != null) out.write(""); else - out.write(""); + out.write(""); if (cfg.getSendTo() != null) out.write(""); else - out.write(""); + out.write(""); long timeLeft = cfg.getExpiration()-_context.clock().now(); if (timeLeft > 0) out.write(""); else out.write(""); out.write(""); + if (cfg.getSendTo() == null) + out.write(""); + else if (cfg.getReceiveFrom() == null) + out.write(""); + else + out.write(""); out.write("\n"); processed += cfg.getProcessedMessagesCount(); }
Receive onFrom" + "Send onToExpirationUsage
UsageRole
" + cfg.getReceiveFrom().toBase64().substring(0,4) +"n/a " + cfg.getSendTunnel().getTunnelId() +"n/a " + cfg.getSendTo().toBase64().substring(0,4) +"n/a " + DataHelper.formatDuration(timeLeft) + "(grace period)" + cfg.getProcessedMessagesCount() + "KBOutbound EndpointInbound GatewayParticipant