changed hidden to delayedjoin,
changed no modes <none> to just + same as /MODE shows
added zombie and delayedjoin prefix to header for check channel
+changed all (timestamp) output to [timestamp] seems more consistent with other places (e.g. snomask HACK MODEs)
+added [<remote server>] param to syntax of command in the comments
-diff -r 6242a5095d6d ircd/m_check.c
---- a/ircd/m_check.c Tue Mar 23 12:55:51 2010 +0100
-+++ b/ircd/m_check.c Tue Mar 23 13:15:51 2010 +0100
+diff -r 8ebea3ccdca2 ircd/m_check.c
+--- a/ircd/m_check.c Sat Jul 20 11:29:55 2013 +0100
++++ b/ircd/m_check.c Sat Jul 20 11:48:52 2013 +0100
+@@ -71,7 +71,7 @@
+ */
+
+ /*
+- * Syntax: CHECK <channel|nick|server|hostmask> [-flags]
++ * Syntax: CHECK [<remote server>] <channel|nick|server|hostmask> [-flags]
+ *
+ * Where valid flags are:
+ * -c: Show channels when checking a hostmask.
@@ -238,7 +238,7 @@
char *zombie, *showlevel;
for (ban = chptr->banlist; ban; ban = ban->next) {
- ircd_snprintf(0, outbuf, sizeof(outbuf), "[%d] - %s - Set by %s, on %s (%Tu)",
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR,
-+ ":[%d] - %s - Set by %s, on %s (%Tu)",
++ ":[%d] - %s - Set by %s, on %s [%Tu]",
++bans, ban->banstr, ban->who, myctime(ban->when), ban->when);
- send_reply(sptr, RPL_DATASTR, outbuf);
}
/* Header */
- send_reply(sptr, RPL_DATASTR, " ");
-- send_reply(sptr, RPL_CHKHEAD, "channel", chptr->chname);
-- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
-+ send_reply(sptr, RPL_CHKHEAD, ":channel", chptr->chname);
+ send_reply(sptr, RPL_CHKHEAD, "channel", chptr->chname);
+- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
/* Creation Time */
- ircd_snprintf(sptr, outbuf, sizeof(outbuf), " Creation time:: %s (%Tu)", myctime(chptr->creationtime), chptr->creationtime);
- send_reply(sptr, RPL_DATASTR, outbuf);
-+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Creation time:: %s (%Tu)",
++ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Creation time:: %s [%Tu]",
+ myctime(chptr->creationtime), chptr->creationtime);
/* Topic */
- ircd_snprintf(sptr, outbuf, sizeof(outbuf), " Set at:: %s (%Tu)", myctime(chptr->topic_time), chptr->topic_time);
- send_reply(sptr, RPL_DATASTR, outbuf);
-+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Set at:: %s (%Tu)", myctime(chptr->topic_time), chptr->topic_time);
++ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Set at:: %s [%Tu]", myctime(chptr->topic_time), chptr->topic_time);
}
/* Channel Modes */
/* Header */
- send_reply(sptr, RPL_DATASTR, " ");
-- send_reply(sptr, RPL_CHKHEAD, "user", cli_name(acptr));
-- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
-+ send_reply(sptr, RPL_CHKHEAD, ":user", cli_name(acptr));
+ send_reply(sptr, RPL_CHKHEAD, "user", cli_name(acptr));
+- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Nick:: %s (%s%s)", cli_name(acptr), NumNick(acptr));
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Signed on:: %s (%Tu)", myctime(acptr->cli_firsttime), acptr->cli_firsttime);
- send_reply(sptr, RPL_DATASTR, outbuf);
- }
-+ if (MyUser(acptr))
-+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Signed on:: %s (%Tu)", myctime(acptr->cli_firsttime), acptr->cli_firsttime);
++ if (MyUser(acptr))
++ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Signed on:: %s [%Tu]", myctime(acptr->cli_firsttime), acptr->cli_firsttime);
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Timestamp:: %s (%d)", myctime(acptr->cli_lastnick), acptr->cli_lastnick);
- send_reply(sptr, RPL_DATASTR, outbuf);
-+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Timestamp:: %s (%d)", myctime(acptr->cli_lastnick), acptr->cli_lastnick);
++ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Timestamp:: %s [%d]", myctime(acptr->cli_lastnick), acptr->cli_lastnick);
- ircd_snprintf(0, outbuf, sizeof(outbuf), " User/Hostmask:: %s@%s [%s] (Clients: %hu)", cli_user(acptr)->username, cli_user(acptr)->host,
- ircd_ntoa(&(cli_ip(acptr))), IPcheck_nr(acptr));
else if (IsAnOper(acptr))
- send_reply(sptr, RPL_DATASTR, " Status:: IRC Operator (service) (ID: %s)", cli_user(acptr)->opername ? cli_user(acptr)->opername : "<unknown>");
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Status:: IRC Operator (service) (ID: %s)", cli_user(acptr)->opername ? cli_user(acptr)->opername : "<unknown>");
- else
+ else
- send_reply(sptr, RPL_DATASTR, " Status:: Client (service)");
- } else if (IsAnOper(acptr)) {
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Status:: IRC Operator (ID: %s)", cli_user(acptr)->opername ? cli_user(acptr)->opername : "<unknown>");
if (MyUser(acptr)) {
os_get_peername(con_fd(cli_connect(sptr)), &sin);
- send_reply(sptr, RPL_DATASTR, " ");
+- send_reply(sptr, RPL_DATASTR, " ");
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Ports:: %d -> %d (client -> server)",
- sin.port, cli_listener(acptr)->addr.port);
- send_reply(sptr, RPL_DATASTR, outbuf);
++ send_reply(sptr, RPL_DATASTR, ": ");
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Ports:: %d -> %d (client -> server)",
+ sin.port, cli_listener(acptr)->addr.port);
if (feature_bool(FEAT_EXTENDED_CHECKCMD)) {
/* Note: sendq = receiveq for a client (it makes sense really) */
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Data sent:: %lu.%0.3u Kb (%u protocol messages)",
- (unsigned long)cli_receiveB(acptr) / 1024, (unsigned long)cli_receiveB(acptr) % 1024, cli_receiveM(acptr));
-- send_reply(sptr, RPL_DATASTR, outbuf);
+- send_reply(sptr, RPL_DATASTR, outbuf);
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Data received:: %lu.%0.3lu Kb (%u protocol messages)",
- (unsigned long)cli_sendB(acptr) / 1024, (unsigned long)cli_sendB(acptr) % 1024, cli_sendM(acptr));
- send_reply(sptr, RPL_DATASTR, outbuf);
- DBufLength(&(cli_recvQ(acptr))), feature_int(FEAT_CLIENT_FLOOD));
- send_reply(sptr, RPL_DATASTR, outbuf);
- ircd_snprintf(0, outbuf, sizeof(outbuf), " sendQ size:: %d bytes (max. %d bytes)",
-- DBufLength(&(cli_sendQ(acptr))), get_sendq(acptr));
-- send_reply(sptr, RPL_DATASTR, outbuf);
+- DBufLength(&(cli_sendQ(acptr))), get_sendq(acptr));
+- send_reply(sptr, RPL_DATASTR, outbuf);
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Data sent:: %lu.%0.3u Kb (%u protocol messages)",
+ (unsigned long)cli_receiveB(acptr) / 1024, (unsigned long)cli_receiveB(acptr) % 1024, cli_receiveM(acptr));
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Data received:: %lu.%0.3lu Kb (%u protocol messages)",
/* Header */
- send_reply(sptr, RPL_DATASTR, " ");
-- send_reply(sptr, RPL_CHKHEAD, "server", acptr->cli_name);
-- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
-+ send_reply(sptr, RPL_CHKHEAD, ":server", acptr->cli_name);
+ send_reply(sptr, RPL_CHKHEAD, "server", acptr->cli_name);
+- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Connected at:: %s (%Tu)", myctime(acptr->cli_serv->timestamp), acptr->cli_serv->timestamp);
- send_reply(sptr, RPL_DATASTR, outbuf);
-+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Connected at:: %s (%Tu)",
++ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ": Connected at:: %s [%Tu]",
+ myctime(acptr->cli_serv->timestamp), acptr->cli_serv->timestamp);
- ircd_snprintf(0, outbuf, sizeof(outbuf), " Server name:: %s", acptr->cli_name);
if (count == 0) {
/* Output header */
- send_reply(sptr, RPL_DATASTR, " ");
-- send_reply(sptr, RPL_CHKHEAD, "host", targhost);
+ send_reply(sptr, RPL_DATASTR, ": ");
-+ send_reply(sptr, RPL_CHKHEAD, ":host", targhost);
+ send_reply(sptr, RPL_CHKHEAD, "host", targhost);
- send_reply(sptr, RPL_DATASTR, " ");
+ send_reply(sptr, RPL_DATASTR, ": ");
if (flags & CHECK_SHOWMORE)
-- ircd_snprintf(0, outbuf, sizeof(outbuf), "No. %s nick user@host [IP] (usermodes) :realname", (flags & CHECK_CLONES) ? "[clients]" : "");
+- ircd_snprintf(0, outbuf, sizeof(outbuf), "No. %s nick user@host [IP] (usermodes) :realname", (flags & CHECK_CLONES) ? "[clients]" : "");
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ":No. %s nick user@host [IP] (usermodes) :realname",
-+ (flags & CHECK_CLONES) ? "[clients]" : "");
- else
++ (flags & CHECK_CLONES) ? "[clients]" : "");
+ else
- ircd_snprintf(0, outbuf, sizeof(outbuf), "%s %-*s%-*s%s", "No.", (NICKLEN + 2), "Nick",
- (USERLEN + 2), "User", "Host");
- send_reply(sptr, RPL_DATASTR, outbuf);
+ cli_user(acptr)->realusername, cli_user(acptr)->realhost,
+ ircd_ntoa(&(cli_ip(acptr))),
+ umodes,
-+ (flags & CHECK_SHOWSERVER) ? cli_name(cli_user(acptr)->server) : cli_info(acptr));
++ (flags & CHECK_SHOWSERVER) ? cli_name(cli_user(acptr)->server) : cli_info(acptr));
+ } else
/* default output */
- ircd_snprintf(0, outbuf, sizeof(outbuf), "%-4d %-*s%-*s%s", (count+1), (NICKLEN + 2),
-- acptr->cli_name, (USERLEN + 2), cli_user(acptr)->realusername,
+- acptr->cli_name, (USERLEN + 2), cli_user(acptr)->realusername,
- (flags & CHECK_SHOWIPS) ? ircd_ntoa(&(cli_ip(acptr))) : cli_user(acptr)->realhost);
- }
- send_reply(sptr, RPL_DATASTR, outbuf);
+ send_reply(sptr, SND_EXPLICIT | RPL_DATASTR, ":%-4d %-*s%-*s%s",
-+ (count+1), (NICKLEN + 2), acptr->cli_name, (USERLEN + 2), cli_user(acptr)->realusername,
++ (count+1), (NICKLEN + 2), acptr->cli_name, (USERLEN + 2), cli_user(acptr)->realusername,
+ (flags & CHECK_SHOWIPS) ? ircd_ntoa(&(cli_ip(acptr))) : cli_user(acptr)->realhost);
/* Show channel output (if applicable) - the 50 channel limit sanity check
send_reply(sptr, RPL_ENDOFCHECK, " ");
}
-diff -r 6242a5095d6d ircd/s_err.c
---- a/ircd/s_err.c Tue Mar 23 12:55:51 2010 +0100
-+++ b/ircd/s_err.c Tue Mar 23 13:15:51 2010 +0100
+diff -r 8ebea3ccdca2 ircd/s_err.c
+--- a/ircd/s_err.c Sat Jul 20 11:29:55 2013 +0100
++++ b/ircd/s_err.c Sat Jul 20 11:48:52 2013 +0100
@@ -612,7 +612,7 @@
/* 289 */
{ 0 },