#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 347 of file SSLIOP_Endpoint.cpp. References TAO_IIOP_Endpoint::port(), and SSLIOP::SSL::port.
00348 : TAO_SSLIOP_Endpoint ((const ::SSLIOP::SSL *)0, iiop_endp) 00349 { 00350 this->ssl_component_.port = iiop_endp->port (); 00351 } |
|
Destructor.
Definition at line 337 of file SSLIOP_Endpoint.cpp.
00338 { 00339 } |
|
Definition at line 341 of file SSLIOP_Endpoint.cpp.
00342 : TAO_SSLIOP_Endpoint (ssl, 0) 00343 { 00344 } |
|
Return a copy of the corresponding endpoints by allocating memory. Reimplemented from TAO_SSLIOP_Endpoint. Definition at line 388 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().
00389 { 00390 TAO_SSLIOP_Synthetic_Endpoint *endpoint = 0; 00391 00392 // @@ We need to set the priority of the newly formed endpoint. It 00393 // shouldnt be a problem as long as SSL is not used with RTCORBA. 00394 ACE_NEW_RETURN (endpoint, 00395 TAO_SSLIOP_Synthetic_Endpoint (&(this->ssl_component ())), 00396 0); 00397 00398 if (this->credentials_set()) 00399 endpoint->set_sec_attrs (this->qop (),this->trust (), this->credentials ()); 00400 00401 endpoint->iiop_endpoint (this->iiop_endpoint (), true); 00402 endpoint->hash_val_ = this->hash (); 00403 return endpoint; 00404 } |
|
Return true if this endpoint is equivalent to
Reimplemented from TAO_SSLIOP_Endpoint. Definition at line 355 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().
00356 { 00357 TAO_Endpoint *endpt = const_cast<TAO_Endpoint *> (other_endpoint); 00358 00359 TAO_SSLIOP_Endpoint *endpoint = 00360 dynamic_cast<TAO_SSLIOP_Endpoint *> (endpt); 00361 00362 if (endpoint == 0) 00363 return 0; 00364 00365 if ((this->ssl_component ().port != 0 00366 && endpoint->ssl_component ().port != 0 00367 && this->ssl_component ().port != endpoint->ssl_component ().port) 00368 || this->qop () < endpoint->qop ()) 00369 { 00370 return 0; 00371 } 00372 00373 // Comparing the underlying iiop endpoints is wrong, as their port 00374 // numbers often may not make sense, or are not being used anyway. 00375 // Therefore, directly comparing the hosts at this point. See also the 00376 // comments in the hash() method 00377 if (this->iiop_endpoint() == 0 || endpoint->iiop_endpoint() == 0) 00378 return 0; 00379 00380 if ((ACE_OS::strcmp (this->iiop_endpoint()->host (), 00381 endpoint->iiop_endpoint()->host ()) != 0)) 00382 return 0; 00383 00384 return 1; 00385 } |