diff options
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | modules/m_who.c | 8 |
2 files changed, 7 insertions, 3 deletions
@@ -1,6 +1,8 @@ -- ircd-hybrid-8.1.10 Release Notes o) Changed WHOIS to show a client's certificate fingerprint to administrators only +o) The WHO reply now shows whether or not a nickname has + been registered with NickServ. ('r' status flag) -- ircd-hybrid-8.1.9 Release Notes diff --git a/modules/m_who.c b/modules/m_who.c index 9027310..9e34bcc 100644 --- a/modules/m_who.c +++ b/modules/m_who.c @@ -51,13 +51,15 @@ static void do_who(struct Client *source_p, struct Client *target_p, const char *chname, const char *op_flags) { - char status[7]; /* G*@%+\0 */ + char status[8]; /* G*@%+\0 */ if (HasUMode(source_p, UMODE_OPER)) - snprintf(status, sizeof(status), "%c%s%s", target_p->away[0] ? 'G' : 'H', + snprintf(status, sizeof(status), "%c%s%s%s", target_p->away[0] ? 'G' : 'H', + HasUMode(target_p, UMODE_REGISTERED) ? "r" : "", HasUMode(target_p, UMODE_OPER) ? "*" : "", op_flags); else - snprintf(status, sizeof(status), "%c%s%s", target_p->away[0] ? 'G' : 'H', + snprintf(status, sizeof(status), "%c%s%s%s", target_p->away[0] ? 'G' : 'H', + HasUMode(target_p, UMODE_REGISTERED) ? "r" : "", HasUMode(target_p, UMODE_OPER) && !HasUMode(target_p, UMODE_HIDDEN) ? "*" : "", op_flags); |