plugins/mod_auth_cyrus.lua
changeset 4159 52eaa2590bfb
parent 3468 d50e2c937717
child 4160 f08f649b898b
--- a/plugins/mod_auth_cyrus.lua	Tue Feb 22 18:37:29 2011 +0000
+++ b/plugins/mod_auth_cyrus.lua	Wed Feb 23 01:22:04 2011 +0500
@@ -27,6 +27,19 @@
 	);
 end
 
+do -- diagnostic
+	local realm = module:get_option("sasl_realm") or module.host;
+	local list;
+	for mechanism in pairs(new_sasl(realm):mechanisms()) do
+		list = (not(list) and mechanism) or (list..", "..mechanism);
+	end
+	if not list then
+		module:log("error", "No Cyrus SASL mechanisms available");
+	else
+		module:log("debug", "Available Cyrus SASL mechanisms: %s", list);
+	end
+end
+
 function new_default_provider(host)
 	local provider = { name = "cyrus" };
 	log("debug", "initializing default authentication provider for host '%s'", host);