diff --git a/apps/i2psnark/java/src/org/klomp/snark/Piece.java b/apps/i2psnark/java/src/org/klomp/snark/Piece.java index b08ea3476..3fd0771f9 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/Piece.java +++ b/apps/i2psnark/java/src/org/klomp/snark/Piece.java @@ -24,11 +24,7 @@ public class Piece implements Comparable { public boolean equals(Object o) { if (o instanceof Piece) { if (o == null) return false; - try { - return this.id == ((Piece)o).id; - } catch (ClassCastException cce) { - return false; - } + return this.id == ((Piece)o).id; } return false; } diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index 5d42e9243..a4ac23b43 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -592,7 +592,7 @@ public class I2PSnarkServlet extends HttpServlet { client = "Robert"; else client = "Unknown (" + ch + ')'; - out.write("" + client + " " + peer.toString().substring(5, 9) + ""); + out.write(client + " " + peer.toString().substring(5, 9)); if (showDebug) out.write(" inactive " + (peer.getInactiveTime() / 1000) + "s"); out.write("\n\t"); @@ -606,7 +606,7 @@ public class I2PSnarkServlet extends HttpServlet { String ps = String.valueOf(pct); if (ps.length() > 5) ps = ps.substring(0, 5); - out.write("" + ps + "%"); + out.write(ps + "%"); } out.write("\n\t"); out.write("
-
-I2P version 0.7.6 contains additional fixes for network stability issues -related to tunnel building and connection limits. -While the 0.7.5 release greatly improved the congestion that -appeared UTC evenings and weekends, it was not eliminated; -this release should improve the situation further. +I2P version 0.7.7 contains several anonymity improvements. +The use of session keys for crypto was completely reworked, +and I2PSnark now uses its own tunnels for tracker communication. +Work continues on improving the router console, +including conformance to HTML standards and better support of UTF-8.
-This version also has new console themes by dr|z3d, -which may be selected on the new UI configuration page. -Sorry, the new themes are not available for IE browsers. +Work also continues on increasing speeds, both by reducing the +number of session keys transferred, by improving the +methods of dropping messages during overload, and by reducing +drops by high-bandwidth routers. +There is a new unsigned update option +for those of you that would like automatic udpates to bleeding-edge development versions.
-The default tunnel length variance is changed from 1 to 0. -This mainly affects exploratory tunnels and iMule. -As explained on zzz.i2p, -a non-zero variance adds very little protection, at great cost -in resources. -Should you wish to reconfigure your exploratory settings back to the old variance of 1, -or change to length 3 variance 0, -you may do so on the config tunnels page. -iMule settings are best changed within that application. -
-I2P now stores temporary data in the system temp directory -(generally /var/tmp on Linux and %TEMP% on Windows). -For new installs only, -user data is in $HOME/.i2p on Linux/Mac and -%APPDATA%\I2P on Windows. -
-The release contains several changes to reduce resource usage -(memory, CPU, and connections) and the usual assortment of bug fixes. +The release also contains several changes to reduce memory and CPU usage, +and a large assortment of bug fixes. Upgrading is recommended. -
-This is the first release built and signed by zzz. -Thanks again to Complication for his many contributions to the project -over the past five years. -I2P is undergoing the most rapid development in years. Please give the +Please give the developers feedback on IRC #i2p or forum.i2p and get involved!
diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 9a7f805ca..8aa072fcf 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,9 +18,9 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 26; + public final static long BUILD = 0; /** for example "-test" */ - public final static String EXTRA = "-rc"; + public final static String EXTRA = ""; public final static String FULL_VERSION = VERSION + "-" + BUILD + EXTRA; public static void main(String args[]) { System.out.println("I2P Router version: " + FULL_VERSION); diff --git a/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java b/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java index fd2d6021a..0a61335a9 100644 --- a/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java +++ b/router/java/src/net/i2p/router/transport/udp/PeerTestManager.java @@ -177,7 +177,8 @@ class PeerTestManager { testComplete(false); } catch (UnknownHostException uhe) { if (_log.shouldLog(Log.ERROR)) - _log.error("Unable to get our IP from bob's reply: " + from + ", " + testInfo, uhe); + _log.error("Unable to get our IP (length " + ip.length + + ") from bob's reply: " + from + ", " + testInfo, uhe); } } else { PeerState charlieSession = _transport.getPeerState(from); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java index d431913d1..06b429889 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java @@ -40,7 +40,6 @@ import net.i2p.util.SimpleTimer; * */ public class UDPTransport extends TransportImpl implements TimedWeightedPriorityMessageQueue.FailedListener { - private RouterContext _rContext; private Log _log; private UDPEndpoint _endpoint; /** Peer (Hash) to PeerState */ diff --git a/router/java/src/net/i2p/router/tunnel/TunnelGatewayZeroHop.java b/router/java/src/net/i2p/router/tunnel/TunnelGatewayZeroHop.java index 40e4d456e..4289f146f 100644 --- a/router/java/src/net/i2p/router/tunnel/TunnelGatewayZeroHop.java +++ b/router/java/src/net/i2p/router/tunnel/TunnelGatewayZeroHop.java @@ -12,8 +12,6 @@ import net.i2p.util.Log; * */ public class TunnelGatewayZeroHop extends TunnelGateway { - private RouterContext TunnelContext; - private Log TunnelLog; private TunnelCreatorConfig _config; private OutboundMessageDistributor _outDistributor; private InboundMessageDistributor _inDistributor; @@ -23,11 +21,9 @@ public class TunnelGatewayZeroHop extends TunnelGateway { */ public TunnelGatewayZeroHop(RouterContext context, TunnelCreatorConfig config) { super(context, null, null, null); - TunnelContext = context; - TunnelLog = context.logManager().getLog(TunnelGatewayZeroHop.class); _config = config; if (config.isInbound()) - _inDistributor = new InboundMessageDistributor(TunnelContext, config.getDestination()); + _inDistributor = new InboundMessageDistributor(context, config.getDestination()); else _outDistributor = new OutboundMessageDistributor(context, 400); } @@ -53,8 +49,8 @@ public class TunnelGatewayZeroHop extends TunnelGateway { */ @Override public void add(I2NPMessage msg, Hash toRouter, TunnelId toTunnel) { - if (TunnelLog.shouldLog(Log.DEBUG)) - TunnelLog.debug("zero hop gateway: distribute " + (_config.isInbound() ? "inbound " : " outbound ") + if (_log.shouldLog(Log.DEBUG)) + _log.debug("zero hop gateway: distribute " + (_config.isInbound() ? "inbound " : " outbound ") + " to " + (toRouter != null ? toRouter.toBase64().substring(0,4) : "" ) + "." + (toTunnel != null ? toTunnel.getTunnelId() + "" : "") + ": " + msg);