2005/5/9

     
 

SSLSocket.h

artefaktur
#ifndef acdkx_net_ssl_SSLSocket_h
#define acdkx_net_ssl_SSLSocket_h

#include <acdk.h>
#include <acdk/net/Socket.h>
#include "Config.h"
//#include "SSLSession.h"
namespace acdkx {
namespace net {
namespace ssl {

USING_CLASS(acdk::net::, Socket);

ACDK_DECL_CLASS(SSLSocket);

/**
  Implements a SSL Socket on basis of TCPSocket.
*/
class ACDKX_NET_SSL_PUBLIC SSLSocket
: extends Socket
{
  ACDK_WITH_METAINFO(SSLSocket)
  
public:
  SSLSocket();
  SSLSocket(IN(RString) host, int port);
  SSLSocket(IN(acdk::net::RInetAddress) address, int port);

  //virtual void addHandshakeCompletedListener(IN(RHandshakeCompletedListener) listener) = 0;
  //virtual void removeHandshakeCompletedListener(IN(RHandshakeCompletedListener) listener) = 0;
  /*
  virtual RStringArray getEnabledCipherSuites();
  virtual void setEnabledCipherSuites(IN(RStringArray) suites);
  virtual RStringArray getEnabledProtocols();
  virtual void setEnabledProtocols(IN(RStringArray) protocols);
  virtual bool getEnableSessionCreation();
  virtual void setEnableSessionCreation(bool enable);
  virtual bool getNeedClientAuth();
  virtual void setNeedClientAuth(bool needAuth);
  virtual RSSLSession getSession();
  virtual RStringArray getSupportedCipherSuites();
  virtual RStringArray getSupportedProtocols();
  virtual bool getUseClientMode();
  virtual void setUseClientMode(bool clientMode);
  virtual bool getWantClientAuth();
  virtual void setWantClientAuth(bool wantAuth);
  virtual void startHandshake() = 0;
  */
 
private:
  
};

} // namespace acdkx
} // namespace net
} // namespace ssl
#endif //acdkx_net_ssl_SSLSocket_h