aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/mod_saslauth.lua4
1 files changed, 3 insertions, 1 deletions
diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua
index 8fd71ff3..8a4b84d9 100644
--- a/plugins/mod_saslauth.lua
+++ b/plugins/mod_saslauth.lua
@@ -248,8 +248,10 @@ module:hook("stream-features", function(event)
return;
end
origin.sasl_handler = usermanager_get_sasl_handler(module.host);
+ local mechanisms = origin.sasl_handler:mechanisms();
+ if not next(mechanisms) then return; end
features:tag("mechanisms", mechanisms_attr);
- for mechanism in pairs(origin.sasl_handler:mechanisms()) do
+ for mechanism in pairs(mechanisms) do
if mechanism ~= "PLAIN" or origin.secure or allow_unencrypted_plain_auth then
features:tag("mechanism"):text(mechanism):up();
end