From efb8976193d455255fa2e7fad7ea6722be780ef3 Mon Sep 17 00:00:00 2001 From: Adrien Beraud <adrien.beraud@savoirfairelinux.com> Date: Tue, 7 Jan 2025 14:04:23 -0500 Subject: [PATCH] namedirectory: add default scheme, use canonical name Change-Id: Ia2858d7dab79954312b657ea4380f0ea65bfa640 --- src/jamidht/namedirectory.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/jamidht/namedirectory.cpp b/src/jamidht/namedirectory.cpp index 5347837b0..6d8ae56e5 100644 --- a/src/jamidht/namedirectory.cpp +++ b/src/jamidht/namedirectory.cpp @@ -122,10 +122,19 @@ NameDirectory::load() loadCache(); } +std::string +canonicalName(const std::string& url) { + std::string name = url; + std::transform(name.begin(), name.end(), name.begin(), ::tolower); + if (name.find("://") == std::string::npos) + name = "https://" + name; + return name; +} + NameDirectory& NameDirectory::instance(const std::string& serverUrl, std::shared_ptr<dht::Logger> l) { - const std::string& s = serverUrl.empty() ? DEFAULT_SERVER_HOST : serverUrl; + const std::string& s = serverUrl.empty() ? DEFAULT_SERVER_HOST : canonicalName(serverUrl); static std::mutex instanceMtx {}; std::lock_guard lock(instanceMtx); -- GitLab