55 lines
1.6 KiB
C++
55 lines
1.6 KiB
C++
//----------------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Intel Corporation, 2006 - 2007.
|
|
//
|
|
// File: SocksSvcHandler.h
|
|
//
|
|
// Contents: Handler of the Socks service.
|
|
//
|
|
// Notes:
|
|
//----------------------------------------------------------------------------
|
|
|
|
#ifndef _MPS_SOCKS_SVC_HANDLER_H__
|
|
#define _MPS_SOCKS_SVC_HANDLER_H__
|
|
|
|
//===================================================
|
|
// INCLUDES
|
|
//===================================================
|
|
#include "TcpSvcHandler.h"
|
|
|
|
/***************************************************************************************
|
|
// Socks_Svc_Handler
|
|
//
|
|
/**************************************************************************************/
|
|
class Socks_Svc_Handler: public Tcp_Svc_Handler
|
|
{
|
|
friend class SocksSupplier;
|
|
friend class SocksConsumer;
|
|
friend class Tcp_Consumer;
|
|
public:
|
|
|
|
//represents the state of SOCKS connection:
|
|
enum SOCKS_STATE{INIT, AUTHENTICATION, NEGOTIATION, WAIT_NEGOTIATION_REP, CONNECTED, CONNECTION_FAILURE};
|
|
//===================================================
|
|
// CTOR / DTOR
|
|
//===================================================
|
|
Socks_Svc_Handler():_socks_state(INIT){};
|
|
virtual ~Socks_Svc_Handler(){};
|
|
|
|
protected:
|
|
virtual Tcp_Supplier* createSupplier(Tcp_Svc_Handler* h);
|
|
virtual Tcp_Consumer* createConsumer(Tcp_Svc_Handler* h);
|
|
virtual STATUS initConnection(){return STATUS_SUCCESS;}
|
|
private:
|
|
|
|
//===================================================
|
|
// Data Member
|
|
//===================================================
|
|
|
|
SOCKS_STATE _socks_state;
|
|
|
|
};
|
|
|
|
|
|
#endif //_MPS_SOCKS_SVC_HANDLER_H__
|