]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_spanningtree/main.h
Improve UserManager::QuitUser() and related code
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / main.h
index f03a36db2ed98052d17bb3d50ef7f3a91aa77abd..bef94a53bbcdca28fa79bf907f0b1336853983cb 100644 (file)
@@ -26,6 +26,7 @@
 #include "inspircd.h"
 #include "modules/dns.h"
 #include "servercommand.h"
+#include "commands.h"
 
 /** If you make a change which breaks the protocol, increment this.
  * If you  completely change the protocol, completely change the number.
@@ -52,6 +53,14 @@ class Autoconnect;
  */
 class ModuleSpanningTree : public Module
 {
+       /** Client to server commands, registered in the core
+        */
+       CommandRConnect rconnect;
+       CommandRSQuit rsquit;
+       CommandMap map;
+
+       /** Server to server only commands, not registered in the core
+        */
        SpanningTreeCommands* commands;
 
  public:
@@ -64,6 +73,10 @@ class ModuleSpanningTree : public Module
         */
        bool loopCall;
 
+       /** True if users are quitting due to a netsplit
+        */
+       bool SplitInProgress;
+
        /** Constructor
         */
        ModuleSpanningTree();
@@ -142,15 +155,13 @@ class ModuleSpanningTree : public Module
        void OnUserPostNick(User* user, const std::string &oldnick) CXX11_OVERRIDE;
        void OnUserKick(User* source, Membership* memb, const std::string &reason, CUList& excepts) CXX11_OVERRIDE;
        void OnPreRehash(User* user, const std::string &parameter) CXX11_OVERRIDE;
-       void OnRehash(User* user) CXX11_OVERRIDE;
+       void ReadConfig(ConfigStatus& status) CXX11_OVERRIDE;
        void OnOper(User* user, const std::string &opertype) CXX11_OVERRIDE;
        void OnLine(User* source, const std::string &host, bool adding, char linetype, long duration, const std::string &reason);
        void OnAddLine(User *u, XLine *x) CXX11_OVERRIDE;
        void OnDelLine(User *u, XLine *x) CXX11_OVERRIDE;
        ModResult OnStats(char statschar, User* user, string_list &results) CXX11_OVERRIDE;
        ModResult OnSetAway(User* user, const std::string &awaymsg) CXX11_OVERRIDE;
-       void ProtoSendMode(void* opaque, TargetTypeFlags target_type, void* target, const std::vector<std::string> &modeline, const std::vector<TranslateType> &translate);
-       void ProtoSendMetaData(void* opaque, Extensible* target, const std::string &extname, const std::string &extdata);
        void OnLoadModule(Module* mod) CXX11_OVERRIDE;
        void OnUnloadModule(Module* mod) CXX11_OVERRIDE;
        ModResult OnAcceptConnection(int newsock, ListenSocket* from, irc::sockets::sockaddrs* client, irc::sockets::sockaddrs* server) CXX11_OVERRIDE;