blob: c63816dea091660f7c9657eeaf48699ea2543428 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
/* See LICENSE file for copyright and license details. */
#include "common.h"
size_t
libblake_blake2s_update(struct libblake_blake2s_state *state, const void *data_, size_t len)
{
const unsigned char *data = data_;
size_t off = 0;
for (; len - off > 64; off += 64) {
/* See libblake_blake2s_force_update.c for optimisations notes */
state->t[0] = (state->t[0] + 64) & UINT_LEAST32_C(0xFFFFffff);
if (UNLIKELY(state->t[0] < 64))
state->t[1] = (state->t[1] + 1) & UINT_LEAST32_C(0xFFFFffff);
libblake_internal_blake2s_compress(state, &data[off]);
}
return off;
}
|