summaryrefslogtreecommitdiff
path: root/src/protocol/inspircd11.h
blob: 8b4a0520f2f8696a718670ad64c6db3b5febc8b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
/* inspircd beta 6 functions
 *
 * (C) 2003-2008 Anope Team
 * Contact us at info@anope.org
 *
 * Please read COPYING and README for furhter details.
 *
 * Based on the original code of Epona by Lara.
 * Based on the original code of Services by Andy Church.
 *
 *
 */

/*************************************************************************/

#define UMODE_a 0x00000001
#define UMODE_h 0x00000002
#define UMODE_i 0x00000004
#define UMODE_o 0x00000008
#define UMODE_r 0x00000010
#define UMODE_w 0x00000020
#define UMODE_A 0x00000040
#define UMODE_g 0x80000000
#define UMODE_x 0x40000000

#define CMODE_i 0x00000001
#define CMODE_m 0x00000002
#define CMODE_n 0x00000004
#define CMODE_p 0x00000008
#define CMODE_s 0x00000010
#define CMODE_t 0x00000020
#define CMODE_k 0x00000040		/* These two used only by ChanServ */
#define CMODE_l 0x00000080
#define CMODE_c 0x00000400
#define CMODE_A 0x00000800
#define CMODE_H 0x00001000
#define CMODE_K 0x00002000
#define CMODE_L 0x00004000
#define CMODE_O 0x00008000
#define CMODE_Q 0x00010000
#define CMODE_S 0x00020000
#define CMODE_V 0x00040000
#define CMODE_f 0x00080000
#define CMODE_G 0x00100000
#define CMODE_C 0x00200000
#define CMODE_u 0x00400000
#define CMODE_z 0x00800000
#define CMODE_N 0x01000000
#define CMODE_R 0x00000100		/* Only identified users can join */
#define CMODE_r 0x00000200		/* Set for all registered channels */

#define DEFAULT_MLOCK CMODE_n | CMODE_t | CMODE_r

void inspircd_set_umode(User * user, int ac, const char **av);
void inspircd_cmd_372(const char *source, const char *msg);
void inspircd_cmd_372_error(const char *source);
void inspircd_cmd_375(const char *source);
void inspircd_cmd_376(const char *source);
void inspircd_cmd_351(const char *source);
void inspircd_cmd_391(const char *source, const char *timestr);
void inspircd_cmd_250(const char *buf);
void inspircd_cmd_307(const char *buf);
void inspircd_cmd_311(const char *buf);
void inspircd_cmd_312(const char *buf);
void inspircd_cmd_317(const char *buf);
void inspircd_cmd_219(const char *source, const char *letter);
void inspircd_cmd_401(const char *source, const char *who);
void inspircd_cmd_318(const char *source, const char *who);
void inspircd_cmd_242(const char *buf);
void inspircd_cmd_243(const char *buf);
void inspircd_cmd_211(const char *buf);
int inspircd_flood_mode_check(const char *value);
void inspircd_cmd_jupe(const char *jserver, const char *who, const char *reason);
int inspircd_valid_nick(const char *nick);
int anope_event_fjoin(const char *source, int ac, const char **av);
int anope_event_fmode(const char *source, int ac, const char **av);
int anope_event_ftopic(const char *source, int ac, const char **av);
int anope_event_sanick(const char *source, int ac, const char **av);
int anope_event_samode(const char *source, int ac, const char **av);
int anope_event_sajoin(const char *source, int ac, const char **av);
int anope_event_sapart(const char *source, int ac, const char **av);
int anope_event_version(const char *source, int ac, const char **av);
int anope_event_opertype(const char *source, int ac, const char **av);
int anope_event_idle(const char *source, int ac, const char **av);
int anope_event_rsquit(const char *source, int ac, const char **av);

class InspIRCdProto : public IRCDProtoNew {
	public:
		void cmd_remove_akill(const char *, const char *);
		void cmd_topic(const char *, const char *, const char *, const char *, time_t);
		void cmd_vhost_off(User *);
		void cmd_akill(const char *, const char *, const char *, time_t, time_t, const char *);
		void cmd_svskill(const char *, const char *, const char *);
		void cmd_svsmode(User *, int, const char **);
		void cmd_nick(const char *, const char *, const char *);
		void cmd_guest_nick(const char *, const char *, const char *, const char *, const char *);
		void cmd_mode(const char *, const char *, const char *);
		void cmd_bot_nick(const char *, const char *, const char *, const char *, const char *);
		void cmd_kick(const char *, const char *, const char *, const char *);
		void cmd_notice_ops(const char *, const char *, const char *);
		void cmd_bot_chan_mode(const char *, const char *);
		void cmd_join(const char *, const char *, time_t);
		void cmd_unsqline(const char *);
		void cmd_sqline(const char *, const char *);
		void cmd_squit(const char *, const char *);
		void cmd_vhost_on(const char *, const char *, const char *);
		void cmd_connect();
		void cmd_svshold(const char *);
		void cmd_release_svshold(const char *);
		void cmd_unszline(const char *);
		void cmd_szline(const char *, const char *, const char *);
		void cmd_nc_change(User *);
		void cmd_svid_umode2(User *, const char *);
		void cmd_svsjoin(const char *, const char *, const char *, const char *);
		void cmd_svspart(const char *, const char *, const char *);
		void cmd_eob();
} ircd_proto;