]> jfr.im git - irc/quakenet/snircd.git/blobdiff - ircd/m_userip.c
Should be unsigned long for A
[irc/quakenet/snircd.git] / ircd / m_userip.c
index 062fe687ea3a6cd01899734db0befce4e9db32b6..dd0481027dea8faeefbf5295741fc1c55908a846 100644 (file)
@@ -95,6 +95,7 @@
 
 static void userip_formatter(struct Client* cptr, struct Client *sptr, struct MsgBuf* mb)
 {
+  /* !!FIXME!! */
   assert(IsUser(cptr));
   msgq_append(0, mb, "%s%s=%c%s@%s", cli_name(cptr),
              SeeOper(sptr,cptr) ? "*" : "",
@@ -105,7 +106,7 @@ static void userip_formatter(struct Client* cptr, struct Client *sptr, struct Ms
               * of +x.  If an oper wants the real IP, he should go to
               * /whois to get it.
               */
-             HasHiddenHost(cptr) && (sptr != cptr) ?
+             (HasHiddenHost(cptr) || HasSetHost(cptr)) && !IsAnOper(sptr) ?
              feature_str(FEAT_HIDDEN_IP) :
              ircd_ntoa(&cli_ip(cptr)));
 }