From 2fccfb10f701f3b38eb7555e0f192f267f850001 Mon Sep 17 00:00:00 2001 From: Přemysl Janouch Date: Wed, 1 Aug 2018 09:24:35 +0200 Subject: kike: allow STATS with no parameters We were in plain conflict with RFC 2812 for no apparent reason. --- kike.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/kike.c b/kike.c index dfabc9c..64bebc9 100644 --- a/kike.c +++ b/kike.c @@ -2894,9 +2894,9 @@ irc_handle_stats_uptime (struct client *c) static void irc_handle_stats (const struct irc_message *msg, struct client *c) { - char query; - if (msg->params.len < 1 || !(query = *msg->params.vector[0])) - RETURN_WITH_REPLY (c, IRC_ERR_NEEDMOREPARAMS, msg->command); + char query = 0; + if (msg->params.len > 0) + query = *msg->params.vector[0]; if (msg->params.len > 1 && !irc_is_this_me (c->ctx, msg->params.vector[1])) RETURN_WITH_REPLY (c, IRC_ERR_NOSUCHSERVER, msg->params.vector[1]); if (!(c->mode & IRC_USER_MODE_OPERATOR)) @@ -2909,7 +2909,7 @@ irc_handle_stats (const struct irc_message *msg, struct client *c) case 'u': irc_handle_stats_uptime (c); break; } - irc_send_reply (c, IRC_RPL_ENDOFSTATS, query); + irc_send_reply (c, IRC_RPL_ENDOFSTATS, query ? query : '*'); } static void -- cgit v1.2.3-70-g09d2