Author: beware (by Spike)
[ircu2.10.12-pk.git] / ircd / m_whois.c
index 71a2b774e049a21e648a841d81b8856a759c44bd..319ea1dc0f7f79d3980c0521a1a0b57bdb455e36 100644 (file)
@@ -186,7 +186,7 @@ static void do_whois(struct Client* sptr, struct Client *acptr, int parc)
   if (feature_bool(FEAT_HIS_WHOIS_SERVERNAME) && !IsAnOper(sptr) &&
       sptr != acptr)
     send_reply(sptr, RPL_WHOISSERVER, name, feature_str(FEAT_HIS_SERVERNAME),
-               feature_str(FEAT_HIS_SERVERNAME));
+               feature_str(FEAT_HIS_SERVERINFO));
   else
     send_reply(sptr, RPL_WHOISSERVER, name, cli_name(a2cptr),
               cli_info(a2cptr));
@@ -196,8 +196,7 @@ static void do_whois(struct Client* sptr, struct Client *acptr, int parc)
     if (user->away)
        send_reply(sptr, RPL_AWAY, name, user->away);
 
-    if (IsAnOper(acptr) && (HasPriv(acptr, PRIV_DISPLAY) ||
-                           HasPriv(sptr, PRIV_SEE_OPERS)))
+    if (SeeOper(sptr,acptr))
        send_reply(sptr, RPL_WHOISOPERATOR, name);
 
     if (IsAccount(acptr))
@@ -227,7 +226,7 @@ static int do_wilds(struct Client* sptr, char *nick, int count, int parc)
 {
   struct Client *acptr; /* Current client we're concidering */
   struct User *user;   /* the user portion of the client */
-  char *name;          /* the name of this client */
+  const char *name;    /* the name of this client */
   struct Membership* chan; 
   int invis;           /* does +i apply? */
   int member;          /* Is this user on any channels? */