diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/commands/cmd_kick.cpp | 10 | ||||
-rw-r--r-- | src/modules/m_spanningtree/postcommand.cpp | 10 |
2 files changed, 9 insertions, 11 deletions
diff --git a/src/commands/cmd_kick.cpp b/src/commands/cmd_kick.cpp index d07d53836..d160b030b 100644 --- a/src/commands/cmd_kick.cpp +++ b/src/commands/cmd_kick.cpp @@ -13,14 +13,6 @@ #include "inspircd.h" -#ifndef __CMD_KICK_H__ -#define __CMD_KICK_H__ - -// include the common header files - -#include "users.h" -#include "channels.h" - /** Handle /KICK. These command handlers can be reloaded by the core, * and handle basic RFC1459 commands. Commands within modules work * the same way, however, they can be fully unloaded, where these @@ -41,8 +33,6 @@ class CommandKick : public Command CmdResult Handle(const std::vector<std::string>& parameters, User *user); }; -#endif - /** Handle /KICK */ diff --git a/src/modules/m_spanningtree/postcommand.cpp b/src/modules/m_spanningtree/postcommand.cpp index fae734d52..fbac46faa 100644 --- a/src/modules/m_spanningtree/postcommand.cpp +++ b/src/modules/m_spanningtree/postcommand.cpp @@ -46,7 +46,15 @@ void SpanningTreeUtilities::RouteCommand(TreeServer* origin, const std::string & if (routing.type == ROUTE_TYPE_LOCALONLY) { - return; + Module* srcmodule = thiscmd->creator; + Version ver = srcmodule->GetVersion(); + + if ((ver.Flags & VF_CORE) && !IS_LOCAL(user)) + routing = ROUTE_BROADCAST; + else + return; + if (user == ServerUser) + return; } else if (routing.type == ROUTE_TYPE_OPT_BCAST) { |