diff options
author | Zach Hilman <zachhilman@gmail.com> | 2018-11-13 12:25:43 -0500 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2018-11-13 12:26:03 -0500 |
commit | ab552e4a252b66ca02c04724a1773edbefec6837 (patch) | |
tree | 544702301230e785639d7ff4cfbaa2e99294a4b9 /src/core/hle/kernel/process.cpp | |
parent | 65bd03d74cbf4d8072239480404c6db83d41b27c (diff) |
svc: Use proper random entropy generation algorithm
Diffstat (limited to 'src/core/hle/kernel/process.cpp')
-rw-r--r-- | src/core/hle/kernel/process.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/hle/kernel/process.cpp b/src/core/hle/kernel/process.cpp index 420218d59b..6e5b36d6fd 100644 --- a/src/core/hle/kernel/process.cpp +++ b/src/core/hle/kernel/process.cpp @@ -17,6 +17,7 @@ #include "core/hle/kernel/thread.h" #include "core/hle/kernel/vm_manager.h" #include "core/memory.h" +#include "core/settings.h" namespace Kernel { @@ -35,6 +36,11 @@ SharedPtr<Process> Process::Create(KernelCore& kernel, std::string&& name) { process->process_id = kernel.CreateNewProcessID(); process->svc_access_mask.set(); + std::mt19937 rng(Settings::values.rng_seed.value_or(0)); + std::uniform_int_distribution<u64> distribution; + std::generate(process->random_entropy.begin(), process->random_entropy.end(), + [&] { return distribution(rng); }); + kernel.AppendNewProcess(process); return process; } |