From: Richard Jones Date: Thu, 29 Oct 2009 17:54:48 +0000 (+0000) Subject: RHEL 5: Detect endianness functions and supply them. X-Git-Tag: 1.0.76~3 X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=commitdiff_plain;h=a4e27cdf4d3b831792dd20d796dc98a5bc684290 RHEL 5: Detect endianness functions and supply them. --- diff --git a/configure.ac b/configure.ac index a235a06..709b1b7 100644 --- a/configure.ac +++ b/configure.ac @@ -123,7 +123,7 @@ dnl Check sizeof long. AC_CHECK_SIZEOF([long]) dnl Headers. -AC_CHECK_HEADERS([errno.h sys/types.h sys/un.h sys/wait.h sys/socket.h]) +AC_CHECK_HEADERS([errno.h sys/types.h sys/un.h sys/wait.h sys/socket.h endian.h byteswap.h]) dnl Check for rpcgen and XDR library. rpcgen is optional. AC_CHECK_PROG([RPCGEN],[rpcgen],[rpcgen],[no]) diff --git a/hivex/hivex.c b/hivex/hivex.c index 16be753..85d6c7b 100644 --- a/hivex/hivex.c +++ b/hivex/hivex.c @@ -18,11 +18,12 @@ * See file LICENSE for the full license. */ +#include + #include #include #include #include -#include #include #include #include @@ -30,6 +31,34 @@ #include #include #include +#ifdef HAVE_ENDIAN_H +#include +#endif +#ifdef HAVE_BYTESWAP_H +#include +#endif + +#if __BYTE_ORDER == __LITTLE_ENDIAN +#ifndef be32toh +#define be32toh(x) __bswap_32 (x) +#endif +#ifndef be64toh +#define be64toh(x) __bswap_64 (x) +#endif +#ifndef le32toh +#define le32toh(x) (x) +#endif +#else +#ifndef be32toh +#define be32toh(x) (x) +#endif +#ifndef be64toh +#define be64toh(x) (x) +#endif +#ifndef le32toh +#define le32toh(x) __bswap_32 (x) +#endif +#endif #include "hivex.h" diff --git a/hivex/hivexget.c b/hivex/hivexget.c index 9bb6bbb..04c854f 100644 --- a/hivex/hivexget.c +++ b/hivex/hivexget.c @@ -16,6 +16,8 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +#include + #include #include #include diff --git a/hivex/hivexml.c b/hivex/hivexml.c index af3de9e..9dd394e 100644 --- a/hivex/hivexml.c +++ b/hivex/hivexml.c @@ -16,6 +16,8 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +#include + #include #include #include