blocxx
Public Member Functions | Private Member Functions | Private Attributes

BLOCXX_NAMESPACE::SSLSocketImpl Class Reference

#include <SSLSocketImpl.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::SSLSocketImpl:
BLOCXX_NAMESPACE::SocketBaseImpl BLOCXX_NAMESPACE::SelectableIFC BLOCXX_NAMESPACE::IOIFC BLOCXX_NAMESPACE::IntrusiveCountableBase

List of all members.

Public Member Functions

 SSLSocketImpl (SSLClientCtxRef sslCtx)
 SSLSocketImpl ()
 SSLSocketImpl (SocketHandle_t fd, SocketAddress::AddressType addrType, const SSLServerCtxRef &sslCtx)
 This constructor is to be used only for server sockets.
 SSLSocketImpl (SocketHandle_t fd, SocketAddress::AddressType addrType)
 This constructor is to be used only for server sockets.
 SSLSocketImpl (const SocketAddress &addr)
virtual ~SSLSocketImpl ()
virtual void connect (const SocketAddress &addr)
virtual void disconnect ()
Select_t getSelectObj () const
SSL * getSSL () const
 return the SSL structure associated with the socket
bool peerCertVerified () const
 Did the peer certificate pass verification?

Private Member Functions

virtual int readAux (void *dataIn, int dataInLen)
virtual int writeAux (const void *dataOut, int dataOutLen)
void connectSSL ()
virtual bool waitForInput (const Timeout &timeout)
 SSLSocketImpl (const SSLSocketImpl &arg)
SSLSocketImploperator= (const SSLSocketImpl &arg)

Private Attributes

SSL * m_ssl
BIO * m_sbio
SSLClientCtxRef m_sslCtx
OWSSLContext m_owctx

Detailed Description

Definition at line 56 of file SSLSocketImpl.hpp.


Constructor & Destructor Documentation

BLOCXX_NAMESPACE::SSLSocketImpl::SSLSocketImpl ( SSLClientCtxRef  sslCtx)
BLOCXX_NAMESPACE::SSLSocketImpl::SSLSocketImpl ( )
BLOCXX_NAMESPACE::SSLSocketImpl::SSLSocketImpl ( SocketHandle_t  fd,
SocketAddress::AddressType  addrType,
const SSLServerCtxRef sslCtx 
)

This constructor is to be used only for server sockets.

Parameters:
fdA socket handle, presumably created by a ServerSocket's accept().
BLOCXX_NAMESPACE::SSLSocketImpl::SSLSocketImpl ( SocketHandle_t  fd,
SocketAddress::AddressType  addrType 
)

This constructor is to be used only for server sockets.

Parameters:
fdA socket handle, presumably created by a ServerSocket's
addrTypeThe addressType accept().
BLOCXX_NAMESPACE::SSLSocketImpl::SSLSocketImpl ( const SocketAddress addr)
Exceptions:
SocketException
virtual BLOCXX_NAMESPACE::SSLSocketImpl::~SSLSocketImpl ( ) [virtual]
BLOCXX_NAMESPACE::SSLSocketImpl::SSLSocketImpl ( const SSLSocketImpl arg) [private]

Member Function Documentation

virtual void BLOCXX_NAMESPACE::SSLSocketImpl::connect ( const SocketAddress addr) [virtual]
Exceptions:
SocketException

Reimplemented from BLOCXX_NAMESPACE::SocketBaseImpl.

void BLOCXX_NAMESPACE::SSLSocketImpl::connectSSL ( ) [private]
virtual void BLOCXX_NAMESPACE::SSLSocketImpl::disconnect ( ) [virtual]

Reimplemented from BLOCXX_NAMESPACE::SocketBaseImpl.

Select_t BLOCXX_NAMESPACE::SSLSocketImpl::getSelectObj ( ) const [virtual]

Reimplemented from BLOCXX_NAMESPACE::SocketBaseImpl.

SSL* BLOCXX_NAMESPACE::SSLSocketImpl::getSSL ( ) const

return the SSL structure associated with the socket

Returns:
the SSL ptr.
SSLSocketImpl& BLOCXX_NAMESPACE::SSLSocketImpl::operator= ( const SSLSocketImpl arg) [private]
bool BLOCXX_NAMESPACE::SSLSocketImpl::peerCertVerified ( ) const

Did the peer certificate pass verification?

Returns:
true if peer cert passed verification
virtual int BLOCXX_NAMESPACE::SSLSocketImpl::readAux ( void *  dataIn,
int  dataInLen 
) [private, virtual]
Exceptions:
SocketException

Implements BLOCXX_NAMESPACE::SocketBaseImpl.

virtual bool BLOCXX_NAMESPACE::SSLSocketImpl::waitForInput ( const Timeout timeout) [private, virtual]

Reimplemented from BLOCXX_NAMESPACE::SocketBaseImpl.

virtual int BLOCXX_NAMESPACE::SSLSocketImpl::writeAux ( const void *  dataOut,
int  dataOutLen 
) [private, virtual]
Exceptions:
SocketException

Implements BLOCXX_NAMESPACE::SocketBaseImpl.


Member Data Documentation

Definition at line 125 of file SSLSocketImpl.hpp.

Definition at line 112 of file SSLSocketImpl.hpp.

Definition at line 111 of file SSLSocketImpl.hpp.

Definition at line 119 of file SSLSocketImpl.hpp.


The documentation for this class was generated from the following file: