#include "config.h"
#include "numeric.h"
+#include "ircd_log.h"
#include "s_debug.h"
-#include <assert.h>
+/* #include <assert.h> -- Now using assert in ircd_log.h */
#include <string.h>
/** Array of Numeric replies, indexed by numeric. */
/* 007 */
{ 0 },
/* 008 */
- { RPL_SNOMASK, "%d :: Server notice mask (%#x)", "008" },
+ { RPL_SNOMASK, "%u :: Server notice mask (%#x)", "008" },
/* 009 */
{ 0 },
/* 010 */
/* 014 */
{ 0 },
/* 015 */
- { RPL_MAP, ":%s%s%s %s [%i clients]", "015" },
+ { RPL_MAP, ":%s%s%s %s [%u clients]", "015" },
/* 016 */
{ RPL_MAPMORE, ":%s%s --> *more*", "016" },
/* 017 */
/* 029 */
{ 0 },
/* 030 */
- { RPL_APASSWARN, ":%s%s%s%s%s", "030" },
+ { RPL_APASSWARN_SET, ":Channel Admin password (+A) set to '%s'. Are you SURE you want to use this as Admin password? You will NOT be able to change this password anymore once the channel is more than 48 hours old!", "030" },
/* 031 */
- { 0 },
+ { RPL_APASSWARN_SECRET, ":Use \"/MODE %s -A %s\" to remove the password and then immediately set a new one. IMPORTANT: YOU CANNOT RECOVER THIS PASSWORD, EVER; WRITE THE PASSWORD DOWN (don't store this rescue password on disk)! Now set the channel user password (+U).", "031" },
/* 032 */
- { 0 },
+ { RPL_APASSWARN_CLEAR, ":WARNING: You removed the channel Admin password (+A). If you disconnect or leave the channel without setting a new password then you will not be able to set it again! SET A NEW PASSWORD NOW!", "032" },
/* 033 */
{ 0 },
/* 034 */
/* 208 */
{ RPL_TRACENEWTYPE, "<newtype> 0 %s", "208" },
/* 209 */
- { RPL_TRACECLASS, "Class %s %d", "209" },
+ { RPL_TRACECLASS, "Class %s %u", "209" },
/* 210 */
{ 0 },
/* 211 */
/* 212 */
{ RPL_STATSCOMMANDS, "%s %u %u", "212" },
/* 213 */
- { RPL_STATSCLINE, "C %s %s %d %d %s %s", "213" },
+ { RPL_STATSCLINE, "C %s * %d %d %s %s", "213" },
/* 214 */
{ 0 },
/* 215 */
- { RPL_STATSILINE, "I %s %d %s %d %s", "215" },
+ { RPL_STATSILINE, "I %s%s%s %d %s%s %d %s", "215" },
/* 216 */
- { RPL_STATSKLINE, "%c %s \"%s\" %s 0 0", "216" },
+ { RPL_STATSKLINE, "%c %s@%s \"%s\" \"%s\" 0 0", "216" },
/* 217 */
{ RPL_STATSPLINE, "P %d %d %s %s", "217" },
/* 218 */
- { RPL_STATSYLINE, "%c %s %d %d %d %ld %d", "218" },
+ { RPL_STATSYLINE, "%c %s %d %d %u %u %u", "218" },
/* 219 */
{ RPL_ENDOFSTATS, "%s :End of /STATS report", "219" },
/* 220 */
/* 221 */
{ RPL_UMODEIS, "%s", "221" },
/* 222 */
- { 0 },
+ { RPL_STATSJLINE, "J %s", "222" },
/* 223 */
{ 0 },
/* 224 */
/* 230 */
{ 0 },
/* 231 */
- { RPL_SERVICEINFO, 0, "231" },
+ { 0 },
/* 232 */
- { RPL_ENDOFSERVICES, 0, "232" },
+ { 0 },
/* 233 */
- { RPL_SERVICE, 0, "233" },
+ { 0 },
/* 234 */
- { RPL_SERVLIST, 0, "234" },
+ { 0 },
/* 235 */
- { RPL_SERVLISTEND, 0, "235" },
+ { 0 },
/* 236 */
{ RPL_STATSVERBOSE, "V :Sent as explicit", "236" },
/* 237 */
{ RPL_STATSENGINE, "%s :Event loop engine", "237" },
/* 238 */
- { RPL_STATSFLINE, "%c %s %s", "238" },
+ { RPL_STATSFLINE, "F %s %s", "238" },
/* 239 */
{ 0 },
/* 240 */
/* 242 */
{ RPL_STATSUPTIME, ":Server Up %d days, %d:%02d:%02d", "242" },
/* 243 */
- { RPL_STATSOLINE, "O %s * %s %d %d", "243" },
+ { RPL_STATSOLINE, "%c %s@%s * %s %s", "243" },
/* 244 */
{ 0 },
/* 245 */
/* 246 */
{ RPL_STATSTLINE, "%c %s %s", "246" },
/* 247 */
- { RPL_STATSGLINE, "%c %s%s%s %Tu :%s", "247" },
+ { RPL_STATSGLINE, "%c %s%s%s %Tu %Tu %Tu %s%c :%s", "247" },
/* 248 */
{ RPL_STATSULINE, "U %s", "248" },
/* 249 */
{ RPL_STATSDEBUG, 0, "249" },
/* 250 */
- { RPL_STATSCONN, ":Highest connection count: %d (%d clients)", "250" },
+ { RPL_STATSCONN, ":Highest connection count: %u (%u clients)", "250" },
/* 251 */
- { RPL_LUSERCLIENT, ":There are %d users and %d invisible on %d servers", "251" },
+ { RPL_LUSERCLIENT, ":There are %u users and %u invisible on %u servers", "251" },
/* 252 */
- { RPL_LUSEROP, "%d :operator(s) online", "252" },
+ { RPL_LUSEROP, "%u :operator(s) online", "252" },
/* 253 */
- { RPL_LUSERUNKNOWN, "%d :unknown connection(s)", "253" },
+ { RPL_LUSERUNKNOWN, "%u :unknown connection(s)", "253" },
/* 254 */
- { RPL_LUSERCHANNELS, "%d :channels formed", "254" },
+ { RPL_LUSERCHANNELS, "%u :channels formed", "254" },
/* 255 */
- { RPL_LUSERME, ":I have %d clients and %d servers", "255" },
+ { RPL_LUSERME, ":I have %u clients and %u servers", "255" },
/* 256 */
{ RPL_ADMINME, ":Administrative info about %s", "256" },
/* 257 */
/* 260 */
{ 0 },
/* 261 */
- { RPL_TRACELOG, "File %s %d", "261" },
+ { 0 },
/* 262 */
{ RPL_TRACEEND, ":End of TRACE", "262" },
/* 263 */
/* 270 */
{ RPL_PRIVS, "%s :", "270" },
/* 271 */
- { RPL_SILELIST, "%s %s", "271" },
+ { RPL_SILELIST, "%s %s%s", "271" },
/* 272 */
{ RPL_ENDOFSILELIST, "%s :End of Silence List", "272" },
/* 273 */
/* 279 */
{ 0 },
/* 280 */
- { RPL_GLIST, "%s%s%s %Tu %s %c :%s", "280" },
+ { RPL_GLIST, "%s%s%s %Tu %Tu %Tu %s %s%c :%s", "280" },
/* 281 */
{ RPL_ENDOFGLIST, ":End of G-line List", "281" },
/* 282 */
/* 299 */
{ 0 },
/* 300 */
- { RPL_NONE, 0, "300" },
+ { 0 },
/* 301 */
{ RPL_AWAY, "%s :%s", "301" },
/* 302 */
/* 303 */
{ RPL_ISON, ":", "303" },
/* 304 */
- { RPL_TEXT, 0, "304" },
+ { 0 },
/* 305 */
{ RPL_UNAWAY, ":You are no longer marked as being away", "305" },
/* 306 */
/* 321 */
{ RPL_LISTSTART, "Channel :Users Name", "321" },
/* 322 */
- { RPL_LIST, "%s %d :%s", "322" },
+ { RPL_LIST, "%s %u :%s", "322" },
/* 323 */
{ RPL_LISTEND, ":End of /LIST", "323" },
/* 324 */
/* 360 */
{ 0 },
/* 361 */
- { RPL_KILLDONE, 0, "361" }, /* Not used */
+ { 0 },
/* 362 */
{ RPL_CLOSING, "%s :Operator enforced Close", "362" },
/* 363 */
{ RPL_CLOSEEND, "%d :Connections Closed", "363" },
/* 364 */
- { RPL_LINKS, "%s %s :%d P%u %s", "364" },
+ { RPL_LINKS, "%s %s :%u P%u %s", "364" },
/* 365 */
{ RPL_ENDOFLINKS, "%s :End of /LINKS list.", "365" },
/* 366 */
/* 372 */
{ RPL_MOTD, ":- %s", "372" },
/* 373 */
- { RPL_INFOSTART, ":Server INFO", "373" },
+ { 0 },
/* 374 */
{ RPL_ENDOFINFO, ":End of /INFO list.", "374" },
/* 375 */
/* 383 */
{ 0 },
/* 384 */
- { RPL_MYPORTIS, "%d :Port to local server is", "384" }, /* not used */
+ { 0 },
/* 385 */
- { RPL_NOTOPERANYMORE, 0, "385" }, /* not used */
+ { 0 },
/* 386 */
{ 0 },
/* 387 */
/* 399 */
{ 0 },
/* 400 */
- { ERR_FIRSTERROR, "", "400" },
+ { 0 },
/* 401 */
{ ERR_NOSUCHNICK, "%s :No such nick", "401" },
/* 402 */
/* 409 */
{ ERR_NOORIGIN, ":No origin specified", "409" },
/* 410 */
- { 0 },
+ { ERR_UNKNOWNCAPCMD, "%s :Unknown CAP subcommand", "410" },
/* 411 */
{ ERR_NORECIPIENT, ":No recipient given (%s)", "411" },
/* 412 */
/* 416 */
{ ERR_QUERYTOOLONG, "%s :Too many lines in the output, restrict your query", "416" },
/* 417 */
- { 0 },
+ { ERR_INPUTTOOLONG, ":Input line was too long", "417" },
/* 418 */
{ 0 },
/* 419 */
/* 476 */
{ ERR_BADCHANMASK, "%s :Bad Channel Mask", "476" },
/* 477 */
- { ERR_NEEDREGGEDNICK, "%s :Cannot join channel (+r)", "477" },
+ { ERR_NEEDREGGEDNICK, "%s :Cannot join channel (+r): this channel requires authentication -- you can obtain an account from %s", "477" },
/* 478 */
{ ERR_BANLISTFULL, "%s %s :Channel ban/ignore list is full", "478" },
/* 479 */
/* 490 */
{ 0 },
/* 491 */
- { ERR_NOOPERHOST, ":No O-lines for your host", "491" },
+ { ERR_NOOPERHOST, ":No Operator block for your host", "491" },
/* 492 */
{ 0 },
/* 493 */
/* 515 */
{ ERR_BADEXPIRE, "%Tu :Bad expire time", "515" },
/* 516 */
- { ERR_DONTCHEAT, " :Don't Cheat.", "516" },
+ { ERR_DONTCHEAT, "%s :Don't Cheat.", "516" },
/* 517 */
{ ERR_DISABLED, "%s :Command disabled.", "517" },
/* 518 */
/* 524 */
{ ERR_QUARANTINED, "%s :Channel is quarantined : %s", "524" },
/* 525 */
- { 0 },
+ { ERR_INVALIDKEY, "%s :Key is not well-formed", "525" },
/* 526 */
{ 0 },
/* 527 */
/* 549 */
{ 0 },
/* 550 */
- { ERR_NOTLOWEROPLEVEL, "%s %s %hu %hu :Cannot %s someone with %s op-level", "550" },
+ { 0 },
/* 551 */
- { ERR_NOTMANAGER, "%s :You must be channel Admin to add or remove a password. %s %s %s", "551" },
+ { 0 },
/* 552 */
- { ERR_CHANSECURED, "%s :Channel is older than 48 hours and secured. Cannot change Admin pass anymore", "552" },
+ { 0 },
/* 553 */
- { ERR_UPASSSET, "%s :Cannot remove Admin pass (+A) while User pass (+U) is still set. First use /MODE %s -U <userpass>", "553" },
+ { 0 },
/* 554 */
- { ERR_UPASSNOTSET, "%s :Cannot set user pass (+U) until Admin pass (+A) is set. First use /MODE %s +A <adminpass>", "554" },
+ { 0 },
/* 555 */
{ 0 },
/* 556 */
/* 559 */
{ 0 },
/* 560 */
- { 0 },
+ { ERR_NOTLOWEROPLEVEL, "%s %s %hu %hu :Cannot %s someone with %s op-level", "560" },
/* 561 */
- { 0 },
+ { ERR_NOTMANAGER, "%s :You must be channel Admin to add or remove a password. Use /JOIN %s <AdminPass>.", "561" },
/* 562 */
- { 0 },
+ { ERR_CHANSECURED, "%s :Channel is older than 48 hours and secured. Cannot change Admin pass anymore", "562" },
/* 563 */
- { 0 },
+ { ERR_UPASSSET, "%s :Cannot remove Admin pass (+A) while User pass (+U) is still set. First use /MODE %s -U <userpass>", "563" },
/* 564 */
- { 0 },
+ { ERR_UPASSNOTSET, "%s :Cannot set user pass (+U) until Admin pass (+A) is set. First use /MODE %s +A <adminpass>", "564" },
/* 565 */
{ 0 },
/* 566 */
- { 0 },
+ { ERR_NOMANAGER, "%s :Re-create the channel. The channel must be completely empty for a period of %s before it can be recreated.", "566" },
/* 567 */
- { 0 },
+ { ERR_UPASS_SAME_APASS, "%s :Cannot use the same pass for both admin (+A) and user (+U) pass.", "567" },
/* 568 */
{ 0 },
/* 569 */