From f672faa0165f7288cb5e1dc71c76430f1c15b110 Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 12 Feb 2012 15:05:31 +0100 Subject: mod_saslauth: Move authentication-success event to after session has been made authenticated. --- plugins/mod_saslauth.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'plugins/mod_saslauth.lua') diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua index 58655a24..49987f84 100644 --- a/plugins/mod_saslauth.lua +++ b/plugins/mod_saslauth.lua @@ -51,11 +51,11 @@ local function handle_status(session, status, ret, err_msg) module:fire_event("authentication-failure", { session = session, condition = ret, text = err_msg }); session.sasl_handler = session.sasl_handler:clean_clone(); elseif status == "success" then - module:fire_event("authentication-success", { session = session }); local username = nodeprep(session.sasl_handler.username); local ok, err = sm_make_authenticated(session, session.sasl_handler.username); if ok then + module:fire_event("authentication-success", { session = session }); session.sasl_handler = nil; session:reset_stream(); else -- cgit v1.2.3 From 1df83a16325b9416cd9a22cc3b7a39f8c92ad3ad Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 12 Feb 2012 15:08:12 +0100 Subject: mod_saslauth: Fire authentication-failure if make_authenticated() failed. --- plugins/mod_saslauth.lua | 1 + 1 file changed, 1 insertion(+) (limited to 'plugins/mod_saslauth.lua') diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua index 49987f84..2b23e33c 100644 --- a/plugins/mod_saslauth.lua +++ b/plugins/mod_saslauth.lua @@ -60,6 +60,7 @@ local function handle_status(session, status, ret, err_msg) session:reset_stream(); else module:log("warn", "SASL succeeded but username was invalid"); + module:fire_event("authentication-failure", { session = session, condition = "not-authorized", text = err }); session.sasl_handler = session.sasl_handler:clean_clone(); return "failure", "not-authorized", "User authenticated successfully, but username was invalid"; end -- cgit v1.2.3 From bf9e4a5cab937b3bae474069a9fc3f94da67ee2d Mon Sep 17 00:00:00 2001 From: Kim Alvefur Date: Sun, 12 Feb 2012 15:14:35 +0100 Subject: mod_saslauth: Remove useless import of, and call to nodeprep. --- plugins/mod_saslauth.lua | 3 --- 1 file changed, 3 deletions(-) (limited to 'plugins/mod_saslauth.lua') diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua index 2b23e33c..7708572a 100644 --- a/plugins/mod_saslauth.lua +++ b/plugins/mod_saslauth.lua @@ -16,7 +16,6 @@ local base64 = require "util.encodings".base64; local cert_verify_identity = require "util.x509".verify_identity; -local nodeprep = require "util.encodings".stringprep.nodeprep; local usermanager_get_sasl_handler = require "core.usermanager".get_sasl_handler; local tostring = tostring; @@ -51,8 +50,6 @@ local function handle_status(session, status, ret, err_msg) module:fire_event("authentication-failure", { session = session, condition = ret, text = err_msg }); session.sasl_handler = session.sasl_handler:clean_clone(); elseif status == "success" then - local username = nodeprep(session.sasl_handler.username); - local ok, err = sm_make_authenticated(session, session.sasl_handler.username); if ok then module:fire_event("authentication-success", { session = session }); -- cgit v1.2.3