Add OPT_SSL_RANDOM+, "fix" getrandom(2) (David Čepelík, Simon McVittie)..
We yet had a n_RANDOM_USE_XSSL #define in config.h, but replace
this with a regular configuration option: like this we can avoid
searching for a native random implementation if we can satisfy.
While here, add a OPT_NOEXTRANDOM in order to ease testing, and
avoid even usage of /dev/urandom if that is set.
Also, for !OPT_SSL_RANDOM and !HAVE_RANDOM_POSIX (arc4random(3))
we did not use the builtin ARC4 fallback path in case we detected
either of getrandom(2) and getrandom(3), different to the
otherwise used /dev/urandom path.
I have realized this through words by Simon McVittie in the
debian-devel@ thread that led to [
a46c4a0a], but now it must be
said that David likely referred to that already back in August
2017 (for [
f2cc9b83]), though unlikely that happened on the
ArchLinux kernel he reported the bug for, except through the
flowers. Sic.