From ca841613cd3a161c4d5744952d50b415b705cea5 Mon Sep 17 00:00:00 2001 From: knu Date: Wed, 16 May 2001 22:14:01 +0000 Subject: [PATCH] * ext/sha1/extconf.rb, ext/sha1/sha1.c: use WORDS_BIGENDIAN to detect the platform's endian. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ ext/sha1/extconf.rb | 12 ------------ ext/sha1/sha1.c | 7 +++---- 3 files changed, 8 insertions(+), 16 deletions(-) diff --git a/ChangeLog b/ChangeLog index 31e7469d84..69e8ffb0c6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu May 17 07:11:35 2001 Akinori MUSHA + + * ext/sha1/extconf.rb, ext/sha1/sha1.c: use WORDS_BIGENDIAN to + detect the platform's endian. + Thu May 17 06:31:30 2001 Akinori MUSHA * ext/md5/md5.txt: make wording fixes, and mention the newly added 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))