this class represents a TLS (Transport Layer Security) V1 based secure transport connection.
More...
|
| DcmTLSConnection (int openSocket, SSL *newTLSConnection) |
| constructor.
|
|
virtual | ~DcmTLSConnection () |
| destructor
|
|
virtual DcmTransportLayerStatus | serverSideHandshake () |
| performs server side handshake on established socket.
|
|
virtual DcmTransportLayerStatus | clientSideHandshake () |
| performs client side handshake on established socket.
|
|
virtual DcmTransportLayerStatus | renegotiate (const char *newSuite) |
| performs a re-negotiation of the connection with different connection parameters.
|
|
virtual ssize_t | read (void *buf, size_t nbyte) |
| attempts to read nbyte bytes from the transport connection and writes them into the given buffer.
|
|
virtual ssize_t | write (void *buf, size_t nbyte) |
| attempts to write nbyte bytes from the given buffer to the transport connection.
|
|
virtual void | close () |
| Closes the transport connection.
|
|
virtual unsigned long | getPeerCertificateLength () |
| returns the size in bytes of the peer certificate of a secure connection.
|
|
virtual unsigned long | getPeerCertificate (void *buf, unsigned long bufLen) |
|
virtual OFBool | networkDataAvailable (int timeout) |
| checks if data is available to be read on the transport connection.
|
|
virtual OFBool | isTransparentConnection () |
| returns OFTrue if this connection is a transparent TCP connection, OFFalse if the connection is a secure connection.
|
|
virtual OFString & | dumpConnectionParameters (OFString &str) |
| dump the characteristics of the current connection
|
|
virtual const char * | errorString (DcmTransportLayerStatus code) |
| returns an error string for a given error code.
|
|
| DcmTransportConnection (int openSocket) |
| constructor.
|
|
virtual | ~DcmTransportConnection () |
| destructor
|
|
void | dumpConnectionParameters (STD_NAMESPACE ostream &out) |
| prints the characteristics of the current connection on the given output stream.
|
|
|
SSL * | tlsConnection |
| pointer to the TLS connection structure used by the OpenSSL library
|
|
unsigned long | lastError |
| last error code returned by the OpenSSL library
|
|
|
static OFBool | selectReadableAssociation (DcmTransportConnection *connections[], int connCount, int timeout) |
| indicates which of the specified transport connections is ready for reading.
|
|
int | getSocket () |
| returns the socket file descriptor managed by this object.
|
|
void | setSocket (int socket) |
| set the socket file descriptor managed by this object.
|
|
this class represents a TLS (Transport Layer Security) V1 based secure transport connection.
Definition at line 47 of file tlstrans.h.
DcmTLSConnection::DcmTLSConnection |
( |
int |
openSocket, |
|
|
SSL * |
newTLSConnection |
|
) |
| |
constructor.
- Parameters
-
openSocket | TCP/IP socket to be used for the transport connection. the connection must already be establised on socket level. This object takes over control of the socket. |
newTLSConnection | pointer to intialized OpenSSL connection object to be used for this connection. |
virtual DcmTransportLayerStatus DcmTLSConnection::clientSideHandshake |
( |
| ) |
|
|
virtual |
performs client side handshake on established socket.
This function is used to establish a secure transport connection over the established TCP connection.
- Returns
- TCS_ok if successful, an error code otherwise.
Implements DcmTransportConnection.
virtual void DcmTLSConnection::close |
( |
| ) |
|
|
virtual |
Closes the transport connection.
If a secure connection is used, a closure alert is sent before the connection is closed.
Implements DcmTransportConnection.
dump the characteristics of the current connection
- Parameters
-
str | the string to dump into |
- Returns
- reference to string
Implements DcmTransportConnection.
virtual const char* DcmTLSConnection::errorString |
( |
DcmTransportLayerStatus |
code | ) |
|
|
virtual |
returns an error string for a given error code.
- Parameters
-
- Returns
- description for error code
Implements DcmTransportConnection.
virtual unsigned long DcmTLSConnection::getPeerCertificateLength |
( |
| ) |
|
|
virtual |
returns the size in bytes of the peer certificate of a secure connection.
- Returns
- peer certificate length in bytes
Implements DcmTransportConnection.
virtual OFBool DcmTLSConnection::networkDataAvailable |
( |
int |
timeout | ) |
|
|
virtual |
checks if data is available to be read on the transport connection.
- Parameters
-
timeout | maximum number of seconds to wait if no data is available. If this parameter is 0, the function does not block. |
- Returns
- OFTrue if data is available, OFFalse otherwise.
Implements DcmTransportConnection.
virtual ssize_t DcmTLSConnection::read |
( |
void * |
buf, |
|
|
size_t |
nbyte |
|
) |
| |
|
virtual |
attempts to read nbyte bytes from the transport connection and writes them into the given buffer.
- Parameters
-
buf | buffer |
nbyte | number of bytes to read |
- Returns
- number of bytes read, negative number if unsuccessful.
Implements DcmTransportConnection.
virtual DcmTransportLayerStatus DcmTLSConnection::renegotiate |
( |
const char * |
newSuite | ) |
|
|
virtual |
performs a re-negotiation of the connection with different connection parameters.
Used to change the parameters of the secure transport connection.
- Parameters
-
newSuite | string identifying the ciphersuite to be negotiated. |
- Returns
- TCS_ok if successful, an error code otherwise.
Implements DcmTransportConnection.
virtual DcmTransportLayerStatus DcmTLSConnection::serverSideHandshake |
( |
| ) |
|
|
virtual |
performs server side handshake on established socket.
This function is used to establish a secure transport connection over the established TCP connection.
- Returns
- TCS_ok if successful, an error code otherwise.
Implements DcmTransportConnection.
virtual ssize_t DcmTLSConnection::write |
( |
void * |
buf, |
|
|
size_t |
nbyte |
|
) |
| |
|
virtual |
attempts to write nbyte bytes from the given buffer to the transport connection.
- Parameters
-
buf | buffer |
nbyte | number of bytes to write |
- Returns
- number of bytes written, negative number if unsuccessful.
Implements DcmTransportConnection.
The documentation for this class was generated from the following file: