4#include "siphash_rng.h"
14 if (gen->count8 == 0) {
15 gen->buffer8 = hashx_siphash13_ctr(gen->counter, &gen->keys);
17 gen->count8 =
sizeof(gen->buffer8);
18#ifdef HASHX_RNG_CALLBACK
20 gen->callback(&gen->buffer8, gen->callback_user_data);
25 return gen->buffer8 >> (gen->count8 * 8);
29 if (gen->count32 == 0) {
30 gen->buffer32 = hashx_siphash13_ctr(gen->counter, &gen->keys);
32 gen->count32 =
sizeof(gen->buffer32) /
sizeof(uint32_t);
33#ifdef HASHX_RNG_CALLBACK
35 gen->callback(&gen->buffer32, gen->callback_user_data);
40 return (uint32_t)(gen->buffer32 >> (gen->count32 * 32));