summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhshoexer <>2004-03-22 14:57:03 +0000
committerhshoexer <>2004-03-22 14:57:03 +0000
commitc051a3c4a24fa90cc755059f99d5c2e7131d5ca7 (patch)
tree0dee3a0ed9b5d7dbb448ccc4da00d90dccb797a3
parent1e77dd49006edc60e86242fd15bfa42d7f49ee43 (diff)
downloadopenbsd-c051a3c4a24fa90cc755059f99d5c2e7131d5ca7.tar.gz
openbsd-c051a3c4a24fa90cc755059f99d5c2e7131d5ca7.tar.bz2
openbsd-c051a3c4a24fa90cc755059f99d5c2e7131d5ca7.zip
Unbreak rmd160. Was broken on sparc64 when compiled with gcc3. Fix and report
by Simon Kellner. XXX This is only a temporary work-around and we still need a REAL fix for XXX this issue. Testing on different archs by marc@ tdvall@ millert@ otto@ ho@ miod@ hshoexer@ ok deraadt@
-rw-r--r--src/lib/libcrypto/ripemd/rmd_dgst.c4
-rw-r--r--src/lib/libssl/src/crypto/ripemd/rmd_dgst.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/lib/libcrypto/ripemd/rmd_dgst.c b/src/lib/libcrypto/ripemd/rmd_dgst.c
index f351f00eea..28896512e7 100644
--- a/src/lib/libcrypto/ripemd/rmd_dgst.c
+++ b/src/lib/libcrypto/ripemd/rmd_dgst.c
@@ -90,7 +90,7 @@ int RIPEMD160_Init(RIPEMD160_CTX *c)
90void ripemd160_block_host_order (RIPEMD160_CTX *ctx, const void *p, int num) 90void ripemd160_block_host_order (RIPEMD160_CTX *ctx, const void *p, int num)
91 { 91 {
92 const RIPEMD160_LONG *XX=p; 92 const RIPEMD160_LONG *XX=p;
93 register unsigned MD32_REG_T A,B,C,D,E; 93 register volatile unsigned MD32_REG_T A,B,C,D,E;
94 register unsigned MD32_REG_T a,b,c,d,e; 94 register unsigned MD32_REG_T a,b,c,d,e;
95 95
96 for (;num--;XX+=HASH_LBLOCK) 96 for (;num--;XX+=HASH_LBLOCK)
@@ -290,7 +290,7 @@ void ripemd160_block_host_order (RIPEMD160_CTX *ctx, const void *p, int num)
290void ripemd160_block_data_order (RIPEMD160_CTX *ctx, const void *p, int num) 290void ripemd160_block_data_order (RIPEMD160_CTX *ctx, const void *p, int num)
291 { 291 {
292 const unsigned char *data=p; 292 const unsigned char *data=p;
293 register unsigned MD32_REG_T A,B,C,D,E; 293 register volatile unsigned MD32_REG_T A,B,C,D,E;
294 unsigned MD32_REG_T a,b,c,d,e,l; 294 unsigned MD32_REG_T a,b,c,d,e,l;
295#ifndef MD32_XARRAY 295#ifndef MD32_XARRAY
296 /* See comment in crypto/sha/sha_locl.h for details. */ 296 /* See comment in crypto/sha/sha_locl.h for details. */
diff --git a/src/lib/libssl/src/crypto/ripemd/rmd_dgst.c b/src/lib/libssl/src/crypto/ripemd/rmd_dgst.c
index f351f00eea..28896512e7 100644
--- a/src/lib/libssl/src/crypto/ripemd/rmd_dgst.c
+++ b/src/lib/libssl/src/crypto/ripemd/rmd_dgst.c
@@ -90,7 +90,7 @@ int RIPEMD160_Init(RIPEMD160_CTX *c)
90void ripemd160_block_host_order (RIPEMD160_CTX *ctx, const void *p, int num) 90void ripemd160_block_host_order (RIPEMD160_CTX *ctx, const void *p, int num)
91 { 91 {
92 const RIPEMD160_LONG *XX=p; 92 const RIPEMD160_LONG *XX=p;
93 register unsigned MD32_REG_T A,B,C,D,E; 93 register volatile unsigned MD32_REG_T A,B,C,D,E;
94 register unsigned MD32_REG_T a,b,c,d,e; 94 register unsigned MD32_REG_T a,b,c,d,e;
95 95
96 for (;num--;XX+=HASH_LBLOCK) 96 for (;num--;XX+=HASH_LBLOCK)
@@ -290,7 +290,7 @@ void ripemd160_block_host_order (RIPEMD160_CTX *ctx, const void *p, int num)
290void ripemd160_block_data_order (RIPEMD160_CTX *ctx, const void *p, int num) 290void ripemd160_block_data_order (RIPEMD160_CTX *ctx, const void *p, int num)
291 { 291 {
292 const unsigned char *data=p; 292 const unsigned char *data=p;
293 register unsigned MD32_REG_T A,B,C,D,E; 293 register volatile unsigned MD32_REG_T A,B,C,D,E;
294 unsigned MD32_REG_T a,b,c,d,e,l; 294 unsigned MD32_REG_T a,b,c,d,e,l;
295#ifndef MD32_XARRAY 295#ifndef MD32_XARRAY
296 /* See comment in crypto/sha/sha_locl.h for details. */ 296 /* See comment in crypto/sha/sha_locl.h for details. */