00001 #include "orbsvcs/SSLIOP/IIOP_SSL_Transport.h"
00002 #include "orbsvcs/SSLIOP/IIOP_SSL_Connection_Handler.h"
00003 #include "orbsvcs/SSLIOP/SSLIOP_Util.h"
00004
00005 #include "tao/ORB_Core.h"
00006 #include "tao/ORB.h"
00007 #include "tao/Timeprobe.h"
00008 #include "tao/debug.h"
00009
00010
00011 ACE_RCSID (SSLIOP,
00012 IIOP_SSL_Transport,
00013 "IIOP_SSL_Transport.cpp,v 1.8 2006/03/14 06:14:35 jtc Exp")
00014
00015 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00016
00017 TAO::IIOP_SSL_Transport::IIOP_SSL_Transport (
00018 IIOP_SSL_Connection_Handler *handler,
00019 TAO_ORB_Core *orb_core,
00020 CORBA::Boolean flag)
00021 : TAO_IIOP_Transport (handler,
00022 orb_core,
00023 flag)
00024 {
00025 this->current_ =
00026 TAO::SSLIOP::Util::current (orb_core);
00027 }
00028
00029 TAO::IIOP_SSL_Transport::~IIOP_SSL_Transport (void)
00030 {
00031 }
00032
00033 int
00034 TAO::IIOP_SSL_Transport::handle_input (TAO_Resume_Handle &rh,
00035 ACE_Time_Value *max_wait_time,
00036 int block)
00037 {
00038 int result = 0;
00039
00040
00041
00042
00043 TAO::Null_SSL_State_Guard guard (this->current_.in (), result);
00044
00045 if (result != 0)
00046 return -1;
00047
00048 return
00049 this->TAO_IIOP_Transport::handle_input (rh,
00050 max_wait_time,
00051 block);
00052 }
00053
00054 TAO_END_VERSIONED_NAMESPACE_DECL