From e925f5a34a7b77f0da480c46f2c81204626126c0 Mon Sep 17 00:00:00 2001
From: Kim Alvefur <zash@zash.se>
Date: Sun, 4 Feb 2018 01:01:50 +0100
Subject: mod_saslauth: Pass SASL EXTERNAL failure reason on to be used in
 error bounces

---
 plugins/mod_saslauth.lua | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

(limited to 'plugins')

diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua
index 3ca709e0..3eda2a24 100644
--- a/plugins/mod_saslauth.lua
+++ b/plugins/mod_saslauth.lua
@@ -110,11 +110,12 @@ module:hook_tag(xmlns_sasl, "failure", function (session, stanza)
 	module:log("info", "SASL EXTERNAL with %s failed: %s", session.to_host, condition);
 
 	session.external_auth = "failed"
+	session.external_auth_failure_reason = condition;
 end, 500)
 
 module:hook_stanza(xmlns_sasl, "failure", function (session, stanza)
 	session.log("debug", "No fallback from SASL EXTERNAL failure, giving up");
-	session:close();
+	session:close(nil, session.external_auth_failure_reason);
 	return true;
 end, 90)
 
-- 
cgit v1.2.3