]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/inspircd.h
Fixed quit-bouncing issue when a user is g-lined
[user/henk/code/inspircd.git] / include / inspircd.h
index 866c545d4e9f4a410086f6038fb0e8c01b4dfa2d..d8967afb785d86ecf67d4528d6474b76d599a4ec 100644 (file)
@@ -35,6 +35,7 @@
 #include "inspircd_util.h"
 #include "users.h"
 #include "channels.h"
+#include "servers.h"
 
 // some misc defines
 
@@ -71,6 +72,8 @@
 
 typedef std::deque<std::string> file_cache;
 
+typedef void (handlerfunc) (char**, int, userrec*);
+
 /* prototypes */
 int InspIRCd(void);
 int InitConfig(void);
@@ -91,6 +94,9 @@ void ChanExceptSender(chanrec* Ptr, userrec* user, char* text, ...);
 void WriteCommon(userrec *u, char* text, ...);
 void WriteCommonExcept(userrec *u, char* text, ...);
 void WriteWallOps(userrec *source, bool local_only, char* text, ...);
+void WriteChannelLocal(chanrec* Ptr, userrec* user, char* text, ...);
+void WriteChannelWithServ(char* ServerName, chanrec* Ptr, userrec* user, char* text, ...);
+char* chanmodes(chanrec *chan);
 userrec* Find(std::string nick);
 chanrec* FindChan(const char* chan);
 std::string getservername();
@@ -108,9 +114,37 @@ chanrec* add_channel(userrec *user, const char* cn, const char* key, bool overri
 chanrec* del_channel(userrec *user, const char* cname, const char* reason, bool local);
 void force_nickchange(userrec* user,const char* newnick);
 void kill_link(userrec *user,const char* r);
+void kill_link_silent(userrec *user,const char* r);
 int usercount(chanrec *c);
 void call_handler(const char* commandname,char **parameters, int pcnt, userrec *user);
 long GetRevision();
+int loop_call(handlerfunc fn, char **parameters, int pcnt, userrec *u, int start, int end, int joins);
+void kick_channel(userrec *src,userrec *user, chanrec *Ptr, char* reason);
+void purge_empty_chans(void);
+char* Passwd(userrec *user);
+bool IsDenied(userrec *user);
+void AddWhoWas(userrec* u);
+void userlist(userrec *user,chanrec *c);
+std::string GetServerDescription(char* servername);
+int usercnt(void);
+int usercount_invisible(void);
+int usercount_opers(void);
+int usercount_unknown(void);
+long chancount(void);
+long count_servs(void);
+long servercount(void);
+long local_count();
+void ShowMOTD(userrec *user);
+void ShowRULES(userrec *user);
+int usercount(chanrec *c);
+int usercount_i(chanrec *c);
+void update_stats_l(int fd,int data_out);
+void ConnectUser(userrec *user);
+void DoSplitEveryone();
+char islast(const char* s);
+long map_count(const char* s);
+userrec* ReHashNick(char* Old, char* New);
+
 
 // mesh network functions
 
@@ -122,5 +156,6 @@ void NetSendToAllExcept(const char* target,char* s);
 void NetSendMyRoutingTable();
 void DoSplit(const char* params);
 void RemoveServer(const char* name);
+void DoSync(serverrec* serv, char* tcp_host);