~mdw
/
catacomb
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch '2.5.x'
[catacomb]
/
rand
/
rand.c
diff --git
a/rand/rand.c
b/rand/rand.c
index
c2540f7
..
32605ac
100644
(file)
--- 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;
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);
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_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);
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_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);
HASH(&hc, r->pool, RAND_POOLSZ);
HASH(&hc, r->buf, RAND_BUFSZ);
HASH_DONE(&hc, h);