void WriteTo(userrec *source, userrec *dest,char *data, ...);
void WriteChannel(chanrec* Ptr, userrec* user, char* text, ...);
void ChanExceptSender(chanrec* Ptr, userrec* user, char* text, ...);
-int common_channels(userrec *u, userrec *u2);
void WriteCommon(userrec *u, char* text, ...);
void WriteCommonExcept(userrec *u, char* text, ...);
-void WriteWallOps(userrec *source, char* text, ...);
-int isnick(const char *n);
+void WriteWallOps(userrec *source, bool local_only, char* text, ...);
userrec* Find(std::string nick);
chanrec* FindChan(const char* chan);
-char* cmode(userrec *user, chanrec *chan);
std::string getservername();
std::string getserverdesc();
std::string getnetworkname();
int ModeDefinedOn(char c, int i);
int ModeDefinedOff(char c, int i);
chanrec* add_channel(userrec *user, const char* cn, const char* key, bool override);
-chanrec* del_channel(userrec *user, const char* cname, const char* reason);
+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);
int usercount(chanrec *c);
+void call_handler(const char* commandname,char **parameters, int pcnt, userrec *user);
+long GetRevision();
+
+// mesh network functions
+
+void NetSendToCommon(userrec* u, char* s);
+void NetSendToAll(char* s);
+void NetSendToAllAlive(char* s);
+void NetSendToOne(char* target,char* s);
+void NetSendToAllExcept(const char* target,char* s);
+void NetSendMyRoutingTable();
+void DoSplit(const char* params);
+void RemoveServer(const char* name);
+