Comparison

plugins/mod_saslauth.lua @ 11508:f1abc34414bc 0.11

mod_saslauth: Don't throw errors in async code when connections are gone Fixes #1515
author tmolitor <thilo@eightysoft.de>
date Thu, 18 Mar 2021 14:30:47 +0100
parent 11213:992c4498a1e3
child 11512:a2ba6c0ac8ec
comparison
equal deleted inserted replaced
11507:133e8ed291fe 11508:f1abc34414bc
42 end 42 end
43 return reply; 43 return reply;
44 end 44 end
45 45
46 local function handle_status(session, status, ret, err_msg) 46 local function handle_status(session, status, ret, err_msg)
47 if session["sasl_handler"] == nil then return "failure", "connection-timeout", "Connection gone"; end
47 if status == "failure" then 48 if status == "failure" then
48 module:fire_event("authentication-failure", { session = session, condition = ret, text = err_msg }); 49 module:fire_event("authentication-failure", { session = session, condition = ret, text = err_msg });
49 session.sasl_handler = session.sasl_handler:clean_clone(); 50 session.sasl_handler = session.sasl_handler:clean_clone();
50 elseif status == "success" then 51 elseif status == "success" then
51 local ok, err = sm_make_authenticated(session, session.sasl_handler.username); 52 local ok, err = sm_make_authenticated(session, session.sasl_handler.username);