diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/I2PSOCKSTunnel.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/I2PSOCKSTunnel.java index 9b216e13ae6d5371f4451c46d540583613704e63..627cd0616f7888eccd968ff1a4f485f9541bbb20 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/I2PSOCKSTunnel.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/I2PSOCKSTunnel.java @@ -46,11 +46,11 @@ public class I2PSOCKSTunnel extends I2PTunnelClientBase { try { SOCKSServer serv = SOCKSServerFactory.createSOCKSServer(s); Socket clientSock = serv.getClientSocket(); - I2PSocket destSock = serv.getDestinationI2PSocket(); + I2PSocket destSock = serv.getDestinationI2PSocket(this); new I2PTunnelRunner(clientSock, destSock, sockLock, null, mySockets); } catch (SOCKSException e) { _log.error("Error from SOCKS connection: " + e.getMessage()); closeSocket(s); } } -} \ No newline at end of file +} diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKSServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKSServer.java index caf4d1ce3f2478751998fdfcfce21cf833d6f22d..94602c0c034fb585b47354b2069f852d2877fc26 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKSServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKSServer.java @@ -59,7 +59,7 @@ public abstract class SOCKSServer { * * @return an I2PSocket connected with the destination */ - public I2PSocket getDestinationI2PSocket() throws SOCKSException { + public I2PSocket getDestinationI2PSocket(I2PSOCKSTunnel t) throws SOCKSException { setupServer(); if (connHostName == null) { @@ -79,8 +79,11 @@ public abstract class SOCKSServer { try { if (connHostName.toLowerCase().endsWith(".i2p")) { _log.debug("connecting to " + connHostName + "..."); - I2PSocketManager sm = I2PSocketManagerFactory.createManager(); - destSock = sm.connect(I2PTunnel.destFromName(connHostName), null); + // Let's not due a new Dest for every request, huh? + //I2PSocketManager sm = I2PSocketManagerFactory.createManager(); + //destSock = sm.connect(I2PTunnel.destFromName(connHostName), null); + // TODO get the streaming lib options in there + destSock = t.createI2PSocket(I2PTunnel.destFromName(connHostName)); confirmConnection(); _log.debug("connection confirmed - exchanging data..."); } else {