MUC: Suppress error text when participants are kicked due to error in semi-anon rooms (fixes #563)
This prevents information leaks (such as the occupant's server domain) which may
be included in error messages.
--- a/plugins/muc/muc.lib.lua Tue Aug 07 10:52:10 2018 +0200
+++ b/plugins/muc/muc.lib.lua Tue Aug 07 13:32:11 2018 +0100
@@ -362,7 +362,7 @@
if occupant == nil then return nil; end
local type, condition, text = stanza:get_error();
local error_message = "Kicked: "..(condition and condition:gsub("%-", " ") or "presence error");
- if text then
+ if text and room:get_whois() == "anyone" then
error_message = error_message..": "..text;
end
occupant:set_session(real_jid, st.presence({type="unavailable"})