#include <IIOP_SSL_Connection_Handler.h>
Collaboration diagram for TAO::Null_SSL_State_Guard:
Public Member Functions | |
Null_SSL_State_Guard (TAO::SSLIOP::Current_ptr current, int &result) | |
Constructor that sets up the null TSS SSL state. | |
~Null_SSL_State_Guard (void) | |
Destructor that restores the previous TSS SSL state. | |
Private Attributes | |
TAO::SSLIOP::Current_Impl * | previous_current_impl_ |
TAO::SSLIOP::Current_ptr | current_ |
Reference to the SSLIOP::Current object. | |
bool | setup_done_ |
This guard is used to make TSS SSL state configuration and deconfiguration during an upcall exception safe. Exceptions are not supposed to be propagated up to the scope this guard is used in, so this guard may be unnecessary. However, since proper TSS SSL state configuration/deconfiguration is critical to proper security support, this guard is used to ensure that configuration/deconfiguration is exception safe.
Definition at line 80 of file IIOP_SSL_Connection_Handler.h.
TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO::Null_SSL_State_Guard::Null_SSL_State_Guard | ( | TAO::SSLIOP::Current_ptr | current, | |
int & | result | |||
) |
Constructor that sets up the null TSS SSL state.
Definition at line 8 of file IIOP_SSL_Connection_Handler.inl.
References Null_SSL_State_Guard(), and TAO::SSLIOP::Current::setup().
Referenced by Null_SSL_State_Guard().
00011 : previous_current_impl_ (0), 00012 current_ (current), // No need to duplicate 00013 setup_done_ (false) 00014 { 00015 // Invalidate the TSS SSL session state to make sure that SSL state 00016 // from a previous SSL connection is not confused with this non-SSL 00017 // connection. 00018 current->setup (this->previous_current_impl_, 00019 0, // Null SSL state 00020 this->setup_done_); 00021 00022 result = 0; 00023 }
ACE_INLINE TAO::Null_SSL_State_Guard::~Null_SSL_State_Guard | ( | void | ) |
Destructor that restores the previous TSS SSL state.
Definition at line 26 of file IIOP_SSL_Connection_Handler.inl.
References current_, TAO::SSLIOP::Current::teardown(), and ~Null_SSL_State_Guard().
Referenced by ~Null_SSL_State_Guard().
00027 { 00028 // Restore the previous TSS SSL state. 00029 this->current_->teardown (this->previous_current_impl_, 00030 this->setup_done_); 00031 }
TAO::SSLIOP::Current_ptr TAO::Null_SSL_State_Guard::current_ [private] |
Reference to the SSLIOP::Current object.
Definition at line 102 of file IIOP_SSL_Connection_Handler.h.
Referenced by ~Null_SSL_State_Guard().
TAO::SSLIOP::Current_Impl* TAO::Null_SSL_State_Guard::previous_current_impl_ [private] |
It is stored here until the invocation completes, after which it placed back into TSS.
Definition at line 99 of file IIOP_SSL_Connection_Handler.h.
bool TAO::Null_SSL_State_Guard::setup_done_ [private] |
Flag that specifies whether or not setup of the SSLIOP::Current object completed for the current thread and invocation.
Definition at line 106 of file IIOP_SSL_Connection_Handler.h.