net.i2p.i2ptunnel
Class I2PTunnelConnectClient
java.lang.Object
net.i2p.i2ptunnel.I2PTunnelTask
net.i2p.i2ptunnel.I2PTunnelClientBase
net.i2p.i2ptunnel.I2PTunnelHTTPClientBase
net.i2p.i2ptunnel.I2PTunnelConnectClient
- All Implemented Interfaces:
- Runnable, EventDispatcher
public class I2PTunnelConnectClient
- extends I2PTunnelHTTPClientBase
- implements Runnable
Supports the following:
(where protocol is generally HTTP/1.1 but is ignored)
(where host is one of:
example.i2p
52chars.b32.i2p
516+charsbase64
example.com (sent to one of the configured proxies)
)
(port and protocol are ignored for i2p destinations)
CONNECT host
CONNECT host protocol
CONNECT host:port
CONNECT host:port protocol (this is the standard)
Additional lines after the CONNECT line but before the blank line are ignored and stripped.
The CONNECT line is removed for .i2p accesses
but passed along for outproxy accesses.
Ref:
INTERNET-DRAFT Ari Luotonen
Expires: September 26, 1997 Netscape Communications Corporation
March 26, 1997
Tunneling SSL Through a WWW Proxy
- Author:
- zzz a stripped-down I2PTunnelHTTPClient
Fields inherited from class net.i2p.i2ptunnel.I2PTunnelHTTPClientBase |
__clientId, __requestId, _errorDir, _proxyList, DEFAULT_READ_TIMEOUT, ERR_NO_OUTPROXY, PROP_AUTH, PROP_OUTPROXY_AUTH, PROP_OUTPROXY_PW, PROP_OUTPROXY_PW_PREFIX, PROP_OUTPROXY_USER, PROP_OUTPROXY_USER_PREFIX, PROP_PW, PROP_PW_PREFIX, PROP_USER |
Fields inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase |
_clientId, _context, _executor, _log, _ownDest, DEFAULT_CONNECT_TIMEOUT, dest, l, mySockets, sockLock, sockMgr |
Methods inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase |
buildSocketManager, buildSocketManager, buildSocketManager, buildSocketManager, close, closeSocket, createI2PSocket, createI2PSocket, getDefaultOptions, getListenHost, getLocalPort, getSocketManager, getSocketManager, getSocketManager, manageConnection, run, startRunning, verifySocketManager |
Methods inherited from class net.i2p.i2ptunnel.I2PTunnelTask |
attachEventDispatcher, detachEventDispatcher, disconnected, errorOccurred, getEventDispatcher, getEvents, getEventValue, getId, getTunnel, ignoreEvents, isOpen, notifyEvent, reportAbuse, routerDisconnected, setId, setName, setTunnel, toString, unIgnoreEvents, waitEventValue |
Methods inherited from interface java.lang.Runnable |
run |
I2PTunnelConnectClient
public I2PTunnelConnectClient(int localPort,
Logging l,
boolean ownDest,
String wwwProxy,
EventDispatcher notifyThis,
I2PTunnel tunnel)
throws IllegalArgumentException
- Throws:
IllegalArgumentException
- if the I2PTunnel does not contain
valid config to contact the router
getDefaultOptions
protected I2PSocketOptions getDefaultOptions()
- create the default options (using the default timeout, etc)
- Overrides:
getDefaultOptions
in class I2PTunnelClientBase
clientConnectionRun
protected void clientConnectionRun(Socket s)
- Description copied from class:
I2PTunnelClientBase
- Manage a connection in a separate thread. This only works if
you do not override manageConnection()
- Specified by:
clientConnectionRun
in class I2PTunnelClientBase