From: Alan T. DeKok Date: Mon, 22 Jan 2024 14:08:01 +0000 (-0500) Subject: rename functions for clarity X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06cad4501194eb12e7ec1df57ae27fd2a5f66add;p=thirdparty%2Ffreeradius-server.git rename functions for clarity in preparation for allowing forced seeds --- diff --git a/src/lib/util/dict_tokenize.c b/src/lib/util/dict_tokenize.c index 514838ecfe3..bc789175e5d 100644 --- a/src/lib/util/dict_tokenize.c +++ b/src/lib/util/dict_tokenize.c @@ -2177,7 +2177,7 @@ static int _dict_from_file(dict_tokenize_ctx_t *ctx, /* * Seed the random pool with data. */ - fr_rand_seed(&statbuf, sizeof(statbuf)); + fr_rand_mixin(&statbuf, sizeof(statbuf)); memset(&base_flags, 0, sizeof(base_flags)); diff --git a/src/lib/util/isaac.c b/src/lib/util/isaac.c index 34a829076fb..6e1e28cdba6 100644 --- a/src/lib/util/isaac.c +++ b/src/lib/util/isaac.c @@ -63,7 +63,7 @@ do { \ } while (0) /* if (flag==1), then use the contents of randrsl[] to initialize mm[]. */ -void fr_rand_init(fr_randctx *ctx, int flag) +void fr_isaac_init(fr_randctx *ctx, int flag) { int i; uint32_t a, b, c, d, e, f, g, h; @@ -123,7 +123,7 @@ int main() for (i = 0; i < 256; ++i) ctx.randrsl[i] = (uint32_t)0; - fr_rand_init(&ctx, 1); + fr_isaac_init(&ctx, 1); for (i = 0; i < 2; ++i) { fr_isaac(&ctx); for (j = 0; j < 256; ++j) { diff --git a/src/lib/util/rand.c b/src/lib/util/rand.c index 2fbcc9759dd..9550a142fc7 100644 --- a/src/lib/util/rand.c +++ b/src/lib/util/rand.c @@ -31,11 +31,11 @@ RCSID("$Id$") static _Thread_local fr_randctx fr_rand_pool; //!< A pool of pre-generated random integers static _Thread_local bool fr_rand_initialized = false; -/** Seed the random number generator +/** Mix data into the random number generator. * * May be called any number of times. */ -void fr_rand_seed(void const *data, size_t size) +void fr_rand_mixin(void const *data, size_t size) { uint32_t hash; @@ -75,7 +75,7 @@ void fr_rand_seed(void const *data, size_t size) memcpy((void *) &fr_rand_pool.randrsl[0], &when, sizeof(when)); } - fr_rand_init(&fr_rand_pool, 1); + fr_isaac_init(&fr_rand_pool, 1); fr_rand_pool.randcnt = 0; fr_rand_initialized = 1; } @@ -105,7 +105,7 @@ uint32_t fr_rand(void) * Ensure that the pool is initialized. */ if (!fr_rand_initialized) { - fr_rand_seed(NULL, 0); + fr_rand_mixin(NULL, 0); } num = fr_rand_pool.randrsl[fr_rand_pool.randcnt++]; diff --git a/src/lib/util/rand.h b/src/lib/util/rand.h index d9326dff41c..0f53ea1fa90 100644 --- a/src/lib/util/rand.h +++ b/src/lib/util/rand.h @@ -56,12 +56,12 @@ typedef struct { } fr_fast_rand_t; void fr_isaac(fr_randctx *ctx); -void fr_rand_init(fr_randctx *ctx, int flag); +void fr_isaac_init(fr_randctx *ctx, int flag); /** @hidecallergraph */ uint32_t fr_rand(void); /* like rand(), but better. */ void fr_rand_buffer(void *start, size_t length) CC_HINT(nonnull); void fr_rand_str(uint8_t *out, size_t len, char class); -void fr_rand_seed(void const *, size_t ); /* seed the random pool */ +void fr_rand_mixin(void const *, size_t ); /* seed the random pool */ uint32_t fr_fast_rand(fr_fast_rand_t *ctx); #ifdef __cplusplus diff --git a/src/modules/rlm_eap/rlm_eap.c b/src/modules/rlm_eap/rlm_eap.c index 1eecf3b9cd9..eadf9012b1d 100644 --- a/src/modules/rlm_eap/rlm_eap.c +++ b/src/modules/rlm_eap/rlm_eap.c @@ -1065,7 +1065,7 @@ static int mod_instantiate(module_inst_ctx_t const *mctx) * Create our own random pool. */ for (i = 0; i < 256; i++) inst->rand_pool.randrsl[i] = fr_rand(); - fr_rand_init(&inst->rand_pool, 1); + fr_isaac_init(&inst->rand_pool, 1); inst->rand_pool.randcnt = 0; return 0;