Author: Michael Poole <mdpoole@troilus.org>
[ircu2.10.12-pk.git] / include / numeric.h
index b03dcb257a7c32105815f8202aa30f4e9a187ae9..bb186016d5da08d11439b0c7cd6c18d6ea51a8d7 100644 (file)
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- *
- * $Id$
+ */
+/** @file
+ * @brief Declarations of numeric replies and supporting functions.
+ * @version $Id$
  */
 #ifndef INCLUDED_numeric_h
 #define INCLUDED_numeric_h
 
+/** Numeric reply information. */
 typedef struct Numeric {
-  int         value;
-  const char* format;
-  const char* str;
+  int         value;  /**< Numeric response. */
+  const char* format; /**< Format string to follow :My.Server NNN Dest */
+  const char* str;    /**< Text form for numeric. */
 } Numeric;
 
 /*
  * Prototypes
  */
-extern char* err_str(int numeric);
 extern char* rpl_str(int numeric);
 extern const struct Numeric* get_error_numeric(int err);
 
@@ -52,17 +54,18 @@ extern const struct Numeric* get_error_numeric(int err);
 #define RPL_CREATED            3
 #define RPL_MYINFO             4
 #define RPL_ISUPPORT           5        /* Undernet/Dalnet extension */
-     /* RPL_BOUNCE                         IRCnet extension */
 /*     RPL_MAP                6        unreal */
 /*     RPL_MAPEND             7        unreal */
 #define RPL_SNOMASK            8        /* Undernet extension */
-#define RPL_STATMEMTOT         9        /* Undernet extension */
-#define RPL_STATMEM           10        /* Undernet extension */
-                                       /* Hybrid: server redirect */
+/*       RPL_BOUNCE           10        efnet, IRCnet extension
+                                        (server redirect) */
 /*      RPL_YOURCOOKIE        14           IRCnet extension */
 #define RPL_MAP               15        /* Undernet extension */
 #define RPL_MAPMORE           16        /* Undernet extension */
 #define RPL_MAPEND            17        /* Undernet extension */
+#define RPL_APASSWARN_SET     30       /* Undernet extension */
+#define RPL_APASSWARN_SECRET  31       /* Undernet extension */
+#define RPL_APASSWARN_CLEAR   32       /* Undernet extension */
 /*     RPL_YOURID            42        IRCnet extension */
 /*      RPL_ATTEMPTINGJUNC    50           aircd extension */
 /*      RPL_ATTEMPTINGREROUTE 51           aircd extension */
@@ -83,7 +86,7 @@ extern const struct Numeric* get_error_numeric(int err);
 #define RPL_TRACECLASS       209
 /*      RPL_STATS            210 aircd extension, used instead of having
                                  multiple stats numerics */
-/*      RPL_TRACERECONNECT   210 IRCnet extension */                                 
+/*      RPL_TRACERECONNECT   210 IRCnet extension */
 #define RPL_STATSLINKINFO    211
 #define RPL_STATSCOMMANDS    212
 #define RPL_STATSCLINE       213
@@ -91,7 +94,7 @@ extern const struct Numeric* get_error_numeric(int err);
 #define RPL_STATSNLINE       214 /* unused */
 #define RPL_STATSILINE       215
 #define RPL_STATSKLINE       216
-#define RPL_STATSPLINE       217        /* Undernet extenstion */
+#define RPL_STATSPLINE       217        /* Undernet extension */
 /*      RPL_STATSQLINE       217           Various */
 #define RPL_STATSYLINE       218
 #define RPL_ENDOFSTATS       219        /* See also RPL_STATSDLINE */
@@ -100,6 +103,7 @@ extern const struct Numeric* get_error_numeric(int err);
 /*      RPL_STATSBLINE       220          Numerics List: Dalnet,unreal */
 #define RPL_UMODEIS          221
 /*     RPL_SQLINE_NICK      222           Numerics List: Dalnet */
+#define RPL_STATSJLINE       222       /* Undernet extension */
 /*     RPL_STATSELINE       223           dalnet */
 /*     RPL_STATSGLINE       223           unreal */
 /*      RPL_STATSFLINE       224           Hybrid extension,Dalnet */
@@ -111,20 +115,23 @@ extern const struct Numeric* get_error_numeric(int err);
        RPL_STATSNLINE       226           unreal
        RPL_STATSGLINE       227           Dalnet 
        RPL_STATSVLINE       227           unreal */
+#define RPL_STATSALINE       226        /* Hybrid, Undernet */
+#define RPL_STATSQLINE       228        /* Undernet extension */
 
-#define RPL_SERVICEINFO      231       /* unused */
-#define RPL_ENDOFSERVICES    232       /* unused */
+/*      RPL_SERVICEINFO      231       unused */
+/*      RPL_ENDOFSERVICES    232       unused */
 /*     RPL_RULES            232        unreal */
-#define RPL_SERVICE          233       /* unused */
-#define RPL_SERVLIST         234       /* unused */
-#define RPL_SERVLISTEND      235       /* unused */
+/*      RPL_SERVICE          233       unused */
+/*      RPL_SERVLIST         234       unused */
+/*      RPL_SERVLISTEND      235       unused */
 
+#define RPL_STATSVERBOSE     236        /* Undernet verbose server list */
 #define RPL_STATSENGINE      237       /* Undernet engine name */
 #define RPL_STATSFLINE       238       /* Undernet feature lines */
 /*      RPL_STATSIAUTH       239           IRCnet extension */
 /*      RPL_STATSVLINE       240           IRCnet extension */
 /*     RPL_STATSXLINE       240        austnet */
-#define RPL_STATSLLINE       241       
+#define RPL_STATSLLINE       241       /* Undernet dynamicly loaded modules */
 #define RPL_STATSUPTIME      242
 #define RPL_STATSOLINE       243
 #define RPL_STATSHLINE       244
@@ -151,9 +158,8 @@ extern const struct Numeric* get_error_numeric(int err);
 #define RPL_ADMINLOC2        258
 #define RPL_ADMINEMAIL       259
 
-#define RPL_TRACELOG         261       /* unused */
-#define RPL_TRACEPING        262        /* Extension to RFC1459, unused */
-/*     RPL_TRACEEND         262           efnet(?) Numerics List: IRCnet */
+/*      RPL_TRACELOG         261          unused */
+#define RPL_TRACEEND        262        /* efnet/IRCnet */
 /*      RPL_LOAD_THROTTLED   263           efnet/hybrid */
 /*     RPL_TRYAGAIN         263           Numerics List: IRCnet */
 /*     RPL_LOAD2HI          263           Dalnet */
@@ -169,6 +175,7 @@ extern const struct Numeric* get_error_numeric(int err);
 /*      RPL_END_NOTIFY       274           aircd */
 /*      RPL_STATSDELTA       274           IRCnet extension */
 #define RPL_STATSDLINE       275        /* Undernet extension */
+#define RPL_STATSRLINE       276        /* Undernet extension */
 
 #define RPL_GLIST            280        /* Undernet extension */
 #define RPL_ENDOFGLIST       281        /* Undernet extension */
@@ -196,14 +203,13 @@ extern const struct Numeric* get_error_numeric(int err);
 
 /*      RPL_END_CHANINFO     299           aircd */
 
-#define RPL_NONE             300       /* unused */
+/*      RPL_NONE             300       unused */
 #define RPL_AWAY             301
 #define RPL_USERHOST         302
 #define RPL_ISON             303
-#define RPL_TEXT             304       /* unused */
+/*      RPL_TEXT             304       unused */
 #define RPL_UNAWAY           305
 #define RPL_NOWAWAY          306
-#define RPL_USERIP           307        /* Undernet extension */
                                         /* NotAway, aircd */
 /*     RPL_WHOISREGNICK     307        Numeric List: Dalnet */
 /*     RPL_SUSERHOST        307        austnet */
@@ -240,6 +246,7 @@ extern const struct Numeric* get_error_numeric(int err);
 /*      RPL_CHANNEL_URL      328           dalnet, anothernet */
 #define RPL_CREATIONTIME     329
 /*      RPL_WHOWAS_TIME      330               ? */
+#define RPL_WHOISACCOUNT     330
 #define RPL_NOTOPIC          331
 #define RPL_TOPIC            332
 #define RPL_TOPICWHOTIME     333        /* Undernet extension */
@@ -247,12 +254,13 @@ extern const struct Numeric* get_error_numeric(int err);
 /*     RPL_COMMANDSYNTAX    334           Dalnet */
 /*     RPL_LISTSYNTAX       334           unreal */
 /*      RPL_CHANPASSOK       338           IRCnet extension (?)*/
-/*     RPL_WHOISACTUALLY    338           dalnet */
-/*      RPL_BADCHANPASS      339           IRCnet extension (?)*/
-
+#define        RPL_WHOISACTUALLY    338        /* Undernet extension, dalnet */
+/*     RPL_BADCHANPASS      339           IRCnet extension (?) */
+#define RPL_USERIP           340        /* Undernet extension */
 #define RPL_INVITING         341
 /*      RPL_SUMMONING        342           removed from RFC1459 */
 
+#define RPL_ISSUEDINVITE     345        /* Undernet extension */
 #define RPL_INVITELIST       346        /* IRCnet, Undernet extension */
 #define RPL_ENDOFINVITELIST  347        /* IRCnet, Undernet extension */
 /*      RPL_EXCEPTLIST       348           IRCnet extension */
@@ -263,8 +271,9 @@ extern const struct Numeric* get_error_numeric(int err);
 #define RPL_NAMREPLY         353        /* See also RPL_ENDOFNAMES */
 #define RPL_WHOSPCRPL        354        /* Undernet extension,
                                            See also RPL_ENDOFWHO */
+#define RPL_DELNAMREPLY      355        /* QuakeNet extension */
 
-#define RPL_KILLDONE         361       /* not used */
+/*      RPL_KILLDONE         361       not used */
 #define RPL_CLOSING          362
 #define RPL_CLOSEEND         363
 #define RPL_LINKS            364
@@ -276,7 +285,7 @@ extern const struct Numeric* get_error_numeric(int err);
 
 #define RPL_INFO             371
 #define RPL_MOTD             372
-#define RPL_INFOSTART        373       /* not used */
+/*      RPL_INFOSTART        373       not used */
 #define RPL_ENDOFINFO        374
 #define RPL_MOTDSTART        375
 #define RPL_ENDOFMOTD        376
@@ -290,24 +299,25 @@ extern const struct Numeric* get_error_numeric(int err);
 #define RPL_YOUREOPER        381
 #define RPL_REHASHING        382
 /*     RPL_YOURSERVICE      383           Numeric List: various */
-#define RPL_MYPORTIS         384       /* not used */
-#define RPL_NOTOPERANYMORE   385        /* Extension to RFC1459, not used */
+/*      RPL_MYPORTIS         384       not used */
+/*      RPL_NOTOPERANYMORE   385        Extension to RFC1459, not used */
 /*     RPL_QLIST            386        unreal */
 /*     RPL_ENDOFQLIST       387        unreal */
 /*     RPL_ALIST            388        unreal */
-/*     RPL_ENDOFALIST       389        unreal */ 
+/*     RPL_ENDOFALIST       389        unreal */
+
 #define RPL_TIME             391
 /*      RPL_START_USERS      392        Dalnet/EFnet/IRCnet */
 /*      RPL_USERS            393        Dalnet/EFnet/IRCnet */
 /*      RPL_END_USERS        394        Dalnet/EFnet/IRCnet */
 /*      RPL_NOUSERS          395        Dalnet/EFnet/IRCnet */
+#define RPL_HOSTHIDDEN       396       /* UMODE +x completed succesfuly */
 
 /*
  * Errors are in the range from 400-599 currently and are grouped by what
  * commands they come from.
  */
-#define ERR_FIRSTERROR       400       /* unused */
+/*      ERR_FIRSTERROR       400       unused */
 #define ERR_NOSUCHNICK       401
 #define ERR_NOSUCHSERVER     402
 #define ERR_NOSUCHCHANNEL    403
@@ -318,7 +328,7 @@ extern const struct Numeric* get_error_numeric(int err);
 /*      ERR_NOSUCHSERVICE    408  IRCnet */
 /*     ERR_NOCOLORSONCHAN   408  Dalnet */
 #define ERR_NOORIGIN         409
-
+#define ERR_UNKNOWNCAPCMD    410
 #define ERR_NORECIPIENT      411
 #define ERR_NOTEXTTOSEND     412
 #define ERR_NOTOPLEVEL       413
@@ -326,6 +336,7 @@ extern const struct Numeric* get_error_numeric(int err);
      /* ERR_BADMASK          415           IRCnet extension */
 #define ERR_QUERYTOOLONG     416        /* Undernet extension */
      /* ERR_TOOMANYMATCHES   416           IRCnet extension */
+#define ERR_INPUTTOOLONG     417
 /*      ERR_LENGTHTRUNCATED  419           aircd */
 
 #define ERR_UNKNOWNCOMMAND   421
@@ -347,7 +358,7 @@ extern const struct Numeric* get_error_numeric(int err);
 #define ERR_NICKTOOFAST      438        /* Undernet extension */
      /* ERR_DEAD             438           IRCnet reserved for later use */
 #define ERR_TARGETTOOFAST    439        /* Undernet extension */
-/*     ERR_SERVICESDOWN     440        Dalnet,unreal */
+#define ERR_SERVICESDOWN     440       /* Dalnet,unreal,Undernet */
 #define ERR_USERNOTINCHANNEL 441
 #define ERR_NOTONCHANNEL     442
 #define ERR_USERONCHANNEL    443
@@ -383,7 +394,7 @@ extern const struct Numeric* get_error_numeric(int err);
 #define ERR_BANNEDFROMCHAN   474
 #define ERR_BADCHANNELKEY    475
 #define ERR_BADCHANMASK      476        /* Undernet extension */
-/*      ERR_NEEDREGGEDNICK   477           DalNet Extention */
+#define ERR_NEEDREGGEDNICK   477        /* DalNet&Undernet Extention */
 #define ERR_BANLISTFULL      478        /* Undernet extension */
 /*     ERR_LINKFAIL         479        unreal */
 
@@ -439,11 +450,23 @@ extern const struct Numeric* get_error_numeric(int err);
 #define ERR_TOOMANYUSERS     519       /* Undernet extension -Kev */
 /*     ERR_OPERONLY         520        unreal */
 #define ERR_MASKTOOWIDE             520        /* Undernet extension -Kev */
-/*     ERR_WHOTRUNC         520        austnet */
-#define ERR_LASTERROR        521
-/*     ERR_LISTSYNTAX       521        dalnet
+/*      ERR_WHOTRUNC         520        austnet */
+/*      ERR_LISTSYNTAX       521        dalnet
+       ERR_LISTSYNTAX       521        dalnet
        ERR_WHOSYNTAX        522        dalnet
        ERR_WHOLIMEXCEED     523        dalnet */
+#define ERR_QUARANTINED      524       /* Undernet extension -Vampire */
+#define ERR_INVALIDKEY       525        /* Undernet extension */
+
+#define ERR_NOTLOWEROPLEVEL  560       /* Undernet extension */
+#define ERR_NOTMANAGER       561       /* Undernet extension */
+#define ERR_CHANSECURED      562       /* Undernet extension */
+#define ERR_UPASSSET         563       /* Undernet extension */
+#define ERR_UPASSNOTSET      564       /* Undernet extension */
+/*      ERR_NOMANAGER_LONG   565       no longer used */
+#define ERR_NOMANAGER        566       /* Undernet extension */
+#define ERR_UPASS_SAME_APASS 567        /* Undernet extension */
+#define ERR_LASTERROR        568
 
 /*     RPL_LOGON            600        dalnet,unreal
        RPL_LOGOFF           601        dalnet,unreal
@@ -457,12 +480,12 @@ extern const struct Numeric* get_error_numeric(int err);
        RPL_MAPMORE          610        unreal
 
        RPL_MAPMORE          615        PTlink
-       
+
        RPL_DCCSTATUS        617        dalnet
        RPL_DCCLIST          618        dalnet
        RPL_ENDOFDCCLIST     619        dalnet
        RPL_DCCINFO          620        dalnet
-       
+
        RPL_DUMPING          640        unreal
        RPL_DUMPRPL          641        unreal
        RPL_EODUMP           642        unreal