# HG changeset patch
# User Waqas Hussain <waqas20@gmail.com>
# Date 1298406124 -18000
# Node ID 52eaa2590bfb53f627132ba6f2ae40211a05227f
# Parent  14581c3f33bdb901c1e4495f58aa7f1971c0d954
mod_auth_cyrus: Print some diagnostic log messages about the available mechanisms.

diff -r 14581c3f33bd -r 52eaa2590bfb plugins/mod_auth_cyrus.lua
--- 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);