diff options
Diffstat (limited to 'cpp/src/Ice/Network.cpp')
-rw-r--r-- | cpp/src/Ice/Network.cpp | 3 |
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; } |