From 75ebfaa090ca5ba9757e984c545784221ad2bf6c Mon Sep 17 00:00:00 2001 From: lizzie Date: Sun, 15 Feb 2026 04:11:39 +0100 Subject: [common] autogenerate unique console serial for every install (#3550) Signed-off-by: lizzie Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3550 Reviewed-by: Maufeat Reviewed-by: DraVee Co-authored-by: lizzie Co-committed-by: lizzie --- src/frontend_common/settings_generator.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'src/frontend_common/settings_generator.cpp') 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 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 distribution(1, (std::numeric_limits::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)); } } -- cgit v1.2.3