public class I2PTunnelDCCServer extends I2PTunnelServer
direct conn <---> I2PTunnelDCCServer <--------------->I2PTunnelDCCClient <----> originating responding chat client chat client CHAT ---> I2PTunnelIRCClient --> IRC server --> I2TunnelIRCClient -----> SEND ---> I2PTunnelIRCClient --> IRC server --> I2TunnelIRCClient -----> RESUME <--- I2PTunnelIRCClient <-- IRC server <-- I2TunnelIRCClient <----- ACCEPT ---> I2PTunnelIRCClient --> IRC server --> I2TunnelIRCClient ----->
__serverId, _clientExecutor, _log, bidir, i2pss, l, localPort, PROP_ALT_PKF, PROP_UNIQUE_LOCAL, PROP_USE_SSL, readTimeout, remoteHost, remotePort, slock, sockMgr, sslLock, task
open
Constructor and Description |
---|
I2PTunnelDCCServer(I2PSocketManager sktMgr,
Logging l,
EventDispatcher notifyThis,
I2PTunnel tunnel)
There's no support for unsolicited incoming I2P connections,
so there's no server host or port parameters.
|
Modifier and Type | Method and Description |
---|---|
int |
acceptOutgoing(int port)
An outgoing ACCEPT response
|
protected void |
blockingHandle(I2PSocket socket)
An incoming DCC connection, only accept for a known port.
|
boolean |
close(boolean forced)
Note that the tunnel can be reopened after this by calling startRunning().
|
int |
newOutgoing(byte[] ip,
int port,
String type)
An outgoing DCC request
|
int |
resumeIncoming(int port)
An incoming RESUME request
|
destroy, getHandlerCount, getReadTimeout, getSocket, getSocket, optionsUpdated, run, setReadTimeout, shouldUsePool, startRunning
connected, disconnected, errorOccurred, getId, getTunnel, isOpen, reportAbuse, routerDisconnected, setId, setName, setTunnel, toString
attachEventDispatcher, detachEventDispatcher, getEventDispatcher, getEvents, getEventValue, ignoreEvents, notifyEvent, unIgnoreEvents, waitEventValue
public I2PTunnelDCCServer(I2PSocketManager sktMgr, Logging l, EventDispatcher notifyThis, I2PTunnel tunnel)
sktMgr
- an existing socket managerIllegalArgumentException
- if the I2PTunnel does not contain
valid config to contact the routerprotected void blockingHandle(I2PSocket socket)
blockingHandle
in class I2PTunnelServer
public boolean close(boolean forced)
I2PTunnelServer
close
in class I2PTunnelServer
public int newOutgoing(byte[] ip, int port, String type)
ip
- local irc client IPport
- local irc client porttype
- ignoredpublic int resumeIncoming(int port)
port
- local dcc server I2P portpublic int acceptOutgoing(int port)
port
- local irc client DCC port