patch-2.4.14 linux/drivers/char/random.c
Next file: linux/drivers/char/rio/rio_linux.c
Previous file: linux/drivers/char/mxser.c
Back to the patch index
Back to the overall index
- Lines: 29
- Date:
Tue Oct 30 15:08:12 2001
- Orig file:
v2.4.13/linux/drivers/char/random.c
- Orig date:
Tue Oct 23 22:48:50 2001
diff -u --recursive --new-file v2.4.13/linux/drivers/char/random.c linux/drivers/char/random.c
@@ -569,7 +569,7 @@
__u32 w;
while (nwords--) {
- w = rotate_left(r->input_rotate, *in);
+ w = rotate_left(r->input_rotate, *in++);
i = r->add_ptr = (r->add_ptr - 1) & wordmask;
/*
* Normally, we add 7 bits of rotation to the pool.
@@ -1245,15 +1245,16 @@
if (r->entropy_count < nbytes * 8 &&
r->entropy_count < r->poolinfo.POOLBITS) {
- int nwords = min(r->poolinfo.poolwords - r->entropy_count/32,
- sizeof(tmp) / 4);
+ int nwords = min_t(int,
+ r->poolinfo.poolwords - r->entropy_count/32,
+ sizeof(tmp) / 4);
DEBUG_ENT("xfer %d from primary to %s (have %d, need %d)\n",
nwords * 32,
r == sec_random_state ? "secondary" : "unknown",
r->entropy_count, nbytes * 8);
- extract_entropy(random_state, tmp, nwords, 0);
+ extract_entropy(random_state, tmp, nwords * 4, 0);
add_entropy_words(r, tmp, nwords);
credit_entropy_store(r, nwords * 32);
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)