X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=nixops%2Fmodules%2Fwebsites%2Fcommons%2Fspip%2Fspip_ldap_patch.patch;fp=nixops%2Fmodules%2Fwebsites%2Fcommons%2Fspip%2Fspip_ldap_patch.patch;h=0000000000000000000000000000000000000000;hb=7667c367033b15582cf383da62446f78e66a59ef;hp=653c9098a84d47b34980469b8060e2290a26a947;hpb=c890321db12036be69ebbece202984874b1e5a57;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/nixops/modules/websites/commons/spip/spip_ldap_patch.patch b/nixops/modules/websites/commons/spip/spip_ldap_patch.patch deleted file mode 100644 index 653c909..0000000 --- a/nixops/modules/websites/commons/spip/spip_ldap_patch.patch +++ /dev/null @@ -1,60 +0,0 @@ ---- old/ecrire/auth/ldap.php 2017-06-08 21:58:17.000000000 +0200 -+++ new/ecrire/auth/ldap.php 2017-06-10 02:54:02.687954143 +0200 -@@ -171,24 +171,41 @@ - $desc = isset($ldap['attributes']) && $ldap['attributes'] ? $ldap['attributes'] : $GLOBALS['ldap_attributes'] ; - - $logins = is_array($desc['login']) ? $desc['login'] : array($desc['login']); -+ if (isset($GLOBALS['ldap_search'])) { -+ $search_query = str_replace("%user%", $login_search, $GLOBALS['ldap_search']); -+ $result = @ldap_search($ldap_link, $ldap_base, $search_query, array("dn")); -+ $info = @ldap_get_entries($ldap_link, $result); -+ // Ne pas accepter les resultats si plus d'une entree -+ // (on veut un attribut unique) - -- // Tenter une recherche pour essayer de retrouver le DN -- foreach ($logins as $att) { -- $result = @ldap_search($ldap_link, $ldap_base, "$att=$login_search", array("dn")); -- $info = @ldap_get_entries($ldap_link, $result); -- // Ne pas accepter les resultats si plus d'une entree -- // (on veut un attribut unique) -+ if (is_array($info) and $info['count'] == 1) { -+ $dn = $info[0]['dn']; -+ if (!$checkpass) { -+ return $dn; -+ } -+ if (@ldap_bind($ldap_link, $dn, $pass)) { -+ return $dn; -+ } -+ } -+ } else { -+ // Tenter une recherche pour essayer de retrouver le DN -+ foreach ($logins as $att) { -+ $result = @ldap_search($ldap_link, $ldap_base, "$att=$login_search", array("dn")); -+ $info = @ldap_get_entries($ldap_link, $result); -+ // Ne pas accepter les resultats si plus d'une entree -+ // (on veut un attribut unique) - -- if (is_array($info) and $info['count'] == 1) { -- $dn = $info[0]['dn']; -- if (!$checkpass) { -- return $dn; -- } -- if (@ldap_bind($ldap_link, $dn, $pass)) { -- return $dn; -- } -- } -- } -+ if (is_array($info) and $info['count'] == 1) { -+ $dn = $info[0]['dn']; -+ if (!$checkpass) { -+ return $dn; -+ } -+ if (@ldap_bind($ldap_link, $dn, $pass)) { -+ return $dn; -+ } -+ } -+ } -+ } - - if ($checkpass and !isset($dn)) { - // Si echec, essayer de deviner le DN