diff --git a/ecrire/install.php3 b/ecrire/install.php3 index 468b887563b694e212bacce83f60e4804f10b562..a7ce176873d48e539f47df7d45f15bb27e452219 100644 --- a/ecrire/install.php3 +++ b/ecrire/install.php3 @@ -368,14 +368,16 @@ else if ($etape == 'ldap4') { $ldap_link = @ldap_connect("$adresse_ldap", "$port_ldap"); @ldap_bind($ldap_link, "$login_ldap", "$pass_ldap"); + // Essayer de verifier le chemin fourni $r = @ldap_compare($ldap_link, $base_ldap, "objectClass", ""); + $fail = (ldap_errno($ldap_link) == 32); - if ($r < 0) { + if ($fail) { echo "<BR><FONT FACE='Verdana,Arial,Helvetica,sans-serif' SIZE=3>Options : <B>Chemin d'accès dans l'annuaire</B></FONT>"; echo "<P>"; echo "<B>L'opération a échoué.</B> Le chemin que vous avez choisi (<tt>".htmlspecialchars($base_ldap); - echo "</tt>) ne semble pas valide, ou ne vous est pas autorisé. Veuillez retourner à la page précédente "; + echo "</tt>) ne semble pas valide. Veuillez retourner à la page précédente "; echo "et vérifier les informations fournies."; } else { @@ -446,7 +448,7 @@ else if ($etape == 'ldap3') { $checked = false; - if (is_array($info)) { + if (is_array($info) AND $info["count"] > 0) { echo "<P><b>Sélectionnez</b> ci-après le chemin d'accès dans l'annuaire :"; echo "<UL>"; $n = 0; @@ -475,7 +477,7 @@ else if ($etape == 'ldap3') { } echo ">"; echo "<label for='manuel'><B>Entrer</B> le chemin d'accès :</label> "; - echo "<INPUT TYPE='text' NAME='base_ldap_text' CLASS='fondo' VALUE=\"dc=mon-domaine, dc=com\" SIZE='40'></fieldset><P>"; + echo "<INPUT TYPE='text' NAME='base_ldap_text' CLASS='formo' VALUE=\"ou=users, dc=mon-domaine, dc=com\" SIZE='40'></fieldset><P>"; echo "<DIV align='right'><INPUT TYPE='submit' CLASS='fondl' NAME='Valider' VALUE='Suivant >>'>"; echo "</FORM>"; @@ -494,7 +496,7 @@ else if ($etape == 'ldap2') { $ldap_link = @ldap_connect("$adresse_ldap", "$port_ldap"); $r = @ldap_bind($ldap_link, "$login_ldap", "$pass_ldap"); - if ($ldap_link && $r) { + if ($ldap_link && ($r || !$login_ldap)) { echo "<B>La connexion LDAP a réussi.</B><P> Vous pouvez passer à l'étape suivante."; echo "<FORM ACTION='install.php3' METHOD='post'>"; @@ -551,7 +553,7 @@ else if ($etape == 'ldap1') { echo "<p><fieldset>"; echo "Certains serveurs LDAP n'acceptent aucun accès anonyme. Dans ce cas "; - echo "il faut spécifier un identifiant d'accés initial afin de pouvoir "; + echo "il faut spécifier un identifiant d'accès initial afin de pouvoir "; echo "ensuite rechercher des informations dans l'annuaire. Dans la plupart des cas "; echo "néanmoins, les champs suivants pourront être laissés vides.<p>"; echo "<label><B>Login LDAP initial</B><BR></label>";