1 user with mode +I WHOIS'ing himself can see his own idle time
3 diff -r b8c9dc4c4bfd ircd/m_whois.c
9 if (MyConnect(acptr) &&
10 - ((IsAnOper(sptr) && HasPriv(sptr, PRIV_USER_PRIVACY)) ||
11 - (!IsNoIdle(acptr) && (!feature_bool(FEAT_HIS_WHOIS_IDLETIME) ||
12 - sptr == acptr || parc >= 3))))
13 + (sptr == acptr || /* user WHOIS'ing himself */
14 + (IsNoIdle(acptr) && IsAnOper(sptr) && HasPriv(sptr, PRIV_USER_PRIVACY)) || /* opers can see through +I */
15 + (!IsNoIdle(acptr) && (IsAnOper(sptr) || !feature_bool(FEAT_HIS_WHOIS_IDLETIME) || parc >= 3)))) /* not +I, from an oper or not HIS or remote */
16 send_reply(sptr, RPL_WHOISIDLE, name, CurrentTime - user->last,
17 cli_firsttime(acptr));