aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/m_cloak.cpp
diff options
context:
space:
mode:
authorGravatar Sadie Powell2023-06-07 12:59:19 +0100
committerGravatar Sadie Powell2023-06-07 12:59:35 +0100
commit78cd3898f5ca14a51ba1d98a746b3e1bc63d4fa5 (patch)
tree81f13b19065b9b59898e955c0fdbd136d7322d15 /src/modules/m_cloak.cpp
parentInclude <cloak:pathparts> as link data in cloak_sha256. (diff)
downloadinspircd++-78cd3898f5ca14a51ba1d98a746b3e1bc63d4fa5.tar.gz
inspircd++-78cd3898f5ca14a51ba1d98a746b3e1bc63d4fa5.tar.bz2
inspircd++-78cd3898f5ca14a51ba1d98a746b3e1bc63d4fa5.zip
Only regenerate cloaks if a cloak of that type exists.
This prevents unnecessary recloaking which may result in spam.
Diffstat (limited to 'src/modules/m_cloak.cpp')
-rw-r--r--src/modules/m_cloak.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/modules/m_cloak.cpp b/src/modules/m_cloak.cpp
index 6b4dddad3..4101029b7 100644
--- a/src/modules/m_cloak.cpp
+++ b/src/modules/m_cloak.cpp
@@ -136,6 +136,16 @@ public:
return cloaks->empty() ? nullptr : cloaks;
}
+ bool IsActiveCloak(const Cloak::Engine& engine) override
+ {
+ for (const auto& cloakmethod : cloakmethods)
+ {
+ if (cloakmethod->IsProvidedBy(engine))
+ return true;
+ }
+ return false;
+ }
+
void ResetCloaks(LocalUser* user, bool resetdisplay) override
{
const std::string oldcloak = GetFrontCloak(user);