summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2014-08-21 11:16:15 -0230
committerDwayne Boone <dwayne@zeroc.com>2014-08-21 11:16:15 -0230
commit02c969e9d14684bd3aa881682aa42ff597867caf (patch)
treebd16fc92df65d98d16584f08be9d2ff3dc632b5f /cpp/src
parentICE-5646 check return value of backtrace_symbols before processing (diff)
downloadice-02c969e9d14684bd3aa881682aa42ff597867caf.tar.bz2
ice-02c969e9d14684bd3aa881682aa42ff597867caf.tar.xz
ice-02c969e9d14684bd3aa881682aa42ff597867caf.zip
ICE-5638 add default constructor for Address union
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/Ice/DefaultsAndOverrides.cpp4
-rw-r--r--cpp/src/Ice/IPEndpointI.cpp4
-rw-r--r--cpp/src/Ice/Network.cpp19
-rw-r--r--cpp/src/Ice/Network.h7
-rw-r--r--cpp/src/Ice/TcpTransceiver.cpp2
-rw-r--r--cpp/src/Ice/UdpTransceiver.cpp4
-rw-r--r--cpp/src/Ice/winrt/StreamEndpointI.cpp4
-rw-r--r--cpp/src/IceSSL/OpenSSLTransceiverI.cpp2
-rw-r--r--cpp/src/IceSSL/SecureTransportTransceiverI.cpp2
9 files changed, 20 insertions, 28 deletions
diff --git a/cpp/src/Ice/DefaultsAndOverrides.cpp b/cpp/src/Ice/DefaultsAndOverrides.cpp
index 42757693deb..40b07e13c72 100644
--- a/cpp/src/Ice/DefaultsAndOverrides.cpp
+++ b/cpp/src/Ice/DefaultsAndOverrides.cpp
@@ -38,7 +38,7 @@ IceInternal::DefaultsAndOverrides::DefaultsAndOverrides(const PropertiesPtr& pro
string value;
#ifdef ICE_OS_WINRT
- const_cast<Address&>(defaultSourceAddress) = getInvalidAddress();
+ const_cast<Address&>(defaultSourceAddress) = Address();
#else
value = properties->getProperty("Ice.Default.SourceAddress");
if(!value.empty())
@@ -53,7 +53,7 @@ IceInternal::DefaultsAndOverrides::DefaultsAndOverrides(const PropertiesPtr& pro
}
else
{
- const_cast<Address&>(defaultSourceAddress) = getInvalidAddress();
+ const_cast<Address&>(defaultSourceAddress) = Address();
}
#endif
diff --git a/cpp/src/Ice/IPEndpointI.cpp b/cpp/src/Ice/IPEndpointI.cpp
index 832b5403573..f6263183e52 100644
--- a/cpp/src/Ice/IPEndpointI.cpp
+++ b/cpp/src/Ice/IPEndpointI.cpp
@@ -482,7 +482,7 @@ IceInternal::IPEndpointI::IPEndpointI(const ProtocolInstancePtr& instance, const
IceInternal::IPEndpointI::IPEndpointI(const ProtocolInstancePtr& instance) :
_instance(instance),
_port(0),
- _sourceAddr(getInvalidAddress()),
+ _sourceAddr(Address()),
_hashInitialized(false)
{
}
@@ -490,7 +490,7 @@ IceInternal::IPEndpointI::IPEndpointI(const ProtocolInstancePtr& instance) :
IceInternal::IPEndpointI::IPEndpointI(const ProtocolInstancePtr& instance, BasicStream* s) :
_instance(instance),
_port(0),
- _sourceAddr(getInvalidAddress()),
+ _sourceAddr(Address()),
_hashInitialized(false)
{
s->read(const_cast<string&>(_host), false);
diff --git a/cpp/src/Ice/Network.cpp b/cpp/src/Ice/Network.cpp
index 06e664c8a95..3fb73573abc 100644
--- a/cpp/src/Ice/Network.cpp
+++ b/cpp/src/Ice/Network.cpp
@@ -1524,19 +1524,6 @@ IceInternal::isAddressValid(const Address& addr)
#endif
}
-Address
-IceInternal::getInvalidAddress()
-{
-#ifndef ICE_OS_WINRT
- Address addr;
- memset(&addr.saStorage, 0, sizeof(sockaddr_storage));
- addr.saStorage.ss_family = AF_UNSPEC;
- return addr;
-#else
- return Address();
-#endif
-}
-
#ifdef ICE_OS_WINRT
vector<string>
IceInternal::getHostsForEndpointExpand(const string&, ProtocolSupport, bool)
@@ -2104,7 +2091,7 @@ IceInternal::getNumericAddress(const std::string& address)
vector<Address> addrs = getAddresses(address, 0, EnableBoth, Ice::Ordered, false, false);
if(addrs.empty())
{
- return getInvalidAddress();
+ return Address();
}
else
{
@@ -2483,10 +2470,10 @@ IceInternal::createPipe(SOCKET fds[2])
{
setBlock(fds[0], true);
# ifndef NDEBUG
- bool connected = doConnect(fds[0], addr, getInvalidAddress());
+ bool connected = doConnect(fds[0], addr, Address());
assert(connected);
# else
- doConnect(fds[0], addr, getInvalidAddress());
+ doConnect(fds[0], addr, Address());
# endif
}
catch(...)
diff --git a/cpp/src/Ice/Network.h b/cpp/src/Ice/Network.h
index a9dd19ded04..c0130e6d96f 100644
--- a/cpp/src/Ice/Network.h
+++ b/cpp/src/Ice/Network.h
@@ -121,6 +121,12 @@ struct ICE_API Address
#else
union Address
{
+ Address()
+ {
+ memset(&saStorage, 0, sizeof(sockaddr_storage));
+ saStorage.ss_family = AF_UNSPEC;
+ }
+
sockaddr sa;
sockaddr_in saIn;
sockaddr_in6 saIn6;
@@ -288,7 +294,6 @@ ICE_API void fdToAddressAndPort(SOCKET, std::string&, int&, std::string&, int&);
ICE_API void addrToAddressAndPort(const Address&, std::string&, int&);
ICE_API std::string addressesToString(const Address&, const Address&, bool);
ICE_API bool isAddressValid(const Address&);
-ICE_API Address getInvalidAddress();
ICE_API std::vector<std::string> getHostsForEndpointExpand(const std::string&, ProtocolSupport, bool);
diff --git a/cpp/src/Ice/TcpTransceiver.cpp b/cpp/src/Ice/TcpTransceiver.cpp
index 4c8be1b2f28..0c348426601 100644
--- a/cpp/src/Ice/TcpTransceiver.cpp
+++ b/cpp/src/Ice/TcpTransceiver.cpp
@@ -576,7 +576,7 @@ IceInternal::TcpTransceiver::TcpTransceiver(const ProtocolInstancePtr& instance,
NativeInfo(fd),
_instance(instance),
_addr(Address()),
- _sourceAddr(getInvalidAddress()),
+ _sourceAddr(Address()),
_state(StateConnected),
_desc(fdToString(_fd))
#ifdef ICE_USE_IOCP
diff --git a/cpp/src/Ice/UdpTransceiver.cpp b/cpp/src/Ice/UdpTransceiver.cpp
index 18ea62ffe47..932c04282ee 100644
--- a/cpp/src/Ice/UdpTransceiver.cpp
+++ b/cpp/src/Ice/UdpTransceiver.cpp
@@ -327,10 +327,10 @@ repeat:
assert(_incoming); // Client connections should always be connected at this point.
# ifndef NDEBUG
- bool connected = doConnect(_fd, _peerAddr, getInvalidAddress());
+ bool connected = doConnect(_fd, _peerAddr, Address());
assert(connected);
# else
- doConnect(_fd, _peerAddr, getInvalidAddress());
+ doConnect(_fd, _peerAddr, Address());
# endif
_state = StateConnected;
diff --git a/cpp/src/Ice/winrt/StreamEndpointI.cpp b/cpp/src/Ice/winrt/StreamEndpointI.cpp
index 5bb59dea33b..961f8859604 100644
--- a/cpp/src/Ice/winrt/StreamEndpointI.cpp
+++ b/cpp/src/Ice/winrt/StreamEndpointI.cpp
@@ -64,7 +64,7 @@ private:
IceInternal::StreamEndpointI::StreamEndpointI(const ProtocolInstancePtr& instance, const string& ho, Int po, Int ti,
const string& conId, bool co) :
- IPEndpointI(instance, ho, po, getInvalidAddress(), conId),
+ IPEndpointI(instance, ho, po, Address(), conId),
_timeout(ti),
_compress(co)
{
@@ -327,7 +327,7 @@ IceInternal::StreamEndpointI::checkOption(const string& option, const string& ar
ex.str = "no argument provided for -t option in endpoint " + endpoint;
throw ex;
}
-
+
if(argument == "infinite")
{
const_cast<Int&>(_timeout) = -1;
diff --git a/cpp/src/IceSSL/OpenSSLTransceiverI.cpp b/cpp/src/IceSSL/OpenSSLTransceiverI.cpp
index 39ae9e822e4..dce347359b8 100644
--- a/cpp/src/IceSSL/OpenSSLTransceiverI.cpp
+++ b/cpp/src/IceSSL/OpenSSLTransceiverI.cpp
@@ -760,7 +760,7 @@ IceSSL::TransceiverI::TransceiverI(const InstancePtr& instance, SOCKET fd, const
_instance(instance),
_engine(OpenSSLEnginePtr::dynamicCast(instance->engine())),
_addr(IceInternal::Address()),
- _sourceAddr(IceInternal::getInvalidAddress()),
+ _sourceAddr(IceInternal::Address()),
_adapterName(adapterName),
_incoming(true),
_ssl(0),
diff --git a/cpp/src/IceSSL/SecureTransportTransceiverI.cpp b/cpp/src/IceSSL/SecureTransportTransceiverI.cpp
index b43218cc8f2..89ced9a5057 100644
--- a/cpp/src/IceSSL/SecureTransportTransceiverI.cpp
+++ b/cpp/src/IceSSL/SecureTransportTransceiverI.cpp
@@ -694,7 +694,7 @@ IceSSL::TransceiverI::TransceiverI(const InstancePtr& instance, SOCKET fd, const
_instance(instance),
_engine(SecureTransportEnginePtr::dynamicCast(instance->engine())),
_addr(IceInternal::Address()),
- _sourceAddr(IceInternal::getInvalidAddress()),
+ _sourceAddr(IceInternal::Address()),
_adapterName(adapterName),
_incoming(true),
_ssl(0),