diff options
| author | 2023-01-13 22:54:06 +0000 | |
|---|---|---|
| committer | 2023-01-13 23:14:14 +0000 | |
| commit | 2f1a9a8048c60ecaab4a42614877cfc59e3ae1da (patch) | |
| tree | 5e840caf55991db85ce533c543f62b655ce2b9cc /src/modules/m_cloak_sha256.cpp | |
| parent | Various improvements to the cloak system. (diff) | |
Use Wrap() for wrapping a host cloak in cloak_sha256.
Diffstat (limited to 'src/modules/m_cloak_sha256.cpp')
| -rw-r--r-- | src/modules/m_cloak_sha256.cpp | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/modules/m_cloak_sha256.cpp b/src/modules/m_cloak_sha256.cpp index a8ad87a5e..304979724 100644 --- a/src/modules/m_cloak_sha256.cpp +++ b/src/modules/m_cloak_sha256.cpp @@ -85,7 +85,7 @@ private: const std::string beta = Hash(InspIRCd::Format("%u.%u.%u", a, b, c)); const std::string gamma = Hash(InspIRCd::Format("%u.%u", a, b)); - return Wrap(InspIRCd::Format("%s.%s.%s", alpha.c_str(), beta.c_str(), gamma.c_str()), '.'); + return Wrap(InspIRCd::Format("%s.%s.%s", alpha.c_str(), beta.c_str(), gamma.c_str()), suffix, '.'); } std::string CloakIPv6(const unsigned char* address) @@ -109,7 +109,7 @@ private: const std::string beta = Hash(InspIRCd::Format("%x:%x:%x:%x:%x:%x:%x", a, b, c, d, e, f, g)); const std::string gamma = Hash(InspIRCd::Format("%x:%x:%x:%x", a, b, c, d)); - return Wrap(InspIRCd::Format("%s:%s:%s", alpha.c_str(), beta.c_str(), gamma.c_str()), ':'); + return Wrap(InspIRCd::Format("%s:%s:%s", alpha.c_str(), beta.c_str(), gamma.c_str()), suffix, ':'); } std::string CloakHost(const std::string& host, char separator) @@ -118,14 +118,8 @@ private: std::string lowerhost(host.length(), '\0'); std::transform(host.begin(), host.end(), lowerhost.begin(), ::tolower); - std::string cloak; - cloak.append(prefix).append(1, separator).append(Hash(lowerhost)); - const std::string visiblepart = Cloak::VisiblePart(host, hostparts, separator); - if (!visiblepart.empty()) - cloak.append(1, separator).append(visiblepart); - - return cloak; + return Wrap(Hash(lowerhost), visiblepart, separator); } std::string Hash(const std::string& str) @@ -136,14 +130,14 @@ private: return out; } - std::string Wrap(const std::string& cloak, char separator) + std::string Wrap(const std::string& cloak, const std::string& cloaksuffix, char separator) { std::string fullcloak; if (!prefix.empty()) fullcloak.append(prefix).append(1, separator); fullcloak.append(cloak); - if (!suffix.empty()) - fullcloak.append(1, separator).append(suffix); + if (!cloaksuffix.empty()) + fullcloak.append(1, separator).append(cloaksuffix); return fullcloak; } |
