about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorDNS777 <dns@rbose.org>2012-09-25 12:55:07 +0200
committerAlexander Barton <alex@barton.de>2012-09-25 12:55:07 +0200
commit62a07596d6a3a8da206bde8d34edc8b02781d33d (patch)
tree692c573224c454f78eddb6c656341ade94e076d4 /src
parentb730b64bbecfb325e28f7df1fba46942ac19968d (diff)
downloadngircd-62a07596d6a3a8da206bde8d34edc8b02781d33d.tar.gz
ngircd-62a07596d6a3a8da206bde8d34edc8b02781d33d.zip
Allow opers to see secret (+s) channels in LIST command
As long as 'MorePrivacy' isn't enabled in the configuration file, local
IRC operators can see secret (+s) channels when using the LIST command.

Closes bug #136.
Diffstat (limited to 'src')
-rw-r--r--src/ngircd/irc-channel.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ngircd/irc-channel.c b/src/ngircd/irc-channel.c
index 9e88e1bd..72fbdc24 100644
--- a/src/ngircd/irc-channel.c
+++ b/src/ngircd/irc-channel.c
@@ -669,7 +669,8 @@ IRC_LIST( CLIENT *Client, REQUEST *Req )
 			if (MatchCaseInsensitive(pattern, Channel_Name(chan))) {
 				/* Gotcha! */
 				if (!strchr(Channel_Modes(chan), 's')
-				    || Channel_IsMemberOf(chan, from)) {
+				    || Channel_IsMemberOf(chan, from)
+				    || (!Conf_MorePrivacy && Client_OperByMe(Client))) {
 					if (IRC_CheckListTooBig(from, count,
 								 MAX_RPL_LIST,
 								 "LIST"))