summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2019-06-07 10:54:25 +0100
committerPeter Powell <petpow@saberuk.com>2019-06-07 10:57:46 +0100
commit43e31bba5429849fdebeddc65f7e6f267211181f (patch)
tree5f5e46c16b2f732a6a4ed8bffe7de27cd6f265c2
parent8e734ee8a1a562be6bfde7fff7d7c8446179c039 (diff)
Check the unset level in autoop as well as the set level.
-rw-r--r--src/modules/m_autoop.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/modules/m_autoop.cpp b/src/modules/m_autoop.cpp
index 83c405338..b1b08228c 100644
--- a/src/modules/m_autoop.cpp
+++ b/src/modules/m_autoop.cpp
@@ -62,9 +62,10 @@ class AutoOpList : public ListModeBase
std::string dummy;
if (mh->AccessCheck(source, channel, dummy, true) == MOD_RES_DENY)
return MOD_RES_DENY;
- if (mh->GetLevelRequired(true) > mylevel)
+ if (mh->GetLevelRequired(adding) > mylevel)
{
- source->WriteNumeric(ERR_CHANOPRIVSNEEDED, channel->name, InspIRCd::Format("You must be able to set mode '%s' to include it in an autoop", mid.c_str()));
+ source->WriteNumeric(ERR_CHANOPRIVSNEEDED, channel->name, InspIRCd::Format("You must be able to %s mode %c (%s) to %s an autoop containing it",
+ adding ? "set" : "unset", mh->GetModeChar(), mh->name.c_str(), adding ? "add" : "remove"));
return MOD_RES_DENY;
}
return MOD_RES_PASSTHRU;