TAO_SSLIOP
2.3.3
|
#include <SSLIOP_Endpoint.h>
Public Member Functions | |
TAO_SSLIOP_Endpoint (const ::SSLIOP::SSL *ssl_component, TAO_IIOP_Endpoint *iiop_endp) | |
Constructor. More... | |
virtual | ~TAO_SSLIOP_Endpoint (void) |
Destructor. More... | |
TAO_SSLIOP_Endpoint & | operator= (const TAO_SSLIOP_Endpoint &other) |
int | credentials_set (void) const |
TAO_Endpoint Methods | |
See Endpoint.h for their documentation. | |
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. More... | |
TAO_IIOP_Endpoint * | iiop_endpoint (void) const |
Accessor to our IIOP counterpart. More... | |
void | iiop_endpoint (TAO_IIOP_Endpoint *endpoint, bool destroy) |
Mutator to our IIOP counterpart. More... | |
const ACE_INET_Addr & | object_addr (void) const |
Return the SSLIOP-specific ACE_INET_Addr. More... | |
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. More... | |
::Security::EstablishTrust | trust (void) const |
Get the establishment of trust settings for this endpoint. More... | |
TAO::SSLIOP::OwnCredentials * | credentials (void) const |
Get the credentials for this endpoint. More... | |
![]() | |
TAO_Endpoint (CORBA::ULong tag, CORBA::Short priority=TAO_INVALID_PRIORITY) | |
virtual | ~TAO_Endpoint (void) |
CORBA::ULong | tag (void) const |
void | priority (CORBA::Short priority) |
CORBA::Short | priority (void) const |
virtual TAO_Endpoint * | next_filtered (TAO_ORB_Core *, TAO_Endpoint *root) |
Protected Attributes | |
::SSLIOP::SSL | ssl_component_ |
![]() | |
TAO_SYNCH_MUTEX | addr_lookup_lock_ |
CORBA::ULong | hash_val_ |
CORBA::ULong const | tag_ |
CORBA::Short | priority_ |
Private Attributes | |
ACE_INET_Addr | object_addr_ |
TAO_SSLIOP_Endpoint * | next_ |
TAO_IIOP_Endpoint * | iiop_endpoint_ |
IIOP counterpart. More... | |
bool | destroy_iiop_endpoint_ |
::Security::QOP | qop_ |
Quailty-of-Protection settings for this endpoint object. More... | |
::Security::EstablishTrust | trust_ |
Establishment of trust settings for this endpoint object. More... | |
TAO::SSLIOP::OwnCredentials_var | credentials_ |
SSLIOP-specific credentials for this endpoint object. More... | |
int | credentials_set_ |
A flag indicating that credentials_ was explicitly initialized. More... | |
Friends | |
class | TAO_SSLIOP_Profile |
TAO_SSLIOP_Endpoint::TAO_SSLIOP_Endpoint | ( | const ::SSLIOP::SSL * | ssl_component, |
TAO_IIOP_Endpoint * | iiop_endp | ||
) |
Constructor.
|
virtual |
Destructor.
|
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.
TAO::SSLIOP::OwnCredentials * TAO_SSLIOP_Endpoint::credentials | ( | void | ) | const |
Get the credentials for this endpoint.
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.
|
virtual |
Return a copy of the corresponding endpoints by allocating memory.
Implements TAO_Endpoint.
Reimplemented in TAO_SSLIOP_Synthetic_Endpoint.
|
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.
TAO_IIOP_Endpoint * TAO_SSLIOP_Endpoint::iiop_endpoint | ( | void | ) | const |
Accessor to our IIOP counterpart.
void TAO_SSLIOP_Endpoint::iiop_endpoint | ( | TAO_IIOP_Endpoint * | endpoint, |
bool | destroy | ||
) |
Mutator to our IIOP counterpart.
endpoint | The new endpoint |
destroy | If set to true , the TAO::SSLIOP::Endpoint object retains ownership of the given TAO_IIOP_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.
|
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.
const ACE_INET_Addr & TAO_SSLIOP_Endpoint::object_addr | ( | void | ) | const |
Return the SSLIOP-specific ACE_INET_Addr.
TAO_SSLIOP_Endpoint & TAO_SSLIOP_Endpoint::operator= | ( | const TAO_SSLIOP_Endpoint & | other | ) |
Need to have an assignment operator since the SSLIOP_Profile class may have to reorder its list of endpoints based on filtering by the EndpointPolicy.
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.
const ::SSLIOP::SSL & TAO_SSLIOP_Endpoint::ssl_component | ( | void | ) | const |
Return SSL component corresponding to this endpoint.
Security::EstablishTrust TAO_SSLIOP_Endpoint::trust | ( | void | ) | const |
Get the establishment of trust settings for this endpoint.
|
friend |
|
private |
SSLIOP-specific credentials for this endpoint object.
|
private |
A flag indicating that credentials_ was explicitly initialized.
|
private |
Flag that determines whether or not the iiop_endpoint_ member is deallocated with delete().
|
private |
|
private |
IIOP Endpoints can be strung into a list. Return the next endpoint in the list, if any.
|
mutableprivate |
Cached instance of ACE_INET_Addr for use in making invocations, etc.
|
private |
Quailty-of-Protection settings for this endpoint object.
|
protected |
Cache the SSL tagged component in a decoded format. Notice that we do not need to marshal this object!
|
private |
Establishment of trust settings for this endpoint object.