aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_dialback.lua
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/mod_dialback.lua')
-rw-r--r--plugins/mod_dialback.lua14
1 files changed, 12 insertions, 2 deletions
diff --git a/plugins/mod_dialback.lua b/plugins/mod_dialback.lua
index e1fd5a42..a8923e27 100644
--- a/plugins/mod_dialback.lua
+++ b/plugins/mod_dialback.lua
@@ -132,9 +132,19 @@ module:hook("stanza/jabber:server:dialback:result", function(event)
end
end);
+module:hook_stanza("urn:ietf:params:xml:ns:xmpp-sasl", "failure", function (origin, stanza)
+ if origin.external_auth == "failed" then
+ module:log("debug", "SASL EXTERNAL failed, falling back to dialback");
+ s2s_initiate_dialback(origin);
+ return true;
+ end
+end, 100);
+
module:hook_stanza(xmlns_stream, "features", function (origin, stanza)
- s2s_initiate_dialback(origin);
- return true;
+ if not origin.external_auth or origin.external_auth == "failed" then
+ s2s_initiate_dialback(origin);
+ return true;
+ end
end, 100);
-- Offer dialback to incoming hosts