1 #ifndef __IRC_H__
2 #define __IRC_H__
3 
4 /**
5  * @file
6  * @brief IRC Constants
7  */
8 
9 /* Written by Jelmer Vernooij, 2003 based on the list of error codes
10  * and responses listed in RFC 1459 and RFC 2812 */
11 
12 #define ERR_NOSUCHNICK 401
13 #define ERR_NOSUCHSERVER 402
14 #define ERR_NOSUCHCHANNEL 403
15 #define ERR_CANNOTSENDTOCHAN 404
16 #define ERR_TOOMANYCHANNELS 405
17 #define ERR_WASNOSUCHNICK 406
18 #define ERR_TOOMANYTARGETS 407
19 #define ERR_NOSUCHSERVICE 408
20 #define ERR_NOORIGIN 409
21 #define ERR_NORECIPIENT 411
22 #define ERR_NOTEXTTOSEND 412
23 #define ERR_NOTOPLEVEL 413
24 #define ERR_WILDTOPLEVEL 414
25 #define ERR_BADMASK 415
26 #define ERR_TOOMANYMATCHES 416
27 #define ERR_UNKNOWNCOMMAND 421
28 #define ERR_NOMOTD 422
29 #define ERR_NOADMININFO 423
30 #define ERR_FILEERROR 424
31 #define ERR_NONICKNAMEGIVEN 431
32 #define ERR_ERRONEUSNICKNAME 432
33 #define ERR_NICKNAMEINUSE 433
34 #define ERR_NICKCOLLISION 436
35 #define ERR_UNAVAILRESOURCE 437
36 #define ERR_NICKTOOFAST	438
37 #define ERR_USERNOTINCHANNEL 441
38 #define ERR_NOTONCHANNEL 442
39 #define ERR_USERONCHANNEL 443
40 #define ERR_NOLOGIN 444
41 #define ERR_SUMMONDISABLED 445
42 #define ERR_USERSDISABLED 446
43 #define ERR_NOTREGISTERED 451
44 #define ERR_NEEDMOREPARAMS 461
45 #define ERR_ALREADYREGISTERED 462
46 #define ERR_NOPERMFORHOST 463
47 #define ERR_PASSWDMISMATCH 464
48 #define ERR_YOUREBANNEDCREEP 465
49 #define ERR_YOUWILLBEBANNED 466
50 #define ERR_KEYSET 467
51 #define ERR_FORWARDING	470
52 #define ERR_CHANNELISFULL 471
53 #define ERR_UNKNOWNMODE 472
54 #define ERR_INVITEONLYCHAN 473
55 #define ERR_BANNEDFROMCHAN 474
56 #define ERR_BADCHANNELKEY 475
57 #define ERR_BADCHANMASK 476
58 #define ERR_NOCHANMODES 477
59 #define ERR_NEEDREGGEDNICK 477
60 #define ERR_BANLISTFULL 478
61 #define ERR_ILLEGALCHANNELNAME 479
62 #define ERR_NOPRIVILEGES 481
63 #define ERR_CHANOPPRIVSNEEDED 482
64 #define ERR_CANTKILLSERVER 483
65 #define ERR_RESTRICTED 484
66 #define ERR_UNIQOPPRIVSNEEDED 485
67 #define ERR_NO_OP_SPLIT 487
68 #define ERR_NOOPERHOST 491
69 #define ERR_UMODEUNKNOWNFLAG 501
70 #define ERR_USERSDONTMATCH 502
71 #define ERR_BLOCKING_NOTID 505
72 #define ERR_BADCHARENCODING 980
73 
74 #define RPL_WELCOME 1
75 #define RPL_YOURHOST 2
76 #define RPL_CREATED 3
77 #define RPL_MYINFO 4
78 #define RPL_BOUNCE 5
79 #define RPL_SNOMASK 8
80 #define RPL_CAPAB 290
81 #define RPL_USERHOST 302
82 #define RPL_ISON 303
83 #define RPL_AWAY 301
84 #define RPL_UNAWAY 305
85 #define RPL_NOWAWAY 306
86 #define RPL_WHOISIP 307
87 #define RPL_WHOISUSER 311
88 #define RPL_WHOISSERVER 312
89 #define RPL_WHOISOPERATOR 313
90 #define RPL_WHOISIDLE 317
91 #define RPL_ENDOFWHOIS 318
92 #define RPL_WHOISCHANNELS 319
93 #define RPL_WHOISIDENTIFIED 320
94 #define RPL_WHOISOPERPRIVS 326
95 #define RPL_CHANNEL_HOMEPAGE		328
96 #define RPL_WHOWASUSER 314
97 #define RPL_WHOWAS_TIME 330
98 #define RPL_WHOISACCOUNT 330
99 #define RPL_ENDOFWHOWAS 369
100 #define RPL_LISTSTART 321
101 #define RPL_LIST 322
102 #define RPL_LISTEND 323
103 #define RPL_UNIQOPIS 325
104 #define RPL_CHANNELMODEIS 324
105 #define RPL_CREATIONTIME 329
106 #define RPL_NOTOPIC 331
107 #define RPL_TOPIC 332 /* 332 channel :topic */
108 #define RPL_TOPICWHOTIME 333
109 #define RPL_WHOISACTUALLY 338
110 #define RPL_INVITING 341
111 #define RPL_SUMMONING 342
112 #define RPL_INVITELIST 346
113 #define RPL_ENDOFINVITELIST 347
114 #define RPL_EXCEPTLIST 348
115 #define RPL_ENDOFEXCEPTLIST 349
116 #define RPL_VERSION 351
117 #define RPL_WHOREPLY 352
118 #define RPL_ENDOFWHO 315
119 #define RPL_NAMREPLY 353
120 #define RPL_WHOSPCRPL 354
121 #define RPL_ENDOFNAMES 366
122 #define RPL_LINKS 364
123 #define RPL_ENDOFLINKS 365
124 #define RPL_BANLIST 367
125 #define RPL_ENDOFBANLIST 368
126 #define RPL_INFO 371
127 #define RPL_ENDOFINFO 374
128 #define RPL_MOTDSTART 375
129 #define RPL_MOTD 372
130 #define RPL_ENDOFMOTD 376
131 #define RPL_YOUREOPER 381
132 #define RPL_REHASHING 382
133 #define RPL_YOURESERVICE 383
134 #define RPL_TIME 391
135 #define RPL_USERSSTART 392
136 #define RPL_USERS 393
137 #define RPL_ENDOFUSERS 394
138 #define RPL_NOUSERS 395
139 #define RPL_HIDINGHOST 396
140 #define RPL_TRACELINK 200
141 #define RPL_TRACECONNECTING 201
142 #define RPL_TRACEHANDSHAKE 202
143 #define RPL_TRACEUNKNOWN 203
144 #define RPL_TRACEOPERATOR 204
145 #define RPL_TRACEUSER 205
146 #define RPL_TRACESERVER 206
147 #define RPL_TRACESERVICE 207
148 #define RPL_TRACENEWTYPE 208
149 #define RPL_TRACECLASS 209
150 #define RPL_TRACERECONNECT 210
151 #define RPL_TRACECLASS 209
152 #define RPL_TRACERECONNECT 210
153 #define RPL_TRACELOG 261
154 #define RPL_TRACEEND 262
155 #define RPL_STATSLINKINFO 211
156 #define RPL_STATSCOMMANDS 212
157 #define RPL_STATSCLINE 213
158 #define RPL_STATSNLINE 214
159 #define RPL_STATSILINE 215
160 #define RPL_STATSKLINE 216
161 #define RPL_STATSYLINE 218
162 #define RPL_ENDOFSTATS 219
163 #define RPL_STATSLLINE 241
164 #define RPL_STATSUPTIME 242
165 #define RPL_STATSOLINE 243
166 #define RPL_STATSHLINE 244
167 #define RPL_STATSTLINE 250
168 #define RPL_UMODEIS 221
169 #define RPL_SERVLIST 234
170 #define RPL_SERVLISTEND 235
171 #define RPL_LUSERCLIENT 251
172 #define RPL_LUSEROP 252
173 #define RPL_LUSERUNKNOWN 253
174 #define RPL_LUSERCHANNELS 254
175 #define RPL_LUSERME 255
176 #define RPL_ADMINME 256
177 #define RPL_ADMINLOC1 257
178 #define RPL_ADMINLOC2 258
179 #define RPL_ADMINLOC3 259
180 #define RPL_TRYAGAIN 263
181 #define RPL_LOCALUSERS 265
182 #define RPL_GLOBALUSERS 266
183 #define RPL_WHOISSSL 275
184 
185 /* These are obsolete */
186 #define RPL_STATSQLINE 217
187 #define RPL_STATSPLINE 249
188 #define RPL_TRACECLASS 209
189 
190 /* <command> :Bad command */
191 #define ERR_BADCOMMAND				900
192 
193 #define RPL_LOGGEDINAS 901
194 
195 /* <package> :Already authenticated */
196 #define ERR_ALREADYAUTHENTICATED 	909
197 
198 /* <package> :Authentication failed */
199 #define ERR_AUTHENTICATIONFAILED 	910
200 
201 /* <package> :Authentication suspended for this IP */
202 #define ERR_AUTHENTICATIONSUSPENDED 911
203 
204 /* <package> :Unsupported authentication package */
205 #define ERR_UNKNOWNPACKAGE			912
206 
207 #define ALLMODES "aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ"
208 
209 #define IRC_MAXLINELEN	512
210 
211 #endif
212