From 48e869b61f6c11929471e0aafff2df996c967a7e Mon Sep 17 00:00:00 2001 From: Jerom Venneker Date: Wed, 6 Aug 2025 14:32:44 +0200 Subject: [PATCH] Downloading cert store at build time --- soh/CMakeLists.txt | 13 +++++++++++++ soh/soh/Network/Archipelago/Archipelago.cpp | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/soh/CMakeLists.txt b/soh/CMakeLists.txt index cc38cb6d6..9a39f930f 100644 --- a/soh/CMakeLists.txt +++ b/soh/CMakeLists.txt @@ -1,4 +1,5 @@ cmake_minimum_required(VERSION 3.26.0 FATAL_ERROR) +include(FetchContent) set(CMAKE_SYSTEM_VERSION 10.0 CACHE STRING "" FORCE) @@ -339,6 +340,18 @@ if (BUILD_REMOTE_CONTROL) message(STATUS "OpenSSL not found (it's possible the version installed is too old). Disabling BUILD_REMOTE_CONTROL.") set(BUILD_REMOTE_CONTROL 0) endif() + + FetchContent_Declare( + sslCertStore + URL https://curl.se/ca/cacert.pem + DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/networking + DOWNLOAD_NO_EXTRACT TRUE + ) + + FetchContent_MakeAvailable( + sslCertStore + ) + endif() if (ESPEAK) diff --git a/soh/soh/Network/Archipelago/Archipelago.cpp b/soh/soh/Network/Archipelago/Archipelago.cpp index 9291d0b76..a75a93cbd 100644 --- a/soh/soh/Network/Archipelago/Archipelago.cpp +++ b/soh/soh/Network/Archipelago/Archipelago.cpp @@ -53,7 +53,7 @@ bool ArchipelagoClient::StartClient() { uri = CVarGetString(CVAR_REMOTE_ARCHIPELAGO("ServerAddress"), "localhost:38281"); password = CVarGetString(CVAR_REMOTE_ARCHIPELAGO("Password"), ""); - apClient = std::unique_ptr(new APClient(uuid, AP_Client_consts::AP_GAME_NAME, uri, "cacert.pem")); + apClient = std::unique_ptr(new APClient(uuid, AP_Client_consts::AP_GAME_NAME, uri, "networking/cacert.pem")); CVarSetInteger(CVAR_REMOTE_ARCHIPELAGO("ConnectionStatus"), 1); // Connecting