This commit is contained in:
Scott E. Graves 2025-03-22 15:43:45 -05:00
parent e6793f0d6c
commit f9ec02bf3f
2 changed files with 11 additions and 2 deletions

View File

@ -933,24 +933,26 @@ auto app_config::get_preferred_download_type() const -> download_type {
auto app_config::get_provider_display_name(const provider_type &prov)
-> std::string {
static const std::array<std::string,
static_cast<std::size_t>(provider_type::unknown)>
static_cast<std::size_t>(provider_type::unknown+1U)>
PROVIDER_DISPLAY_NAMES = {
"Sia",
"Remote",
"S3",
"Encrypt",
"Unknown",
};
return PROVIDER_DISPLAY_NAMES.at(static_cast<std::size_t>(prov));
}
auto app_config::get_provider_name(const provider_type &prov) -> std::string {
static const std::array<std::string,
static_cast<std::size_t>(provider_type::unknown)>
static_cast<std::size_t>(provider_type::unknown+1U)>
PROVIDER_NAMES = {
"sia",
"remote",
"s3",
"encrypt",
"unknown",
};
return PROVIDER_NAMES.at(static_cast<std::size_t>(prov));
}

View File

@ -99,11 +99,18 @@ mount(std::vector<const char *> args, std::string data_directory,
auto drive_args = utils::cli::parse_drive_options(args, prov, data_directory);
app_config config(prov, data_directory);
{
lock_data global_lock(provider_type::unknown, "global");
res = global_lock.grab_lock();
if (res != lock_result::success) {
return exit_code::lock_failed;
}
std::uint16_t port{};
if (not utils::get_next_available_port(config.get_api_port(), port)) {
std::cerr << "FATAL: Unable to get available port" << std::endl;
return exit_code::startup_exception;
}
global_lock.release();
config.set_api_port(port);
}