Allow selecting specific network plugin versions

This commit is contained in:
Maciej Wilczyński
2025-12-14 09:30:11 +01:00
parent 59ad126b48
commit a4d4bfff27
28 changed files with 1388 additions and 77 deletions

View File

@@ -116,8 +116,13 @@ class NetworkAgent
public:
static std::string get_libpath_in_current_directory(std::string library_name);
static int initialize_network_module(bool using_backup = false);
static std::string get_versioned_library_path(const std::string& version);
static bool versioned_library_exists(const std::string& version);
static bool legacy_library_exists();
static void remove_legacy_library();
static int initialize_network_module(bool using_backup = false, const std::string& version = "");
static int unload_network_module();
static bool is_network_module_loaded();
#if defined(_MSC_VER) || defined(_WIN32)
static HMODULE get_bambu_source_entry();
#else
@@ -126,6 +131,10 @@ public:
static std::string get_version();
static void* get_network_function(const char* name);
static bool use_legacy_network;
static NetworkLibraryLoadError get_load_error();
static void clear_load_error();
static void set_load_error(const std::string& message, const std::string& technical_details, const std::string& attempted_path);
NetworkAgent(std::string log_dir);
~NetworkAgent();
@@ -232,6 +241,8 @@ private:
bool enable_track = false;
void* network_agent { nullptr };
static NetworkLibraryLoadError s_load_error;
static func_check_debug_consistent check_debug_consistent_ptr;
static func_get_version get_version_ptr;
static func_create_agent create_agent_ptr;