X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Fm_names.c;fp=ircd%2Fm_names.c;h=41a48c7f207cc00c69fc51304e65ae2fff98a3eb;hb=275e1f928a44325a7ea1f0803d0ad23dc4e92d93;hp=16cee5cac1b624879891b32d2d57277bbeb33c44;hpb=220cae635e3237f07a9d77bd7229e445f555c78a;p=ircu2.10.12-pk.git diff --git a/ircd/m_names.c b/ircd/m_names.c index 16cee5c..41a48c7 100644 --- a/ircd/m_names.c +++ b/ircd/m_names.c @@ -106,6 +106,7 @@ * NAMES_DEL - Show join-delayed names list. * NAMES_EON - When OR'd with the other two, adds an 'End of Names' numeric * used by m_join + * NAMES_OPS - Only list oped (+o) or voiced (+v) users * */ @@ -165,6 +166,9 @@ void do_names(struct Client* sptr, struct Channel* chptr, int filter) if (IsInvisibleJoin(member) && member->user != sptr) continue; + + if (!IsChanOp(member) && !HasVoice(member) && member->user != sptr && (filter & NAMES_OPS)) + continue; if (needs_space) buf[idx++] = ' ';