#include <SSLIOP_Endpoint.h>
Inheritance diagram for TAO_SSLIOP_Endpoint:
Public Member Functions | |
TAO_SSLIOP_Endpoint (const ::SSLIOP::SSL *ssl_component, TAO_IIOP_Endpoint *iiop_endp) | |
Constructor. | |
virtual | ~TAO_SSLIOP_Endpoint (void) |
Destructor. | |
int | credentials_set (void) const |
TAO_Endpoint Methods | |
virtual TAO_Endpoint * | next (void) |
virtual int | addr_to_string (char *buffer, size_t length) |
CORBA::Boolean | is_equivalent (const TAO_Endpoint *other_endpoint) |
virtual TAO_Endpoint * | duplicate (void) |
virtual CORBA::ULong | hash (void) |
SSLIOP_Endpoint-specific Methods | |
const ::SSLIOP::SSL & | ssl_component (void) const |
Return SSL component corresponding to this endpoint. | |
TAO_IIOP_Endpoint * | iiop_endpoint (void) const |
Accessor to our IIOP counterpart. | |
void | iiop_endpoint (TAO_IIOP_Endpoint *endpoint, bool destroy) |
Mutator to our IIOP counterpart. | |
const ACE_INET_Addr & | object_addr (void) const |
Return the SSLIOP-specific ACE_INET_Addr. | |
void | set_sec_attrs (::Security::QOP qop, const ::Security::EstablishTrust &trust, const TAO::SSLIOP::OwnCredentials_ptr creds) |
::Security::QOP | qop (void) const |
Get the Quality-of-Protection settings for this endpoint. | |
::Security::EstablishTrust | trust (void) const |
Get the establishment of trust settings for this endpoint. | |
TAO::SSLIOP::OwnCredentials * | credentials (void) const |
Get the credentials for this endpoint. | |
Protected Attributes | |
::SSLIOP::SSL | ssl_component_ |
Private Attributes | |
ACE_INET_Addr | object_addr_ |
TAO_SSLIOP_Endpoint * | next_ |
TAO_IIOP_Endpoint * | iiop_endpoint_ |
IIOP counterpart. | |
bool | destroy_iiop_endpoint_ |
::Security::QOP | qop_ |
Quailty-of-Protection settings for this endpoint object. | |
::Security::EstablishTrust | trust_ |
Establishment of trust settings for this endpoint object. | |
TAO::SSLIOP::OwnCredentials_var | credentials_ |
SSLIOP-specific credentials for this endpoint object. | |
int | credentials_set_ |
A flag indicating that credentials_ was explicitly initialized. | |
Friends | |
class | TAO_SSLIOP_Profile |
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_SSLIOP_Endpoint::TAO_SSLIOP_Endpoint | ( | const ::SSLIOP::SSL * | ssl_component, | |
TAO_IIOP_Endpoint * | iiop_endp | |||
) |
Constructor.
TAO_SSLIOP_Endpoint::~TAO_SSLIOP_Endpoint | ( | void | ) | [virtual] |
Destructor.
int TAO_SSLIOP_Endpoint::addr_to_string | ( | char * | buffer, | |
size_t | length | |||
) | [virtual] |
Implements TAO_Endpoint.
ACE_INLINE TAO::SSLIOP::OwnCredentials * TAO_SSLIOP_Endpoint::credentials | ( | void | ) | const |
Get the credentials for this endpoint.
ACE_INLINE int TAO_SSLIOP_Endpoint::credentials_set | ( | void | ) | const |
Credentials are not supplied by the constructor, and it is valid to have a nil credential, for instance if the SSL_use_certificate() method returns 0. Therefore it is necessary to have a new method to distinguish between a credential that is nil because it has not been set, vs one that was set to nil explicitly.
TAO_Endpoint * TAO_SSLIOP_Endpoint::duplicate | ( | void | ) | [virtual] |
Return a copy of the corresponding endpoints by allocating memory.
Implements TAO_Endpoint.
Reimplemented in TAO_SSLIOP_Synthetic_Endpoint.
CORBA::ULong TAO_SSLIOP_Endpoint::hash | ( | void | ) | [virtual] |
Return a hash value for this object. Note that only the IP address and port are used to generate the hash value. This may cause a few more hash table collisions in the transport cache, because a synthesized SSLIOP endpoints for an address will have the same hash value as a fully qualified one. The redeeming feature is that it makes / bi-directional SSLIOP work by allowing descendent class (Synthetic_Endpoint) instances to be used as keys in the cache manager and match other fully qualified endpoint. (which were used earlier to cache a particular transport)
Implements TAO_Endpoint.
ACE_INLINE void TAO_SSLIOP_Endpoint::iiop_endpoint | ( | TAO_IIOP_Endpoint * | endpoint, | |
bool | destroy | |||
) |
Mutator to our IIOP counterpart.
destroy | If set to true , the TAO::SSLIOP::Endpoint object retains ownership of the given TAO_IIOP_Endpoint. |
TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO_IIOP_Endpoint * TAO_SSLIOP_Endpoint::iiop_endpoint | ( | void | ) | const |
Accessor to our IIOP counterpart.
CORBA::Boolean TAO_SSLIOP_Endpoint::is_equivalent | ( | const TAO_Endpoint * | other_endpoint | ) | [virtual] |
Return true if this endpoint is equivalent to
other_endpoint. | The relationship is defined as equivalency of their qop, hostname and ssl ports (if non-zero). Two endpoints may be equivalent even if their iiop counterparts are not. In fact, there are cases (as with the LPL processing) when those counterparts are not known at all. |
Implements TAO_Endpoint.
Reimplemented in TAO_SSLIOP_Synthetic_Endpoint.
TAO_Endpoint * TAO_SSLIOP_Endpoint::next | ( | void | ) | [virtual] |
Implements TAO_Endpoint.
const ACE_INET_Addr & TAO_SSLIOP_Endpoint::object_addr | ( | void | ) | const |
Return the SSLIOP-specific ACE_INET_Addr.
ACE_INLINE::Security::QOP TAO_SSLIOP_Endpoint::qop | ( | void | ) | const |
Get the Quality-of-Protection settings for this endpoint.
void TAO_SSLIOP_Endpoint::set_sec_attrs | ( | ::Security::QOP | qop, | |
const ::Security::EstablishTrust & | trust, | |||
const TAO::SSLIOP::OwnCredentials_ptr | creds | |||
) |
Set the Quality-of-Protection, establishment of trust, and credentials for this endpoint. This is all done in one function so that the guard may be used uniformly.
ACE_INLINEconst ::SSLIOP::SSL & TAO_SSLIOP_Endpoint::ssl_component | ( | void | ) | const |
Return SSL component corresponding to this endpoint.
ACE_INLINE::Security::EstablishTrust TAO_SSLIOP_Endpoint::trust | ( | void | ) | const |
Get the establishment of trust settings for this endpoint.
friend class TAO_SSLIOP_Profile [friend] |
SSLIOP-specific credentials for this endpoint object.
int TAO_SSLIOP_Endpoint::credentials_set_ [private] |
A flag indicating that credentials_ was explicitly initialized.
bool TAO_SSLIOP_Endpoint::destroy_iiop_endpoint_ [private] |
Flag that determines whether or not the iiop_endpoint_ member is deallocated with delete().
TAO_SSLIOP_Endpoint* TAO_SSLIOP_Endpoint::next_ [private] |
IIOP Endpoints can be stringed into a list. Return the next endpoint in the list, if any.
ACE_INET_Addr TAO_SSLIOP_Endpoint::object_addr_ [mutable, private] |
Cached instance of ACE_INET_Addr for use in making invocations, etc.
::Security::QOP TAO_SSLIOP_Endpoint::qop_ [private] |
Quailty-of-Protection settings for this endpoint object.
::SSLIOP::SSL TAO_SSLIOP_Endpoint::ssl_component_ [protected] |
Cache the SSL tagged component in a decoded format. Notice that we do not need to marshal this object!
::Security::EstablishTrust TAO_SSLIOP_Endpoint::trust_ [private] |
Establishment of trust settings for this endpoint object.