diff options
author | Dwayne Boone <dwayne@zeroc.com> | 2007-05-18 13:34:39 +0000 |
---|---|---|
committer | Dwayne Boone <dwayne@zeroc.com> | 2007-05-18 13:34:39 +0000 |
commit | bdcafea81addb5e3905c6ed5f4db093ec8ec0d15 (patch) | |
tree | 7cea0017b188b25abf1caac607476e21d63a8a7e /cpp/src/IceSSL/EndpointI.cpp | |
parent | Fixed comments (diff) | |
download | ice-bdcafea81addb5e3905c6ed5f4db093ec8ec0d15.tar.bz2 ice-bdcafea81addb5e3905c6ed5f4db093ec8ec0d15.tar.xz ice-bdcafea81addb5e3905c6ed5f4db093ec8ec0d15.zip |
Multi-home host support
Diffstat (limited to 'cpp/src/IceSSL/EndpointI.cpp')
-rw-r--r-- | cpp/src/IceSSL/EndpointI.cpp | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/cpp/src/IceSSL/EndpointI.cpp b/cpp/src/IceSSL/EndpointI.cpp index 69866544132..a657b027874 100644 --- a/cpp/src/IceSSL/EndpointI.cpp +++ b/cpp/src/IceSSL/EndpointI.cpp @@ -265,10 +265,11 @@ IceSSL::EndpointI::unknown() const return false; } -IceInternal::TransceiverPtr -IceSSL::EndpointI::clientTransceiver() const +vector<IceInternal::TransceiverPtr> +IceSSL::EndpointI::clientTransceivers() const { - return 0; + vector<IceInternal::TransceiverPtr> ret; + return ret; } IceInternal::TransceiverPtr @@ -278,10 +279,23 @@ IceSSL::EndpointI::serverTransceiver(IceInternal::EndpointIPtr& endp) const return 0; } -IceInternal::ConnectorPtr -IceSSL::EndpointI::connector() const +vector<IceInternal::ConnectorPtr> +IceSSL::EndpointI::connectors() const { - return new ConnectorI(_instance, _host, _port); + vector<IceInternal::ConnectorPtr> connectors; + vector<string> hosts = IceInternal::getHosts(_host); + if(hosts.size() > 1) + { + for(unsigned int i = 0; i < hosts.size(); ++i) + { + connectors.push_back(new ConnectorI(_instance, hosts[i], _port)); + } + } + else + { + connectors.push_back(new ConnectorI(_instance, _host, _port)); + } + return connectors; } IceInternal::AcceptorPtr |