mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-27 19:10:20 +01:00
SF#3560776: Fix byte-ordering issues with INADDR_* literals
This commit is contained in:
@@ -173,11 +173,11 @@ extern "C"
|
||||
extern unsigned int if_nametoindex (__const char *__ifname) __THROW;
|
||||
extern char *if_indextoname (unsigned int __ifindex, char *__ifname) __THROW;
|
||||
}
|
||||
#else // (POCO_OS != POCO_OS_LINUX)
|
||||
#else
|
||||
#include <net/if.h>
|
||||
#endif // (POCO_OS != POCO_OS_LINUX)
|
||||
#endif
|
||||
#if defined(sun) || defined(__APPLE__)
|
||||
#endif
|
||||
#if (POCO_OS == POCO_OS_SOLARIS) || (POCO_OS == POCO_OS_MAC_OS_X)
|
||||
#include <sys/sockio.h>
|
||||
#include <sys/filio.h>
|
||||
#endif
|
||||
@@ -282,7 +282,7 @@ extern char *if_indextoname (unsigned int __ifindex, char *__ifname) __THROW;
|
||||
|
||||
|
||||
#ifndef INADDR_NONE
|
||||
#define INADDR_NONE 0xFFFFFFFF
|
||||
#define INADDR_NONE 0xffffffff
|
||||
#endif
|
||||
|
||||
#ifndef INADDR_ANY
|
||||
@@ -313,7 +313,6 @@ extern char *if_indextoname (unsigned int __ifindex, char *__ifname) __THROW;
|
||||
#define INADDR_MAX_LOCAL_GROUP 0xe00000ff
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(POCO_ARCH_BIG_ENDIAN)
|
||||
#define poco_ntoh_16(x) (x)
|
||||
#define poco_ntoh_32(x) (x)
|
||||
@@ -323,6 +322,7 @@ extern char *if_indextoname (unsigned int __ifindex, char *__ifname) __THROW;
|
||||
#define poco_ntoh_32(x) \
|
||||
((((x) >> 24) & 0x000000ff) | (((x) >> 8) & 0x0000ff00) | (((x) << 8) & 0x00ff0000) | (((x) << 24) & 0xff000000))
|
||||
#endif
|
||||
|
||||
#define poco_hton_16(x) poco_ntoh_16(x)
|
||||
#define poco_hton_32(x) poco_ntoh_32(x)
|
||||
|
||||
#endif // Net_SocketDefs_INCLUDED
|
||||
|
||||
@@ -634,8 +634,10 @@ void IPAddressTest::testByteOrderMacros()
|
||||
{
|
||||
Poco::UInt16 a16 = 0xDEAD;
|
||||
assert (poco_ntoh_16(a16) == ntohs(a16));
|
||||
assert (poco_hton_16(a16) == htons(a16));
|
||||
Poco::UInt32 a32 = 0xDEADBEEF;
|
||||
assert (poco_ntoh_32(a32) == ntohl(a32));
|
||||
assert (poco_hton_32(a32) == htonl(a32));
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user