diff options
author | Matthew Wild <mwild1@gmail.com> | 2009-08-20 13:57:50 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2009-08-20 13:57:50 +0100 |
commit | 1e74c0bf848fb822c173b64adfda75c7ce098ce9 (patch) | |
tree | 69218a99c857530054d6f7f86a8bba686938b158 /plugins | |
parent | 20d9c7ea6df498f5ee32533c5c3fd347bfafda42 (diff) | |
parent | 7f7d80a4e808d80f0f0f92dd965b5a4f8dfa051a (diff) | |
download | prosody-1e74c0bf848fb822c173b64adfda75c7ce098ce9.tar.gz prosody-1e74c0bf848fb822c173b64adfda75c7ce098ce9.zip |
Uncertain merge with 0.5's SASL
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mod_saslauth.lua | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/plugins/mod_saslauth.lua b/plugins/mod_saslauth.lua index 8d3b4ae4..da66717c 100644 --- a/plugins/mod_saslauth.lua +++ b/plugins/mod_saslauth.lua @@ -1,7 +1,7 @@ -- Prosody IM -- Copyright (C) 2008-2009 Matthew Wild -- Copyright (C) 2008-2009 Waqas Hussain --- +-- -- This project is MIT/X11 licensed. Please see the -- COPYING file in the source package for more information. -- @@ -13,6 +13,7 @@ local sm_bind_resource = require "core.sessionmanager".bind_resource; local sm_make_authenticated = require "core.sessionmanager".make_authenticated; local base64 = require "util.encodings".base64; +local nodeprep = require "util.encodings".stringprep.nodeprep; local datamanager_load = require "util.datamanager".load; local usermanager_validate_credentials = require "core.usermanager".validate_credentials; local usermanager_get_supported_methods = require "core.usermanager".get_supported_methods; @@ -70,6 +71,10 @@ end local function credentials_callback(mechanism, ...) if mechanism == "PLAIN" then local username, hostname, password = ...; + username = nodeprep(username); + if not username then + return false; + end local response = usermanager_validate_credentials(hostname, username, password, mechanism); if response == nil then return false; |