# HG changeset patch
# User Kim Alvefur <zash@zash.se>
# Date 1488464467 -3600
# Node ID e520dc0c3af4fd109a66d0ca5b7c02590c9baf23
# Parent  3629f03817f8551370fc96338ae2ccf026cf67cb# Parent  6940d6db970be1382e80395f1a5f97d48711abaf
Merge 0.9->0.10

diff -r 3629f03817f8 -r e520dc0c3af4 plugins/mod_saslauth.lua
--- a/plugins/mod_saslauth.lua	Thu Mar 02 03:03:25 2017 +0100
+++ b/plugins/mod_saslauth.lua	Thu Mar 02 15:21:07 2017 +0100
@@ -96,8 +96,19 @@
 module:hook_stanza(xmlns_sasl, "failure", function (session, stanza)
 	if session.type ~= "s2sout_unauthed" or session.external_auth ~= "attempting" then return; end
 
-	module:log("info", "SASL EXTERNAL with %s failed", session.to_host)
-	-- TODO: Log the failure reason
+	local text = stanza:get_child_text("text");
+	local condition = "unknown-condition";
+	for child in stanza:childtags() do
+		if child.name ~= "text" then
+			condition = child.name;
+			break;
+		end
+	end
+	if text and condition then
+		condition = connection .. ": " .. text;
+	end
+	module:log("info", "SASL EXTERNAL with %s failed: %s", session.to_host, condition);
+
 	session.external_auth = "failed"
 	session:close();
 	return true;