]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/irc-info.c
LINE_LEN -> COMMAND_LEN
[ngircd-alex.git] / src / ngircd / irc-info.c
index 3c8dcd51aee374527900d8422535c46ef4f46e09..668f5ed6fc4c5be0bb8445531282398c7e52284c 100644 (file)
@@ -298,7 +298,7 @@ IRC_WHO_Mask(CLIENT *Client, char *Mask, bool OnlyOps)
 static bool
 IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c)
 {
-       char str[LINE_LEN + 1];
+       char str[COMMAND_LEN];
        CL2CHAN *cl2chan;
        CHANNEL *chan;
 
@@ -347,7 +347,7 @@ IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c)
                                    str, sizeof(str));
                strlcat(str, Channel_Name(chan), sizeof(str));
 
-               if (strlen(str) > (LINE_LEN - CHANNEL_NAME_LEN - 4)) {
+               if (strlen(str) > (COMMAND_LEN - CHANNEL_NAME_LEN - 4)) {
                        /* Line becomes too long: send it! */
                        if (!IRC_WriteStrClient(Client, "%s", str))
                                return DISCONNECTED;
@@ -838,7 +838,7 @@ IRC_NAMES( CLIENT *Client, REQUEST *Req )
                                strlcat(rpl, " ", sizeof(rpl));
                        strlcat(rpl, Client_ID(c), sizeof(rpl));
 
-                       if (strlen(rpl) > LINE_LEN - CLIENT_NICK_LEN - 4) {
+                       if (strlen(rpl) > COMMAND_LEN - CLIENT_NICK_LEN - 4) {
                                /* Line is gwoing too long, send now */
                                if (!IRC_WriteStrClient(from, "%s", rpl))
                                        return DISCONNECTED;
@@ -1251,7 +1251,8 @@ IRC_WHOIS( CLIENT *Client, REQUEST *Req )
                 */
                if (!has_wildcards || is_remote) {
                        c = Client_Search(query);
-                       if (c && Client_Type(c) == CLIENT_USER) {
+                       if (c && (Client_Type(c) == CLIENT_USER
+                                 || Client_Type(c) == CLIENT_SERVICE)) {
                                if (!IRC_WHOIS_SendReply(Client, from, c))
                                        return DISCONNECTED;
                        } else {
@@ -1500,7 +1501,7 @@ GLOBAL bool
 IRC_Send_NAMES(CLIENT * Client, CHANNEL * Chan)
 {
        bool is_visible, is_member;
-       char str[LINE_LEN + 1];
+       char str[COMMAND_LEN];
        CL2CHAN *cl2chan;
        CLIENT *cl;
 
@@ -1539,7 +1540,7 @@ IRC_Send_NAMES(CLIENT * Client, CHANNEL * Chan)
                                            str, sizeof(str));
                        strlcat(str, Client_ID(cl), sizeof(str));
 
-                       if (strlen(str) > (LINE_LEN - CLIENT_NICK_LEN - 4)) {
+                       if (strlen(str) > (COMMAND_LEN - CLIENT_NICK_LEN - 4)) {
                                if (!IRC_WriteStrClient(Client, "%s", str))
                                        return DISCONNECTED;
                                snprintf(str, sizeof(str), RPL_NAMREPLY_MSG,