Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

TAO_SSLIOP_Endpoint Class Reference

#include <SSLIOP_Endpoint.h>

Inheritance diagram for TAO_SSLIOP_Endpoint:

Inheritance graph
Collaboration diagram for TAO_SSLIOP_Endpoint:

Collaboration graph
List of all members.

Public Member Functions

 TAO_SSLIOP_Endpoint (const ::SSLIOP::SSL *ssl_component, TAO_IIOP_Endpoint *iiop_endp)
virtual ~TAO_SSLIOP_Endpoint (void)
int credentials_set (void) const
TAO_Endpoint Methods
See Endpoint.h for their documentation.

virtual TAO_Endpointnext (void)
virtual int addr_to_string (char *buffer, size_t length)
CORBA::Boolean is_equivalent (const TAO_Endpoint *other_endpoint)
virtual TAO_Endpointduplicate (void)
virtual CORBA::ULong hash (void)
SSLIOP_Endpoint-specific Methods
const ::SSLIOP::SSLssl_component (void) const
 Return SSL component corresponding to this endpoint.
TAO_IIOP_Endpointiiop_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_Addrobject_addr (void) const
 Return the SSLIOP-specific ACE_INET_Addr.
void set_sec_attrs (::Security::QOP qop, const ::Security::EstablishTrust &trust, 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::OwnCredentialscredentials (void) const
 Get the credentials for this endpoint.

Protected Attributes

::SSLIOP::SSL ssl_component_

Private Attributes

ACE_INET_Addr object_addr_
 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.


class TAO_SSLIOP_Profile

Constructor & Destructor Documentation

TAO_SSLIOP_Endpoint::TAO_SSLIOP_Endpoint const ::SSLIOP::SSL ssl_component,
TAO_IIOP_Endpoint iiop_endp


TAO_SSLIOP_Endpoint::~TAO_SSLIOP_Endpoint void   )  [virtual]


Member Function Documentation

int TAO_SSLIOP_Endpoint::addr_to_string char *  buffer,
size_t  length

Implements TAO_Endpoint.

ACE_INLINE TAO::SSLIOP::OwnCredentials * TAO_SSLIOP_Endpoint::credentials void   )  const

Get the credentials for this endpoint.

This method does not follow C++ mapping memory management rules. Specifically, no duplication or reference counting occurs in this method. This is so that no additional locks occur when checking the transport cache.

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.

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,
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.

Friends And Related Function Documentation

friend class TAO_SSLIOP_Profile [friend]

Member Data Documentation

TAO::SSLIOP::OwnCredentials_var TAO_SSLIOP_Endpoint::credentials_ [private]

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_IIOP_Endpoint* TAO_SSLIOP_Endpoint::iiop_endpoint_ [private]

IIOP counterpart.

Since SSLIOP is an 'extension' of IIOP, each SSLIOP_Endpoint contains SSL-specific information plus a pointer to the IIOP_Endpoint containing the IIOP portion of our address.

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.

The documentation for this class was generated from the following files:
Generated on Sat Aug 6 03:42:09 2005 for TAO_SSLIOP by  doxygen