Software /
code /
prosody
Comparison
plugins/mod_saslauth.lua @ 13363:2738dda885bb
mod_saslauth: Allow plugins to override return SASL condition/text
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 30 Nov 2023 11:22:40 +0000 |
parent | 13290:c5767b7528ac |
child | 13381:b7dc45d704fa |
comparison
equal
deleted
inserted
replaced
13362:11e66ad894f0 | 13363:2738dda885bb |
---|---|
54 local function handle_status(session, status, ret, err_msg) | 54 local function handle_status(session, status, ret, err_msg) |
55 if not session.sasl_handler then | 55 if not session.sasl_handler then |
56 return "failure", "temporary-auth-failure", "Connection gone"; | 56 return "failure", "temporary-auth-failure", "Connection gone"; |
57 end | 57 end |
58 if status == "failure" then | 58 if status == "failure" then |
59 module:fire_event("authentication-failure", { session = session, condition = ret, text = err_msg }); | 59 local event = { session = session, condition = ret, text = err_msg }; |
60 module:fire_event("authentication-failure", event); | |
60 session.sasl_handler = session.sasl_handler:clean_clone(); | 61 session.sasl_handler = session.sasl_handler:clean_clone(); |
62 ret, err_msg = event.condition, event.text; | |
61 elseif status == "success" then | 63 elseif status == "success" then |
62 local ok, err = sm_make_authenticated(session, session.sasl_handler.username, session.sasl_handler.role); | 64 local ok, err = sm_make_authenticated(session, session.sasl_handler.username, session.sasl_handler.role); |
63 if ok then | 65 if ok then |
64 session.sasl_resource = session.sasl_handler.resource; | 66 session.sasl_resource = session.sasl_handler.resource; |
65 module:fire_event("authentication-success", { session = session }); | 67 module:fire_event("authentication-success", { session = session }); |