random number generator seeding update for macOS
using file descriptor's free approach instead. Change-Id: I9baa3d471b4ed6f624985a5b6325648ef7875596 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1710665 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#62933}
This commit is contained in:
parent
a0728e869b
commit
c09aff1721
1
AUTHORS
1
AUTHORS
@ -74,6 +74,7 @@ Colin Ihrig <cjihrig@gmail.com>
|
||||
Daniel Andersson <kodandersson@gmail.com>
|
||||
Daniel Bevenius <daniel.bevenius@gmail.com>
|
||||
Daniel James <dnljms@gmail.com>
|
||||
David Carlier <devnexen@gmail.com>
|
||||
Deepak Mohan <hop2deep@gmail.com>
|
||||
Deon Dior <diaoyuanjie@gmail.com>
|
||||
Dominic Farolini <domfarolino@gmail.com>
|
||||
|
@ -51,6 +51,13 @@ RandomNumberGenerator::RandomNumberGenerator() {
|
||||
result = rand_s(&second_half);
|
||||
DCHECK_EQ(0, result);
|
||||
SetSeed((static_cast<int64_t>(first_half) << 32) + second_half);
|
||||
#elif V8_OS_MACOSX
|
||||
// Despite its prefix suggests it is not RC4 algorithm anymore.
|
||||
// It always succeeds while having decent performance and
|
||||
// no file descriptor involved.
|
||||
int64_t seed;
|
||||
arc4random_buf(&seed, sizeof(seed));
|
||||
SetSeed(seed);
|
||||
#else
|
||||
// Gather entropy from /dev/urandom if available.
|
||||
FILE* fp = fopen("/dev/urandom", "rb");
|
||||
|
Loading…
Reference in New Issue
Block a user