TLSSocket Class Reference

Add a TLS security layer to an existing socket. More...

Inheritance diagram for TLSSocket:
Inheritance graph
[legend]
Collaboration diagram for TLSSocket:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ~TLSSocket ()
void handshake (ref< timeoutHandler > toHandler=NULL)
ref
< security::cert::certificateChain
getPeerCertificates () const
void connect (const string &address, const port_t port)
void disconnect ()
bool isConnected () const
void receive (string &buffer)
size_type receiveRaw (char *buffer, const size_type count)
void send (const string &buffer)
void sendRaw (const char *buffer, const size_type count)
size_type getBlockSize () const

Protected Member Functions

 TLSSocket (ref< TLSSession > session, ref< socket > sok)

Detailed Description

Add a TLS security layer to an existing socket.


Constructor & Destructor Documentation

TLSSocket ( ref< TLSSession session,
ref< socket sok 
) [protected]

Create a new socket object that adds a security layer around an existing socket.

Parameters:
session TLS session
sok socket to wrap
~TLSSocket (  ) 

Member Function Documentation

void connect ( const string address,
const port_t  port 
) [virtual]

Connect to the specified address and port.

Parameters:
address server address (this can be a full qualified domain name or an IP address, doesn't matter)
port server port

Implements socket.

void disconnect (  )  [virtual]

Disconnect from the server.

Implements socket.

TLSSocket::size_type getBlockSize (  )  const [virtual]

Return the preferred maximum block size when reading from or writing to this stream.

Returns:
block size, in bytes

Implements socket.

ref< security::cert::certificateChain > getPeerCertificates (  )  const

Return the peer's certificate (chain) as sent by the peer.

Returns:
server certificate chain, or NULL if the handshake has not been performed yet
void handshake ( ref< timeoutHandler toHandler = NULL  ) 

Starts a TLS handshake on this connection.

Exceptions:
exceptions::tls_exception if a fatal error occurs during the negociation process, exceptions::operation_timed_out if a time-out occurs
bool isConnected (  )  const [virtual]

Test whether this socket is connected.

Returns:
true if the socket is connected, false otherwise

Implements socket.

void receive ( string buffer  )  [virtual]

Receive (text) data from the socket.

Parameters:
buffer buffer in which to write received data

Implements socket.

TLSSocket::size_type receiveRaw ( char *  buffer,
const size_type  count 
) [virtual]

Receive (raw) data from the socket.

Parameters:
buffer buffer in which to write received data
count maximum number of bytes to receive (size of buffer)
Returns:
number of bytes received/written into output buffer

Implements socket.

void send ( const string buffer  )  [virtual]

Send (text) data to the socket.

Parameters:
buffer data to send

Implements socket.

void sendRaw ( const char *  buffer,
const size_type  count 
) [virtual]

Send (raw) data to the socket.

Parameters:
buffer data to send
count number of bytes to send (size of buffer)

Implements socket.


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

Generated by  doxygen 1.6.2