crypto: sha1_generic - use SHA1_BLOCK_SIZE

Modify sha1_update to use SHA1_BLOCK_SIZE.

Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Mandeep Singh Baines 2011-06-27 15:41:56 +08:00 committed by Herbert Xu
parent 52527cf3f9
commit 36ca239b24

View File

@ -43,25 +43,26 @@ static int sha1_update(struct shash_desc *desc, const u8 *data,
unsigned int partial, done; unsigned int partial, done;
const u8 *src; const u8 *src;
partial = sctx->count & 0x3f; partial = sctx->count % SHA1_BLOCK_SIZE;
sctx->count += len; sctx->count += len;
done = 0; done = 0;
src = data; src = data;
if ((partial + len) > 63) { if ((partial + len) >= SHA1_BLOCK_SIZE) {
u32 temp[SHA_WORKSPACE_WORDS]; u32 temp[SHA_WORKSPACE_WORDS];
if (partial) { if (partial) {
done = -partial; done = -partial;
memcpy(sctx->buffer + partial, data, done + 64); memcpy(sctx->buffer + partial, data,
done + SHA1_BLOCK_SIZE);
src = sctx->buffer; src = sctx->buffer;
} }
do { do {
sha_transform(sctx->state, src, temp); sha_transform(sctx->state, src, temp);
done += 64; done += SHA1_BLOCK_SIZE;
src = data + done; src = data + done;
} while (done + 63 < len); } while (done + SHA1_BLOCK_SIZE <= len);
memset(temp, 0, sizeof(temp)); memset(temp, 0, sizeof(temp));
partial = 0; partial = 0;