diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java index ee9305128..58f00b975 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/IRCFilter.java @@ -71,7 +71,7 @@ abstract class IRCFilter { // Allow numerical responses try { - new Integer(command); + Integer.valueOf(command); return s; } catch(NumberFormatException nfe){} diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java index 546e7129d..d56b4ceed 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java @@ -104,19 +104,20 @@ public class SOCKS4aServer extends SOCKSServer { throw new SOCKSException("Invalid port number in request"); } - connHostName = new String(""); + StringBuilder builder = new StringBuilder(); boolean alreadyWarned = false; for (int i = 0; i < 4; ++i) { int octet = in.readByte() & 0xff; - connHostName += Integer.toString(octet); + builder.append(Integer.toString(octet)); if (i != 3) { - connHostName += "."; + builder.append("."); if (octet != 0 && !alreadyWarned) { _log.warn("IPV4 address type in request: " + connHostName + ". Is your client secure?"); alreadyWarned = true; } } } + connHostName = builder.toString(); // Check if the requested IP should be mapped to a domain name String mappedDomainName = getMappedDomainNameForIP(connHostName); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java index f55a80aa7..edbaa8859 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java @@ -198,14 +198,16 @@ public class SOCKS5Server extends SOCKSServer { addressType = in.readUnsignedByte(); switch (addressType) { case AddressType.IPV4: - connHostName = new String(""); + //connHostName = new String(); + StringBuilder builder = new StringBuilder(); for (int i = 0; i < 4; ++i) { int octet = in.readUnsignedByte(); - connHostName += Integer.toString(octet); + builder.append(Integer.toString(octet)); if (i != 3) { - connHostName += "."; + builder.append("."); } } + connHostName = builder.toString(); // Check if the requested IP should be mapped to a domain name String mappedDomainName = getMappedDomainNameForIP(connHostName); if (mappedDomainName != null) { diff --git a/apps/streaming/java/src/net/i2p/client/streaming/PcapWriter.java b/apps/streaming/java/src/net/i2p/client/streaming/PcapWriter.java index 930ced57c..00448f45d 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/PcapWriter.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/PcapWriter.java @@ -238,10 +238,7 @@ public class PcapWriter { seq = pkt.getSequenceNum(); long acked = 0; if (con != null) { - if (isInbound) - acked = getLowestAckedThrough(pkt, con); - else - acked = getLowestAckedThrough(pkt, con); + acked = getLowestAckedThrough(pkt, con); } DataHelper.writeLong(_fos, 4, pkt.getSequenceNum()); DataHelper.writeLong(_fos, 4, acked); diff --git a/core/java/src/net/i2p/util/Log.java b/core/java/src/net/i2p/util/Log.java index 75c56e79c..42f54b06a 100644 --- a/core/java/src/net/i2p/util/Log.java +++ b/core/java/src/net/i2p/util/Log.java @@ -209,14 +209,15 @@ public class Log { return; // catenate all toString()s - String descString = "close() loop in"; + StringBuilder builder = new StringBuilder(); + builder.append("close() loop in"); for (Object o : desc) { - descString += " "; - descString += String.valueOf(o); + builder.append(" "); + builder.append(String.valueOf(o)); } Exception e = new Exception("check stack trace"); - log(level,descString,e); + log(level,builder.toString(),e); } public String getName() { diff --git a/router/java/src/net/i2p/router/Blocklist.java b/router/java/src/net/i2p/router/Blocklist.java index 3a28bd85a..7385d8738 100644 --- a/router/java/src/net/i2p/router/Blocklist.java +++ b/router/java/src/net/i2p/router/Blocklist.java @@ -526,7 +526,8 @@ public class Blocklist { if (pib == null) continue; // O(n**2) for (int i = 0; i < rv.size(); i++) { - if (DataHelper.eq(rv.get(i), pib)) continue; + // findbugs triggered on this, looks like unfinished work + //if (DataHelper.eq(rv.get(i), pib)) continue; } rv.add(pib); } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java index 19ab5c89c..282c11eae 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java @@ -146,7 +146,7 @@ class FloodfillMonitorJob extends JobImpl { final RouterContext rc = getContext(); final String log = String.format( "FF criteria breakdown: happy=%b, capabilities=%s, maxLag=%d, known=%d, " + - "active=%d, participating=%d, offset=%d, ssuAddr=%b", + "active=%d, participating=%d, offset=%d, ssuAddr=%s", happy, rc.router().getRouterInfo().getCapabilities(), rc.jobQueue().getMaxLag(), @@ -154,7 +154,7 @@ class FloodfillMonitorJob extends JobImpl { rc.commSystem().countActivePeers(), rc.tunnelManager().getParticipatingCount(), Math.abs(rc.clock().getOffset()), - rc.router().getRouterInfo().getTargetAddress("SSU") + rc.router().getRouterInfo().getTargetAddress("SSU").toString() ); _log.debug(log); } diff --git a/router/java/src/net/i2p/router/transport/UPnP.java b/router/java/src/net/i2p/router/transport/UPnP.java index 99b30d346..32678f750 100644 --- a/router/java/src/net/i2p/router/transport/UPnP.java +++ b/router/java/src/net/i2p/router/transport/UPnP.java @@ -415,7 +415,7 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { if(getIP == null || !getIP.postControlAction()) return -1; - return Integer.valueOf(getIP.getOutputArgumentList().getArgument("NewUpstreamMaxBitRate").getValue()); + return Integer.parseInt(getIP.getOutputArgumentList().getArgument("NewUpstreamMaxBitRate").getValue()); } /** @@ -429,7 +429,7 @@ class UPnP extends ControlPoint implements DeviceChangeListener, EventListener { if(getIP == null || !getIP.postControlAction()) return -1; - return Integer.valueOf(getIP.getOutputArgumentList().getArgument("NewDownstreamMaxBitRate").getValue()); + return Integer.parseInt(getIP.getOutputArgumentList().getArgument("NewDownstreamMaxBitRate").getValue()); } /** debug only */