summaryrefslogtreecommitdiff
path: root/src/commands/cmd_rules.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/commands/cmd_rules.cpp')
-rw-r--r--src/commands/cmd_rules.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/commands/cmd_rules.cpp b/src/commands/cmd_rules.cpp
index 17de9f3f2..7aacf8c31 100644
--- a/src/commands/cmd_rules.cpp
+++ b/src/commands/cmd_rules.cpp
@@ -49,7 +49,13 @@ class CommandRules : public Command
CmdResult CommandRules::Handle (const std::vector<std::string>& parameters, User *user)
{
if (parameters.size() > 0 && parameters[0] != ServerInstance->Config->ServerName)
+ {
+ // Give extra penalty if a non-oper queries the /RULES of a remote server
+ LocalUser* localuser = IS_LOCAL(user);
+ if ((localuser) && (!IS_OPER(user)))
+ localuser->CommandFloodPenalty += 2000;
return CMD_SUCCESS;
+ }
ConfigTag* tag = ServerInstance->Config->EmptyTag;
if (IS_LOCAL(user))