diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2005-12-21 06:01:58 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-01-09 17:15:56 -0500 |
commit | bcb0ad2b34daade529ce1f38eede0ea8b7309535 (patch) | |
tree | 5f09892e3031dc3c94304f563e91baa1b3438d6a | |
parent | afad2608c766f53c79ec4ffccdb4bef660b90a89 (diff) |
[CRYPTO] sha1: Fixed off-by-64 bug in sha1_update
After a partial update, the done pointer is off to the right by 64 bytes.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
-rw-r--r-- | crypto/sha1.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crypto/sha1.c b/crypto/sha1.c index 8048e2dd3c14..21571ed35b7e 100644 --- a/crypto/sha1.c +++ b/crypto/sha1.c | |||
@@ -61,8 +61,8 @@ static void sha1_update(void *ctx, const u8 *data, unsigned int len) | |||
61 | u32 temp[SHA_WORKSPACE_WORDS]; | 61 | u32 temp[SHA_WORKSPACE_WORDS]; |
62 | 62 | ||
63 | if (partial) { | 63 | if (partial) { |
64 | done = 64 - partial; | 64 | done = -partial; |
65 | memcpy(sctx->buffer + partial, data, done); | 65 | memcpy(sctx->buffer + partial, data, done + 64); |
66 | src = sctx->buffer; | 66 | src = sctx->buffer; |
67 | } | 67 | } |
68 | 68 | ||