summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
Diffstat (limited to 'ext')
-rw-r--r--ext/sha1/extconf.rb12
-rw-r--r--ext/sha1/sha1.c7
2 files changed, 3 insertions, 16 deletions
diff --git a/ext/sha1/extconf.rb b/ext/sha1/extconf.rb
index 0a293e1248..32e46cf3d7 100644
--- a/ext/sha1/extconf.rb
+++ b/ext/sha1/extconf.rb
@@ -1,15 +1,3 @@
require 'mkmf'
-i = 0x01020304
-
-case [i].pack('l')
- when [i].pack('V')
- $CFLAGS += " -DLITTLE_ENDIAN"
- when [i].pack('N')
- $CFLAGS += " -DBIG_ENDIAN"
- else
- p "Sorry, your machine has an unusual byte order which is not supported."
- exit!
-end
-
create_makefile('sha1')
diff --git a/ext/sha1/sha1.c b/ext/sha1/sha1.c
index afcc297cb4..f6f9fa88f2 100644
--- a/ext/sha1/sha1.c
+++ b/ext/sha1/sha1.c
@@ -12,7 +12,6 @@ A million repetitions of "a"
34AA973C D4C4DAA4 F61EEB2B DBAD2731 6534016F
*/
-/* #define LITTLE_ENDIAN * This should be #define'd if true. */
/* #define SHA1HANDSOFF * Copies data before messing with it. */
#include "sha1.h"
@@ -21,11 +20,11 @@ A million repetitions of "a"
/* blk0() and blk() perform the initial expand. */
/* I got the idea of expanding during the round function from SSLeay */
-#ifdef LITTLE_ENDIAN
+#ifdef WORDS_BIGENDIAN
+#define blk0(i) block->l[i]
+#else /* LITTLE ENDIAN */
#define blk0(i) (block->l[i] = (rol(block->l[i],24)&0xFF00FF00) \
|(rol(block->l[i],8)&0x00FF00FF))
-#else
-#define blk0(i) block->l[i]
#endif
#define blk(i) (block->l[i&15] = rol(block->l[(i+13)&15]^block->l[(i+8)&15] \
^block->l[(i+2)&15]^block->l[i&15],1))