OpenDDS::Security::SSL Namespace Reference

Classes

class  verify_implementation
struct  cache_dsign_algo_impl
struct  deserialize_impl
class  Certificate
class  dh_constructor
class  dh_shared_secret
class  ecdh_constructor
class  ecdh_pubkey_as_octets
class  ecdh_shared_secret_from_octets
class  DHAlgorithm
class  DH_2048_MODP_256_PRIME
class  ECDH_PRIME_256_V1_CEUM
class  DiffieHellman
class  sign_implementation
class  PrivateKey
class  verify_signature_impl
class  SignedDocument
class  SubjectName
class  hash_serialized_impl

Functions

std::ostream & operator<< (std::ostream &lhs, const Certificate &rhs)
bool operator== (const Certificate &lhs, const Certificate &rhs)
bool operator== (const PrivateKey &lhs, const PrivateKey &rhs)
bool operator== (const SignedDocument &lhs, const SignedDocument &rhs)
int make_adjusted_guid (const OpenDDS::DCPS::GUID_t &src, OpenDDS::DCPS::GUID_t &dst, const Certificate &target)
template<size_t Bits>
int make_nonce (std::vector< unsigned char > &nonce)
int make_nonce_256 (std::vector< unsigned char > &nonce)
int make_nonce_256 (DDS::OctetSeq &nonce)
unsigned char offset_1bit (const unsigned char array[], size_t i)
 Gets byte from array as though it were shifted right one bit.
int hash (const std::vector< const DDS::OctetSeq * > &src, DDS::OctetSeq &dst)
int hash_serialized (const DDS::BinaryPropertySeq &src, DDS::OctetSeq &dst)
int sign_serialized (const DDS::BinaryPropertySeq &src, const PrivateKey &key, DDS::OctetSeq &dst)
int verify_serialized (const DDS::BinaryPropertySeq &src, const Certificate &key, const DDS::OctetSeq &signed_data)

Function Documentation

DdsSecurity_Export int OpenDDS::Security::SSL::hash ( const std::vector< const DDS::OctetSeq * > &  src,
DDS::OctetSeq dst 
)
DdsSecurity_Export int OpenDDS::Security::SSL::hash_serialized ( const DDS::BinaryPropertySeq src,
DDS::OctetSeq dst 
)
Returns:
int 0 on success; 1 on failure.

Referenced by OpenDDS::Security::CredentialHash::operator()().

Here is the caller graph for this function:

DdsSecurity_Export int OpenDDS::Security::SSL::make_adjusted_guid ( const OpenDDS::DCPS::GUID_t src,
OpenDDS::DCPS::GUID_t dst,
const Certificate &  target 
)
template<size_t Bits>
int OpenDDS::Security::SSL::make_nonce ( std::vector< unsigned char > &  nonce  )  [inline]

Definition at line 67 of file Utils.cpp.

References ACE_TEXT(), and LM_ERROR.

00068   {
00069     nonce.clear();
00070 
00071     unsigned char tmp[Bits / 8] = { 0 };
00072 
00073     int result = RAND_bytes(tmp, sizeof(tmp));
00074     if (1 == result) {
00075       /* Copy data to nonce */
00076       nonce.insert(nonce.begin(), tmp, tmp + sizeof(tmp));
00077 
00078       return 0;
00079 
00080     } else {
00081       unsigned long err = ERR_get_error();
00082       char msg[256] = { 0 };
00083       ERR_error_string_n(err, msg, sizeof(msg));
00084 
00085       ACE_ERROR((LM_ERROR,
00086                  ACE_TEXT("(%P|%t) SSL::make_nonce: ERROR '%C' returned by RAND_bytes(...)\n"),
00087                  msg));
00088     }
00089 
00090     return 1;
00091   }

Here is the call graph for this function:

DdsSecurity_Export int OpenDDS::Security::SSL::make_nonce_256 ( DDS::OctetSeq nonce  ) 
Returns:
int 0 on success; 1 on failure.
DdsSecurity_Export int OpenDDS::Security::SSL::make_nonce_256 ( std::vector< unsigned char > &  nonce  ) 
Returns:
int 0 on success; 1 on failure.

Referenced by OpenDDS::Security::AuthenticationBuiltInImpl::begin_handshake_reply(), and OpenDDS::Security::AuthenticationBuiltInImpl::begin_handshake_request().

Here is the caller graph for this function:

DdsSecurity_Export unsigned char OpenDDS::Security::SSL::offset_1bit ( const unsigned char  array[],
size_t  i 
)

Gets byte from array as though it were shifted right one bit.

Referenced by OpenDDS::Security::validate_topic_data_guid().

Here is the caller graph for this function:

DdsSecurity_Export std::ostream & OpenDDS::Security::SSL::operator<< ( std::ostream &  lhs,
const Certificate &  rhs 
)
DdsSecurity_Export bool OpenDDS::Security::SSL::operator== ( const SignedDocument &  lhs,
const SignedDocument &  rhs 
)
DdsSecurity_Export bool OpenDDS::Security::SSL::operator== ( const PrivateKey &  lhs,
const PrivateKey &  rhs 
)
DdsSecurity_Export bool OpenDDS::Security::SSL::operator== ( const Certificate &  lhs,
const Certificate &  rhs 
)
DdsSecurity_Export int OpenDDS::Security::SSL::sign_serialized ( const DDS::BinaryPropertySeq src,
const PrivateKey &  key,
DDS::OctetSeq dst 
)
Returns:
int 0 on success; 1 on failure.

Referenced by OpenDDS::Security::AuthenticationBuiltInImpl::begin_handshake_reply(), and OpenDDS::Security::AuthenticationBuiltInImpl::process_handshake_reply().

Here is the caller graph for this function:

DdsSecurity_Export int OpenDDS::Security::SSL::verify_serialized ( const DDS::BinaryPropertySeq src,
const Certificate &  key,
const DDS::OctetSeq signed_data 
)
Returns:
int 0 on success; 1 on failure.

Referenced by OpenDDS::Security::AuthenticationBuiltInImpl::process_final_handshake(), and OpenDDS::Security::AuthenticationBuiltInImpl::process_handshake_reply().

Here is the caller graph for this function:

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 9 Aug 2018 for OpenDDS by  doxygen 1.6.1