# HG changeset patch # User Rob Hoelz # Date 1355174127 -3600 # Node ID 13e645340767cbd303bf0fb6caaad149692ab3dd # Parent ec791fd8ce877efe46c30719002e522e6408d158 Use singlematch to find user record in ldap.bind diff -r ec791fd8ce87 -r 13e645340767 mod_lib_ldap/ldap.lib.lua --- a/mod_lib_ldap/ldap.lib.lua Mon Dec 10 22:14:28 2012 +0100 +++ b/mod_lib_ldap/ldap.lib.lua Mon Dec 10 22:15:27 2012 +0100 @@ -179,18 +179,15 @@ function _M.bind(username, password) local conn = _M.getconnection(); local filter = format('%s=%s', params.user.usernamefield, username); - local search_attrs = { + local who = _M.singlematch { attrs = params.user.usernamefield, base = params.user.basedn, - scope = 'subtree', - sizelimit = 1, filter = filter, }; - local who; - for dn in conn:search(search_attrs) do - module:log('debug', '_M.bind - who: %s', dn); - who = dn; + if who then + who = who.dn; + module:log('debug', '_M.bind - who: %s', who); end local conn, err = ldap.open_simple(params.hostname, who, password, params.use_tls);