use smaller integers for random cache state

This commit is contained in:
Daniel Micay 2018-11-04 14:23:12 -05:00
parent 1fed72a9c3
commit 943a81fbeb
2 changed files with 6 additions and 6 deletions

View File

@ -56,7 +56,7 @@ static void refill(struct random_state *state) {
u16 get_random_u16(struct random_state *state) {
u16 value;
size_t remaining = RANDOM_CACHE_SIZE - state->index;
unsigned remaining = RANDOM_CACHE_SIZE - state->index;
if (remaining < sizeof(value)) {
refill(state);
}
@ -83,7 +83,7 @@ u16 get_random_u16_uniform(struct random_state *state, u16 bound) {
u64 get_random_u64(struct random_state *state) {
u64 value;
size_t remaining = RANDOM_CACHE_SIZE - state->index;
unsigned remaining = RANDOM_CACHE_SIZE - state->index;
if (remaining < sizeof(value)) {
refill(state);
}

View File

@ -4,12 +4,12 @@
#include "chacha.h"
#include "util.h"
#define RANDOM_CACHE_SIZE 256ULL
#define RANDOM_RESEED_SIZE 256ULL * 1024
#define RANDOM_CACHE_SIZE 256U
#define RANDOM_RESEED_SIZE (256U * 1024)
struct random_state {
size_t index;
size_t reseed;
unsigned index;
unsigned reseed;
chacha_ctx ctx;
u8 cache[RANDOM_CACHE_SIZE];
};