diff options
| -rw-r--r-- | src/ngircd/irc-info.c | 6 | ||||
| -rw-r--r-- | src/ngircd/messages.h | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/ngircd/irc-info.c b/src/ngircd/irc-info.c index 4909a96a..89defc38 100644 --- a/src/ngircd/irc-info.c +++ b/src/ngircd/irc-info.c @@ -1156,6 +1156,12 @@ IRC_WHOIS_SendReply(CLIENT *Client, CLIENT *from, CLIENT *c) Client_ID(from), Client_ID(c))) return DISCONNECTED; + if (Client_Conn(c) > NONE && + (from == c || (!Conf_MorePrivacy && Client_HasMode(from, 'o'))) && + !IRC_WriteStrClient(from, RPL_WHOISMODES_MSG, Client_ID(from), + Client_ID(c), Client_Modes(c))) + return DISCONNECTED; + if (Client_Conn(c) > NONE && (Client_OperByMe(from) || from == c) && !IRC_WriteStrClient(from, RPL_WHOISHOST_MSG, Client_ID(from), Client_ID(c), Client_Hostname(c), diff --git a/src/ngircd/messages.h b/src/ngircd/messages.h index 5c83c5cc..ac75daf9 100644 --- a/src/ngircd/messages.h +++ b/src/ngircd/messages.h @@ -92,6 +92,7 @@ #define RPL_MOTDSTART_MSG "375 %s :- %s message of the day" #define RPL_ENDOFMOTD_MSG "376 %s :End of MOTD command" #define RPL_WHOISHOST_MSG "378 %s %s :is connecting from *@%s %s" +#define RPL_WHOISMODES_MSG "379 %s %s :is using modes +%s" #define RPL_YOUREOPER_MSG "381 %s :You are now an IRC Operator" #define RPL_REHASHING_MSG "382 %s :Rehashing" #define RPL_YOURESERVICE_MSG "383 %s :You are service %s" |