]> jfr.im git - irc/quakenet/newserv.git/blob - localuser/localuser.h
Added ability to specify timestamp when setting account.
[irc/quakenet/newserv.git] / localuser / localuser.h
1 /* localuser.h */
2
3 #ifndef __LOCALUSER_H
4 #define __LOCALUSER_H
5
6 #include "../nick/nick.h"
7 #include "../lib/flags.h"
8 #include "../irc/irc.h"
9
10 #define LU_PRIVMSG 0x0001 /* (sender, message) */
11 #define LU_PRIVNOTICE 0x0002 /* (sender, message) */
12 #define LU_SECUREMSG 0x0003 /* (sender, message) */
13 #define LU_CHANMSG 0x0004 /* (sender, target, message) */
14 #define LU_CHANNOTICE 0x0005 /* (sender, target, message) */
15 #define LU_INVITE 0x0006 /* (sender, channel) */
16 #define LU_KICKED 0x0007 /* (kicker, channel, reason) */
17 #define LU_KILLED 0x0010 /* () */
18 #define LU_STATS 0x0020 /* (server, numeric, data) */
19 #define LU_STATS_END 0x0021 /* server */
20
21 /* Callback function for privmsg etc. */
22 typedef void (*UserMessageHandler)(nick *,int,void **);
23
24 extern UserMessageHandler umhandlers[MAXLOCALUSER+1];
25
26 #define registerlocaluserwithuserid(nickname, ident, host, realname, authname, id, umodes, handler) registerlocaluserwithuseridflags(nickname, ident, host, realname, authname, id, umodes, 0, handler)
27 #define registerlocaluser(nickname, ident, host, realname, authname, umodes, handler) registerlocaluserwithuserid(nickname, ident, host, realname, authname, 0, umodes, handler)
28 nick *registerlocaluserwithuseridflags(char *nickname, char *ident, char *host, char *realname, char *authname, unsigned long authid, flag_t umodes, flag_t accountflags, UserMessageHandler hander);
29 int renamelocaluser(nick *np, char *newnick);
30 int deregisterlocaluser(nick *np, char *reason);
31 UserMessageHandler hooklocaluserhandler(nick *np, UserMessageHandler newhandler);
32 void sendnickmsg(nick *np);
33 void sendnickburst(int hooknum, void *arg);
34 int handleprivatemsgcmd(void *source, int cargc, char **cargv);
35 int handleprivatenoticecmd(void *source, int cargc, char **cargv);
36 int handlemessageornotice(void *source, int cargc, char **cargv, int isnotice);
37 void sendmessagetouser(nick *source, nick *target, char *format, ... );
38 void sendsecuremessagetouser(nick *source, nick *target, char *servername, char *format, ... );
39 void sendnoticetouser(nick *source, nick *target, char *format, ... );
40 void killuser(nick *source, nick *target, char *format, ... );
41 #define localusersetaccount(np, accname) localusersetaccountwithuserid(np, accname, 0)
42 #define localusersetaccountwithuserid(np, accname, userid) localusersetaccountwithuseridflags(np, accname, userid, 0)
43 #define localusersetaccountwithuseridflags(np, accname, accid, accountflags) localusersetaccountwithuseridflagsts(np, accname, accid, accountflags, 0)
44 #define localusersetaccountwithuseridts(np, accname, userid, authts) localusersetaccountwithuseridflagsts(np, accname, userid, 0, authts)
45 void localusersetaccountwithuseridflagsts(nick *np, char *accname, unsigned long accid, flag_t accountflags, time_t authTS);
46 void localusersetumodes(nick *np, flag_t newmodes);
47 void sethostuser(nick *target, char *ident, char *host);
48
49 #endif