ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/include/numeric.h
Revision: 502
Committed: Fri Mar 3 19:49:25 2006 UTC (18 years ago) by michael
Content type: text/x-chdr
File size: 16393 byte(s)
Log Message:
- Implemented CAP command handler based uppon ircu's m_cap()
- Added somewhat outdated draft-mitchell-irc-capabilities-01.txt until
  I get the latest version from kev.
- Added "multi-prefix" cap so clients supporting "multi-prefix"
  may recieve multi prefixed NAMES replies, e.g. @%+nick1 @+nick2 ..
- Fixed "make clean" for src/conf/

File Contents

# User Rev Content
1 adx 30 /*
2     * ircd-hybrid: an advanced Internet Relay Chat Daemon(ircd).
3     * numeric.h: A header for the numeric functions.
4     *
5     * Copyright (C) 2002 by the past and present ircd coders, and others.
6     *
7     * This program is free software; you can redistribute it and/or modify
8     * it under the terms of the GNU General Public License as published by
9     * the Free Software Foundation; either version 2 of the License, or
10     * (at your option) any later version.
11     *
12     * This program is distributed in the hope that it will be useful,
13     * but WITHOUT ANY WARRANTY; without even the implied warranty of
14     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     * GNU General Public License for more details.
16     *
17     * You should have received a copy of the GNU General Public License
18     * along with this program; if not, write to the Free Software
19     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20     * USA
21     *
22 knight 31 * $Id$
23 adx 30 */
24    
25     #ifndef INCLUDED_numeric_h
26     #define INCLUDED_numeric_h
27    
28     #define LOCALE_LENGTH 64 /* maximum length of locale name + 1 */
29    
30     struct NumericInfo
31     {
32     const char *name; /* common name of the numeric */
33     const char *standard; /* standard numeric text */
34     char *translated; /* translated numeric text */
35     };
36    
37     /* form_str - return a format string for a message number
38     * messages are defined below
39     */
40 adx 190 EXTERN const char *form_str(int);
41     EXTERN void set_locale(const char *);
42     EXTERN const char *get_locale(void);
43 adx 30
44     /*
45     * Reserve numerics 000-099 for server-client connections where the client
46     * is local to the server. If any server is passed a numeric in this range
47     * from another server then it is remapped to 100-199. -avalon
48     */
49     #define RPL_WELCOME 001
50     #define RPL_YOURHOST 002
51     #define RPL_CREATED 003
52     #define RPL_MYINFO 004
53     #define RPL_ISUPPORT 005
54     /* RPL_BOUNCE IRCnet extension */
55     /* RPL_MAP 6 unreal */
56     /* RPL_MAPEND 7 unreal */
57     /* RPL_SNOMASK 8 Undernet extension */
58     /* RPL_STATMEMTOT 9 Undernet extension */
59     /* RPL_STATMEM 10 Undernet extension */
60    
61     #define RPL_REDIR 10
62     #define RPL_MAP 15 /* Undernet extension */
63     #define RPL_MAPMORE 16 /* Undernet extension */
64     #define RPL_MAPEND 17 /* Undernet extension */
65    
66     #define RPL_YOURID 42 /* IRCnet extension */
67     /* RPL_ATTEMPTINGJUNC 50 aircd extension */
68     /* RPL_ATTEMPTINGREROUTE 51 aircd extension */
69    
70     /*
71     * Numeric replies from server commands.
72     * These are currently in the range 200-399.
73     */
74     #define RPL_TRACELINK 200
75     #define RPL_TRACECONNECTING 201
76     #define RPL_TRACEHANDSHAKE 202
77     #define RPL_TRACEUNKNOWN 203
78     #define RPL_TRACEOPERATOR 204
79     #define RPL_TRACEUSER 205
80     #define RPL_TRACESERVER 206
81     #define RPL_TRACECAPTURED 207
82     #define RPL_TRACENEWTYPE 208
83     #define RPL_TRACECLASS 209
84    
85     /* RPL_STATS 210 aircd extension, used instead of having
86     multiple stats numerics */
87     /* RPL_TRACERECONNECT 210 IRCnet extension */
88    
89     #define RPL_STATSLINKINFO 211
90     #define RPL_STATSCOMMANDS 212
91     #define RPL_STATSCLINE 213
92     #define RPL_STATSNLINE 214
93     /* RPL_STATSOLDNLINE 214 unreal */
94     #define RPL_STATSILINE 215
95     #define RPL_STATSKLINE 216
96     #define RPL_STATSQLINE 217
97     #define RPL_STATSYLINE 218
98     #define RPL_ENDOFSTATS 219
99     /* note ircu uses 217 for STATSPLINE frip. conflict
100     * as RPL_STATSQLINE was used in old 2.8 for Q line
101     * I'm going to steal 220 for now *sigh*
102     * -Dianora
103     */
104    
105     #define RPL_STATSPLINE 220
106     #define RPL_UMODEIS 221
107    
108     /* RPL_SQLINE_NICK 222 Numerics List: Dalnet */
109     /* RPL_STATSELINE 223 dalnet */
110     /* RPL_STATSGLINE 223 unreal */
111     /* RPL_STATSFLINE 224 Hybrid extension,Dalnet */
112     /* RPL_STATSTLINE 224 unreal */
113     /* RPL_STATSDLINE 225 Hybrid extension */
114     /* RPL_STATSZLINE 225 Dalnet
115     RPL_STATSELINE 225 unreal
116     RPL_STATSCOUNT 226 Dalnet
117     RPL_STATSNLINE 226 unreal
118     RPL_STATSGLINE 227 Dalnet
119     RPL_STATSVLINE 227 unreal */
120    
121     #define RPL_STATSFLINE 224
122     #define RPL_STATSDLINE 225
123     #define RPL_STATSALINE 226
124    
125     /* RPL_RULES 232 unreal */
126    
127     /* RPL_STATSIAUTH 239 IRCnet extension */
128     /* RPL_STATSVLINE 240 IRCnet extension */
129     /* RPL_STATSXLINE 240 austnet */
130    
131     #define RPL_STATSLLINE 241
132     #define RPL_STATSUPTIME 242
133     #define RPL_STATSOLINE 243
134     #define RPL_STATSHLINE 244
135     /* 245 No longer used in ircd-hybrid */
136     #define RPL_STATSSLINE 245
137     #define RPL_STATSXLINE 247
138     #define RPL_STATSULINE 248
139     #define RPL_STATSDEBUG 249
140     #define RPL_STATSCONN 250
141     /* RPL_STATSDLINE 250 Numerics List: IRCnet */
142     #define RPL_LUSERCLIENT 251
143     #define RPL_LUSEROP 252
144     #define RPL_LUSERUNKNOWN 253
145     #define RPL_LUSERCHANNELS 254
146     #define RPL_LUSERME 255
147     #define RPL_ADMINME 256
148     #define RPL_ADMINLOC1 257
149     #define RPL_ADMINLOC2 258
150     #define RPL_ADMINEMAIL 259
151    
152     #define RPL_ENDOFTRACE 262
153     #define RPL_LOAD2HI 263
154    
155     /* RPL_TRYAGAIN 263 Numerics List: IRCnet */
156     /* RPL_LOAD2HI 263 Dalnet */
157     /* RPL_CURRENT_LOCAL 265 aircd/efnet/hybrid/dalnet*/
158     /* RPL_CURRENT_GLOBAL 266 aircd/efnet/hybrid/dalnet */
159     /* RPL_START_NETSTAT 267 aircd */
160     /* RPL_NETSTAT 268 aircd */
161     /* RPL_END_NETSTAT 269 aircd */
162    
163     #define RPL_LOCALUSERS 265
164     #define RPL_GLOBALUSERS 266
165    
166     #define RPL_WHOISSSL 275
167    
168     #define RPL_ACCEPTLIST 281
169     #define RPL_ENDOFACCEPT 282
170    
171     /* RPL_GLIST 280 Undernet extension */
172     /* RPL_ENDOFGLIST 281 Undernet extension */
173     /* RPL_JUPELIST 282 Undernet extension - jupe -Kev */
174     /* RPL_ENDOFJUPELIST 283 Undernet extension - jupe -Kev */
175     /* RPL_FEATURE 284 Undernet extension - features */
176     /* RPL_CHANINFO_HANDLE 285 aircd */
177     /* RPL_CHANINFO_USERS 286 aircd */
178     /* RPL_CHANINFO_CHOPS 287 aircd */
179     /* RPL_CHANINFO_VOICES 288 aircd */
180     /* RPL_CHANINFO_AWAY 289 aircd */
181     /* RPL_CHANINFO_OPERS 290 aircd */
182     /* RPL_HELPHDR 290 Numeric List: Dalnet */
183     /* RPL_CHANINFO_BANNED 291 aircd */
184     /* RPL_HELPOP 291 Numeric List: Dalnet */
185     /* RPL_CHANINFO_BANS 292 aircd */
186     /* RPL_HELPTLR 292 Numeric List: Dalnet */
187     /* RPL_CHANINFO_INVITE 293 aircd */
188     /* RPL_HELPHLP 293 Numeric List: Dalnet */
189     /* RPL_CHANINFO_INVITES 294 aircd */
190     /* RPL_HELPFWD 294 Numeric List: Dalnet */
191     /* RPL_CHANINFO_KICK 295 aircd */
192     /* RPL_HELPIGN 295 Numeric List: Dalnet */
193     /* RPL_CHANINFO_KICKS 296 aircd */
194    
195     /* RPL_END_CHANINFO 299 aircd */
196    
197     /* numeric_replies */
198     #define RPL_AWAY 301
199     #define RPL_USERHOST 302
200     #define RPL_ISON 303
201     #define RPL_TEXT 304
202     #define RPL_UNAWAY 305
203     #define RPL_NOWAWAY 306
204     #define RPL_USERIP 307 /* Undernet extension */
205     /* RPL_WHOISREGNICK 307 Numeric List: Dalnet */
206     /* RPL_SUSERHOST 307 austnet */
207     /* RPL_NOTIFYACTION 308 aircd */
208     #define RPL_WHOISADMIN 308 /* Numeric List: Dalnet */
209     /* RPL_RULESSTART 308 unreal */
210     /* RPL_NICKTRACE 309 aircd */
211     /* RPL_WHOISSADMIN 309 Numeric List: Dalnet */
212     /* RPL_ENDOFRULES 309 unreal */
213     /* RPL_WHOISHELPER 309 austnet */
214     /* RPL_WHOISSVCMSG 310 Dalnet */
215     /* RPL_WHOISHELPOP 310 unreal */
216     /* RPL_WHOISSERVICE 310 austnet */
217    
218     #define RPL_WHOISUSER 311
219     #define RPL_WHOISSERVER 312
220     #define RPL_WHOISOPERATOR 313
221    
222     #define RPL_WHOWASUSER 314
223     /* rpl_endofwho below (315) */
224     #define RPL_ENDOFWHOWAS 369
225    
226     #define RPL_WHOISCHANOP 316 /* redundant and not needed but reserved */
227     #define RPL_WHOISIDLE 317
228    
229     #define RPL_ENDOFWHOIS 318
230     #define RPL_WHOISCHANNELS 319
231     /* RPL_WHOIS_HIDDEN 320 Anothernet +h, ick! */
232     /* RPL_WHOISSPECIAL 320 unreal */
233     #define RPL_LISTSTART 321
234     #define RPL_LIST 322
235     #define RPL_LISTEND 323
236     #define RPL_CHANNELMODEIS 324
237     /* RPL_CHANNELPASSIS 325 IRCnet extension */
238     /* RPL_UNIQOPIS 325 IRCnet extension */
239     /* RPL_NOCHANPASS 326 IRCnet extension */
240     /* RPL_CHPASSUNKNOWN 327 IRCnet extension */
241     /* RPL_CHANNEL_URL 328 dalnet, anothernet */
242     #define RPL_CREATIONTIME 329
243     /* RPL_WHOWAS_TIME 330 ? */
244     #define RPL_NOTOPIC 331
245     #define RPL_TOPIC 332
246     #define RPL_TOPICWHOTIME 333
247     /* RPL_COMMANDSYNTAX 334 Dalnet */
248     /* RPL_LISTSYNTAX 334 unreal */
249     /* RPL_CHANPASSOK 338 IRCnet extension (?)*/
250     #define RPL_WHOISACTUALLY 338 /* dalnet */
251     /* RPL_WHOISACTUALLY 338 Undernet extension, dalnet */
252     /* RPL_BADCHANPASS 339 IRCnet extension (?)*/
253     /* RPL_USERIP 340 (old) Undernet extension */
254     #define RPL_INVITING 341
255     /* RPL_SUMMONING 342 removed from RFC1459 */
256    
257     #define RPL_INVITELIST 346
258     #define RPL_ENDOFINVITELIST 347 /* IRCnet, Undernet extension */
259     #define RPL_EXCEPTLIST 348
260     #define RPL_ENDOFEXCEPTLIST 349
261    
262     #define RPL_VERSION 351
263    
264     #define RPL_WHOREPLY 352
265     #define RPL_ENDOFWHO 315
266     #define RPL_NAMREPLY 353
267     #define RPL_ENDOFNAMES 366
268    
269     #define RPL_CLOSING 362
270     #define RPL_CLOSEEND 363
271     #define RPL_LINKS 364
272     #define RPL_ENDOFLINKS 365
273     /* rpl_endofnames above (366) */
274     #define RPL_BANLIST 367
275     #define RPL_ENDOFBANLIST 368
276     /* rpl_endofwhowas above (369) */
277    
278     #define RPL_INFO 371
279     #define RPL_MOTD 372
280     #define RPL_INFOSTART 373
281     #define RPL_ENDOFINFO 374
282     #define RPL_MOTDSTART 375
283     #define RPL_ENDOFMOTD 376
284    
285     /* RPL_KICKEXPIRED 377 aircd */
286     /* RPL_SPAM 377 austnet */
287     /* RPL_BANEXPIRED 378 aircd */
288     /* RPL_KICKLINKED 379 aircd */
289     /* RPL_BANLINKED 380 aircd */
290    
291     #define RPL_YOUREOPER 381
292     #define RPL_REHASHING 382
293     /* RPL_YOURSERVICE 383 Numeric List: various */
294     #define RPL_RSACHALLENGE 386
295    
296     /* RPL_QLIST 386 unreal */
297     /* RPL_ENDOFQLIST 387 unreal */
298     /* RPL_ALIST 388 unreal */
299     /* RPL_ENDOFALIST 389 unreal */
300    
301     #define RPL_TIME 391
302     #define RPL_USERSSTART 392
303     #define RPL_USERS 393
304     #define RPL_ENDOFUSERS 394
305     #define RPL_NOUSERS 395
306     #define RPL_HOSTHIDDEN 396
307    
308     /*
309     * Errors are in the range from 400-599 currently and are grouped by what
310     * commands they come from.
311     */
312     #define ERR_NOSUCHNICK 401
313     #define ERR_NOSUCHSERVER 402
314     #define ERR_NOSUCHCHANNEL 403
315     #define ERR_CANNOTSENDTOCHAN 404
316     #define ERR_TOOMANYCHANNELS 405
317     #define ERR_WASNOSUCHNICK 406
318     #define ERR_TOOMANYTARGETS 407
319     #define ERR_NOORIGIN 409
320 michael 502 #define ERR_INVALIDCAPCMD 410
321 adx 30
322     #define ERR_NORECIPIENT 411
323     #define ERR_NOTEXTTOSEND 412
324     #define ERR_NOTOPLEVEL 413
325     #define ERR_WILDTOPLEVEL 414
326     /* ERR_BADMASK 415 IRCnet extension */
327     #define ERR_UNKNOWNCOMMAND 421
328     #define ERR_NOMOTD 422
329     #define ERR_NOADMININFO 423
330    
331     /* ERR_TOOMANYAWAY 429 Dalnet */
332    
333     #define ERR_NONICKNAMEGIVEN 431
334     #define ERR_ERRONEUSNICKNAME 432
335     #define ERR_NICKNAMEINUSE 433
336    
337     /* ERR_SERVICENAMEINUSE 434 ? */
338     /* ERR_NORULES 434 unreal */
339     /* ERR_SERVICECONFUSED 435 ? */
340     /* ERR_BANONCHAN 435 dalnet */
341    
342     #define ERR_NICKCOLLISION 436
343     #define ERR_UNAVAILRESOURCE 437
344     #define ERR_NICKTOOFAST 438 /* We did it first Undernet! ;) db */
345    
346     #define ERR_SERVICESDOWN 440
347    
348     #define ERR_USERNOTINCHANNEL 441
349     #define ERR_NOTONCHANNEL 442
350     #define ERR_USERONCHANNEL 443
351    
352     #define ERR_NOTREGISTERED 451
353    
354     /* ERR_IDCOLLISION 452 IRCnet extension ? */
355     /* ERR_NICKLOST 453 IRCnet extension ? */
356    
357     /* ERR_HOSTILENAME 455 unreal */
358    
359     /* ERR_NOHIDING 459 unreal */
360     /* ERR_NOTFORHALFOPS 460 unreal */
361    
362     #define ERR_ACCEPTFULL 456
363     #define ERR_ACCEPTEXIST 457
364     #define ERR_ACCEPTNOT 458
365    
366     #define ERR_NEEDMOREPARAMS 461
367     #define ERR_ALREADYREGISTRED 462
368     #define ERR_PASSWDMISMATCH 464
369     #define ERR_YOUREBANNEDCREEP 465
370     /* ERR_ONLYSERVERSCANCHANGE 468 Dalnet,unreal */
371     /* ERR_LINKSET 469 unreal */
372     /* ERR_LINKCHANNEL 470 unreal */
373     /* ERR_KICKEDFROMCHAN 470 aircd */
374     #define ERR_CHANNELISFULL 471
375     #define ERR_UNKNOWNMODE 472
376     #define ERR_INVITEONLYCHAN 473
377     #define ERR_BANNEDFROMCHAN 474
378     #define ERR_BADCHANNELKEY 475
379     /* ERR_MODELESS 477 ircu numeric -db */
380     #define ERR_BANLISTFULL 478 /* I stole the numeric from ircu -db */
381     #define ERR_BADCHANNAME 479
382     /* ERR_LINKFAIL 479 unreal */
383     /* ERR_CANNOTKNOCK 480 unreal */
384     /* ERR_NOULINE 480 austnet */
385     #define ERR_NOPRIVILEGES 481
386     #define ERR_CHANOPRIVSNEEDED 482
387     #define ERR_CANTKILLSERVER 483
388     #define ERR_RESTRICTED 484
389     /* ERR_DESYNC 484 Dalnet,PTlink */
390     /* ERR_ATTACKDENY 484 unreal */
391     /* ERR_RESTRICTED 484 IRCnet extension */
392     /* ERR_UNIQOPRIVSNEEDED 485 IRCnet extension */
393     /* ERR_KILLDENY 485 unreal */
394     /* ERR_CANTKICKADMIN 485 PTlink */
395     /* ERR_HTMDISABLED 486 unreal */
396     /* ERR_CHANTOORECENT 487 IRCnet extension (?) */
397     /* ERR_TSLESSCHAN 488 IRCnet extension (?) */
398     /* ERR_VOICENEEDED 489 Undernet extension */
399     #define ERR_NOOPERHOST 491
400     /* ERR_NOSERVICEHOST 492 IRCnet extension */
401    
402     #define ERR_UMODEUNKNOWNFLAG 501
403     #define ERR_USERSDONTMATCH 502
404    
405     #define ERR_GHOSTEDCLIENT 503
406     /* ERR_VWORLDWARN 503 austnet */
407    
408     #define ERR_USERNOTONSERV 504
409    
410     /* #define ERR_LAST_ERR_MSG 505
411     * moved to 999
412     */
413    
414 michael 217 #define ERR_TOOMANYWATCH 512
415 adx 30
416     #define ERR_WRONGPONG 513
417     /* ERR_TOOMANYDCC 514 dalnet */
418     /* ERR_NOINVITE 518 unreal */
419     #define ERR_LONGMASK 518 /* Undernet extension -Kev */
420     /* ERR_ADMONLY 519 unreal */
421     /* ERR_TOOMANYUSERS 519 Undernet extension -Kev */
422     /* ERR_OPERONLY 520 unreal */
423     /* ERR_MASKTOOWIDE 520 Undernet extension -Kev */
424     /* ERR_WHOTRUNC 520 austnet */
425     /* ERR_LASTERROR 521 Undernet extension -Kev */
426     #define ERR_LISTSYNTAX 521
427     /* ERR_WHOSYNTAX 522 dalnet */
428     /* ERR_WHOLIMEXCEED 523 dalnet */
429    
430     #define ERR_HELPNOTFOUND 524
431    
432 michael 217 #define RPL_LOGON 600
433     #define RPL_LOGOFF 601
434     #define RPL_WATCHOFF 602
435     #define RPL_WATCHSTAT 603
436     #define RPL_NOWON 604
437     #define RPL_NOWOFF 605
438     #define RPL_WATCHLIST 606
439     #define RPL_ENDOFWATCHLIST 607
440 adx 30
441 michael 217 /*
442 adx 30 RPL_MAPMORE 610 unreal
443    
444     RPL_MAPMORE 615 PTlink
445    
446     RPL_DCCSTATUS 617 dalnet
447     RPL_DCCLIST 618 dalnet
448     RPL_ENDOFDCCLIST 619 dalnet
449     RPL_DCCINFO 620 dalnet
450    
451     RPL_DUMPING 640 unreal
452     RPL_DUMPRPL 641 unreal
453     RPL_EODUMP 642 unreal
454     */
455    
456     #define RPL_MODLIST 702
457     #define RPL_ENDOFMODLIST 703
458    
459     #define RPL_HELPSTART 704
460     #define RPL_HELPTXT 705
461     #define RPL_ENDOFHELP 706
462    
463     #define RPL_KNOCK 710
464     #define RPL_KNOCKDLVR 711
465    
466     #define ERR_TOOMANYKNOCK 712
467     #define ERR_CHANOPEN 713
468     #define ERR_KNOCKONCHAN 714
469     #define ERR_KNOCKDISABLED 715
470    
471     #define ERR_TARGUMODEG 716
472     #define RPL_TARGNOTIFY 717
473     #define RPL_UMODEGMSG 718
474    
475     #define RPL_OMOTDSTART 720
476     #define RPL_OMOTD 721
477     #define RPL_ENDOFOMOTD 722
478    
479     #define ERR_NOPRIVS 723
480    
481     #define RPL_TESTMASK 724
482     #define RPL_TESTLINE 725
483     #define RPL_NOTESTLINE 726
484     #define RPL_ISCAPTURED 727
485     #define RPL_ISUNCAPTURED 728
486    
487     #define ERR_LAST_ERR_MSG 999
488    
489     #endif /* INCLUDED_numeric_h */

Properties

Name Value
svn:eol-style native
svn:keywords Id Revision