diff options
Diffstat (limited to 'TAO/tao/Strategies/SHMIOP_Acceptor.cpp')
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Acceptor.cpp | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/TAO/tao/Strategies/SHMIOP_Acceptor.cpp b/TAO/tao/Strategies/SHMIOP_Acceptor.cpp index 2a582f8e2a5..83443fd6430 100644 --- a/TAO/tao/Strategies/SHMIOP_Acceptor.cpp +++ b/TAO/tao/Strategies/SHMIOP_Acceptor.cpp @@ -153,18 +153,9 @@ TAO_SHMIOP_Acceptor::is_collocated (const TAO_Endpoint *endpoint) if (endp == 0) return 0; - // @@ TODO The following code looks funky, why only the host - // name is compared? What if there are multiple SHMIOP - // servers in the same address? Why do SHMIOP_Endpoints keep - // a INET_Addr but not a MEM_Addr? And why is there no lazy - // evaluation of IP-addresses for SHMIOP endpoints? Is it - // because it is always 'localhost'? We need answers to - // these questions to solve: - // - // http://deuce.doc.wustl.edu/bugzilla/show_bug.cgi?id=1220 - // - // The following code is suspec - // compare the port and sin_addr (numeric host address) + if (endp->port () != this->address_.get_port_number ()) + return 0; + return this->address_.same_host (endp->object_addr ()); } |