#include <SSLIOP_Endpoint.h>
Inheritance diagram for TAO_SSLIOP_Synthetic_Endpoint:
Public Member Functions | |
TAO_SSLIOP_Synthetic_Endpoint (TAO_IIOP_Endpoint *iiop_endp) | |
Constructor. | |
virtual | ~TAO_SSLIOP_Synthetic_Endpoint (void) |
Destructor. | |
CORBA::Boolean | is_equivalent (const TAO_Endpoint *other_endpoint) |
virtual TAO_Endpoint * | duplicate (void) |
Private Member Functions | |
TAO_SSLIOP_Synthetic_Endpoint (const::SSLIOP::SSL *ssl) |
|
Constructor.
Definition at line 323 of file SSLIOP_Endpoint.cpp. References TAO_IIOP_Endpoint::port(), and SSLIOP::SSL::port.
00324 : TAO_SSLIOP_Endpoint ((const ::SSLIOP::SSL *)0, iiop_endp) 00325 { 00326 this->ssl_component_.port = iiop_endp->port (); 00327 } |
|
Destructor.
Definition at line 313 of file SSLIOP_Endpoint.cpp.
00314 { 00315 } |
|
Definition at line 317 of file SSLIOP_Endpoint.cpp.
00318 : TAO_SSLIOP_Endpoint (ssl, 0) 00319 { 00320 } |
|
Return a copy of the corresponding endpoints by allocating memory. Reimplemented from TAO_SSLIOP_Endpoint. Definition at line 364 of file SSLIOP_Endpoint.cpp. References ACE_NEW_RETURN, TAO_SSLIOP_Endpoint::credentials(), TAO_SSLIOP_Endpoint::credentials_set(), TAO_SSLIOP_Endpoint::hash(), TAO_Endpoint::hash_val_, TAO_SSLIOP_Endpoint::iiop_endpoint(), TAO_SSLIOP_Endpoint::set_sec_attrs(), and TAO_SSLIOP_Endpoint::trust().
00365 { 00366 TAO_SSLIOP_Synthetic_Endpoint *endpoint = 0; 00367 00368 // @@ We need to set the priority of the newly formed endpoint. It 00369 // shouldnt be a problem as long as SSL is not used with RTCORBA. 00370 ACE_NEW_RETURN (endpoint, 00371 TAO_SSLIOP_Synthetic_Endpoint (&(this->ssl_component ())), 00372 0); 00373 00374 if (this->credentials_set()) 00375 endpoint->set_sec_attrs (this->qop (),this->trust (), this->credentials ()); 00376 00377 endpoint->iiop_endpoint (this->iiop_endpoint (), true); 00378 endpoint->hash_val_ = this->hash (); 00379 return endpoint; 00380 } |
|
Return true if this endpoint is equivalent to
Reimplemented from TAO_SSLIOP_Endpoint. Definition at line 331 of file SSLIOP_Endpoint.cpp. References TAO_IIOP_Endpoint::host(), TAO_SSLIOP_Endpoint::iiop_endpoint(), TAO_SSLIOP_Endpoint::qop(), TAO_SSLIOP_Endpoint::ssl_component(), and ACE_OS::strcmp().
00332 { 00333 TAO_Endpoint *endpt = const_cast<TAO_Endpoint *> (other_endpoint); 00334 00335 TAO_SSLIOP_Endpoint *endpoint = 00336 dynamic_cast<TAO_SSLIOP_Endpoint *> (endpt); 00337 00338 if (endpoint == 0) 00339 return 0; 00340 00341 if ((this->ssl_component ().port != 0 00342 && endpoint->ssl_component ().port != 0 00343 && this->ssl_component ().port != endpoint->ssl_component ().port) 00344 || this->qop () < endpoint->qop ()) 00345 { 00346 return 0; 00347 } 00348 00349 // Comparing the underlying iiop endpoints is wrong, as their port 00350 // numbers often may not make sense, or are not being used anyway. 00351 // Therefore, directly comparing the hosts at this point. See also the 00352 // comments in the hash() method 00353 if (this->iiop_endpoint() == 0 || endpoint->iiop_endpoint() == 0) 00354 return 0; 00355 00356 if ((ACE_OS::strcmp (this->iiop_endpoint()->host (), 00357 endpoint->iiop_endpoint()->host ()) != 0)) 00358 return 0; 00359 00360 return 1; 00361 } |