X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/863b38d1b9406e9d38628d34b04f3f9fcd879e1f..119bdfc4c80e313417047de10700e6b8c3955d0d:/rand/rand.c diff --git a/rand/rand.c b/rand/rand.c index c2540f7e..32605ac0 100644 --- a/rand/rand.c +++ b/rand/rand.c @@ -251,9 +251,7 @@ void rand_add(rand_pool *r, const void *p, size_t sz, unsigned goodbits) const octet *c = p; int i, rot; -#if RAND_POOLSZ != 128 -# error Polynomial in rand_add is out of date. Fix it. -#endif + STATIC_ASSERT(RAND_POOLSZ == 128, "Polynomial doesn't match pool size"); RAND_RESOLVE(r); @@ -313,6 +311,7 @@ void rand_gate(rand_pool *r) HASH_INIT(&hc); STORE32(g, r->gen); HASH(&hc, g, sizeof(g)); + HASH(&hc, r->k.k, RAND_KEYSZ); HASH(&hc, r->pool, RAND_POOLSZ); HASH(&hc, r->buf, RAND_BUFSZ); HASH_DONE(&hc, h); @@ -363,6 +362,7 @@ void rand_stretch(rand_pool *r) HASH_INIT(&hc); STORE32(g, r->gen); HASH(&hc, g, sizeof(g)); + HASH(&hc, r->k.k, RAND_KEYSZ); HASH(&hc, r->pool, RAND_POOLSZ); HASH(&hc, r->buf, RAND_BUFSZ); HASH_DONE(&hc, h);