On remote whois, show +s local channels with a * prefix to opers.
[ircu2.10.12-pk.git] / ircd / m_whois.c
index 81d42f41d7c883f873ec14f83666791e3dc14613..0230e8a81ed4794702c5ceb182135de8313eaeb7 100644 (file)
@@ -152,7 +152,8 @@ static void do_whois(struct Client* sptr, struct Client *acptr, int parc)
     {
        chptr = chan->channel;
        
-       if (!ShowChannel(sptr, chptr))
+       if (!ShowChannel(sptr, chptr)
+           && !(IsOper(sptr) && IsLocalChannel(chptr->chname)))
           continue;
           
        if (acptr != sptr && IsZombie(chan))
@@ -166,6 +167,8 @@ static void do_whois(struct Client* sptr, struct Client *acptr, int parc)
        }
        if (IsDeaf(acptr))
          *(buf + len++) = '-';
+       if (IsOper(sptr) && !ShowChannel(sptr, chptr))
+         *(buf + len++) = '*';
        if (IsDelayedJoin(chan) && (sptr != acptr))
          *(buf + len++) = '<';
        else if (IsChanOp(chan))