]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules.cpp
/LOADMODULE and /UNLOADMODULE all successfully working!
[user/henk/code/inspircd.git] / src / modules.cpp
index ac47544c0c23525e44fed0734693d7f337150584..f068dc5911a5678a7e08a62fee9559a161cf9cc2 100644 (file)
@@ -65,6 +65,8 @@ extern int MODCOUNT;
 extern std::vector<Module*> modules;
 extern std::vector<ircd_module*> factory;
 
+extern time_t TIME;
+
 extern int LogLevel;
 extern char ServerName[MAXBUF];
 extern char Network[MAXBUF];
@@ -295,7 +297,7 @@ void ModeMakeList(char modechar)
 
 // version is a simple class for holding a modules version number
 
-Version::Version(int major, int minor, int revision, int build) : Major(major), Minor(minor), Revision(revision), Build(build) { };
+Version::Version(int major, int minor, int revision, int build, int flags) : Major(major), Minor(minor), Revision(revision), Build(build), Flags(flags) { };
 
 // admin is a simple class for holding a server's administrative info
 
@@ -313,7 +315,7 @@ void Module::OnRehash() { }
 void Module::OnServerRaw(std::string &raw, bool inbound, userrec* user) { }
 int Module::OnUserPreJoin(userrec* user, chanrec* chan, const char* cname) { return 0; }
 int Module::OnExtendedMode(userrec* user, void* target, char modechar, int type, bool mode_on, string_list &params) { return false; }
-Version Module::GetVersion() { return Version(1,0,0,0); }
+Version Module::GetVersion() { return Version(1,0,0,0,VF_VENDOR); }
 void Module::OnOper(userrec* user) { };
 void Module::OnInfo(userrec* user) { };
 void Module::OnWhois(userrec* source, userrec* dest) { };
@@ -321,9 +323,13 @@ int Module::OnUserPreInvite(userrec* source,userrec* dest,chanrec* channel) { re
 int Module::OnUserPreMessage(userrec* user,void* dest,int target_type, std::string &text) { return 0; };
 int Module::OnUserPreNotice(userrec* user,void* dest,int target_type, std::string &text) { return 0; };
 int Module::OnUserPreNick(userrec* user, std::string newnick) { return 0; };
+void Module::OnUserPostNick(userrec* user, std::string oldnick) { };
 int Module::OnAccessCheck(userrec* source,userrec* dest,chanrec* channel,int access_type) { return ACR_DEFAULT; };
 string_list Module::OnUserSync(userrec* user) { string_list empty; return empty; }
 string_list Module::OnChannelSync(chanrec* chan) { string_list empty; return empty; }
+void Module::On005Numeric(std::string &output) { };
+int Module::OnKill(userrec* source, userrec* dest, std::string reason) { return 0; };
+void Module::OnLoadModule(Module* mod,std::string name) { };
 
 
 // server is a wrapper class that provides methods to all of the C-style
@@ -411,9 +417,9 @@ void Server::Log(int level, std::string s)
        log(level,"%s",s.c_str());
 }
 
-void Server::AddCommand(char* cmd, handlerfunc f, char flags, int minparams)
+void Server::AddCommand(char* cmd, handlerfunc f, char flags, int minparams, char* source)
 {
-       createcommand(cmd,f,flags,minparams);
+       createcommand(cmd,f,flags,minparams,source);
 }
 
 void Server::SendMode(char **parameters, int pcnt, userrec *user)