Tweak endian definition stuff for sha256 code
authorSteve McIntyre <steve@einval.com>
Thu, 7 Nov 2019 15:49:03 +0000 (15:49 +0000)
committerSteve McIntyre <steve@einval.com>
Thu, 7 Nov 2019 15:49:03 +0000 (15:49 +0000)
The Windows cross-build didn't supply an endian.h, so cope
differently.

src/util/glibc-sha256.cc
src/util/glibc-sha256.hh

index 8f78571..fd62020 100644 (file)
@@ -25,7 +25,6 @@
 # include <config.h>
 #endif
 
-#include <endian.h>
 #include <stdlib.h>
 #include <string.h>
 #include <stdint.h>
@@ -35,7 +34,7 @@
 #include <sha256sum.hh>
 #include <glibc-sha256.hh>
 
-#if __BYTE_ORDER == __LITTLE_ENDIAN
+#ifndef  WORDS_BIGENDIAN
 # ifdef _LIBC
 #  include <byteswap.h>
 #  define SWAP(n) bswap_32 (n)
index c9e0ee0..7870754 100644 (file)
 #include <limits.h>
 #include <stdint.h>
 #include <stdio.h>
-#include <endian.h>
 
+#ifndef BYTE_ORDER
+# define __LITTLE_ENDIAN 1234
+# define __BIG_ENDIAN    4321
+# define __PDP_ENDIAN    3412
+# define LITTLE_ENDIAN  __LITTLE_ENDIAN
+# define BIG_ENDIAN     __BIG_ENDIAN
+# define PDP_ENDIAN     __PDP_ENDIAN
+# ifdef  WORDS_BIGENDIAN
+#  define BYTE_ORDER __BIG_ENDIAN
+# else
+#  define BYTE_ORDER __LITTLE_ENDIAN
+# endif
+#endif
 
 /* Structure to save state of computation between the single steps.  */
 /* SAM moved this to sha256sum.hh
@@ -52,7 +64,7 @@ struct sha256_ctx
 /* Initialize structure containing state of computation.
    (FIPS 180-2: 5.3.2)  */
 // SAM extern void __sha256_init_ctx (struct sha256_ctx *ctx) __THROW;
-extern void sha256_init_ctx (struct sha256_ctx *ctx) __THROW;
+extern void sha256_init_ctx (struct sha256_ctx *ctx);
 
 /* Starting with the result of former calls of this function (or the
    initialization function update the context for the next LEN bytes
@@ -61,7 +73,7 @@ extern void sha256_init_ctx (struct sha256_ctx *ctx) __THROW;
 // SAM extern void __sha256_process_bytes (const void *buffer, size_t len,
 //                                 struct sha256_ctx *ctx) __THROW;
 extern void sha256_process_bytes (const void *buffer, size_t len,
-                                   struct sha256_ctx *ctx) __THROW;
+                                   struct sha256_ctx *ctx);
 
 /* Process the remaining bytes in the buffer and put result from CTX
    in first 32 bytes following RESBUF.
@@ -70,7 +82,6 @@ extern void sha256_process_bytes (const void *buffer, size_t len,
    aligned for a 32 bits value.  */
 // SAM extern void *__sha256_finish_ctx (struct sha256_ctx *ctx, void *resbuf)
 //     __THROW;
-extern void *sha256_finish_ctx (struct sha256_ctx *ctx, void *resbuf)
-  __THROW;
+extern void *sha256_finish_ctx (struct sha256_ctx *ctx, void *resbuf);
 
 #endif /* sha256.h */