From 945a76d97b00f9c0d24b6d14da86b18284316000 Mon Sep 17 00:00:00 2001 From: knu Date: Wed, 11 Oct 2006 12:43:58 +0000 Subject: * ext/digest/digest.c (rb_digest_base_alloc, rb_digest_base_equal): Simplify the equality check and just compare resulted digests since state-level equality should not be significant. * ext/digest/digest.h: Ditto. * ext/digest/*/*.[ch]: Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/digest/sha1/sha1.c | 6 ------ ext/digest/sha1/sha1.h | 2 -- ext/digest/sha1/sha1init.c | 1 - ext/digest/sha1/sha1ossl.c | 15 --------------- ext/digest/sha1/sha1ossl.h | 1 - 5 files changed, 25 deletions(-) (limited to 'ext/digest/sha1') diff --git a/ext/digest/sha1/sha1.c b/ext/digest/sha1/sha1.c index 6545744bed..6196ca6b82 100644 --- a/ext/digest/sha1/sha1.c +++ b/ext/digest/sha1/sha1.c @@ -267,9 +267,3 @@ void SHA1_Finish(SHA1_CTX* context, uint8_t digest[20]) ((context->state[i>>2] >> ((3-(i & 3)) * 8) ) & 255); } } - -int SHA1_Equal(SHA1_CTX* pctx1, SHA1_CTX* pctx2) { - return memcmp(pctx1->count, pctx2->count, sizeof(pctx1->count)) == 0 - && memcmp(pctx1->state, pctx2->state, sizeof(pctx1->state)) == 0 - && memcmp(pctx1->buffer, pctx2->buffer, sizeof(pctx1->buffer)) == 0; -} diff --git a/ext/digest/sha1/sha1.h b/ext/digest/sha1/sha1.h index c9f84562fc..60e3b01fe2 100644 --- a/ext/digest/sha1/sha1.h +++ b/ext/digest/sha1/sha1.h @@ -25,14 +25,12 @@ typedef struct { #define SHA1_Init rb_Digest_SHA1_Init #define SHA1_Update rb_Digest_SHA1_Update #define SHA1_Finish rb_Digest_SHA1_Finish -#define SHA1_Equal rb_Digest_SHA1_Equal #endif void SHA1_Transform _((uint32_t state[5], const uint8_t buffer[64])); void SHA1_Init _((SHA1_CTX *context)); void SHA1_Update _((SHA1_CTX *context, const uint8_t *data, size_t len)); void SHA1_Finish _((SHA1_CTX *context, uint8_t digest[20])); -int SHA1_Equal _((SHA1_CTX *pctx1, SHA1_CTX *pctx2)); #define SHA1_BLOCK_LENGTH 64 #define SHA1_DIGEST_LENGTH 20 diff --git a/ext/digest/sha1/sha1init.c b/ext/digest/sha1/sha1init.c index 8a132e4e20..bd92c59406 100644 --- a/ext/digest/sha1/sha1init.c +++ b/ext/digest/sha1/sha1init.c @@ -14,7 +14,6 @@ static algo_t sha1 = { (hash_init_func_t)SHA1_Init, (hash_update_func_t)SHA1_Update, (hash_finish_func_t)SHA1_Finish, - (hash_equal_func_t)SHA1_Equal, }; void diff --git a/ext/digest/sha1/sha1ossl.c b/ext/digest/sha1/sha1ossl.c index 96365c7974..adf5cf267c 100644 --- a/ext/digest/sha1/sha1ossl.c +++ b/ext/digest/sha1/sha1ossl.c @@ -2,24 +2,9 @@ #include "defs.h" #include "sha1ossl.h" -#include void SHA1_Finish(SHA1_CTX *ctx, char *buf) { SHA1_Final(buf, ctx); } - -int -SHA1_Equal(SHA1_CTX* pctx1, SHA1_CTX* pctx2) -{ - return pctx1->num == pctx2->num - && pctx1->h0 == pctx2->h0 - && pctx1->h1 == pctx2->h1 - && pctx1->h2 == pctx2->h2 - && pctx1->h3 == pctx2->h3 - && pctx1->h4 == pctx2->h4 - && pctx1->Nl == pctx2->Nl - && pctx1->Nh == pctx2->Nh - && memcmp(pctx1->data, pctx2->data, sizeof(pctx1->data)) == 0; -} diff --git a/ext/digest/sha1/sha1ossl.h b/ext/digest/sha1/sha1ossl.h index 8a5b9cfc02..8f9984cc64 100644 --- a/ext/digest/sha1/sha1ossl.h +++ b/ext/digest/sha1/sha1ossl.h @@ -16,6 +16,5 @@ #define SHA1_DIGEST_LENGTH SHA_DIGEST_LENGTH void SHA1_Finish(SHA1_CTX *ctx, char *buf); -int SHA1_Equal(SHA1_CTX *pctx1, SHA1_CTX *pctx2); #endif -- cgit v1.2.3