summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2007-06-01 14:26:53 +0000
committerDwayne Boone <dwayne@zeroc.com>2007-06-01 14:26:53 +0000
commit4367764044c04b8ac6d22e359d10e43805a4ed63 (patch)
tree882e5792328176a5c9b97e55e358bfdaf3051d97 /cpp
parentgetHosts() -> getAddresses() (diff)
downloadice-4367764044c04b8ac6d22e359d10e43805a4ed63.tar.bz2
ice-4367764044c04b8ac6d22e359d10e43805a4ed63.tar.xz
ice-4367764044c04b8ac6d22e359d10e43805a4ed63.zip
Replace isMulticast with macro
Diffstat (limited to 'cpp')
-rw-r--r--cpp/src/Ice/Network.cpp13
-rw-r--r--cpp/src/Ice/Network.h2
-rw-r--r--cpp/src/Ice/UdpTransceiver.cpp8
3 files changed, 4 insertions, 19 deletions
diff --git a/cpp/src/Ice/Network.cpp b/cpp/src/Ice/Network.cpp
index 4bc90852097..29b987cc449 100644
--- a/cpp/src/Ice/Network.cpp
+++ b/cpp/src/Ice/Network.cpp
@@ -196,19 +196,6 @@ IceInternal::recvTruncated()
#endif
}
-bool
-IceInternal::isMulticast(struct sockaddr_in& addr)
-{
- string ip = inetAddrToString(addr.sin_addr);
- int i;
- istringstream p(ip.substr(0, ip.find('.')));
- if(!(p >> i) || !p.eof() || i < 224 || i > 239)
- {
- return false;
- }
- return true;
-}
-
SOCKET
IceInternal::createSocket(bool udp)
{
diff --git a/cpp/src/Ice/Network.h b/cpp/src/Ice/Network.h
index 4e029d67c2d..e680cca0471 100644
--- a/cpp/src/Ice/Network.h
+++ b/cpp/src/Ice/Network.h
@@ -76,8 +76,6 @@ ICE_API bool connectionLost();
ICE_API bool notConnected();
ICE_API bool recvTruncated();
-ICE_API bool isMulticast(struct sockaddr_in&);
-
ICE_API SOCKET createSocket(bool);
ICE_API void closeSocket(SOCKET);
ICE_API void closeSocketNoThrow(SOCKET);
diff --git a/cpp/src/Ice/UdpTransceiver.cpp b/cpp/src/Ice/UdpTransceiver.cpp
index a14cf302810..03aa23796a7 100644
--- a/cpp/src/Ice/UdpTransceiver.cpp
+++ b/cpp/src/Ice/UdpTransceiver.cpp
@@ -390,10 +390,10 @@ IceInternal::UdpTransceiver::UdpTransceiver(const InstancePtr& instance, const s
_logger(instance->initializationData().logger),
_stats(instance->initializationData().stats),
_incoming(false),
+ _addr(addr),
_connect(true),
_warn(instance->initializationData().properties->getPropertyAsInt("Ice.Warn.Datagrams") > 0),
- _shutdownReadWrite(false),
- _addr(addr)
+ _shutdownReadWrite(false)
{
try
{
@@ -402,7 +402,7 @@ IceInternal::UdpTransceiver::UdpTransceiver(const InstancePtr& instance, const s
setBlock(_fd, false);
doConnect(_fd, _addr, -1);
_connect = false; // We're connected now
- if(isMulticast(_addr))
+ if(IN_MULTICAST(ntohl(_addr.sin_addr.s_addr)))
{
if(mcastInterface.length() > 0)
{
@@ -455,7 +455,7 @@ IceInternal::UdpTransceiver::UdpTransceiver(const InstancePtr& instance, const s
Trace out(_logger, _traceLevels->networkCat);
out << "attempting to bind to udp socket " << addrToString(_addr);
}
- if(isMulticast(_addr))
+ if(IN_MULTICAST(ntohl(_addr.sin_addr.s_addr)))
{
struct sockaddr_in addr;
getAddress("0.0.0.0", port, addr);