# HG changeset patch # User Kim Alvefur # Date 1389792927 -3600 # Node ID 1b543060f31ef312eb57da905f2773ed6784a7cc # Parent 717a08403b2639a810991405461884b4bc03e89b mod_auth_ldap: Cleanup, reorder and some comments diff -r 717a08403b26 -r 1b543060f31e mod_auth_ldap/mod_auth_ldap.lua --- a/mod_auth_ldap/mod_auth_ldap.lua Sat Jan 11 00:20:59 2014 +0100 +++ b/mod_auth_ldap/mod_auth_ldap.lua Wed Jan 15 14:35:27 2014 +0100 @@ -1,7 +1,9 @@ +-- mod_auth_ldap local new_sasl = require "util.sasl".new; -local log = require "util.logger".init("auth_ldap"); +local lualdap = require "lualdap"; +-- Config options local ldap_server = module:get_option_string("ldap_server", "localhost"); local ldap_rootdn = module:get_option_string("ldap_rootdn", ""); local ldap_password = module:get_option_string("ldap_password", ""); @@ -10,7 +12,7 @@ local ldap_filter = module:get_option_string("ldap_filter", "(uid=%s)"); local ldap_base = assert(module:get_option_string("ldap_base"), "ldap_base is a required option for ldap"); -local lualdap = require "lualdap"; +-- Initiate connection local ld = assert(lualdap.open_simple(ldap_server, ldap_rootdn, ldap_password, ldap_tls)); module.unload = function() ld:close(); end @@ -27,6 +29,20 @@ local provider = {}; +function provider.create_user(username, password) + return nil, "Account creation not available with LDAP."; +end + +function provider.user_exists(username) + return not not get_user(username); +end + +function provider.set_password(username, password) + local dn, attr = get_user(username); + if not dn then return nil, attr end + if attr.userPassword == password then return true end + return ld:modify(dn, { '=', userPassword = password })(); +end function provider.get_password(username) local dn, attr = get_user(username); if dn and attr then @@ -37,16 +53,6 @@ function provider.test_password(username, password) return provider.get_password(username) == password; end -function provider.user_exists(username) - return not not get_user(username); -end -function provider.set_password(username, password) - local dn, attr = get_user(username); - if not dn then return nil, attr end - if attr.userPassword == password then return true end - return ld:modify(dn, { '=', userPassword = password })(); -end -function provider.create_user(username, password) return nil, "Account creation not available with LDAP."; end function provider.get_sasl_handler() return new_sasl(module.host, {