diff options
Diffstat (limited to 'ruby_1_8_5/ext/digest/rmd160')
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/.cvsignore | 3 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/depend | 8 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/extconf.rb | 26 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/rmd160.c | 464 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/rmd160.h | 68 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/rmd160hl.c | 96 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/rmd160init.c | 38 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/rmd160ossl.c | 45 | ||||
-rw-r--r-- | ruby_1_8_5/ext/digest/rmd160/rmd160ossl.h | 21 |
9 files changed, 0 insertions, 769 deletions
diff --git a/ruby_1_8_5/ext/digest/rmd160/.cvsignore b/ruby_1_8_5/ext/digest/rmd160/.cvsignore deleted file mode 100644 index 4088712231..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/.cvsignore +++ /dev/null @@ -1,3 +0,0 @@ -Makefile -mkmf.log -*.def diff --git a/ruby_1_8_5/ext/digest/rmd160/depend b/ruby_1_8_5/ext/digest/rmd160/depend deleted file mode 100644 index 0ca79c5f40..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/depend +++ /dev/null @@ -1,8 +0,0 @@ -rmd160.o: rmd160.c rmd160.h $(srcdir)/../defs.h $(hdrdir)/ruby.h \ - $(topdir)/config.h $(hdrdir)/defines.h $(hdrdir)/intern.h -rmd160hl.o: rmd160hl.c rmd160.h $(srcdir)/../defs.h $(hdrdir)/ruby.h \ - $(topdir)/config.h $(hdrdir)/defines.h $(hdrdir)/intern.h -rmd160init.o: rmd160init.c $(srcdir)/../digest.h $(hdrdir)/ruby.h \ - $(topdir)/config.h $(hdrdir)/defines.h $(hdrdir)/intern.h \ - rmd160.h $(srcdir)/../defs.h -rmd160ossl.o: rmd160ossl.h $(srcdir)/../defs.h diff --git a/ruby_1_8_5/ext/digest/rmd160/extconf.rb b/ruby_1_8_5/ext/digest/rmd160/extconf.rb deleted file mode 100644 index 232a3a5e06..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/extconf.rb +++ /dev/null @@ -1,26 +0,0 @@ -# $RoughId: extconf.rb,v 1.3 2001/08/14 19:54:51 knu Exp $ -# $Id: extconf.rb,v 1.4.2.2 2006/05/25 23:44:05 nobu Exp $ - -require "mkmf" - -$defs << "-DNDEBUG" << "-DHAVE_CONFIG_H" -$INCFLAGS << " -I$(srcdir)/.." - -$objs = [ "rmd160init.#{$OBJEXT}" ] - -dir_config("openssl") - -if !with_config("bundled-rmd160") && - have_library("crypto") && have_header("openssl/ripemd.h") - $objs << "rmd160ossl.#{$OBJEXT}" -else - $objs << "rmd160.#{$OBJEXT}" << "rmd160hl.#{$OBJEXT}" -end - -have_header("sys/cdefs.h") - -have_header("inttypes.h") - -have_header("unistd.h") - -create_makefile("digest/rmd160") diff --git a/ruby_1_8_5/ext/digest/rmd160/rmd160.c b/ruby_1_8_5/ext/digest/rmd160/rmd160.c deleted file mode 100644 index 9562a6fe67..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/rmd160.c +++ /dev/null @@ -1,464 +0,0 @@ -/* $NetBSD: rmd160.c,v 1.1.1.1 2001/03/06 11:21:05 agc Exp $ */ -/* $RoughId: rmd160.c,v 1.2 2001/07/13 19:49:10 knu Exp $ */ -/* $Id: rmd160.c,v 1.1 2001/07/13 20:06:14 knu Exp $ */ - -/********************************************************************\ - * - * FILE: rmd160.c - * - * CONTENTS: A sample C-implementation of the RIPEMD-160 - * hash-function. - * TARGET: any computer with an ANSI C compiler - * - * AUTHOR: Antoon Bosselaers, ESAT-COSIC - * (Arranged for libc by Todd C. Miller) - * DATE: 1 March 1996 - * VERSION: 1.0 - * - * Copyright (c) Katholieke Universiteit Leuven - * 1996, All Rights Reserved - * -\********************************************************************/ - -#include "rmd160.h" - -#ifndef lint -/* __RCSID("$NetBSD: rmd160.c,v 1.1.1.1 2001/03/06 11:21:05 agc Exp $"); */ -#endif /* not lint */ - -/* header files */ - -#ifdef HAVE_SYS_ENDIAN_H_ -#include <sys/endian.h> -#endif - -#ifdef HAVE_MACHINE_ENDIAN_H_ -#include <machine/endian.h> -#endif - -/* #include "namespace.h" */ - -#include <assert.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> - -#ifndef _DIAGASSERT -#define _DIAGASSERT(cond) assert(cond) -#endif - - -/********************************************************************/ - -/* macro definitions */ - -/* collect four bytes into one word: */ -#define BYTES_TO_DWORD(strptr) \ - (((uint32_t) *((strptr)+3) << 24) | \ - ((uint32_t) *((strptr)+2) << 16) | \ - ((uint32_t) *((strptr)+1) << 8) | \ - ((uint32_t) *(strptr))) - -/* ROL(x, n) cyclically rotates x over n bits to the left */ -/* x must be of an unsigned 32 bits type and 0 <= n < 32. */ -#define ROL(x, n) (((x) << (n)) | ((x) >> (32-(n)))) - -/* the three basic functions F(), G() and H() */ -#define F(x, y, z) ((x) ^ (y) ^ (z)) -#define G(x, y, z) (((x) & (y)) | (~(x) & (z))) -#define H(x, y, z) (((x) | ~(y)) ^ (z)) -#define I(x, y, z) (((x) & (z)) | ((y) & ~(z))) -#define J(x, y, z) ((x) ^ ((y) | ~(z))) - -/* the eight basic operations FF() through III() */ -#define FF(a, b, c, d, e, x, s) { \ - (a) += F((b), (c), (d)) + (x); \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define GG(a, b, c, d, e, x, s) { \ - (a) += G((b), (c), (d)) + (x) + 0x5a827999U; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define HH(a, b, c, d, e, x, s) { \ - (a) += H((b), (c), (d)) + (x) + 0x6ed9eba1U; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define II(a, b, c, d, e, x, s) { \ - (a) += I((b), (c), (d)) + (x) + 0x8f1bbcdcU; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define JJ(a, b, c, d, e, x, s) { \ - (a) += J((b), (c), (d)) + (x) + 0xa953fd4eU; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define FFF(a, b, c, d, e, x, s) { \ - (a) += F((b), (c), (d)) + (x); \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define GGG(a, b, c, d, e, x, s) { \ - (a) += G((b), (c), (d)) + (x) + 0x7a6d76e9U; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define HHH(a, b, c, d, e, x, s) { \ - (a) += H((b), (c), (d)) + (x) + 0x6d703ef3U; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define III(a, b, c, d, e, x, s) { \ - (a) += I((b), (c), (d)) + (x) + 0x5c4dd124U; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} -#define JJJ(a, b, c, d, e, x, s) { \ - (a) += J((b), (c), (d)) + (x) + 0x50a28be6U; \ - (a) = ROL((a), (s)) + (e); \ - (c) = ROL((c), 10); \ -} - -/********************************************************************/ - -void -RMD160_Init(RMD160_CTX *context) -{ - - _DIAGASSERT(context != NULL); - - /* ripemd-160 initialization constants */ - context->state[0] = 0x67452301U; - context->state[1] = 0xefcdab89U; - context->state[2] = 0x98badcfeU; - context->state[3] = 0x10325476U; - context->state[4] = 0xc3d2e1f0U; - context->length[0] = context->length[1] = 0; - context->buflen = 0; -} - -/********************************************************************/ - -void -RMD160_Transform(uint32_t state[5], const uint32_t block[16]) -{ - uint32_t aa, bb, cc, dd, ee; - uint32_t aaa, bbb, ccc, ddd, eee; - - _DIAGASSERT(state != NULL); - _DIAGASSERT(block != NULL); - - aa = aaa = state[0]; - bb = bbb = state[1]; - cc = ccc = state[2]; - dd = ddd = state[3]; - ee = eee = state[4]; - - /* round 1 */ - FF(aa, bb, cc, dd, ee, block[ 0], 11); - FF(ee, aa, bb, cc, dd, block[ 1], 14); - FF(dd, ee, aa, bb, cc, block[ 2], 15); - FF(cc, dd, ee, aa, bb, block[ 3], 12); - FF(bb, cc, dd, ee, aa, block[ 4], 5); - FF(aa, bb, cc, dd, ee, block[ 5], 8); - FF(ee, aa, bb, cc, dd, block[ 6], 7); - FF(dd, ee, aa, bb, cc, block[ 7], 9); - FF(cc, dd, ee, aa, bb, block[ 8], 11); - FF(bb, cc, dd, ee, aa, block[ 9], 13); - FF(aa, bb, cc, dd, ee, block[10], 14); - FF(ee, aa, bb, cc, dd, block[11], 15); - FF(dd, ee, aa, bb, cc, block[12], 6); - FF(cc, dd, ee, aa, bb, block[13], 7); - FF(bb, cc, dd, ee, aa, block[14], 9); - FF(aa, bb, cc, dd, ee, block[15], 8); - - /* round 2 */ - GG(ee, aa, bb, cc, dd, block[ 7], 7); - GG(dd, ee, aa, bb, cc, block[ 4], 6); - GG(cc, dd, ee, aa, bb, block[13], 8); - GG(bb, cc, dd, ee, aa, block[ 1], 13); - GG(aa, bb, cc, dd, ee, block[10], 11); - GG(ee, aa, bb, cc, dd, block[ 6], 9); - GG(dd, ee, aa, bb, cc, block[15], 7); - GG(cc, dd, ee, aa, bb, block[ 3], 15); - GG(bb, cc, dd, ee, aa, block[12], 7); - GG(aa, bb, cc, dd, ee, block[ 0], 12); - GG(ee, aa, bb, cc, dd, block[ 9], 15); - GG(dd, ee, aa, bb, cc, block[ 5], 9); - GG(cc, dd, ee, aa, bb, block[ 2], 11); - GG(bb, cc, dd, ee, aa, block[14], 7); - GG(aa, bb, cc, dd, ee, block[11], 13); - GG(ee, aa, bb, cc, dd, block[ 8], 12); - - /* round 3 */ - HH(dd, ee, aa, bb, cc, block[ 3], 11); - HH(cc, dd, ee, aa, bb, block[10], 13); - HH(bb, cc, dd, ee, aa, block[14], 6); - HH(aa, bb, cc, dd, ee, block[ 4], 7); - HH(ee, aa, bb, cc, dd, block[ 9], 14); - HH(dd, ee, aa, bb, cc, block[15], 9); - HH(cc, dd, ee, aa, bb, block[ 8], 13); - HH(bb, cc, dd, ee, aa, block[ 1], 15); - HH(aa, bb, cc, dd, ee, block[ 2], 14); - HH(ee, aa, bb, cc, dd, block[ 7], 8); - HH(dd, ee, aa, bb, cc, block[ 0], 13); - HH(cc, dd, ee, aa, bb, block[ 6], 6); - HH(bb, cc, dd, ee, aa, block[13], 5); - HH(aa, bb, cc, dd, ee, block[11], 12); - HH(ee, aa, bb, cc, dd, block[ 5], 7); - HH(dd, ee, aa, bb, cc, block[12], 5); - - /* round 4 */ - II(cc, dd, ee, aa, bb, block[ 1], 11); - II(bb, cc, dd, ee, aa, block[ 9], 12); - II(aa, bb, cc, dd, ee, block[11], 14); - II(ee, aa, bb, cc, dd, block[10], 15); - II(dd, ee, aa, bb, cc, block[ 0], 14); - II(cc, dd, ee, aa, bb, block[ 8], 15); - II(bb, cc, dd, ee, aa, block[12], 9); - II(aa, bb, cc, dd, ee, block[ 4], 8); - II(ee, aa, bb, cc, dd, block[13], 9); - II(dd, ee, aa, bb, cc, block[ 3], 14); - II(cc, dd, ee, aa, bb, block[ 7], 5); - II(bb, cc, dd, ee, aa, block[15], 6); - II(aa, bb, cc, dd, ee, block[14], 8); - II(ee, aa, bb, cc, dd, block[ 5], 6); - II(dd, ee, aa, bb, cc, block[ 6], 5); - II(cc, dd, ee, aa, bb, block[ 2], 12); - - /* round 5 */ - JJ(bb, cc, dd, ee, aa, block[ 4], 9); - JJ(aa, bb, cc, dd, ee, block[ 0], 15); - JJ(ee, aa, bb, cc, dd, block[ 5], 5); - JJ(dd, ee, aa, bb, cc, block[ 9], 11); - JJ(cc, dd, ee, aa, bb, block[ 7], 6); - JJ(bb, cc, dd, ee, aa, block[12], 8); - JJ(aa, bb, cc, dd, ee, block[ 2], 13); - JJ(ee, aa, bb, cc, dd, block[10], 12); - JJ(dd, ee, aa, bb, cc, block[14], 5); - JJ(cc, dd, ee, aa, bb, block[ 1], 12); - JJ(bb, cc, dd, ee, aa, block[ 3], 13); - JJ(aa, bb, cc, dd, ee, block[ 8], 14); - JJ(ee, aa, bb, cc, dd, block[11], 11); - JJ(dd, ee, aa, bb, cc, block[ 6], 8); - JJ(cc, dd, ee, aa, bb, block[15], 5); - JJ(bb, cc, dd, ee, aa, block[13], 6); - - /* parallel round 1 */ - JJJ(aaa, bbb, ccc, ddd, eee, block[ 5], 8); - JJJ(eee, aaa, bbb, ccc, ddd, block[14], 9); - JJJ(ddd, eee, aaa, bbb, ccc, block[ 7], 9); - JJJ(ccc, ddd, eee, aaa, bbb, block[ 0], 11); - JJJ(bbb, ccc, ddd, eee, aaa, block[ 9], 13); - JJJ(aaa, bbb, ccc, ddd, eee, block[ 2], 15); - JJJ(eee, aaa, bbb, ccc, ddd, block[11], 15); - JJJ(ddd, eee, aaa, bbb, ccc, block[ 4], 5); - JJJ(ccc, ddd, eee, aaa, bbb, block[13], 7); - JJJ(bbb, ccc, ddd, eee, aaa, block[ 6], 7); - JJJ(aaa, bbb, ccc, ddd, eee, block[15], 8); - JJJ(eee, aaa, bbb, ccc, ddd, block[ 8], 11); - JJJ(ddd, eee, aaa, bbb, ccc, block[ 1], 14); - JJJ(ccc, ddd, eee, aaa, bbb, block[10], 14); - JJJ(bbb, ccc, ddd, eee, aaa, block[ 3], 12); - JJJ(aaa, bbb, ccc, ddd, eee, block[12], 6); - - /* parallel round 2 */ - III(eee, aaa, bbb, ccc, ddd, block[ 6], 9); - III(ddd, eee, aaa, bbb, ccc, block[11], 13); - III(ccc, ddd, eee, aaa, bbb, block[ 3], 15); - III(bbb, ccc, ddd, eee, aaa, block[ 7], 7); - III(aaa, bbb, ccc, ddd, eee, block[ 0], 12); - III(eee, aaa, bbb, ccc, ddd, block[13], 8); - III(ddd, eee, aaa, bbb, ccc, block[ 5], 9); - III(ccc, ddd, eee, aaa, bbb, block[10], 11); - III(bbb, ccc, ddd, eee, aaa, block[14], 7); - III(aaa, bbb, ccc, ddd, eee, block[15], 7); - III(eee, aaa, bbb, ccc, ddd, block[ 8], 12); - III(ddd, eee, aaa, bbb, ccc, block[12], 7); - III(ccc, ddd, eee, aaa, bbb, block[ 4], 6); - III(bbb, ccc, ddd, eee, aaa, block[ 9], 15); - III(aaa, bbb, ccc, ddd, eee, block[ 1], 13); - III(eee, aaa, bbb, ccc, ddd, block[ 2], 11); - - /* parallel round 3 */ - HHH(ddd, eee, aaa, bbb, ccc, block[15], 9); - HHH(ccc, ddd, eee, aaa, bbb, block[ 5], 7); - HHH(bbb, ccc, ddd, eee, aaa, block[ 1], 15); - HHH(aaa, bbb, ccc, ddd, eee, block[ 3], 11); - HHH(eee, aaa, bbb, ccc, ddd, block[ 7], 8); - HHH(ddd, eee, aaa, bbb, ccc, block[14], 6); - HHH(ccc, ddd, eee, aaa, bbb, block[ 6], 6); - HHH(bbb, ccc, ddd, eee, aaa, block[ 9], 14); - HHH(aaa, bbb, ccc, ddd, eee, block[11], 12); - HHH(eee, aaa, bbb, ccc, ddd, block[ 8], 13); - HHH(ddd, eee, aaa, bbb, ccc, block[12], 5); - HHH(ccc, ddd, eee, aaa, bbb, block[ 2], 14); - HHH(bbb, ccc, ddd, eee, aaa, block[10], 13); - HHH(aaa, bbb, ccc, ddd, eee, block[ 0], 13); - HHH(eee, aaa, bbb, ccc, ddd, block[ 4], 7); - HHH(ddd, eee, aaa, bbb, ccc, block[13], 5); - - /* parallel round 4 */ - GGG(ccc, ddd, eee, aaa, bbb, block[ 8], 15); - GGG(bbb, ccc, ddd, eee, aaa, block[ 6], 5); - GGG(aaa, bbb, ccc, ddd, eee, block[ 4], 8); - GGG(eee, aaa, bbb, ccc, ddd, block[ 1], 11); - GGG(ddd, eee, aaa, bbb, ccc, block[ 3], 14); - GGG(ccc, ddd, eee, aaa, bbb, block[11], 14); - GGG(bbb, ccc, ddd, eee, aaa, block[15], 6); - GGG(aaa, bbb, ccc, ddd, eee, block[ 0], 14); - GGG(eee, aaa, bbb, ccc, ddd, block[ 5], 6); - GGG(ddd, eee, aaa, bbb, ccc, block[12], 9); - GGG(ccc, ddd, eee, aaa, bbb, block[ 2], 12); - GGG(bbb, ccc, ddd, eee, aaa, block[13], 9); - GGG(aaa, bbb, ccc, ddd, eee, block[ 9], 12); - GGG(eee, aaa, bbb, ccc, ddd, block[ 7], 5); - GGG(ddd, eee, aaa, bbb, ccc, block[10], 15); - GGG(ccc, ddd, eee, aaa, bbb, block[14], 8); - - /* parallel round 5 */ - FFF(bbb, ccc, ddd, eee, aaa, block[12] , 8); - FFF(aaa, bbb, ccc, ddd, eee, block[15] , 5); - FFF(eee, aaa, bbb, ccc, ddd, block[10] , 12); - FFF(ddd, eee, aaa, bbb, ccc, block[ 4] , 9); - FFF(ccc, ddd, eee, aaa, bbb, block[ 1] , 12); - FFF(bbb, ccc, ddd, eee, aaa, block[ 5] , 5); - FFF(aaa, bbb, ccc, ddd, eee, block[ 8] , 14); - FFF(eee, aaa, bbb, ccc, ddd, block[ 7] , 6); - FFF(ddd, eee, aaa, bbb, ccc, block[ 6] , 8); - FFF(ccc, ddd, eee, aaa, bbb, block[ 2] , 13); - FFF(bbb, ccc, ddd, eee, aaa, block[13] , 6); - FFF(aaa, bbb, ccc, ddd, eee, block[14] , 5); - FFF(eee, aaa, bbb, ccc, ddd, block[ 0] , 15); - FFF(ddd, eee, aaa, bbb, ccc, block[ 3] , 13); - FFF(ccc, ddd, eee, aaa, bbb, block[ 9] , 11); - FFF(bbb, ccc, ddd, eee, aaa, block[11] , 11); - - /* combine results */ - ddd += cc + state[1]; /* final result for state[0] */ - state[1] = state[2] + dd + eee; - state[2] = state[3] + ee + aaa; - state[3] = state[4] + aa + bbb; - state[4] = state[0] + bb + ccc; - state[0] = ddd; -} - -/********************************************************************/ - -void -RMD160_Update(RMD160_CTX *context, const uint8_t *data, size_t nbytes) -{ - uint32_t X[16]; - uint32_t ofs = 0; - uint32_t i; -#ifdef WORDS_BIGENDIAN - uint32_t j; -#endif - - _DIAGASSERT(context != NULL); - _DIAGASSERT(data != NULL); - - /* update length[] */ - if (context->length[0] + nbytes < context->length[0]) - context->length[1]++; /* overflow to msb of length */ - context->length[0] += nbytes; - - (void)memset(X, 0, sizeof(X)); - - if ( context->buflen + nbytes < 64 ) - { - (void)memcpy(context->bbuffer + context->buflen, data, nbytes); - context->buflen += nbytes; - } - else - { - /* process first block */ - ofs = 64 - context->buflen; - (void)memcpy(context->bbuffer + context->buflen, data, ofs); -#ifndef WORDS_BIGENDIAN - (void)memcpy(X, context->bbuffer, sizeof(X)); -#else - for (j=0; j < 16; j++) - X[j] = BYTES_TO_DWORD(context->bbuffer + (4 * j)); -#endif - RMD160_Transform(context->state, X); - nbytes -= ofs; - - /* process remaining complete blocks */ - for (i = 0; i < (nbytes >> 6); i++) { -#ifndef WORDS_BIGENDIAN - (void)memcpy(X, data + (64 * i) + ofs, sizeof(X)); -#else - for (j=0; j < 16; j++) - X[j] = BYTES_TO_DWORD(data + (64 * i) + (4 * j) + ofs); -#endif - RMD160_Transform(context->state, X); - } - - /* - * Put last bytes from data into context's buffer - */ - context->buflen = nbytes & 63; - memcpy(context->bbuffer, data + (64 * i) + ofs, context->buflen); - } -} - -/********************************************************************/ - -void -RMD160_Final(uint8_t digest[20], RMD160_CTX *context) -{ - uint32_t i; - uint32_t X[16]; -#ifdef WORDS_BIGENDIAN - uint32_t j; -#endif - - _DIAGASSERT(digest != NULL); - _DIAGASSERT(context != NULL); - - /* append the bit m_n == 1 */ - context->bbuffer[context->buflen] = (uint8_t)'\200'; - - (void)memset(context->bbuffer + context->buflen + 1, 0, - 63 - context->buflen); -#ifndef WORDS_BIGENDIAN - (void)memcpy(X, context->bbuffer, sizeof(X)); -#else - for (j=0; j < 16; j++) - X[j] = BYTES_TO_DWORD(context->bbuffer + (4 * j)); -#endif - if ((context->buflen) > 55) { - /* length goes to next block */ - RMD160_Transform(context->state, X); - (void)memset(X, 0, sizeof(X)); - } - - /* append length in bits */ - X[14] = context->length[0] << 3; - X[15] = (context->length[0] >> 29) | - (context->length[1] << 3); - RMD160_Transform(context->state, X); - - if (digest != NULL) { - for (i = 0; i < 20; i += 4) { - /* extracts the 8 least significant bits. */ - digest[i] = context->state[i>>2]; - digest[i + 1] = (context->state[i>>2] >> 8); - digest[i + 2] = (context->state[i>>2] >> 16); - digest[i + 3] = (context->state[i>>2] >> 24); - } - } -} - -int RMD160_Equal(RMD160_CTX* pctx1, RMD160_CTX* pctx2) { - return pctx1->buflen == pctx2->buflen - && memcmp(pctx1->length, pctx2->length, sizeof(pctx1->length)) == 0 - && memcmp(pctx1->state, pctx2->state, sizeof(pctx1->state)) == 0 - && memcmp(pctx1->bbuffer, pctx2->bbuffer, sizeof(pctx1->bbuffer)) == 0; -} - -/************************ end of file rmd160.c **********************/ diff --git a/ruby_1_8_5/ext/digest/rmd160/rmd160.h b/ruby_1_8_5/ext/digest/rmd160/rmd160.h deleted file mode 100644 index 7df190413e..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/rmd160.h +++ /dev/null @@ -1,68 +0,0 @@ -/* $NetBSD: rmd160.h,v 1.2 2000/07/07 10:47:06 ad Exp $ */ -/* $RoughId: rmd160.h,v 1.3 2002/02/24 08:14:31 knu Exp $ */ -/* $Id: rmd160.h,v 1.2 2002/02/24 08:20:22 knu Exp $ */ - -/********************************************************************\ - * - * FILE: rmd160.h - * - * CONTENTS: Header file for a sample C-implementation of the - * RIPEMD-160 hash-function. - * TARGET: any computer with an ANSI C compiler - * - * AUTHOR: Antoon Bosselaers, ESAT-COSIC - * DATE: 1 March 1996 - * VERSION: 1.0 - * - * Copyright (c) Katholieke Universiteit Leuven - * 1996, All Rights Reserved - * -\********************************************************************/ - -/* - * from OpenBSD: rmd160.h,v 1.4 1999/08/16 09:59:04 millert Exp - */ - -#ifndef _RMD160_H_ -#define _RMD160_H_ - -#include "defs.h" - -typedef struct { - uint32_t state[5]; /* state (ABCDE) */ - uint32_t length[2]; /* number of bits */ - uint8_t bbuffer[64]; /* overflow buffer */ - uint32_t buflen; /* number of chars in bbuffer */ -} RMD160_CTX; - -#ifdef RUBY -#define RMD160_Init rb_Digest_RMD160_Init -#define RMD160_Transform rb_Digest_RMD160_Transform -#define RMD160_Update rb_Digest_RMD160_Update -#define RMD160_Final rb_Digest_RMD160_Final -#define RMD160_Equal rb_Digest_RMD160_Equal -#ifndef _KERNEL -#define RMD160_End rb_Digest_RMD160_End -#define RMD160_File rb_Digest_RMD160_File -#define RMD160_Data rb_Digest_RMD160_Data -#endif /* _KERNEL */ -#endif - -__BEGIN_DECLS -void RMD160_Init _((RMD160_CTX *)); -void RMD160_Transform _((uint32_t[5], const uint32_t[16])); -void RMD160_Update _((RMD160_CTX *, const uint8_t *, size_t)); -void RMD160_Final _((uint8_t[20], RMD160_CTX *)); -int RMD160_Equal _((RMD160_CTX *, RMD160_CTX *)); -#ifndef _KERNEL -char *RMD160_End _((RMD160_CTX *, char *)); -char *RMD160_File _((char *, char *)); -char *RMD160_Data _((const uint8_t *, size_t, char *)); -#endif /* _KERNEL */ -__END_DECLS - -#define RMD160_BLOCK_LENGTH 64 -#define RMD160_DIGEST_LENGTH 20 -#define RMD160_DIGEST_STRING_LENGTH (RMD160_DIGEST_LENGTH * 2 + 1) - -#endif /* !_RMD160_H_ */ diff --git a/ruby_1_8_5/ext/digest/rmd160/rmd160hl.c b/ruby_1_8_5/ext/digest/rmd160/rmd160hl.c deleted file mode 100644 index 14299d7c7a..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/rmd160hl.c +++ /dev/null @@ -1,96 +0,0 @@ -/* $NetBSD: rmd160hl.c,v 1.1.1.1 2001/03/06 11:21:05 agc Exp $ */ -/* $RoughId: rmd160hl.c,v 1.2 2001/07/13 19:49:10 knu Exp $ */ -/* $Id: rmd160hl.c,v 1.1 2001/07/13 20:06:14 knu Exp $ */ - -/* rmd160hl.c - * ---------------------------------------------------------------------------- - * "THE BEER-WARE LICENSE" (Revision 42): - * <phk@login.dkuug.dk> wrote this file. As long as you retain this notice you - * can do whatever you want with this stuff. If we meet some day, and you think - * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp - * ---------------------------------------------------------------------------- - * - * from OpenBSD: rmd160hl.c,v 1.2 1999/08/17 09:13:12 millert Exp $ - */ - -#include "rmd160.h" - -#ifndef lint -/* __RCSID("$NetBSD: rmd160hl.c,v 1.1.1.1 2001/03/06 11:21:05 agc Exp $"); */ -#endif /* not lint */ - -/* #include "namespace.h" */ - -#include <assert.h> -#include <errno.h> -#include <fcntl.h> -#include <stdio.h> -#include <stdlib.h> -#if defined(HAVE_UNISTD_H) -# include <unistd.h> -#endif - -#ifndef _DIAGASSERT -#define _DIAGASSERT(cond) assert(cond) -#endif - - -char * -RMD160_End(RMD160_CTX *ctx, char *buf) -{ - size_t i; - char *p = buf; - uint8_t digest[20]; - static const char hex[]="0123456789abcdef"; - - _DIAGASSERT(ctx != NULL); - /* buf may be NULL */ - - if (p == NULL && (p = malloc(41)) == NULL) - return 0; - - RMD160_Final(digest,ctx); - for (i = 0; i < 20; i++) { - p[i + i] = hex[(uint32_t)digest[i] >> 4]; - p[i + i + 1] = hex[digest[i] & 0x0f]; - } - p[i + i] = '\0'; - return(p); -} - -char * -RMD160_File(char *filename, char *buf) -{ - uint8_t buffer[BUFSIZ]; - RMD160_CTX ctx; - int fd, num, oerrno; - - _DIAGASSERT(filename != NULL); - /* XXX: buf may be NULL ? */ - - RMD160_Init(&ctx); - - if ((fd = open(filename, O_RDONLY)) < 0) - return(0); - - while ((num = read(fd, buffer, sizeof(buffer))) > 0) - RMD160_Update(&ctx, buffer, (size_t)num); - - oerrno = errno; - close(fd); - errno = oerrno; - return(num < 0 ? 0 : RMD160_End(&ctx, buf)); -} - -char * -RMD160_Data(const uint8_t *data, size_t len, char *buf) -{ - RMD160_CTX ctx; - - _DIAGASSERT(data != NULL); - /* XXX: buf may be NULL ? */ - - RMD160_Init(&ctx); - RMD160_Update(&ctx, data, len); - return(RMD160_End(&ctx, buf)); -} diff --git a/ruby_1_8_5/ext/digest/rmd160/rmd160init.c b/ruby_1_8_5/ext/digest/rmd160/rmd160init.c deleted file mode 100644 index 3aa7847019..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/rmd160init.c +++ /dev/null @@ -1,38 +0,0 @@ -/* $RoughId: rmd160init.c,v 1.3 2001/07/13 20:00:43 knu Exp $ */ -/* $Id: rmd160init.c,v 1.3 2002/09/26 17:26:46 knu Exp $ */ - -#include "digest.h" -#if defined(HAVE_OPENSSL_RIPEMD_H) -#include "rmd160ossl.h" -#else -#include "rmd160.h" -#endif - -static algo_t rmd160 = { - RMD160_DIGEST_LENGTH, - sizeof(RMD160_CTX), - (hash_init_func_t)RMD160_Init, - (hash_update_func_t)RMD160_Update, - (hash_end_func_t)RMD160_End, - (hash_final_func_t)RMD160_Final, - (hash_equal_func_t)RMD160_Equal, -}; - -void -Init_rmd160() -{ - VALUE mDigest, cDigest_Base, cDigest_RMD160; - ID id_metadata; - - rb_require("digest.so"); - - mDigest = rb_path2class("Digest"); - cDigest_Base = rb_path2class("Digest::Base"); - - cDigest_RMD160 = rb_define_class_under(mDigest, "RMD160", cDigest_Base); - - id_metadata = rb_intern("metadata"); - - rb_cvar_set(cDigest_RMD160, id_metadata, - Data_Wrap_Struct(rb_cObject, 0, 0, &rmd160), Qtrue); -} diff --git a/ruby_1_8_5/ext/digest/rmd160/rmd160ossl.c b/ruby_1_8_5/ext/digest/rmd160/rmd160ossl.c deleted file mode 100644 index 1a8436dfb8..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/rmd160ossl.c +++ /dev/null @@ -1,45 +0,0 @@ -/* $Id: rmd160ossl.c,v 1.1.2.1 2006/08/07 09:01:27 matz Exp $ */ - -#include "defs.h" -#include "rmd160ossl.h" -#include <assert.h> -#include <stdlib.h> - -#ifndef _DIAGASSERT -#define _DIAGASSERT(cond) assert(cond) -#endif - -char * -RMD160_End(RMD160_CTX *ctx, char *buf) -{ - size_t i; - char *p = buf; - uint8_t digest[20]; - static const char hex[]="0123456789abcdef"; - - _DIAGASSERT(ctx != NULL); - /* buf may be NULL */ - - if (p == NULL && (p = malloc(41)) == NULL) - return 0; - - RMD160_Final(digest,ctx); - for (i = 0; i < 20; i++) { - p[i + i] = hex[(uint32_t)digest[i] >> 4]; - p[i + i + 1] = hex[digest[i] & 0x0f]; - } - p[i + i] = '\0'; - return(p); -} - -int RMD160_Equal(RMD160_CTX* pctx1, RMD160_CTX* pctx2) { - return pctx1->num == pctx2->num - && pctx1->A == pctx2->A - && pctx1->B == pctx2->B - && pctx1->C == pctx2->C - && pctx1->D == pctx2->D - && pctx1->E == pctx2->E - && pctx1->Nl == pctx2->Nl - && pctx1->Nh == pctx2->Nh - && memcmp(pctx1->data, pctx2->data, sizeof(pctx1->data)) == 0; -} diff --git a/ruby_1_8_5/ext/digest/rmd160/rmd160ossl.h b/ruby_1_8_5/ext/digest/rmd160/rmd160ossl.h deleted file mode 100644 index 30840ca598..0000000000 --- a/ruby_1_8_5/ext/digest/rmd160/rmd160ossl.h +++ /dev/null @@ -1,21 +0,0 @@ -/* $Id: rmd160ossl.h,v 1.1.2.1 2005/08/30 10:43:35 gotoyuzo Exp $ */ - -#ifndef RMD160OSSL_H_INCLUDED -#define RMD160OSSL_H_INCLUDED - -#include <stddef.h> -#include <openssl/ripemd.h> - -#define RMD160_CTX RIPEMD160_CTX - -#define RMD160_Init RIPEMD160_Init -#define RMD160_Update RIPEMD160_Update -#define RMD160_Final RIPEMD160_Final - -#define RMD160_BLOCK_LENGTH RIPEMD160_CBLOCK -#define RMD160_DIGEST_LENGTH RIPEMD160_DIGEST_LENGTH - -char *RMD160_End(RMD160_CTX *ctx, char *buf); -int RMD160_Equal(RMD160_CTX *pctx1, RMD160_CTX *pctx2); - -#endif |