aboutsummaryrefslogtreecommitdiffstats
path: root/src/librandom/random_string.c
Commit message (Collapse)AuthorAgeFilesLines
* Prepare for 2.12.0.0. librandom revamp.Laurent Bercot2022-04-091-60/+0
| | | | Signed-off-by: Laurent Bercot <ska@appnovation.com>
* sysdeps redesign: first part: minimize clr testsLaurent Bercot2019-09-201-9/+2
| | | | | | | | Remaining clr: emptyregex: can be safely guessed to no nullispointer: can't be safely guessed, but do we need the test? devurandom: can't be safely guessed malloc0: can more or less be safely guessed to no
* More superflous headers cleanup and tiny fixesLaurent Bercot2017-03-131-1/+0
|
* Types change: big pass on libstddjb and libunixonacidLaurent Bercot2017-02-211-1/+1
| | | | libdatastruct still missing, library still not functional
* Types fix: librandom, libstdcryptoLaurent Bercot2017-01-211-5/+5
|
* Also fix actual random_string compilation with musl and getrandom()...Laurent Bercot2016-12-051-0/+1
|
* Include skalibs/nonposix.h so BSDs can find arc4randomLaurent Bercot2016-10-141-0/+1
|
* Clean up and modernize librandom.Laurent Bercot2016-10-141-0/+66
Correct random number generation has historically been suprisingly painful to achieve. There was no standard, every system behaved in a subtly different way, and there were a few userland initiatives to get decent randomness, all incompatible of course. The situation is a bit better now, we're heading towards some standardization. The arc4random() series of functions is a good API, and available on a lot of systems - unfortunately not Linux, but on Linux the new getrandom() makes using /dev/random obsolete. So I removed the old crap in librandom, dropped EGD support, dropped dynamic backend selection, made a single API series (random_* instead of goodrandom_* and badrandom_*), added an arc4random backend and a getrandom backend, and defaulted to /dev/urandom backed up by SURF in the worst case. This should be much smaller and logical. However, it's a major API break, so the skarnet.org stack will be changed to adapt.