From d2d9fa337599583ba531f5831a0bceedf7cd8b4e Mon Sep 17 00:00:00 2001 From: knu Date: Thu, 5 Oct 2006 11:09:42 +0000 Subject: * ext/digest/digest.[ch]: Since the argument order of hash_final_func_t was inconsistent with others, change it and rename to hash_finish_func_t to avoid confusion. * ext/digest/digest.[ch]: Remove and eliminate the use of hash_end_func_t. Implement hexdigest conversion in the base class. * ext/digest/md5/md5.c, ext/digest/md5/md5.h, ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c, ext/digest/md5/md5ossl.h: Remove MD5_End() and change MD5_Final() to MD5_Finish(). * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb, ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h, ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c, ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h: Remove unused functions RMD160_End(), RMD160_File(), RMD160_Data() and change RMD160_Final() to RMD160_Finish(). * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c, ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c, ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c, ext/digest/sha1/sha1ossl.h: Likewise. * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c, ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c, ext/digest/sha2/sha2init.c: Likewise. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@11086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/digest/md5/md5.c | 20 +++++++------------- ext/digest/md5/md5.h | 7 +++---- ext/digest/md5/md5init.c | 3 +-- ext/digest/md5/md5ossl.c | 8 +------- ext/digest/md5/md5ossl.h | 2 +- 5 files changed, 13 insertions(+), 27 deletions(-) (limited to 'ext/digest/md5') diff --git a/ext/digest/md5/md5.c b/ext/digest/md5/md5.c index 6b61f031c..8f49476a1 100644 --- a/ext/digest/md5/md5.c +++ b/ext/digest/md5/md5.c @@ -41,6 +41,12 @@ 1999-05-03 lpd Original version. */ +/* + This code was modified for use in Ruby. + + - Akinori MUSHA + */ + /*$OrigId: md5c.c,v 1.2 2001/03/26 08:57:14 matz Exp $ */ /*$RoughId: md5.c,v 1.2 2001/07/13 19:48:41 knu Exp $ */ /*$Id$ */ @@ -391,7 +397,7 @@ MD5_Update(MD5_CTX *pms, const uint8_t *data, size_t nbytes) } void -MD5_Final(uint8_t *digest, MD5_CTX *pms) +MD5_Finish(MD5_CTX *pms, uint8_t *digest) { static const uint8_t pad[64] = { 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -413,18 +419,6 @@ MD5_Final(uint8_t *digest, MD5_CTX *pms) digest[i] = (uint8_t)(pms->state[i >> 2] >> ((i & 3) << 3)); } -void -MD5_End(MD5_CTX *pctx, uint8_t *hexdigest) -{ - unsigned char digest[16]; - size_t i; - - MD5_Final(digest, pctx); - - for (i = 0; i < 16; i++) - sprintf(hexdigest + i * 2, "%02x", digest[i]); -} - int MD5_Equal(MD5_CTX* pctx1, MD5_CTX* pctx2) { return memcmp(pctx1->count, pctx2->count, sizeof(pctx1->count)) == 0 && memcmp(pctx1->state, pctx2->state, sizeof(pctx1->state)) == 0 diff --git a/ext/digest/md5/md5.h b/ext/digest/md5/md5.h index fc41380d3..a5de6fd97 100644 --- a/ext/digest/md5/md5.h +++ b/ext/digest/md5/md5.h @@ -63,17 +63,16 @@ typedef struct md5_state_s { } MD5_CTX; #ifdef RUBY +/* avoid name clash */ #define MD5_Init rb_Digest_MD5_Init #define MD5_Update rb_Digest_MD5_Update -#define MD5_Final rb_Digest_MD5_Final -#define MD5_End rb_Digest_MD5_End +#define MD5_Finish rb_Digest_MD5_Finish #define MD5_Equal rb_Digest_MD5_Equal #endif void MD5_Init _((MD5_CTX *pms)); void MD5_Update _((MD5_CTX *pms, const uint8_t *data, size_t nbytes)); -void MD5_Final _((uint8_t *digest, MD5_CTX *pms)); -void MD5_End _((MD5_CTX *pctx, uint8_t *hexdigest)); +void MD5_Finish _((MD5_CTX *pms, uint8_t *digest)); int MD5_Equal _((MD5_CTX *pctx1, MD5_CTX *pctx2)); #define MD5_BLOCK_LENGTH 64 diff --git a/ext/digest/md5/md5init.c b/ext/digest/md5/md5init.c index 3de597dc8..5fddb21c6 100644 --- a/ext/digest/md5/md5init.c +++ b/ext/digest/md5/md5init.c @@ -13,8 +13,7 @@ static algo_t md5 = { sizeof(MD5_CTX), (hash_init_func_t)MD5_Init, (hash_update_func_t)MD5_Update, - (hash_end_func_t)MD5_End, - (hash_final_func_t)MD5_Final, + (hash_finish_func_t)MD5_Finish, (hash_equal_func_t)MD5_Equal, }; diff --git a/ext/digest/md5/md5ossl.c b/ext/digest/md5/md5ossl.c index d930c7ab5..963243c7c 100644 --- a/ext/digest/md5/md5ossl.c +++ b/ext/digest/md5/md5ossl.c @@ -6,15 +6,9 @@ #include void -MD5_End(MD5_CTX *pctx, unsigned char *hexdigest) +MD5_Finish(MD5_CTX *pctx, unsigned char *digest) { - unsigned char digest[16]; - size_t i; - MD5_Final(digest, pctx); - - for (i = 0; i < 16; i++) - sprintf(hexdigest + i * 2, "%02x", digest[i]); } int diff --git a/ext/digest/md5/md5ossl.h b/ext/digest/md5/md5ossl.h index 610f58db0..bccbe05f2 100644 --- a/ext/digest/md5/md5ossl.h +++ b/ext/digest/md5/md5ossl.h @@ -6,7 +6,7 @@ #include #include -void MD5_End(MD5_CTX *pctx, unsigned char *hexdigest); +void MD5_Finish(MD5_CTX *pctx, unsigned char *digest); int MD5_Equal(MD5_CTX *pctx1, MD5_CTX *pctx2); #endif -- cgit