summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoraquanight <aquanight@e03df62e-2008-0410-955e-edbf42e46eb7>2009-05-13 03:04:03 +0000
committeraquanight <aquanight@e03df62e-2008-0410-955e-edbf42e46eb7>2009-05-13 03:04:03 +0000
commitd4ee4c5aa4312cde76fe50e34ef8ca1685d521f0 (patch)
tree77e6835a1b13e5368a49a49b14eb721d513a71ce
parent15e6efe1aec69a0d134a8dcfbd6ea8220428b0cb (diff)
Fix for some modules sending global snotices at each individual server in a server path.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11374 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--src/modules/m_nicklock.cpp2
-rw-r--r--src/modules/m_operlevels.cpp2
-rw-r--r--src/modules/m_sapart.cpp4
-rw-r--r--src/modules/m_saquit.cpp4
4 files changed, 4 insertions, 8 deletions
diff --git a/src/modules/m_nicklock.cpp b/src/modules/m_nicklock.cpp
index b4956c7e0..b88d4d212 100644
--- a/src/modules/m_nicklock.cpp
+++ b/src/modules/m_nicklock.cpp
@@ -67,11 +67,11 @@ class CommandNicklock : public Command
{
// This has to be done *here*, because this metadata must be stored netwide.
target->Extend("nick_locked", "ON");
- ServerInstance->SNO->WriteGlobalSno('a', user->nick+" used NICKLOCK to change and hold "+target->nick+" to "+parameters[1]);
/* Only send out nick from local server */
if (IS_LOCAL(target))
{
+ ServerInstance->SNO->WriteGlobalSno('a', user->nick+" used NICKLOCK to change and hold "+target->nick+" to "+parameters[1]);
std::string oldnick = user->nick;
std::string newnick = target->nick;
if (!target->ForceNickChange(parameters[1].c_str()))
diff --git a/src/modules/m_operlevels.cpp b/src/modules/m_operlevels.cpp
index 8d601c1c2..6aacc0496 100644
--- a/src/modules/m_operlevels.cpp
+++ b/src/modules/m_operlevels.cpp
@@ -71,7 +71,7 @@ class ModuleOperLevels : public Module
}
if (dest_level > source_level)
{
- ServerInstance->SNO->WriteGlobalSno('a', "Oper %s (level %ld) attempted to /kill a higher oper: %s (level %ld): Reason: %s",source->nick.c_str(),source_level,dest->nick.c_str(),dest_level,reason.c_str());
+ if (IS_LOCAL(source)) ServerInstance->SNO->WriteGlobalSno('a', "Oper %s (level %ld) attempted to /kill a higher oper: %s (level %ld): Reason: %s",source->nick.c_str(),source_level,dest->nick.c_str(),dest_level,reason.c_str());
dest->WriteServ("NOTICE %s :*** Oper %s attempted to /kill you!",dest->nick.c_str(),source->nick.c_str());
source->WriteNumeric(ERR_NOPRIVILEGES, "%s :Permission Denied - Oper %s is a higher level than you",source->nick.c_str(),dest->nick.c_str());
return 1;
diff --git a/src/modules/m_sapart.cpp b/src/modules/m_sapart.cpp
index a945b1fb5..85c1a8606 100644
--- a/src/modules/m_sapart.cpp
+++ b/src/modules/m_sapart.cpp
@@ -73,10 +73,6 @@ class CommandSapart : public Command
}
}
}
- else
- {
- ServerInstance->SNO->WriteGlobalSno('a', std::string(user->nick)+" sent remote SAPART to make "+dest->nick+" part "+parameters[1]);
- }
return CMD_SUCCESS;
}
diff --git a/src/modules/m_saquit.cpp b/src/modules/m_saquit.cpp
index cf965ced8..ff35b31d7 100644
--- a/src/modules/m_saquit.cpp
+++ b/src/modules/m_saquit.cpp
@@ -38,11 +38,11 @@ class CommandSaquit : public Command
return CMD_FAILURE;
}
- ServerInstance->SNO->WriteGlobalSno('a', std::string(user->nick)+" used SAQUIT to make "+std::string(dest->nick)+" quit with a reason of "+parameters[1]);
-
// Pass the command on, so the client's server can quit it properly.
if (!IS_LOCAL(dest))
return CMD_SUCCESS;
+
+ ServerInstance->SNO->WriteGlobalSno('a', std::string(user->nick)+" used SAQUIT to make "+std::string(dest->nick)+" quit with a reason of "+parameters[1]);
ServerInstance->Users->QuitUser(dest, parameters[1]);
return CMD_LOCALONLY;