From 4e840877aa9b8ac179cc86202367eaaf8b78b77e Mon Sep 17 00:00:00 2001 From: knu Date: Tue, 26 Feb 2002 22:09:49 +0000 Subject: * ext/digest/sha2/sha2.c: Merge from rough. Fix a couple of off-by-one errors in Aaron Gifford's code. Obtained from: KAME via FreeBSD KAME PR: 393 FreeBSD PR: kern/34242 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2142 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 9 +++++++++ ext/digest/sha2/sha2.c | 6 +++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 9559e205d3..d9faccdd9c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +Wed Feb 27 07:05:17 2002 Akinori MUSHA + + * ext/digest/sha2/sha2.c: Merge from rough. Fix a couple of + off-by-one errors in Aaron Gifford's code. + + Obtained from: KAME via FreeBSD + KAME PR: 393 + FreeBSD PR: kern/34242 + Tue Feb 26 21:34:07 2002 Usaku Nakamura * bignum.c (rb_big_2comp): void function cannot return any value. diff --git a/ext/digest/sha2/sha2.c b/ext/digest/sha2/sha2.c index a04534a831..a3c3258082 100644 --- a/ext/digest/sha2/sha2.c +++ b/ext/digest/sha2/sha2.c @@ -33,7 +33,7 @@ * */ -/* $RoughId: sha2.c,v 1.2 2001/07/13 19:49:10 knu Exp $ */ +/* $RoughId: sha2.c,v 1.3 2002/02/26 22:03:36 knu Exp $ */ /* $Id$ */ #include @@ -533,7 +533,7 @@ void SHA256_Final(sha2_byte digest[], SHA256_CTX* context) { /* Begin padding with a 1 bit: */ context->buffer[usedspace++] = 0x80; - if (usedspace < SHA256_SHORT_BLOCK_LENGTH) { + if (usedspace <= SHA256_SHORT_BLOCK_LENGTH) { /* Set-up for the last transform: */ MEMSET_BZERO(&context->buffer[usedspace], SHA256_SHORT_BLOCK_LENGTH - usedspace); } else { @@ -824,7 +824,7 @@ void SHA512_Last(SHA512_CTX* context) { /* Begin padding with a 1 bit: */ context->buffer[usedspace++] = 0x80; - if (usedspace < SHA512_SHORT_BLOCK_LENGTH) { + if (usedspace <= SHA512_SHORT_BLOCK_LENGTH) { /* Set-up for the last transform: */ MEMSET_BZERO(&context->buffer[usedspace], SHA512_SHORT_BLOCK_LENGTH - usedspace); } else { -- cgit v1.2.3