]> jfr.im git - irc/quakenet/newserv.git/blame - localuser/localuserchannel.h
CHANSERV: better batcher error handling for expired accounts/accounts with no email.
[irc/quakenet/newserv.git] / localuser / localuserchannel.h
CommitLineData
c86edd1d
Q
1#ifndef __LOCALUSERCHANNEL_H
2#define __LOCALUSERCHANNEL_H
3
4#include "localuser.h"
5#include "../channel/channel.h"
6#include "../irc/irc_config.h"
7
8#define MC_OP 0x0001
9#define MC_VOICE 0x0002
10#define MC_DEOP 0x0004
11#define MC_DEVOICE 0x0008
12
13#define MCB_ADD 0x0001
14#define MCB_DEL 0x0002
15
16typedef struct modechanges {
17 channel *cp;
18 nick *source;
19 int changecount;
20 flag_t addflags;
21 flag_t delflags;
22 sstring *key;
23 unsigned int limit;
24 struct {
25 sstring *str;
26 short dir;
27 char flag;
28 } changes[MAXMODEARGS];
29} modechanges;
30
31/* These functions are in localuserchannel.c */
c85feb15 32int localburstontochannel(channel *cp, nick *np, time_t timestamp, flag_t modes, unsigned int limit, char *key);
c86edd1d 33int localjoinchannel(nick *np, channel *cp);
334b567e 34int localpartchannel(nick *np, channel *cp, char *reason);
c86edd1d
Q
35int localcreatechannel(nick *np, char *channame);
36int localgetops(nick *np, channel *cp);
37int localgetvoice(nick *np, channel *cp);
38int localsetmodes(nick *np, channel *cp, nick *target, short modes);
39void localsettopic(nick *np, channel *cp, char *topic);
40void localkickuser(nick *np, channel *cp, nick *target, const char *message);
41void localusermodechange(nick *np, channel *cp, char *modes);
bb4b25ee
CP
42void sendmessagetochannel(nick *source, channel *cp, char *format, ... ) __attribute__ ((format (printf, 3, 4)));
43void sendopnoticetochannel(nick *source, channel *cp, char *format, ... ) __attribute__ ((format (printf, 3, 4)));
620cc49d 44void localinvite(nick *source, chanindex *cip, nick *target);
c86edd1d
Q
45
46void localsetmodeinit (modechanges *changes, channel *cp, nick *np);
47void localdosetmode_nick (modechanges *changes, nick *target, short modes);
48void localdosetmode_ban (modechanges *changes, const char *ban, short dir);
934fe9ac 49void localdosetmode_key (modechanges *changes, char *key, short dir);
c86edd1d
Q
50void localdosetmode_limit (modechanges *changes, unsigned int limit, short dir);
51void localdosetmode_simple (modechanges *changes, flag_t addmodes, flag_t delmodes);
52void localsetmodeflush (modechanges *changes, int force);
53
54#endif