|
| CheckResult | Mads::Doctor::check_settings_file (const std::filesystem::path &path) |
| | Checks that path is a local settings file that exists and parses as valid TOML. A tcp://... URI is treated as "remote broker, not a local
file" and reported Pass with an explanatory note (broker reachability is check 2's job, not this one's).
|
| |
| CheckResult | Mads::Doctor::evaluate_broker_reachable (const std::string &uri, bool reachable, bool crypto=false) |
| |
| CheckResult | Mads::Doctor::check_broker_reachable (const std::string &uri, std::chrono::milliseconds timeout, const std::optional< CurveKeyCheck > &curve=std::nullopt) |
| |
| CheckResult | Mads::Doctor::evaluate_plugin_load (const PluginLoadFacts &facts) |
| |
| std::optional< int > | Mads::Doctor::parse_pinned_plugin_protocol (const std::string &manifest_json_text) |
| | Reads the plugin_protocol field out of share/plugin_deps.json's text content (already read by the caller – doctor.cpp reuses Mads::PluginMigrate::read_file() for that, the same helper src/main/plugin_migrate.hpp's own migration engine uses to load the same file). Kept as a pure string->int function so it needs no filesystem access to unit test.
|
| |
| CheckResult | Mads::Doctor::evaluate_plugin_protocol (int loaded_version, std::optional< int > pinned_version, int min_supported=kMinSupportedPluginProtocol) |
| |
| bool | Mads::Doctor::is_well_formed_curve_key (const std::string &key_line) |
| |
| CheckResult | Mads::Doctor::check_curve_keys (const CurveKeyCheck &cfg) |
| | Checks that a client's CURVE key files exist and are well-formed: <client>.key (secret), <client>.pub (public), and <server>.pub (the broker's public key the client needs to encrypt toward it) – exactly the three files Mads::CurveAuth::setup_curve_client(socket, client, server) (src/curve.hpp) reads.
|
| |
| CheckResult | Mads::Doctor::evaluate_port_available (const std::string &host, int port, bool in_use) |
| |
| CheckResult | Mads::Doctor::check_port_available (const std::string &host, int port, std::chrono::milliseconds timeout) |
| |
| CheckResult | Mads::Doctor::evaluate_curve_handshake (const std::string &uri, CurveProbeResult result) |
| |
| CheckResult | Mads::Doctor::check_curve_handshake (const std::string &uri, const CurveKeyCheck &cfg, std::chrono::milliseconds timeout) |
| |
| CheckResult | Mads::Doctor::evaluate_fd_limit (bool supported, uint64_t soft, uint64_t hard, std::optional< int64_t > configured) |
| |
| CheckResult | Mads::Doctor::check_fd_limit (std::optional< int64_t > configured) |
| |