aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2016-05-28 12:37:51 +0200
committerKim Alvefur <zash@zash.se>2016-05-28 12:37:51 +0200
commitb44930be7ec51bc82cdc977f9d4320bb747ffc40 (patch)
treec09f2ab54050c890c5472ee18733e11ac8a2b76a /plugins
parent99a7a645f1608843af7c24fd5ae094fc965d12c7 (diff)
downloadprosody-b44930be7ec51bc82cdc977f9d4320bb747ffc40.tar.gz
prosody-b44930be7ec51bc82cdc977f9d4320bb747ffc40.zip
MUC: Allow members (or above) in members-only non-anonymous rooms to see the member list (fixes #445)
Diffstat (limited to 'plugins')
-rw-r--r--plugins/muc/muc.lib.lua3
1 files changed, 2 insertions, 1 deletions
diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua
index 88ee43c1..4018489a 100644
--- a/plugins/muc/muc.lib.lua
+++ b/plugins/muc/muc.lib.lua
@@ -803,7 +803,8 @@ function room_mt:handle_to_room(origin, stanza) -- presence changes and groupcha
local _aff = item.attr.affiliation;
local _rol = item.attr.role;
if _aff and not _rol then
- if affiliation == "owner" or (affiliation == "admin" and _aff ~= "owner" and _aff ~= "admin") then
+ if affiliation == "owner" or (affiliation == "admin" and _aff ~= "owner" and _aff ~= "admin")
+ or (affiliation and affiliation ~= "outcast" and self:get_members_only() and self:get_whois() == "anyone") then
local reply = st.reply(stanza):query("http://jabber.org/protocol/muc#admin");
for jid, affiliation in pairs(self._affiliations) do
if affiliation == _aff then