diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2001-07-24 18:13:20 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2001-07-24 18:13:20 +0000 |
commit | 1ab6b96f0a61e26473c9230733609909306322c4 (patch) | |
tree | cd0ee7fa5b131bd3ec91f0a83867a7969ebeeebe | |
parent | 2040bcbe6b2ba82177baaf3f8b0c5013f7932388 (diff) | |
download | ATCD-1ab6b96f0a61e26473c9230733609909306322c4.tar.gz |
ChangeLogTag:Tue Jul 24 11:12:25 2001 Ossama Othman <ossama@uci.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 18 | ||||
-rw-r--r-- | TAO/tao/IIOP_Acceptor.cpp | 12 | ||||
-rw-r--r-- | TAO/tao/Strategies/DIOP_Acceptor.cpp | 9 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Acceptor.cpp | 9 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Acceptor.cpp | 7 |
5 files changed, 48 insertions, 7 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index c0f8d9e67c4..9d94be388c5 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,21 @@ +Tue Jul 24 11:12:25 2001 Ossama Othman <ossama@uci.edu> + + * tao/IIOP_Acceptor.cpp (create_shared_profile, + create_new_profile): + * tao/Strategies/DIOP_Acceptor.cpp + (create_shared_profile, create_new_profile): + * tao/Strategies/SHMIOP_Acceptor.cpp (create_profile): + * tao/Strategies/UIOP_Acceptor.cpp (create_profile): + + Do not add any tagged components to the profile if an IIOP 1.0 + endpoint/profile is being created. Tagged components were + introduced in IIOP 1.1. The same convention is adopted for the + other pluggable protocols distributed with TAO (UIOP, SHMIOP, + and DIOP). SSLIOP already does this check since it requires + tagged components in order to convey security association + information to the client. These changes address + interoperability issues. + Tue Jul 24 12:33:17 2001 Balachandran Natarajan <bala@cs.wustl.edu> * tests/Big_Reply/Client_Task.cpp (validate_connection): Some diff --git a/TAO/tao/IIOP_Acceptor.cpp b/TAO/tao/IIOP_Acceptor.cpp index 4cfe224bae8..c854f691e4e 100644 --- a/TAO/tao/IIOP_Acceptor.cpp +++ b/TAO/tao/IIOP_Acceptor.cpp @@ -133,7 +133,11 @@ TAO_IIOP_Acceptor::create_new_profiles (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () == 0) + // Do not add any tagged components to the profile if configured + // by the user not to do so, or if an IIOP 1.0 endpoint is being + // created (IIOP 1.0 did not support tagged components). + if (this->orb_core_->orb_params ()->std_profile_components () == 0 + || (this->version_.major == 1 && this->version_.minor == 0)) continue; pfile->tagged_components ().set_orb_type (TAO_ORB_TYPE); @@ -190,7 +194,11 @@ TAO_IIOP_Acceptor::create_shared_profile (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () != 0) + // Do not add any tagged components to the profile if configured + // by the user not to do so, or if an IIOP 1.0 endpoint is being + // created (IIOP 1.0 did not support tagged components). + if (this->orb_core_->orb_params ()->std_profile_components () != 0 + && (this->version_.major >= 1 && this->version_.minor >= 1)) { iiop_profile->tagged_components ().set_orb_type (TAO_ORB_TYPE); diff --git a/TAO/tao/Strategies/DIOP_Acceptor.cpp b/TAO/tao/Strategies/DIOP_Acceptor.cpp index d0febad299a..f0a8acabeb9 100644 --- a/TAO/tao/Strategies/DIOP_Acceptor.cpp +++ b/TAO/tao/Strategies/DIOP_Acceptor.cpp @@ -98,7 +98,11 @@ TAO_DIOP_Acceptor::create_new_profiles (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () == 0) + // Do not add any tagged components to the profile if configured + // by the user not to do so, or if an IIOP 1.0 endpoint is being + // created (IIOP 1.0 did not support tagged components). + if (this->orb_core_->orb_params ()->std_profile_components () == 0 + || (this->version_.major == 1 && this->version_.minor == 0)) continue; pfile->tagged_components ().set_orb_type (TAO_ORB_TYPE); @@ -155,7 +159,8 @@ TAO_DIOP_Acceptor::create_shared_profile (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () != 0) + if (this->orb_core_->orb_params ()->std_profile_components () != 0 + && (this->version_.major >= 1 && this->version_.minor >= 1)) { iiop_profile->tagged_components ().set_orb_type (TAO_ORB_TYPE); diff --git a/TAO/tao/Strategies/SHMIOP_Acceptor.cpp b/TAO/tao/Strategies/SHMIOP_Acceptor.cpp index 170a6b353b0..829561bf057 100644 --- a/TAO/tao/Strategies/SHMIOP_Acceptor.cpp +++ b/TAO/tao/Strategies/SHMIOP_Acceptor.cpp @@ -117,7 +117,12 @@ TAO_SHMIOP_Acceptor::create_profile (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () == 0) + // Do not add any tagged components to the profile if configured + // by the user not to do so, or if an SHMIOP 1.0 endpoint is being + // created (IIOP 1.0 did not support tagged components, so we follow + // the same convention for SHMIOP). + if (this->orb_core_->orb_params ()->std_profile_components () == 0 + || (this->version_.major == 1 && this->version_.minor == 0)) return 0; pfile->tagged_components ().set_orb_type (TAO_ORB_TYPE); @@ -321,7 +326,7 @@ TAO_SHMIOP_Acceptor::open_i (TAO_ORB_Core* orb_core) (void) this->base_acceptor_.acceptor().enable (ACE_CLOEXEC); // This avoids having child processes acquire the listen socket thereby // denying the server the opportunity to restart on a well-known endpoint. - // This does not affect the aberrent behavior on Win32 platforms. + // This does not affect the aberrent behavior on Win32 platforms. if (TAO_debug_level > 5) { diff --git a/TAO/tao/Strategies/UIOP_Acceptor.cpp b/TAO/tao/Strategies/UIOP_Acceptor.cpp index 7213bd93d2c..2625298ef81 100644 --- a/TAO/tao/Strategies/UIOP_Acceptor.cpp +++ b/TAO/tao/Strategies/UIOP_Acceptor.cpp @@ -128,7 +128,12 @@ TAO_UIOP_Acceptor::create_profile (const TAO_ObjectKey &object_key, return -1; } - if (this->orb_core_->orb_params ()->std_profile_components () == 0) + // Do not add any tagged components to the profile if configured + // by the user not to do so, or if an UIOP 1.0 endpoint is being + // created (IIOP 1.0 did not support tagged components, so we follow + // the same convention for UIOP). + if (this->orb_core_->orb_params ()->std_profile_components () == 0 + || (this->version_.major == 1 && this->version_.minor == 0)) return 0; pfile->tagged_components ().set_orb_type (TAO_ORB_TYPE); |