summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Network.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Ice/Network.cpp')
-rw-r--r--cpp/src/Ice/Network.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/cpp/src/Ice/Network.cpp b/cpp/src/Ice/Network.cpp
index 64d45f9244b..1107dbc8bea 100644
--- a/cpp/src/Ice/Network.cpp
+++ b/cpp/src/Ice/Network.cpp
@@ -465,7 +465,8 @@ isLinklocal(const Address& addr)
}
else if (addr.saStorage.ss_family == AF_INET)
{
- return inetAddrToString(addr).find("169.254.") == 0;
+ // Check for 169.254.X.X in network order
+ return (addr.saIn.sin_addr.s_addr & 0x0000FFFF) == 0x0000FEA9;
}
return false;
}