PSocksProtocol Class Reference

#include <socks.h>

Inheritance diagram for PSocksProtocol:

PSocksSocket PSocksUDPSocket PSocks4Socket PSocks5Socket List of all members.

Public Types

enum  { DefaultServerPort = 1080 }

Public Member Functions

 PSocksProtocol (WORD port)
virtual ~PSocksProtocol ()
BOOL SetServer (const PString &hostname, const char *service="socks 1080")
BOOL SetServer (const PString &hostname, WORD port)
void SetAuthentication (const PString &username, const PString &password)

Protected Member Functions

BOOL ConnectSocksServer (PTCPSocket &thisSocket)
virtual void SetErrorCodes (PChannel::Errors errCode, int osErr)=0
virtual BOOL SendSocksCommand (PTCPSocket &socket, BYTE command, const char *hostname, PIPSocket::Address addr)
virtual BOOL ReceiveSocksResponse (PTCPSocket &socket, PIPSocket::Address &addr, WORD &port)

Protected Attributes

PString serverHost
WORD serverPort
PString authenticationUsername
PString authenticationPassword
PIPSocket::Address remoteAddress
WORD remotePort
PIPSocket::Address localAddress
WORD localPort

Detailed Description

Base class for implementing the SOCKS protocol for use with PSocksSocket and PSocksUDPSocket.


Member Enumeration Documentation

anonymous enum

Enumerator:
DefaultServerPort 


Constructor & Destructor Documentation

PSocksProtocol::PSocksProtocol ( WORD  port  ) 

virtual PSocksProtocol::~PSocksProtocol (  )  [inline, virtual]


Member Function Documentation

BOOL PSocksProtocol::SetServer ( const PString hostname,
const char *  service = "socks 1080" 
)

BOOL PSocksProtocol::SetServer ( const PString hostname,
WORD  port 
)

void PSocksProtocol::SetAuthentication ( const PString username,
const PString password 
)

Set the username and password for the SOCKS server authentication. This is for the cleartext authentication only, GSSAPI, Kerberos etc is not yet supported.

BOOL PSocksProtocol::ConnectSocksServer ( PTCPSocket thisSocket  )  [protected]

virtual void PSocksProtocol::SetErrorCodes ( PChannel::Errors  errCode,
int  osErr 
) [protected, pure virtual]

Implemented in PSocksSocket, and PSocksUDPSocket.

virtual BOOL PSocksProtocol::SendSocksCommand ( PTCPSocket socket,
BYTE  command,
const char *  hostname,
PIPSocket::Address  addr 
) [protected, virtual]

Reimplemented in PSocks4Socket.

virtual BOOL PSocksProtocol::ReceiveSocksResponse ( PTCPSocket socket,
PIPSocket::Address addr,
WORD &  port 
) [protected, virtual]

Reimplemented in PSocks4Socket.


Member Data Documentation

PString PSocksProtocol::serverHost [protected]

WORD PSocksProtocol::serverPort [protected]

PString PSocksProtocol::authenticationUsername [protected]

PString PSocksProtocol::authenticationPassword [protected]

PIPSocket::Address PSocksProtocol::remoteAddress [protected]

WORD PSocksProtocol::remotePort [protected]

PIPSocket::Address PSocksProtocol::localAddress [protected]

WORD PSocksProtocol::localPort [protected]


The documentation for this class was generated from the following file:
Generated on Fri Mar 7 06:25:07 2008 for PTLib by  doxygen 1.5.1