ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/include/numeric.h
Revision: 3762
Committed: Sun Jun 1 19:35:16 2014 UTC (11 years, 2 months ago) by michael
Content type: text/x-chdr
File size: 8500 byte(s)
Log Message:
- Added INVITE flood protection/throttling as requested by Adam. This basically
  works similar as the KNOCK throttling algorithm.

File Contents

# User Rev Content
1 adx 30 /*
2 michael 2848 * ircd-hybrid: an advanced, lightweight Internet Relay Chat Daemon (ircd)
3 adx 30 *
4 michael 2848 * Copyright (c) 1997-2014 ircd-hybrid development team
5 adx 30 *
6     * This program is free software; you can redistribute it and/or modify
7     * it under the terms of the GNU General Public License as published by
8     * the Free Software Foundation; either version 2 of the License, or
9     * (at your option) any later version.
10     *
11     * This program is distributed in the hope that it will be useful,
12     * but WITHOUT ANY WARRANTY; without even the implied warranty of
13     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     * GNU General Public License for more details.
15     *
16     * You should have received a copy of the GNU General Public License
17     * along with this program; if not, write to the Free Software
18     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
19     * USA
20     */
21    
22 michael 2848 /*! \file numeric.h
23     * \brief Declarations of numeric replies.
24     * \version $Id$
25     */
26    
27 adx 30 #ifndef INCLUDED_numeric_h
28     #define INCLUDED_numeric_h
29    
30 michael 3573
31     #define SND_EXPLICIT 0x40000000 /**< First argument is a pattern to use */
32    
33 adx 30 /*
34     * Reserve numerics 000-099 for server-client connections where the client
35     * is local to the server. If any server is passed a numeric in this range
36     * from another server then it is remapped to 100-199. -avalon
37     */
38 michael 1834
39 michael 2848 enum irc_numerics
40     {
41     RPL_WELCOME = 1,
42     RPL_YOURHOST = 2,
43     RPL_CREATED = 3,
44     RPL_MYINFO = 4,
45     RPL_ISUPPORT = 5,
46     RPL_REDIR = 10,
47     RPL_MAP = 15,
48     RPL_MAPMORE = 16,
49     RPL_MAPEND = 17,
50     RPL_YOURID = 42,
51 michael 1834
52 michael 2848 /*
53     * Numeric replies from server commands.
54     * These are currently in the range 200-399.
55     */
56     RPL_TRACELINK = 200,
57     RPL_TRACECONNECTING = 201,
58     RPL_TRACEHANDSHAKE = 202,
59     RPL_TRACEUNKNOWN = 203,
60     RPL_TRACEOPERATOR = 204,
61     RPL_TRACEUSER = 205,
62     RPL_TRACESERVER = 206,
63     RPL_TRACENEWTYPE = 208,
64     RPL_TRACECLASS = 209,
65     RPL_STATSLINKINFO = 211,
66     RPL_STATSCOMMANDS = 212,
67     RPL_STATSCLINE = 213,
68     RPL_STATSILINE = 215,
69     RPL_STATSKLINE = 216,
70     RPL_STATSQLINE = 217,
71     RPL_STATSYLINE = 218,
72     RPL_ENDOFSTATS = 219,
73 michael 1837
74 michael 2848 /*
75     * Note ircu uses 217 for STATSPLINE frip. conflict
76     * as RPL_STATSQLINE was used in old 2.8 for Q line
77     * I'm going to steal 220 for now *sigh* -Dianora
78     */
79     RPL_STATSPLINE = 220,
80     RPL_UMODEIS = 221,
81     RPL_STATSDLINE = 225,
82     RPL_STATSALINE = 226,
83     RPL_STATSLLINE = 241,
84     RPL_STATSUPTIME = 242,
85     RPL_STATSOLINE = 243,
86     RPL_STATSHLINE = 244,
87     RPL_STATSTLINE = 245,
88     RPL_STATSSERVICE = 246,
89     RPL_STATSXLINE = 247,
90     RPL_STATSULINE = 248,
91     RPL_STATSDEBUG = 249,
92     RPL_STATSCONN = 250,
93     RPL_LUSERCLIENT = 251,
94     RPL_LUSEROP = 252,
95     RPL_LUSERUNKNOWN = 253,
96     RPL_LUSERCHANNELS = 254,
97     RPL_LUSERME = 255,
98     RPL_ADMINME = 256,
99     RPL_ADMINLOC1 = 257,
100     RPL_ADMINLOC2 = 258,
101     RPL_ADMINEMAIL = 259,
102     RPL_ENDOFTRACE = 262,
103     RPL_LOAD2HI = 263,
104     RPL_LOCALUSERS = 265,
105     RPL_GLOBALUSERS = 266,
106     RPL_WHOISCERTFP = 276,
107     RPL_ACCEPTLIST = 281,
108     RPL_ENDOFACCEPT = 282,
109     RPL_NEWHOSTIS = 285,
110     RPL_AWAY = 301,
111     RPL_USERHOST = 302,
112     RPL_ISON = 303,
113     RPL_UNAWAY = 305,
114     RPL_NOWAWAY = 306,
115     RPL_WHOISREGNICK = 307,
116     RPL_WHOISUSER = 311,
117     RPL_WHOISSERVER = 312,
118     RPL_WHOISOPERATOR = 313,
119     RPL_WHOWASUSER = 314,
120     RPL_ENDOFWHO = 315,
121     RPL_WHOISIDLE = 317,
122     RPL_ENDOFWHOIS = 318,
123     RPL_WHOISCHANNELS = 319,
124     RPL_LISTSTART = 321,
125     RPL_LIST = 322,
126     RPL_LISTEND = 323,
127     RPL_CHANNELMODEIS = 324,
128     RPL_CREATIONTIME = 329,
129     RPL_WHOISACCOUNT = 330,
130     RPL_NOTOPIC = 331,
131     RPL_TOPIC = 332,
132     RPL_TOPICWHOTIME = 333,
133     RPL_WHOISTEXT = 337,
134     RPL_WHOISACTUALLY = 338,
135     RPL_INVITING = 341,
136     RPL_INVITELIST = 346,
137     RPL_ENDOFINVITELIST = 347,
138     RPL_EXCEPTLIST = 348,
139     RPL_ENDOFEXCEPTLIST = 349,
140     RPL_VERSION = 351,
141     RPL_WHOREPLY = 352,
142     RPL_NAMREPLY = 353,
143     RPL_CLOSING = 362,
144     RPL_CLOSEEND = 363,
145     RPL_LINKS = 364,
146     RPL_ENDOFLINKS = 365,
147     RPL_ENDOFNAMES = 366,
148     RPL_BANLIST = 367,
149     RPL_ENDOFBANLIST = 368,
150     RPL_ENDOFWHOWAS = 369,
151     RPL_INFO = 371,
152     RPL_MOTD = 372,
153     RPL_INFOSTART = 373,
154     RPL_ENDOFINFO = 374,
155     RPL_MOTDSTART = 375,
156     RPL_ENDOFMOTD = 376,
157     RPL_WHOISMODES = 379,
158     RPL_YOUREOPER = 381,
159     RPL_REHASHING = 382,
160     RPL_RSACHALLENGE = 386,
161     RPL_TIME = 391,
162 adx 30
163 michael 2848 /*
164     * Errors are in the range from 400-599 currently and are grouped by what
165     * commands they come from.
166     */
167     ERR_NOSUCHNICK = 401,
168     ERR_NOSUCHSERVER = 402,
169     ERR_NOSUCHCHANNEL = 403,
170     ERR_CANNOTSENDTOCHAN = 404,
171     ERR_TOOMANYCHANNELS = 405,
172     ERR_WASNOSUCHNICK = 406,
173     ERR_TOOMANYTARGETS = 407,
174     ERR_NOCTRLSONCHAN = 408,
175     ERR_NOORIGIN = 409,
176     ERR_INVALIDCAPCMD = 410,
177     ERR_NORECIPIENT = 411,
178     ERR_NOTEXTTOSEND = 412,
179     ERR_NOTOPLEVEL = 413,
180     ERR_WILDTOPLEVEL = 414,
181     ERR_UNKNOWNCOMMAND = 421,
182     ERR_NOMOTD = 422,
183     ERR_NOADMININFO = 423,
184     ERR_NONICKNAMEGIVEN = 431,
185     ERR_ERRONEUSNICKNAME = 432,
186     ERR_NICKNAMEINUSE = 433,
187     ERR_NICKCOLLISION = 436,
188     ERR_UNAVAILRESOURCE = 437,
189     ERR_NICKTOOFAST = 438,
190     ERR_SERVICESDOWN = 440,
191     ERR_USERNOTINCHANNEL = 441,
192     ERR_NOTONCHANNEL = 442,
193     ERR_USERONCHANNEL = 443,
194     ERR_NOTREGISTERED = 451,
195     ERR_ACCEPTFULL = 456,
196     ERR_ACCEPTEXIST = 457,
197     ERR_ACCEPTNOT = 458,
198     ERR_NEEDMOREPARAMS = 461,
199     ERR_ALREADYREGISTRED = 462,
200     ERR_PASSWDMISMATCH = 464,
201     ERR_YOUREBANNEDCREEP = 465,
202     ERR_ONLYSERVERSCANCHANGE = 468,
203     ERR_OPERONLYCHAN = 470,
204     ERR_CHANNELISFULL = 471,
205     ERR_UNKNOWNMODE = 472,
206     ERR_INVITEONLYCHAN = 473,
207     ERR_BANNEDFROMCHAN = 474,
208     ERR_BADCHANNELKEY = 475,
209     ERR_NEEDREGGEDNICK = 477,
210     ERR_BANLISTFULL = 478,
211     ERR_BADCHANNAME = 479,
212     ERR_SSLONLYCHAN = 480,
213     ERR_NOPRIVILEGES = 481,
214     ERR_CHANOPRIVSNEEDED = 482,
215     ERR_CANTKILLSERVER = 483,
216     ERR_RESTRICTED = 484,
217     ERR_CHANBANREASON = 485,
218     ERR_NONONREG = 486,
219     ERR_NOOPERHOST = 491,
220     ERR_UMODEUNKNOWNFLAG = 501,
221     ERR_USERSDONTMATCH = 502,
222     ERR_GHOSTEDCLIENT = 503,
223     ERR_USERNOTONSERV = 504,
224     ERR_TOOMANYWATCH = 512,
225     ERR_WRONGPONG = 513,
226     ERR_LISTSYNTAX = 521,
227     ERR_HELPNOTFOUND = 524,
228     RPL_LOGON = 600,
229     RPL_LOGOFF = 601,
230     RPL_WATCHOFF = 602,
231     RPL_WATCHSTAT = 603,
232     RPL_NOWON = 604,
233     RPL_NOWOFF = 605,
234     RPL_WATCHLIST = 606,
235     RPL_ENDOFWATCHLIST = 607,
236     RPL_WHOISSECURE = 671,
237     RPL_MODLIST = 702,
238     RPL_ENDOFMODLIST = 703,
239     RPL_HELPSTART = 704,
240     RPL_HELPTXT = 705,
241     RPL_ENDOFHELP = 706,
242     RPL_ETRACE = 709,
243     RPL_KNOCK = 710,
244     RPL_KNOCKDLVR = 711,
245     ERR_TOOMANYKNOCK = 712,
246     ERR_CHANOPEN = 713,
247     ERR_KNOCKONCHAN = 714,
248 michael 3762 ERR_TOOMANYINVITE = 715,
249 michael 2848 RPL_TARGUMODEG = 716,
250     RPL_TARGNOTIFY = 717,
251     RPL_UMODEGMSG = 718,
252     ERR_NOPRIVS = 723,
253     ERR_LAST_ERR_MSG = 999
254     };
255 michael 1834
256 michael 3109 extern const char *numeric_form(enum irc_numerics);
257 michael 1834 #endif /* INCLUDED_numeric_h */

Properties

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