summaryrefslogtreecommitdiff
path: root/sys/dev/rnd.c
AgeCommit message (Collapse)Author
2002-11-25protect the arc4_getbyte() w/ an splhigh sinceMichael Shalayeff
there by multiple pathways, where it worked until read from userland in big buffers and some luck. does not cause a memory trashing, but rather may mess up the arc4 state such that it will not generate one particular value until a stir. sigh. was reported by multiple people over some time.
2002-11-11grammar fixens from Andrey SmaginMichael Shalayeff
2002-06-19add kqfilter for random, regress is comingMichael Shalayeff
2002-06-14from freebsd:Michael Shalayeff
Throw away the first N words of output, as suggested in the paper "Weaknesses in the Key Scheduling Algorithm of RC4" by Fluher, Mantin, and Shamir. (N = 256 in our case.)
2002-05-27kill unused arc4random_8() APITheo de Raadt
2002-04-01a few typos from pechkinMichael Shalayeff
2002-03-21on extract: better spl granularity, make sure pool is updated between runs; ↵Michael Shalayeff
later pt out by camield@
2002-03-14First round of __P removal in sysTodd C. Miller
2002-01-31drop the low drop bits number to 10 dropMichael Shalayeff
2002-01-10return ENOTTY not EINVAL in default: in *ioctl()Michael Shalayeff
2002-01-03Restore entropy_count calculation. mickey@ okThomas Nordin
2001-12-29finer spl granularity, allowing ints to happen; pointed out and tested on ↵Michael Shalayeff
vax by hugh@
2001-09-24there was a possible overrun in prev folding length fix.Michael Shalayeff
however i was lucky enough so it worked. anyway, this fixes the problem and seems to run very much alright on sparc at least.
2001-09-23oops, fix the after folding sizesMichael Shalayeff
2001-06-24only run timeout if stirring happened, save cycles for mass energy conservationMichael Shalayeff
2001-05-08reapply 1.39 once again, it seems i've fixed two bugs in it and itMichael Shalayeff
works ok on sparc and i386 now.
2001-01-17advance through buffer, leftovers from singular version; from Henric ↵Michael Shalayeff
Jungheim <henric@aimnet.com>
2000-10-22oops; deraadt@ okMichael Shalayeff
2000-10-20fix ioctls; pointed out by Pawel Krawczyk <http://ceti.pl/~kravietz/>Michael Shalayeff
2000-08-21fix indentation from 1.41 additionJason Wright
2000-07-18do not call arc4_stir() on pool overflow.Michael Shalayeff
calling it would hit perfomance in two evil ways, by delaying queue processing and hitting on arc4 quality. basic idea was expressed by dm@ some time ago when we were investigating poor arc4 quality. then, numbers showed how badly it hits on us.
2000-06-18Support FIONBIO and FIOASYNC. FIOASYNC is more or less a no-op>Todd C. Miller
2000-06-16undo latest problem. breaks the sparc. diff is too large, we are not ↵Theo de Raadt
debugging it for you
2000-06-08replace linked lists for event queue with circular buffer,Michael Shalayeff
which gives two advantages -- faster and smaller. do not arc4_stir on pool overflow, it takes too much time, instead just hash data in and keep entropy count trim. some minor cleanups here and there. fixes overdropping of entropy on non-idle system load. provos@ ok
2000-04-18Double usage of random() in the pseudo device to avoid settingHugh Graham
every 32nd bit to zero in the output. Checked by mickey.
2000-04-14this should fix the alpha; closes PR kernel/1189Michael Shalayeff
2000-04-13better has when adding entropy to the pool.Michael Shalayeff
bigger pool (4k).
2000-04-10add support for more random sources.Michael Shalayeff
make it easy to add more in the future. make extract_entropy() faster. more accurate stats.
2000-03-19faster log2, more stats, lazy random stirring, more stats, less debug, help ↵Michael Shalayeff
and ok from provos@
1999-09-28Set j = i after arc4random key schedule to be more like arc4 stream cipher;Theo de Raadt
from conversations between various people
1997-08-22nbits should probably actually be initialized.Jason Downs
1997-06-28fix the typesTheo de Raadt
1997-06-24more accounting!Michael Shalayeff
1997-06-22now where did that patch go?flipk
1997-06-22wasn't a race after all. properly initialize event_q pointers so theflipk
last one doesn't point off the end.
1997-06-21revert, there's a nasty race condition here.flipk
1997-06-20count properly (;Michael Shalayeff
1997-06-18s/u_char/u_int8_t/g, where reasonableMichael Shalayeff
s/\(static.*arc4_[^(]+(\)[^,)]+\([^)]*)\)/\1\2/g less cpu load, just in case
1997-06-17count slow queue low entropy dropsMichael Shalayeff
bigger queue use queue overflows for arc4_stir()
1997-06-14split the treatment of the random eventsMichael Shalayeff
event_q by flipk@ spl fix by deraadt@ gother statistics about whole processing use 'sysctl kern.random' to view what had happened also fix wrong vm.psstrings description
1997-06-12little faster, smaller, saferMichael Shalayeff
1997-06-12back out recent changes....Michael Shalayeff
1997-06-11oops, clean debug flagsMichael Shalayeff
1997-06-10do the job out of the calling function's splMichael Shalayeff
1997-03-30no more 2(two) md5 libs in kernel!Michael Shalayeff
tested for rnd(4).... should work for ip too, since it's the copy of ip_md*. use sys/md5k.h for protos.... std iface forever! hurray!
1997-02-04Make sure arc4random gets initialized eventually.dm
1997-01-15moved init of ret in randomioctl() to better locationkstailey
1997-01-15prevent this warning:kstailey
rnd.c:823: warning: `ret' might be used uninitialized in this function when compiling with -Wall
1997-01-05Remove lots of timer_state structs as they just ate memory and only a few wasNiklas Hallqvist
ever used. Now a single state is kept for net, tty and disk events resp. Also, call the randomness from disk_unbusy instead of biodone, as biodone gets a lot of virtual events (from virtual filesystems etc), and as a bonus: feed xfer time and size into the entropy pool too.
1997-01-01don't count on MFS in add_blkdev_randomnessMichael Shalayeff