From 0f5fafd160afa9bf648464f83e3d36d1beb38b90 Mon Sep 17 00:00:00 2001 From: Richard Newman Date: Tue, 19 Feb 2008 21:13:28 +0000 Subject: [PATCH] Improve endianness checks in sipctrl plug-in. git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@735 8eb893ce-cfd4-0310-b710-fb5ebe64c474 --- core/plug-in/sipctrl/hash.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/core/plug-in/sipctrl/hash.cpp b/core/plug-in/sipctrl/hash.cpp index 7b0e9839..b13d798d 100644 --- a/core/plug-in/sipctrl/hash.cpp +++ b/core/plug-in/sipctrl/hash.cpp @@ -45,13 +45,14 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy. /* * My best guess at if you are big-endian or little-endian. This may * need adjustment. + * Update 20080211, Richard Newman: I think this fits in better with the + * code elsewhere in SEMS, which started off using just __BYTE_ORDER. I + * extended it to work on Solaris, too. */ -#if (defined(BYTE_ORDER) && defined(LITTLE_ENDIAN) && \ - BYTE_ORDER == LITTLE_ENDIAN) +#if (defined(__BYTE_ORDER) && (__BYTE_ORDER == __LITTLE_ENDIAN)) || defined(_LITTLE_ENDIAN) || defined(__LITTLE_ENDIAN) # define HASH_LITTLE_ENDIAN 1 # define HASH_BIG_ENDIAN 0 -#elif (defined(BYTE_ORDER) && defined(BIG_ENDIAN) && \ - BYTE_ORDER == BIG_ENDIAN) +#elif (defined(__BYTE_ORDER) && (__BYTE_ORDER == __BIG_ENDIAN)) || defined(_BIG_ENDIAN) || defined(__BIG_ENDIAN) # define HASH_LITTLE_ENDIAN 0 # define HASH_BIG_ENDIAN 1 #else