From 939329a96c4539b6f06b10ad84bdc42aec59ebad Mon Sep 17 00:00:00 2001 From: zzz Date: Mon, 20 Feb 2012 22:10:30 +0000 Subject: [PATCH] i2ptunnel: Fix streamr session registration --- .../java/src/net/i2p/i2ptunnel/I2PTunnelTask.java | 8 ++++++++ .../i2p/i2ptunnel/udpTunnel/I2PTunnelUDPClientBase.java | 1 + .../i2p/i2ptunnel/udpTunnel/I2PTunnelUDPServerBase.java | 1 + history.txt | 1 + router/java/src/net/i2p/router/RouterVersion.java | 2 +- 5 files changed, 12 insertions(+), 1 deletion(-) diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelTask.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelTask.java index e81e58dddc..f3578997f5 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelTask.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelTask.java @@ -60,6 +60,14 @@ public abstract class I2PTunnelTask extends EventDispatcherImpl { public abstract boolean close(boolean forced); + /** + * For tasks that don't call I2PTunnel.addSession() directly + * @since 0.8.13 + */ + public void connected(I2PSession session) { + getTunnel().addSession(session); + } + public void disconnected(I2PSession session) { routerDisconnected(); getTunnel().removeSession(session); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPClientBase.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPClientBase.java index d9c5fcd03d..4d592678db 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPClientBase.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPClientBase.java @@ -107,6 +107,7 @@ import net.i2p.util.Log; try { ByteArrayInputStream in = new ByteArrayInputStream(key); _session = client.createSession(in, tunnel.getClientOptions()); + connected(_session); } catch(Exception exc) { throw new RuntimeException("failed to create session", exc); } diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPServerBase.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPServerBase.java index 4d43d53083..a301f5d6bc 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPServerBase.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/udpTunnel/I2PTunnelUDPServerBase.java @@ -103,6 +103,7 @@ public class I2PTunnelUDPServerBase extends I2PTunnelTask implements Source, Sin try { _session = client.createSession(privData, getTunnel().getClientOptions()); + connected(_session); } catch(I2PSessionException exc) { throw new RuntimeException("failed to create session", exc); } diff --git a/history.txt b/history.txt index 49b6717b51..ac90d5b0fb 100644 --- a/history.txt +++ b/history.txt @@ -1,4 +1,5 @@ 2012-02-20 zzz + * i2ptunnel: Fix streamr session registration * Streaming: Fix race NPE (thx echelon) 2012-02-17 zzz diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 25340f779d..421ff4f630 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 = 15; + public final static long BUILD = 16; /** for example "-test" */ public final static String EXTRA = "-rc";