From d4ee4c5aa4312cde76fe50e34ef8ca1685d521f0 Mon Sep 17 00:00:00 2001 From: aquanight Date: Wed, 13 May 2009 03:04:03 +0000 Subject: [PATCH] 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 --- src/modules/m_nicklock.cpp | 2 +- src/modules/m_operlevels.cpp | 2 +- src/modules/m_sapart.cpp | 4 ---- src/modules/m_saquit.cpp | 4 ++-- 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; -- 2.39.2