diff --git a/history.txt b/history.txt index b87cc97b3d..3bf3fe85a1 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,11 @@ +2015-12-18 zzz + * BuildHandler: Fix NPE (ticket #1738) + +2015-12-16 zzz + * Profiles: + - Don't use same family in a tunnel + - Reduce IPv6 mask from 8 to 6 + 2015-12-13 zzz * Data: Optimize router info writes, disable caching diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 31c35f8c3e..ea17ad55f3 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,7 +18,7 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 14; + public final static long BUILD = 15; /** for example "-test" */ public final static String EXTRA = ""; diff --git a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java index 0848bbe1bb..c551cc1357 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java +++ b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java @@ -648,7 +648,7 @@ class BuildHandler implements Runnable { // previous test should be sufficient to keep it from getting here but maybe not? if (!isInGW) { Hash from = state.fromHash; - if (from == null) + if (from == null && state.from != null) from = state.from.calculateHash(); if (_context.routerHash().equals(from)) { _context.statManager().addRateData("tunnel.rejectHostile", 1); @@ -658,7 +658,7 @@ class BuildHandler implements Runnable { } if ((!isOutEnd) && (!isInGW)) { Hash from = state.fromHash; - if (from == null) + if (from == null && state.from != null) from = state.from.calculateHash(); // Previous and next hop the same? Don't help somebody be evil. Drop it without a reply. // A-B-C-A is not preventable @@ -762,7 +762,7 @@ class BuildHandler implements Runnable { // We may need another counter above for requests. if (response == 0 && !isInGW) { Hash from = state.fromHash; - if (from == null) + if (from == null && state.from != null) from = state.from.calculateHash(); if (from != null && _throttler.shouldThrottle(from)) { if (_log.shouldLog(Log.WARN))