diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java index a98551b8c5ba2643536acd48e1436a2b569d894c..ae723661c649a98fdf7394627a1cf210b3a2eb15 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java @@ -98,7 +98,7 @@ public abstract class I2PTunnelClientBase extends I2PTunnelTask implements Runna _clientId = clientId; this.localPort = localPort; this.l = l; - this.handlerName = handlerName + _clientId; + this.handlerName = localPort + " #" + _clientId; _ownDest = true; // == ! shared client _context = tunnel.getContext(); _context.statManager().createRateStat("i2ptunnel.client.closeBacklog", "How many pending sockets remain when we close one due to backlog?", "I2PTunnel", new long[] { 60*1000, 10*60*1000, 60*60*1000 }); diff --git a/core/java/src/net/i2p/crypto/TrustedUpdate.java b/core/java/src/net/i2p/crypto/TrustedUpdate.java index fdf63697dfbdfc1b2ccc620faff132e778e9a1d0..43ca162838856f5e8786f7e37ef2a10245005c48 100644 --- a/core/java/src/net/i2p/crypto/TrustedUpdate.java +++ b/core/java/src/net/i2p/crypto/TrustedUpdate.java @@ -182,14 +182,6 @@ JXQAnA28vDmMMMH/WPbC5ixmJeGGNUiR * @return true if successful */ public boolean addKey(String key, String name) { - String oldName = _trustedKeys.get(key); - // already there? - if (name.equals(oldName)) - return true; - if (oldName != null && !oldName.equals("")) { - _log.error("Key for " + name + " already stored for different name " + oldName + " : " + key); - return false; - } SigningPublicKey signingPublicKey = new SigningPublicKey(); try { // fromBase64() will throw a DFE if length is not right @@ -198,6 +190,14 @@ JXQAnA28vDmMMMH/WPbC5ixmJeGGNUiR _log.error("Invalid signing key for " + name + " : " + key, dfe); return false; } + String oldName = _trustedKeys.get(signingPublicKey); + // already there? + if (name.equals(oldName)) + return true; + if (oldName != null && !oldName.equals("")) { + _log.error("Key for " + name + " already stored for different name " + oldName + " : " + key); + return false; + } if ((!name.equals("")) && _trustedKeys.containsValue(name)) { _log.error("Key mismatch for " + name + ", spoof attempt? : " + key); return false; diff --git a/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java b/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java index 5adadaae222918cdbcd8d714c6c82abe3cc8a2be..bfa09419932f6ac049f5358597f54e7de4289c1e 100644 --- a/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java +++ b/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java @@ -348,7 +348,7 @@ public class OutboundClientMessageOneShotJob extends JobImpl { } if (_log.shouldLog(Log.INFO)) _log.info(getJobId() + ": Expired from cache - lease for " + _toString); - _leaseCache.remove(_to); + _leaseCache.remove(hashPair()); } } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java index 9f21962c197aaf84009640c2489e2d2c195f9597..72c59ad8391661022b13c447713d53920da03142 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java @@ -37,7 +37,6 @@ import net.i2p.util.Log; * */ class FloodOnlySearchJob extends FloodSearchJob { - protected volatile int _lookupsRemaining; private volatile boolean _dead; private long _created; private boolean _shouldProcessDSRM; diff --git a/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java b/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java index a761ef12081908fcb58caed4039b1af882ab95fe..b276737217b716db3318c017fd39e376a888fc35 100644 --- a/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java +++ b/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java @@ -135,7 +135,6 @@ public class PumpedTunnelGateway extends TunnelGateway { if (_log.shouldLog(Log.DEBUG)) _log.debug("Time to add " + queueBuf.size() + " messages to " + toString() + ": " + (complete-startAdd) + " delayed? " + delayedFlush + " remaining: " + remaining - + " prepare: " + (beforeLock-startAdd) + " add: " + (afterAdded-beforeLock) + " preprocess: " + (afterPreprocess-afterAdded) + " expire: " + (afterExpire-afterPreprocess)