diff options
author | Justasic <Justasic@gmail.com> | 2012-02-25 23:57:36 -0500 |
---|---|---|
committer | Daniel De Graaf <danieldg@inspircd.org> | 2012-02-25 23:57:36 -0500 |
commit | eba7e6655a21c752912995aa04355f0df112f8e5 (patch) | |
tree | a0c0aee9c74d41450cde46366fcc73ff61fc2119 /src/modules | |
parent | a673d973807c81c6211b39cc046de5af53c4bd99 (diff) |
m_remove: forbid removing ulined users
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/m_remove.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/modules/m_remove.cpp b/src/modules/m_remove.cpp index 2394332be..ffbae43bb 100644 --- a/src/modules/m_remove.cpp +++ b/src/modules/m_remove.cpp @@ -77,6 +77,11 @@ class RemoveBase : public Command hasnokicks = (ServerInstance->Modules->Find("m_nokicks.so") && channel->IsModeSet('Q')); + if((ServerInstance->ULine(target->server) || ServerInstance->ULine(target->nick.c_str()))){ + user->WriteNumeric(482, "%s %s :Only a u-line may remove a u-line from a channel.", user->nick.c_str(), channame); + return CMD_FAILURE; + } + /* We support the +Q channel mode via. the m_nokicks module, if the module is loaded and the mode is set then disallow the /remove */ if ((!IS_LOCAL(user)) || (!supportnokicks || !hasnokicks)) { |