1 /* +------------------------------------+
2 * | Inspire Internet Relay Chat Daemon |
3 * +------------------------------------+
5 * InspIRCd: (C) 2002-2008 InspIRCd Development Team
6 * See: http://www.inspircd.org/wiki/index.php/Credits
8 * This program is free but copyrighted software; see
9 * the file COPYING for details.
11 * ---------------------------------------------------
15 * This file is aimed providing a string that is easier to use than using the numeric
18 * Module authors, please note!
19 * While you are free to use any numerics on this list, like the rest of the core, you
20 * *should not* be editing it!
21 * You should just WriteNumeric(444, .. or whatever as you would before this file, OR:
22 * #define RPL_MYNUMERIC 444 & WriteNumeric(RPL_MYNUMERIC, ...
24 * If you *do* have a suggestion for a numeric you genuinely believe would be useful,
25 * please speak to us. :)
27 * Thanks to Darom, jackmcbarn and Brain for suggesting and discussing this.
29 * Please note that the list may not be exhaustive, it'll be done when I have
30 * nothing better to do with my time. -- w00t (jul 13, 2008)
35 * Reply range of numerics.
37 RPL_WELCOME = 1, // 2812, not 1459
38 RPL_YOURHOSTIS = 2, // 2812, not 1459
39 RPL_SERVERCREATED = 3, // 2812, not 1459
40 RPL_SERVERVERSION = 4, // 2812, not 1459
41 RPL_ISUPPORT = 5, // not RFC, extremely common though (defined as RPL_BOUNCE in 2812, widely ignored)
43 RPL_MAP = 6, // unrealircd
44 RPL_ENDMAP = 7, // unrealircd
45 RPL_SNOMASKIS = 8, // unrealircd
47 RPL_YOURUUID = 42, // taken from ircnet
50 RPL_RULES = 232, // unrealircd
55 RPL_MAPUSERS = 270, // insp-specific
57 RPL_SYNTAX = 304, // insp-specific
62 RPL_RULESTART = 308, // unrealircd
63 RPL_RULESEND = 309, // unrealircd
64 RPL_CHANNELMODEIS = 324,
65 RPL_CHANNELCREATED = 329, // ???
67 RPL_TOPICTIME = 333, // not RFC, extremely common though
70 RPL_INVITELIST = 346, // insp-specific (stolen from ircu)
71 RPL_ENDOFINVITELIST = 347, // insp-specific (stolen from ircu)
85 RPL_YOURDISPLAYEDHOST = 396, // from charybdis/etc, common convention
88 * Error range of numerics.
91 ERR_NOSUCHSERVER = 402,
92 ERR_NOSUCHCHANNEL = 403, // used to indicate an invalid channel name also, so don't rely on RFC text (don't do that anyway!)
93 ERR_CANNOTSENDTOCHAN = 404,
94 ERR_TOOMANYCHANNELS = 405,
95 ERR_INVALIDCAPSUBCOMMAND = 410, // ratbox/charybdis(?)
96 ERR_UNKNOWNCOMMAND = 421,
98 ERR_NORULES = 434, // unrealircd
99 ERR_USERNOTINCHANNEL = 441,
100 ERR_NOTONCHANNEL = 442,
101 ERR_USERONCHANNEL = 443,
102 ERR_CANTCHANGENICK = 447, // unrealircd, probably
103 ERR_NOTREGISTERED = 451,
104 ERR_NEEDMOREPARAMS = 461,
105 ERR_ALREADYREGISTERED = 462,
108 * A quick side-rant about the next group of numerics..
109 * There are clients out there that like to assume that just because they don't recieve a numeric
110 * they know, that they have joined the channel.
112 * If IRC was at all properly standardised, this may even be a semi-acceptable assumption to make,
113 * but that's not the case as we all know, so IT IS NOT ACCEPTABLE. Especially for Insp users, where
114 * differing modules MAY potentially choose to block joins and send NOTICEs or other text to the user
118 * DON'T MAKE YOUR CLIENT ASSUME YOU JOINED UNLESS YOU RECIEVE A JOIN WITH YOUR DAMN NICK ON IT.
121 * -- A message from the IRC group for coder sanity, and w00t
123 ERR_BADCHANNELKEY = 475,
124 ERR_INVITEONLYCHAN = 473,
125 ERR_CHANNELISFULL = 471,
126 ERR_BANNEDFROMCHAN = 474,
128 ERR_NOPRIVILEGES = 481, // rfc, beware though, we use this for other things opers may not do also
129 ERR_CHANOPRIVSNEEDED = 482, // rfc, beware though, we use this for other things like trying to kick a uline
131 ERR_ALLMUSTSSL = 490, // unrealircd
132 ERR_NOCTCPALLOWED = 492, // XXX: bzzzz. 1459 defines this as ERR_NOSERVICEHOST, research it more and perhaps change this! (ERR_CANNOTSENDTOCHAN?)
133 // wtf, we also use this for m_noinvite. UGLY!
134 ERR_DELAYREJOIN = 495, // insp-specific, XXX: we should use 'resource temporarily unavailable' from ircnet/ratbox or whatever
135 ERR_UNKNOWNSNOMASK = 501, // insp-specific
136 ERR_USERSDONTMATCH = 502,
137 ERR_CANTJOINOPERSONLY = 520, // unrealircd, but crap to have so many numerics for cant join..
138 ERR_CANTSENDTOUSER = 531, // ???
140 RPL_COMMANDS = 702, // insp-specific
141 RPL_COMMANDSEND = 703, // insp-specific
143 ERR_WORDFILTERED = 936, // insp-specific, would be nice if we could get rid of this..
144 ERR_CANTUNLOADMODULE = 972, // insp-specific
145 RPL_UNLOADEDMODULE = 973, // insp-specific
146 ERR_CANTLOADMODULE = 974, // insp-specific
147 RPL_LOADEDMODULE = 975 // insp-specific