Package net.i2p.i2ptunnel.socks
Class SOCKSServer
java.lang.Object
net.i2p.i2ptunnel.socks.SOCKSServer
- Direct Known Subclasses:
 SOCKS4aServer,SOCKS5Server
abstract class SOCKSServer extends Object
Abstract base class used by all SOCKS servers.
- Author:
 - human
 
- 
Field Summary
Fields Modifier and Type Field Description protected I2PAppContext_contextprotected Log_logprotected intaddressTypeprotected SocketclientSockprotected StringconnHostNameprotected intconnPortprotected Propertiesprops - 
Constructor Summary
Constructors Modifier Constructor Description protectedSOCKSServer(I2PAppContext ctx, Socket clientSock, Properties props) - 
Method Summary
Modifier and Type Method Description protected abstract voidconfirmConnection()Confirm to the client that the connection has succeededabstract SocketgetClientSocket()Get a socket that can be used to send/receive 8-bit clean data to/from the client.abstract I2PSocketgetDestinationI2PSocket(I2PSOCKSTunnel t)Get an I2PSocket that can be used to send/receive 8-bit clean data to/from the destination of the SOCKS connection.protected StringgetMappedDomainNameForIP(String ip)IP to domain name mapping support.protected OutproxygetOutproxyPlugin()protected abstract voidsetupServer()Perform server initialization (expecially regarding protected variables). 
- 
Field Details
- 
connHostName
 - 
connPort
protected int connPort - 
addressType
protected int addressType - 
_context
 - 
clientSock
 - 
props
 - 
_log
 
 - 
 - 
Constructor Details
- 
SOCKSServer
- Since:
 - 0.9.27
 
 
 - 
 - 
Method Details
- 
getMappedDomainNameForIP
IP to domain name mapping support. This matches the given IP string against a user-set list of mappings. This enables applications which do not properly support the SOCKS5 DOMAINNAME feature to be used with I2P.- Parameters:
 ip- The IP address to check.- Returns:
 - The domain name if a mapping is found, or null otherwise.
 - Since:
 - 0.9.5
 
 - 
setupServer
Perform server initialization (expecially regarding protected variables).- Throws:
 SOCKSException
 - 
getClientSocket
Get a socket that can be used to send/receive 8-bit clean data to/from the client.- Returns:
 - a Socket connected with the client
 - Throws:
 SOCKSException
 - 
confirmConnection
Confirm to the client that the connection has succeeded- Throws:
 SOCKSException
 - 
getDestinationI2PSocket
Get an I2PSocket that can be used to send/receive 8-bit clean data to/from the destination of the SOCKS connection.- Returns:
 - an I2PSocket connected with the destination
 - Throws:
 SOCKSException
 - 
getOutproxyPlugin
- Returns:
 - null if disabled or not installed
 - Since:
 - 0.9.27
 
 
 -