net.i2p.i2ptunnel.socks
Class SOCKSServer

java.lang.Object
  extended by net.i2p.i2ptunnel.socks.SOCKSServer
Direct Known Subclasses:
SOCKS4aServer, SOCKS5Server

public abstract class SOCKSServer
extends java.lang.Object

Abstract base class used by all SOCKS servers.

Author:
human

Field Summary
protected  java.lang.String connHostName
           
protected  int connPort
           
 
Constructor Summary
SOCKSServer()
           
 
Method Summary
protected abstract  void confirmConnection()
          Confirm to the client that the connection has succeeded
abstract  java.net.Socket getClientSocket()
          Get a socket that can be used to send/receive 8-bit clean data to/from the client.
abstract  I2PSocket getDestinationI2PSocket(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 abstract  void setupServer()
          Perform server initialization (expecially regarding protected variables).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

connHostName

protected java.lang.String connHostName

connPort

protected int connPort
Constructor Detail

SOCKSServer

public SOCKSServer()
Method Detail

setupServer

protected abstract void setupServer()
                             throws SOCKSException
Perform server initialization (expecially regarding protected variables).

Throws:
SOCKSException

getClientSocket

public abstract java.net.Socket getClientSocket()
                                         throws SOCKSException
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

protected abstract void confirmConnection()
                                   throws SOCKSException
Confirm to the client that the connection has succeeded

Throws:
SOCKSException

getDestinationI2PSocket

public abstract I2PSocket getDestinationI2PSocket(I2PSOCKSTunnel t)
                                           throws SOCKSException
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