CoreDX DDS C++ Reference Manual
Related Functions | List of all members
CoreDX_SslTransport Struct Reference

An instance of a Transport that can be added to a DomainParticipant. More...

Related Functions

(Note that these are not member functions.)

DDS_ReturnCode_t CoreDX_SslTransport_get_default_config (CoreDX_SslTransportConfig *config)
DDS_ReturnCode_t CoreDX_SslTransport_get_env_config (CoreDX_SslTransportConfig *config)
DDS_ReturnCode_t CoreDX_SslTransport_clear_config (CoreDX_SslTransportConfig *config)
CoreDX_Transport * CoreDX_SslTransport_create_transport (CoreDX_SslTransportConfig *config)
DDS_ReturnCode_t CoreDX_SslTransport_get_peer_cert (CoreDX_Transport *ssl_transport, DDS_BuiltinTopicKey_t *participant_key, DDS_BuiltinTopicKey_t *entity_key, unsigned char *der_buffer, int *der_buffer_len)

Detailed Description

An instance of a Transport that can be added to a DomainParticipant.

The SslTransport support RTPS over SSL on a TCP/IP network. It can be used for both on-platform and off-platform communications.

See also

Friends And Related Function Documentation

DDS_ReturnCode_t CoreDX_SslTransport_clear_config ( CoreDX_SslTransportConfig config)

Clears any dynamic memory allocated during initialization of the CoreDX_SslTransportConfig object.

CoreDX_Transport * CoreDX_SslTransport_create_transport ( CoreDX_SslTransportConfig config)

Allocate and initialize a CoreDX_SslTransport object instance. The returned CoreDX_Transport object can be added to a single DomainParticipant.

The DomainParticipant takes ownership of the provided transport; when the DomainParticipant is deleted, it will release the resources of all added transports.
DDS_ReturnCode_t CoreDX_SslTransport_get_default_config ( CoreDX_SslTransportConfig config)

Initialize the SslTransportConfig object with default values. Currently assigned values may be overwritten by defaults.

DDS_ReturnCode_t CoreDX_SslTransport_get_env_config ( CoreDX_SslTransportConfig config)

Query for environment variables that impact ssl transport configuration. Load the values (if any) into the SslTransportConfig object. Currently assigned values may be overwritten by values derived from environment variables.

DDS_ReturnCode_t CoreDX_SslTransport_get_peer_cert ( CoreDX_Transport *  ssl_transport,
DDS_BuiltinTopicKey_t *  participant_key,
DDS_BuiltinTopicKey_t *  entity_key,
unsigned char *  der_buffer,
int *  der_buffer_len 

Find the X509 certificate provided the the remote peer identified by the provided 'key' values. The X509 certificate will be put into the buffer pointed to by 'der_buffer'. The X509 data will be in DER format.

If 'der_buffer' and 'der_buffer_len' are both NULL, then DDS_RETCODE_BAD_PARAMETER is returned.

If the 'der_buffer' pointer is 'NULL', then the number of bytes required to hold the DER encoded X509 certificate will be written into memory pointed to by the 'der_buffer_len' variable.

If the 'der_buffer' pointer is not 'NULL', then the DER certificate is written into the buffer if it will fit (the buffer size is taken to be the value pointed to by 'der_buffer_len').

If the buffer is big enough: 1) the cert is written into the buffer, 2) the value pointed to by 'der_buffer_len' is adjusted to indicate the actual size of the data, and 3) DDS_RETCODE_OK is returned.

If the buffer is not large enough: then 1) the value pointed to by 'der_buffer_len' is adjusted to indicate the actual size of the data, and 2) DDS_RETCODE_OUT_OF_RESOURCES is returned.

If the transport can not find an entity that matches the provided key value, then DDS_RETCODE_NO_DATA is returned, and no parameters are modified.

© 2009-2017 Twin Oaks Computing, Inc
Castle Rock, CO 80108
All rights reserved.