diff --git a/Source/Core/Core/Config/MainSettings.cpp b/Source/Core/Core/Config/MainSettings.cpp index 502f106c65..4b4b91f43e 100644 --- a/Source/Core/Core/Config/MainSettings.cpp +++ b/Source/Core/Core/Config/MainSettings.cpp @@ -210,6 +210,9 @@ const Info MAIN_ENABLE_SAVESTATES{{System::Main, "Core", "EnableSaveStates const Info MAIN_REAL_WII_REMOTE_REPEAT_REPORTS{ {System::Main, "Core", "RealWiiRemoteRepeatReports"}, true}; +// Empty means use the Dolphin default URL +const Info MAIN_WII_NUS_SHOP_URL{{System::Main, "Core", "WiiNusShopUrl"}, ""}; + // Main.Display const Info MAIN_FULLSCREEN_DISPLAY_RES{ diff --git a/Source/Core/Core/Config/MainSettings.h b/Source/Core/Core/Config/MainSettings.h index 638d52d226..63b89cbadb 100644 --- a/Source/Core/Core/Config/MainSettings.h +++ b/Source/Core/Core/Config/MainSettings.h @@ -131,6 +131,7 @@ extern const Info MAIN_ENABLE_SAVESTATES; extern const Info MAIN_FALLBACK_REGION; extern const Info MAIN_REAL_WII_REMOTE_REPEAT_REPORTS; extern const Info MAIN_OVERRIDE_BOOT_IOS; +extern const Info MAIN_WII_NUS_SHOP_URL; // Main.DSP diff --git a/Source/Core/Core/WiiUtils.cpp b/Source/Core/Core/WiiUtils.cpp index 8bb48ad6b1..9e938a217c 100644 --- a/Source/Core/Core/WiiUtils.cpp +++ b/Source/Core/Core/WiiUtils.cpp @@ -458,11 +458,18 @@ OnlineSystemUpdater::Response OnlineSystemUpdater::GetSystemTitles() doc.save(stream); const std::string request = stream.str(); - // Note: We don't use HTTPS because that would require the user to have - // a device certificate which cannot be redistributed with Dolphin. - // This is fine, because IOS has signature checks. + std::string base_url = Config::Get(Config::MAIN_WII_NUS_SHOP_URL); + if (base_url.empty()) + { + // Note: We don't use HTTPS because that would require the user to have + // a device certificate which cannot be redistributed with Dolphin. + // This is fine, because IOS has signature checks. + base_url = "http://nus.shop.wii.com"; + } + + const std::string url = fmt::format("{}/nus/services/NetUpdateSOAP", base_url); const Common::HttpRequest::Response response = - m_http.Post("http://nus.shop.wii.com/nus/services/NetUpdateSOAP", request, + m_http.Post(url, request, { {"SOAPAction", "urn:nus.wsapi.broadon.com/GetSystemUpdate"}, {"User-Agent", "wii libnup/1.0"},