|
TAO_SSLIOP
2.1.2
|
IIOP Transport designed to be "SSL aware," i.e. it is aware of the existence of the SSLIOP Transport. It makes sure that SSL session state from a previous connection is not associated with the non-SSL connection handled by this handler. More...
#include <IIOP_SSL_Transport.h>

Overridden Template Methods | |
Please check the documentation in "tao/Transport.h" for more details. | |
| TAO::SSLIOP::Current_var | current_ |
| Reference to the TAO::SSLIOP::Current object. | |
| virtual int | handle_input (TAO_Resume_Handle &rh, ACE_Time_Value *max_wait_time=0) |
| Reference to the TAO::SSLIOP::Current object. | |
Additional Inherited Members | |
Public Types inherited from TAO_IIOP_Transport | |
| enum | Drain_Result_Enum |
Public Types inherited from TAO_Transport | |
Public Attributes inherited from TAO_IIOP_Transport | |
| DR_ERROR | |
| DR_OK | |
| DR_QUEUE_EMPTY | |
| DR_WOULDBLOCK | |
Public Attributes inherited from TAO_Transport | |
Protected Member Functions inherited from TAO_IIOP_Transport | |
| virtual | ~TAO_IIOP_Transport (void) |
| int | process_parsed_messages (TAO_Queued_Data *qd, TAO_Resume_Handle &rh) |
| int | send_message_shared_i (TAO_Stub *stub, TAO_Message_Semantics message_semantics, const ACE_Message_Block *message_block, ACE_Time_Value *max_wait_time) |
| int | queue_message_i (const ACE_Message_Block *message_block, ACE_Time_Value *max_wait_time, bool back=true) |
| ACE_Time_Value const * | io_timeout (TAO::Transport::Drain_Constraints const &dc) const |
| virtual ACE_Event_Handler * | event_handler_i (void) |
| virtual ssize_t | send (iovec *iov, int iovcnt, size_t &bytes_transferred, const ACE_Time_Value *timeout=0) |
| virtual ssize_t | sendfile (TAO_MMAP_Allocator *allocator, iovec *iov, int iovcnt, size_t &bytes_transferred, TAO::Transport::Drain_Constraints const &dc) |
| virtual ssize_t | recv (char *buf, size_t len, const ACE_Time_Value *s=0) |
Protected Attributes inherited from TAO_IIOP_Transport | |
| CORBA::ULong const | tag_ |
| TAO_ORB_Core *const | orb_core_ |
| TAO::Transport_Cache_Manager::HASH_MAP_ENTRY * | cache_map_entry_ |
| TAO_Transport_Mux_Strategy * | tms_ |
| TAO_Wait_Strategy * | ws_ |
| int | bidirectional_flag_ |
| TAO::Connection_Role | opening_connection_role_ |
| TAO_Queued_Message * | head_ |
| TAO_Queued_Message * | tail_ |
| TAO_Incoming_Message_Queue | incoming_message_queue_ |
| TAO::Incoming_Message_Stack | incoming_message_stack_ |
| ACE_Time_Value | current_deadline_ |
| long | flush_timer_id_ |
| TAO_Transport_Timer | transport_timer_ |
| ACE_Lock * | handler_lock_ |
| size_t | id_ |
| unsigned long | purging_order_ |
| size_t | recv_buffer_size_ |
| size_t | sent_byte_count_ |
| bool | is_connected_ |
Protected Attributes inherited from TAO_Transport | |
IIOP Transport designed to be "SSL aware," i.e. it is aware of the existence of the SSLIOP Transport. It makes sure that SSL session state from a previous connection is not associated with the non-SSL connection handled by this handler.
However, this class overrides the handle_input() method to invalidate the current TSS SSL state during a standard IIOP (insecure) upcall. This prevents SSL session state from a previous SSL connection from being associated with non-SSL connections processed by this connection handler. In particular, this is very important for closing a security hole in nested upcalls. For example, an SSLIOP request is made. During that secure upcall, an insecure nested upcall is made. A naive implementation would associate the TSS SSL state from the secure upcall with the insecure upcall. This implementation closes that security hole.
| TAO::IIOP_SSL_Transport::IIOP_SSL_Transport | ( | IIOP_SSL_Connection_Handler * | handler, |
| TAO_ORB_Core * | orb_core | ||
| ) |
Constructor.
| TAO::IIOP_SSL_Transport::~IIOP_SSL_Transport | ( | void | ) |
Default destructor.
|
virtual |
Reference to the TAO::SSLIOP::Current object.
Reimplemented from TAO_IIOP_Transport.
|
protected |
Reference to the TAO::SSLIOP::Current object.
1.8.1.1