diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/TunnelConfig.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/TunnelConfig.java index 755fc27198..17cb4e6ac5 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/TunnelConfig.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/TunnelConfig.java @@ -47,7 +47,8 @@ public class TunnelConfig { private String _i2cpPort; private int _tunnelDepth = -1; private int _tunnelQuantity = -1; - private int _tunnelVariance = -1; + // -2 or higher is valid + private int _tunnelVariance = -3; private int _tunnelBackupQuantity = -1; private boolean _connectDelay; private String _customOptions; @@ -801,7 +802,7 @@ public class TunnelConfig { config.setProperty("option.inbound.length", Integer.toString(_tunnelDepth)); config.setProperty("option.outbound.length", Integer.toString(_tunnelDepth)); } - if (_tunnelVariance >= 0) { + if (_tunnelVariance >= -2) { config.setProperty("option.inbound.lengthVariance", Integer.toString(_tunnelVariance)); config.setProperty("option.outbound.lengthVariance", Integer.toString(_tunnelVariance)); } diff --git a/core/java/src/net/i2p/CoreVersion.java b/core/java/src/net/i2p/CoreVersion.java index d189588ecf..0aa44511d5 100644 --- a/core/java/src/net/i2p/CoreVersion.java +++ b/core/java/src/net/i2p/CoreVersion.java @@ -18,7 +18,7 @@ public class CoreVersion { /** deprecated */ public final static String ID = "Monotone"; - public final static String VERSION = "0.9.19"; + public final static String VERSION = "0.9.20"; /** * For Vuze. diff --git a/core/java/src/net/i2p/util/FortunaRandomSource.java b/core/java/src/net/i2p/util/FortunaRandomSource.java index 340b836a46..9688e87648 100644 --- a/core/java/src/net/i2p/util/FortunaRandomSource.java +++ b/core/java/src/net/i2p/util/FortunaRandomSource.java @@ -262,8 +262,14 @@ public class FortunaRandomSource extends RandomSource implements EntropyHarveste /** reseed the fortuna */ @Override public void feedEntropy(String source, byte[] data, int offset, int len) { - synchronized(_fortuna) { - _fortuna.addRandomBytes(data, offset, len); + try { + synchronized(_fortuna) { + _fortuna.addRandomBytes(data, offset, len); + } + } catch (Exception e) { + // AIOOBE seen, root cause unknown, ticket #1576 + Log log = _context.logManager().getLog(FortunaRandomSource.class); + log.warn("feedEntropy()", e); } } diff --git a/history.txt b/history.txt index a8f316f19a..b5ffdbc6bf 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,11 @@ +* 2015-06-02 0.9.20 released + +2015-05-31 zzz + * Fortuna: Catch AIOOBE (ticket #1576) + +2015-05-30 zzz + * i2ptunnel: Fix +/- variance config (ticket #1587) + 2015-05-29 zzz * HTTP client: Fix occasional truncation of compressed responses diff --git a/installer/install.xml b/installer/install.xml index cdbf0a510f..95ed4b1cd4 100644 --- a/installer/install.xml +++ b/installer/install.xml @@ -4,7 +4,7 @@ i2p - 0.9.19 + 0.9.20 diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 98bd96d4ed..a411b00998 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,10 +18,10 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 32; + 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);