Mercurial > prosody-modules
comparison mod_auth_sql/mod_auth_sql.lua @ 902:490cb9161c81
mod_auth_{external,internal_yubikey,ldap,ldap2,sql}: No need to nodeprep in SASL handler.
author | Waqas Hussain <waqas20@gmail.com> |
---|---|
date | Sat, 26 Jan 2013 04:34:05 +0500 |
parents | cdc67f4efde2 |
children | 7dbde05b48a9 |
comparison
equal
deleted
inserted
replaced
901:e3ad5f3aa6d4 | 902:490cb9161c81 |
---|---|
3 -- Copyright (C) 2011 Waqas Hussain <waqas20@gmail.com> | 3 -- Copyright (C) 2011 Waqas Hussain <waqas20@gmail.com> |
4 -- | 4 -- |
5 | 5 |
6 local log = require "util.logger".init("auth_sql"); | 6 local log = require "util.logger".init("auth_sql"); |
7 local new_sasl = require "util.sasl".new; | 7 local new_sasl = require "util.sasl".new; |
8 local nodeprep = require "util.encodings".stringprep.nodeprep; | |
9 local DBI = require "DBI" | 8 local DBI = require "DBI" |
10 | 9 |
11 local connection; | 10 local connection; |
12 local params = module:get_option("auth_sql", module:get_option("sql")); | 11 local params = module:get_option("auth_sql", module:get_option("sql")); |
13 | 12 |
99 return nil, "Account creation/modification not supported."; | 98 return nil, "Account creation/modification not supported."; |
100 end | 99 end |
101 function provider.get_sasl_handler() | 100 function provider.get_sasl_handler() |
102 local profile = { | 101 local profile = { |
103 plain = function(sasl, username, realm) | 102 plain = function(sasl, username, realm) |
104 local prepped_username = nodeprep(username); | 103 local password = get_password(username); |
105 if not prepped_username then | |
106 module:log("debug", "NODEprep failed on username: %s", username); | |
107 return "", nil; | |
108 end | |
109 local password = get_password(prepped_username); | |
110 if not password then return "", nil; end | 104 if not password then return "", nil; end |
111 return password, true; | 105 return password, true; |
112 end | 106 end |
113 }; | 107 }; |
114 return new_sasl(module.host, profile); | 108 return new_sasl(module.host, profile); |