aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/muc/muc.lib.lua4
-rw-r--r--util/sasl/plain.lua8
2 files changed, 4 insertions, 8 deletions
diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua
index c5be3a91..9755ba65 100644
--- a/plugins/muc/muc.lib.lua
+++ b/plugins/muc/muc.lib.lua
@@ -914,8 +914,8 @@ function room_mt:handle_to_room(origin, stanza) -- presence changes and groupcha
elseif type ~= "error" and type ~= "result" then
origin.send(st.error_reply(stanza, "cancel", "service-unavailable"));
end
- elseif stanza.name == "message" and not stanza.attr.type and #stanza.tags == 1 and self._jid_nick[stanza.attr.from]
- and stanza.tags[1].name == "x" and stanza.tags[1].attr.xmlns == "http://jabber.org/protocol/muc#user" then
+ elseif stanza.name == "message" and not(type == "chat" or type == "error" or type == "groupchat" or type == "headline") and #stanza.tags == 1
+ and self._jid_nick[stanza.attr.from] and stanza.tags[1].name == "x" and stanza.tags[1].attr.xmlns == "http://jabber.org/protocol/muc#user" then
local x = stanza.tags[1];
local payload = (#x.tags == 1 and x.tags[1]);
if payload and payload.name == "invite" and payload.attr.to then
diff --git a/util/sasl/plain.lua b/util/sasl/plain.lua
index ba4645e1..d108a40d 100644
--- a/util/sasl/plain.lua
+++ b/util/sasl/plain.lua
@@ -66,15 +66,11 @@ local function plain(self, message)
self.username = authentication
if state == false then
return "failure", "account-disabled";
- elseif state == nil then
+ elseif state == nil or not correct then
return "failure", "not-authorized", "Unable to authorize you with the authentication credentials you've sent.";
end
- if correct then
- return "success";
- else
- return "failure", "not-authorized", "Unable to authorize you with the authentication credentials you've sent.";
- end
+ return "success";
end
function init(registerMechanism)