aboutsummaryrefslogtreecommitdiff
path: root/src/randomenv.cpp
AgeCommit message (Collapse)Author
2021-03-29rand: only try and use freeifaddrs if availablefanquake
2020-12-08util: Allow use of C++14 chrono literalsMarcoFalke
2020-11-09src/randomenv.cpp: fix build on uclibcFabrice Fontaine
Check for HAVE_STRONG_GETAUXVAL or HAVE_WEAK_GETAUXVAL before using getauxval to avoid a build failure on uclibc Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2020-10-07random: fixes read buffer resizing in RandAddSeedPerfmonEthan Heilman
+ Replaces std::max with std::min to resize buffer in RandAddSeedPerfmon + Documents behavior of RandAddSeedPerfmon
2020-04-16scripted-diff: Bump copyright headersMarcoFalke
-BEGIN VERIFY SCRIPT- ./contrib/devtools/copyright_header.py update ./ -END VERIFY SCRIPT-
2020-02-28Drop unused mach time headersBen Woosley
Now that we're no longer special-casing clock usage for MacOS, we're not referencing anything defined in these headers.
2020-02-06random: don't special case clock usage on macOSfanquake
clock_gettime(), CLOCK_MONOTONIC and CLOCK_REALTIME are all available for use on macOS (now that we require macOS >=10.12). Use them rather than the deprecated mach_timespec_t time API. master: 2019-12-23T20:49:43Z Feeding 216 bytes of dynamic environment data into RNG 2019-12-23T20:50:43Z Feeding 216 bytes of dynamic environment data into RNG this commit: 2019-12-23T20:32:41Z Feeding 232 bytes of dynamic environment data into RNG 2019-12-23T20:33:42Z Feeding 232 bytes of dynamic environment data into RNG
2019-11-20Put bounds on the number of CPUID leaves exploredPieter Wuille
2019-11-19Fix CPUID subleaf iterationPieter Wuille
2019-11-18random: stop retrieving random bytes from OpenSSLfanquake
On the ::SLOW path we would use OpenSSL as an additional source of random bytes. This commit removes that functionality. Note that this was always only an additional source, and that we never checked the return value RAND_bytes(): https://www.openssl.org/docs/manmaster/man3/RAND_bytes.html RAND_bytes() puts num cryptographically strong pseudo-random bytes into buf.
2019-11-12Use thread-safe atomic in perfmon seederPieter Wuille
Also switch to chrono based types.
2019-11-12Add information gathered through getauxval()Pieter Wuille
Suggested by Wladimir van der Laan.
2019-11-12Feed CPUID data into RNGPieter Wuille
2019-11-12Use sysctl for seeding on MacOS/BSDPieter Wuille
2019-11-12Gather additional entropy from the environmentPieter Wuille
This based on code by Gregory Maxwell.
2019-11-12Seed randomness with process id / thread id / various clocksPieter Wuille
This sort of data is also used by OpenSSL.
2019-11-12[MOVEONLY] Move perfmon data gathering to new randomenv modulePieter Wuille