blake256: fix wrong hash when computed in parts

This does not happen when used by the monero code
This commit is contained in:
moneromooo-monero 2017-12-22 12:08:02 +00:00
parent 7a9a4a6669
commit 8a4610c315
No known key found for this signature in database
GPG Key ID: 686F07454D6CEFC3
1 changed files with 1 additions and 1 deletions

View File

@ -157,7 +157,7 @@ void blake256_update(state *S, const uint8_t *data, uint64_t datalen) {
int left = S->buflen >> 3; int left = S->buflen >> 3;
int fill = 64 - left; int fill = 64 - left;
if (left && (((datalen >> 3) & 0x3F) >= (unsigned) fill)) { if (left && (((datalen >> 3)) >= (unsigned) fill)) {
memcpy((void *) (S->buf + left), (void *) data, fill); memcpy((void *) (S->buf + left), (void *) data, fill);
S->t[0] += 512; S->t[0] += 512;
if (S->t[0] == 0) S->t[1]++; if (S->t[0] == 0) S->t[1]++;