diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java index ab0913695da7f2744db5470d4bf587a91a88abf0..c88fc2f226ed6413f99ba1c21a934941ed36f545 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java @@ -17,6 +17,8 @@ public class I2PTunnelClient extends I2PTunnelClientBase { private static final Log _log = new Log(I2PTunnelClient.class); protected Destination dest; + private static final long DEFAULT_READ_TIMEOUT = -1; // 3*60*1000; + protected long readTimeout = DEFAULT_READ_TIMEOUT; public I2PTunnelClient(int localPort, String destination, Logging l, boolean ownDest, EventDispatcher notifyThis) { super(localPort, ownDest, l, notifyThis, "SynSender"); @@ -45,9 +47,13 @@ public class I2PTunnelClient extends I2PTunnelClientBase { notifyEvent("openClientResult", "ok"); } + public void setReadTimeout(long ms) { readTimeout = ms; } + public long getReadTimeout() { return readTimeout; } + protected void clientConnectionRun(Socket s) { try { I2PSocket i2ps = createI2PSocket(dest); + i2ps.setReadTimeout(readTimeout); new I2PTunnelRunner(s, i2ps, sockLock, null); } catch (Exception ex) { _log.info("Error connecting", ex); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java index 03d4290c463d5657b286b0d904a80c0fb2c0ee71..81aef168067a25b46664c8c96c1420f0d5dc448b 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java @@ -40,8 +40,9 @@ public class I2PTunnelServer extends I2PTunnelTask implements Runnable { private Logging l; + private static final long DEFAULT_READ_TIMEOUT = -1; // 3*60*1000; /** default timeout to 3 minutes - override if desired */ - private long readTimeout = 3*60*1000; + private long readTimeout = DEFAULT_READ_TIMEOUT; public I2PTunnelServer(InetAddress host, int port, String privData, Logging l, EventDispatcher notifyThis) { super(host + ":" + port + " <- " + privData, notifyThis);