Package net.i2p.i2ptunnel.socks
Class I2PSOCKSTunnel
- java.lang.Object
-
- net.i2p.util.EventDispatcherImpl
-
- net.i2p.i2ptunnel.I2PTunnelTask
-
- net.i2p.i2ptunnel.I2PTunnelClientBase
-
- net.i2p.i2ptunnel.socks.I2PSOCKSTunnel
-
- All Implemented Interfaces:
Runnable,EventDispatcher
- Direct Known Subclasses:
I2PSOCKSIRCTunnel
public class I2PSOCKSTunnel extends I2PTunnelClientBase
-
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULTprotected static intINITIAL_SO_TIMEOUTThis is a standard soTimeout, not a total timeout.static StringPROP_PROXY_DEFAULTstatic StringPROP_PROXY_PREFIXadd "default" or port number-
Fields inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
_clientId, _context, _log, _ownDest, dest, l, listenerReady, mySockets, PROP_USE_SSL, sockLock, sockMgr, ss
-
Fields inherited from class net.i2p.i2ptunnel.I2PTunnelTask
open
-
-
Constructor Summary
Constructors Constructor Description I2PSOCKSTunnel(int localPort, Logging l, boolean ownDest, EventDispatcher notifyThis, I2PTunnel tunnel, String pkf)As of 0.9.20 this is fast, and does NOT connect the manager to the router, or open the local socket.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description I2PSocketOptionsbuildOptions(Properties overrides)Because getDefaultOptions() in super() is protectedprotected voidclientConnectionRun(Socket s)Manage a connection in a separate thread.List<String>getDefaultProxies()List<String>getProxies(int port)HashMap<String,List<String>>getProxyMap()-
Methods inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
addSubsession, buildSocketManager, buildSocketManager, buildSocketManager, buildSocketManager, close, closeSocket, createI2PSocket, createI2PSocket, createI2PSocket, destroy, getDefaultOptions, getDefaultOptions, getListenHost, getLocalPort, getSocketManager, getSocketManager, getSocketManager, killSharedClient, manageConnection, optionsUpdated, run, startRunning, verifySocketManager
-
Methods inherited from class net.i2p.i2ptunnel.I2PTunnelTask
connected, disconnected, errorOccurred, getId, getTunnel, isOpen, reportAbuse, routerDisconnected, setId, setName, setTunnel, toString
-
Methods inherited from class net.i2p.util.EventDispatcherImpl
attachEventDispatcher, detachEventDispatcher, getEventDispatcher, getEvents, getEventValue, ignoreEvents, notifyEvent, unIgnoreEvents, waitEventValue
-
-
-
-
Field Detail
-
INITIAL_SO_TIMEOUT
protected static final int INITIAL_SO_TIMEOUT
This is a standard soTimeout, not a total timeout. We have no slowloris protection on the client side. See I2PTunnelHTTPServer or SAM's ReadLine if we need that.- Since:
- 0.9.33
- See Also:
- Constant Field Values
-
PROP_PROXY_PREFIX
public static final String PROP_PROXY_PREFIX
add "default" or port number- See Also:
- Constant Field Values
-
DEFAULT
public static final String DEFAULT
- See Also:
- Constant Field Values
-
PROP_PROXY_DEFAULT
public static final String PROP_PROXY_DEFAULT
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
I2PSOCKSTunnel
public I2PSOCKSTunnel(int localPort, Logging l, boolean ownDest, EventDispatcher notifyThis, I2PTunnel tunnel, String pkf)As of 0.9.20 this is fast, and does NOT connect the manager to the router, or open the local socket. You MUST call startRunning() for that.- Parameters:
pkf- private key file name or null for transient key
-
-
Method Detail
-
clientConnectionRun
protected void clientConnectionRun(Socket s)
Description copied from class:I2PTunnelClientBaseManage a connection in a separate thread. This only works if you do not override manageConnection(). This is run in a thread from an unlimited-size thread pool, so it may block or run indefinitely.- Specified by:
clientConnectionRunin classI2PTunnelClientBase
-
buildOptions
public I2PSocketOptions buildOptions(Properties overrides)
Because getDefaultOptions() in super() is protected- Since:
- 0.8.2
-
-