diff options
author | Werner Koch <[email protected]> | 1998-05-15 18:49:19 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 1998-05-15 18:49:19 +0000 |
commit | f9a70437820d05f7f98ffd1c9003edd83872e9b5 (patch) | |
tree | dc17bdc0dea76ddc28ae651a3dc341b83784dd12 /cipher | |
parent | can create v4 signatures (diff) | |
download | gnupg-f9a70437820d05f7f98ffd1c9003edd83872e9b5.tar.gz gnupg-f9a70437820d05f7f98ffd1c9003edd83872e9b5.zip |
new releaseV0-2-18
Diffstat (limited to 'cipher')
-rw-r--r-- | cipher/ChangeLog | 5 | ||||
-rw-r--r-- | cipher/rmd160.c | 16 |
2 files changed, 18 insertions, 3 deletions
diff --git a/cipher/ChangeLog b/cipher/ChangeLog index 3babcbc90..f72c64f4b 100644 --- a/cipher/ChangeLog +++ b/cipher/ChangeLog @@ -1,3 +1,8 @@ +Thu May 14 15:40:36 1998 Werner Koch ([email protected]) + + * rmd160.c (transform): fixed sigbus - I should better + add Christian von Roques's new implemenation of rmd160_write. + Fri May 8 18:07:44 1998 Werner Koch ([email protected]) * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New diff --git a/cipher/rmd160.c b/cipher/rmd160.c index f0072f78a..ad28299fc 100644 --- a/cipher/rmd160.c +++ b/cipher/rmd160.c @@ -186,7 +186,19 @@ transform( RMD160_CONTEXT *hd, byte *data ) } } #else - u32 *x = (u32*)data; + #if 0 + u32 *x =(u32*)data; + #else + /* this version is better because it is always aligned; + * The performance penalty on a 586-100 is about 6% which + * is acceptable - because the data is more local it might + * also be possible that this is faster on some machines. + * This function (when compiled with -02 on gcc 2.7.2) + * executes on a 586-100 (39.73 bogomips) at about 1900kb/sec; + * [measured with a 4MB data and "gpgm --print-md rmd160"] */ + u32 x[16]; + memcpy( x, data, 64 ); + #endif #endif @@ -396,7 +408,6 @@ transform( RMD160_CONTEXT *hd, byte *data ) } - /* Update the message digest with the contents * of INBUF with length INLEN. */ @@ -429,7 +440,6 @@ rmd160_write( RMD160_CONTEXT *hd, byte *inbuf, size_t inlen) hd->buf[hd->count++] = *inbuf++; } - /**************** * Apply the rmd160 transform function on the buffer which must have * a length 64 bytes. Do not use this function together with the |