summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOssama Othman <ossama-othman@users.noreply.github.com>2001-03-18 20:31:07 +0000
committerOssama Othman <ossama-othman@users.noreply.github.com>2001-03-18 20:31:07 +0000
commit304a815862f63f10294ece1b1f15010ee130b6a7 (patch)
treeccbdb7371f4d1c7891b50f746296844f859f8d35
parentef48075f1cab5633d6f1a1b98cbc7c75731d1393 (diff)
downloadATCD-304a815862f63f10294ece1b1f15010ee130b6a7.tar.gz
ChangeLogTag:Sun Mar 18 12:22:08 2001 Ossama Othman <ossama@uci.edu>
-rw-r--r--TAO/ChangeLogs/ChangeLog-02a26
-rw-r--r--TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp5
-rw-r--r--TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h5
-rw-r--r--TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.inl6
-rw-r--r--TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_ORBInitializer.cpp24
-rw-r--r--TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp2
6 files changed, 56 insertions, 12 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a
index 87bd26b2cd2..360713f37e3 100644
--- a/TAO/ChangeLogs/ChangeLog-02a
+++ b/TAO/ChangeLogs/ChangeLog-02a
@@ -1,6 +1,30 @@
+Sun Mar 18 12:22:08 2001 Ossama Othman <ossama@uci.edu>
+
+ * orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp (pre_init):
+
+ Corrected debugging message to display "pre_init()" instead of
+ "post_init()."
+
+ * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp (TAO_SSLIOP_Current):
+ * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h:
+ * orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.inl (tss_slot):
+
+ Added method to set the TSS slot ID assigned to the
+ "SSLIOPCurrent" object. The constructor no longer accepts a TSS
+ slot ID parameter.
+
+ * orbsvcs/orbsvcs/SSLIOP/SSLIOP_ORBInitializer.cpp (post_init):
+
+ Moved call to "this->get_tss_slot_id()" from the pre_init()
+ method to the post_init() method. This was necessary to get
+ around "order of initialization" restrictions imposed by the
+ PortableInterceptor::ORBInitInfo object,
+ i.e. resolve_initial_references() cannot be called from within
+ pre_init().
+
Sun Mar 18 13:24:52 2001 Balachandran Natarajan <bala@cs.wustl.edu>
- * tao/Cache_Entries.inl: Fixed a warning with TRUE_64 builds.
+ * tao/Cache_Entries.inl: Fixed a warning with Tru64 builds.
Sun Mar 18 10:40:32 2001 Ossama Othman <ossama@uci.edu>
diff --git a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
index e38c4f519c7..8f2caefdef2 100644
--- a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
+++ b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.cpp
@@ -12,9 +12,8 @@ ACE_RCSID (TAO_SSLIOP,
# include "SSLIOP_Current.inl"
#endif /* __ACE_INLINE__ */
-TAO_SSLIOP_Current::TAO_SSLIOP_Current (size_t tss_slot,
- const char *orb_id)
- : tss_slot_ (tss_slot),
+TAO_SSLIOP_Current::TAO_SSLIOP_Current (const char *orb_id)
+ : tss_slot_ (0),
orb_id_ (orb_id),
orb_core_ (0),
setup_done_ (0),
diff --git a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h
index fa2f1359e9a..1657ff64369 100644
--- a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h
+++ b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.h
@@ -53,7 +53,7 @@ class TAO_SSLIOP_Export TAO_SSLIOP_Current
public:
/// Constructor.
- TAO_SSLIOP_Current (size_t tss_slot, const char *orb_id);
+ TAO_SSLIOP_Current (const char *orb_id);
/// Return the peer certificate associated with the current
/// request.
@@ -82,6 +82,9 @@ public:
CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ())
ACE_THROW_SPEC ((CORBA::SystemException));
+ /// Set the TSS slot ID assigned to this object.
+ void tss_slot (size_t slot);
+
/// Setup the Current.
void setup (TAO_SSLIOP_Current_Impl *impl);
diff --git a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.inl b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.inl
index e33c55e03a8..d9dc230c9b1 100644
--- a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.inl
+++ b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_Current.inl
@@ -2,6 +2,12 @@
//
// $Id$
+ACE_INLINE void
+TAO_SSLIOP_Current::tss_slot (size_t slot)
+{
+ this->tss_slot_ = slot;
+}
+
ACE_INLINE int
TAO_SSLIOP_Current::implementation (TAO_SSLIOP_Current_Impl *impl)
{
diff --git a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_ORBInitializer.cpp b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_ORBInitializer.cpp
index 22191b632e3..b927f3a363e 100644
--- a/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_ORBInitializer.cpp
+++ b/TAO/orbsvcs/orbsvcs/SSLIOP/SSLIOP_ORBInitializer.cpp
@@ -30,14 +30,9 @@ TAO_SSLIOP_ORBInitializer::pre_init (
{
TAO_ENV_ARG_DEFN;
-
CORBA::String_var orb_id = info->orb_id (ACE_TRY_ENV);
ACE_CHECK;
- size_t tss_slot = this->get_tss_slot_id (info,
- ACE_TRY_ENV);
- ACE_CHECK;
-
// Create the SSLIOP::Current object.
// Note that a new SSLIOP::Current object is created for each ORB.
// It wouldn't be very used to share security context information
@@ -45,7 +40,7 @@ TAO_SSLIOP_ORBInitializer::pre_init (
// example.
SSLIOP::Current_ptr current = SSLIOP::Current::_nil ();
ACE_NEW_THROW_EX (current,
- TAO_SSLIOP_Current (tss_slot, orb_id.in ()),
+ TAO_SSLIOP_Current (orb_id.in ()),
CORBA::NO_MEMORY (
CORBA_SystemException::_tao_minor_code (
TAO_DEFAULT_MINOR_CODE,
@@ -88,6 +83,23 @@ TAO_SSLIOP_ORBInitializer::post_init (
SSLIOP::Current::_narrow (obj.in (), ACE_TRY_ENV);
ACE_CHECK;
+ if (!CORBA::is_nil (ssliop_current.in ()))
+ {
+ TAO_SSLIOP_Current *tao_current =
+ ACE_dynamic_cast (TAO_SSLIOP_Current *,
+ ssliop_current.in ());
+
+ if (tao_current != 0)
+ {
+ size_t slot = this->get_tss_slot_id (info, ACE_TRY_ENV);
+ ACE_CHECK;
+
+ tao_current->tss_slot (slot);
+ }
+ else
+ ACE_THROW (CORBA::INTERNAL ());
+ }
+
// Create the SSLIOP secure invocation server request interceptor.
PortableInterceptor::ServerRequestInterceptor_ptr si =
PortableInterceptor::ServerRequestInterceptor::_nil ();
diff --git a/TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp b/TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp
index 3c56268e921..5a709737ba1 100644
--- a/TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp
+++ b/TAO/orbsvcs/orbsvcs/Security/Security_ORBInitializer.cpp
@@ -32,7 +32,7 @@ TAO_Security_ORBInitializer::pre_init (
{
if (TAO_debug_level > 0)
ACE_ERROR ((LM_ERROR,
- "(%P|%t) Security_ORBInitializer::post_init:\n"
+ "(%P|%t) Security_ORBInitializer::pre_init:\n"
"(%P|%t) Unable to narrow "
"\"PortableInterceptor::ORBInitInfo_ptr\" to\n"
"(%P|%t) \"TAO_ORBInitInfo *.\"\n"));