TF_UNIT_TYPE k[TF_NR_KEY_UNITS];
struct tf_prng_data *rprng = sdata;
- memset(rprng, 0, sizeof(struct tf_prng_data));
+ memset(rprng, 0, tf_prng_datasize());
if (!skey) return;
memcpy(k, skey, TF_KEY_SIZE);
struct tf_prng_data *rprng = sdata;
size_t x;
- memset(rprng, 0, sizeof(struct tf_prng_data));
+ memset(rprng, 0, tf_prng_datasize());
for (x = 0; x < TF_NR_KEY_UNITS; x++) k[x] = seed;
tfe_init(&rprng->tfe, k);
rprng->init = 1;
{
TF_UNIT_TYPE c = tf_prng_random_r(sdata);
if (d <= s) return s;
- return s + c / ((TF_UNIT_TYPE)~0 / (d - s + 1) + 1);
+ return TF_PRNG_RANGE(c, TF_UNIT_TYPE, s, d);
}
TF_UNIT_TYPE tf_prng_range(TF_UNIT_TYPE s, TF_UNIT_TYPE d)