From f975f736408f32e7384cf38270a7806e68d5e112 Mon Sep 17 00:00:00 2001 From: Daniel Ludwig Date: Fri, 14 Feb 2014 00:17:46 +0100 Subject: [PATCH] missing endian preprocessor defines on Linux environments --- lib/sha-1.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/lib/sha-1.c b/lib/sha-1.c index 96b4470b..7212dd69 100644 --- a/lib/sha-1.c +++ b/lib/sha-1.c @@ -59,9 +59,22 @@ typedef unsigned __int64 u_int64_t; #define bzero(b, len) (memset((b), '\0', (len)), (void) 0) #else + #include #include #include +#include + +#if !defined(BYTE_ORDER) +# define BYTE_ORDER __BYTE_ORDER +#endif +#if !defined(LITTLE_ENDIAN) +# define LITTLE_ENDIAN __LITTLE_ENDIAN +#endif +#if !defined(BIG_ENDIAN) +# define BIG_ENDIAN __BIG_ENDIAN +#endif + #endif #include @@ -83,7 +96,9 @@ struct sha1_ctxt { }; /* sanity check */ -#if BYTE_ORDER != BIG_ENDIAN +#if !defined(BYTE_ORDER) || !defined(LITTLE_ENDIAN) || !defined(BIG_ENDIAN) +# define unsupported 1 +#elif BYTE_ORDER != BIG_ENDIAN # if BYTE_ORDER != LITTLE_ENDIAN # define unsupported 1 # endif