Hey Eric,
On Wed, Sep 19, 2018 at 2:41 AM Eric Biggers <[email protected]> wrote:
> This buffer is 4 times too long.
Nice catch.
> Or how about something much simpler:
>
> static inline void blake2s_final(struct blake2s_state *state, u8 *out,
> const size_t outlen)
> {
> #ifdef DEBUG
> BUG_ON(!out || !outlen || outlen > BLAKE2S_OUTBYTES);
> #endif
> __blake2s_final(state);
>
> cpu_to_le32_array(state->h, ARRAY_SIZE(state->h));
> memcpy(out, state->h, outlen);
>
> memzero_explicit(state, sizeof(*state));
> }
Oh, that's excellent, thanks. Much better than prior. I'll do exactly that.
Jason