diff options
| author | lizzie <lizzie@eden-emu.dev> | 2026-02-15 04:11:39 +0100 |
|---|---|---|
| committer | crueter <crueter@eden-emu.dev> | 2026-02-15 04:11:39 +0100 |
| commit | 75ebfaa090ca5ba9757e984c545784221ad2bf6c (patch) | |
| tree | 2d8dcfd098a96e84c08b90b42fa00c8201252ed1 /src/frontend_common/settings_generator.cpp | |
| parent | e3035ae8f2a79e9490a621c369b497840cd8ebac (diff) | |
[common] autogenerate unique console serial for every install (#3550)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3550
Reviewed-by: Maufeat <sahyno1996@gmail.com>
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: lizzie <lizzie@eden-emu.dev>
Co-committed-by: lizzie <lizzie@eden-emu.dev>
Diffstat (limited to 'src/frontend_common/settings_generator.cpp')
| -rw-r--r-- | src/frontend_common/settings_generator.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/src/frontend_common/settings_generator.cpp b/src/frontend_common/settings_generator.cpp index 0f09878b30..46625656b1 100644 --- a/src/frontend_common/settings_generator.cpp +++ b/src/frontend_common/settings_generator.cpp @@ -11,9 +11,8 @@ namespace FrontendCommon { void GenerateSettings() { static std::random_device rd; - // Web Token // - auto &token_setting = Settings::values.eden_token; - if (token_setting.GetValue().empty()) { + // Web Token + if (Settings::values.eden_token.GetValue().empty()) { static constexpr const size_t token_length = 48; static constexpr const frozen::string token_set = "abcdefghijklmnopqrstuvwxyz"; static std::uniform_int_distribution<int> token_dist(0, token_set.size() - 1); @@ -23,9 +22,18 @@ void GenerateSettings() { size_t idx = token_dist(rd); result += token_set[idx]; } - - token_setting.SetValue(result); + Settings::values.eden_token.SetValue(result); } + + // Randomly generated number because, well, we fill the rest automagically ;) + // Other serial parts are filled by Region_Index + std::random_device device; + std::mt19937 gen(device()); + std::uniform_int_distribution<u32> distribution(1, (std::numeric_limits<u32>::max)()); + if (Settings::values.serial_unit.GetValue() == 0) + Settings::values.serial_unit.SetValue(distribution(gen)); + if (Settings::values.serial_battery.GetValue() == 0) + Settings::values.serial_battery.SetValue(distribution(gen)); } } |
