Summary | LDAP store() fails on Kolab LDAP server |
Queue | Horde Base |
Queue Version | HEAD |
Type | Bug |
State | Resolved |
Priority | 1. Low |
Owners | stuart (at) |
Requester | a.gungl (at) gmx (dot) de |
Created | 01/21/2005 (7441 days ago) |
Due | |
Updated | 01/17/2011 (5254 days ago) |
Assigned | 01/31/2005 (7431 days ago) |
Resolved | 02/04/2005 (7427 days ago) |
Milestone | |
Patch | No |
State ⇒ Resolved
working. I don't know what was broken, so I think the ticket can get
closed as solved.
If you like, you can nevertheless have a look at my proposed change. I
believe it decreases the roundtrips to the LDAP server because during
the first step (connect) the attribute/value pair is stored and
re-used in subsequent requests, so that the iteration through the
array isn't needed for the other steps.
New Attachment: ldap.php.diff
'mail' (preferred lookup filed in LDAP) should be replaced by the
first item in the array of the lookup fields. I'm lacking a bit of PHP
skills here. I've tested the patch and it's working while the original
changes alone don't work on my system and seem to be inefficient too.
New Attachment: ldap.php
note, I don't have PHP skills, so some optimization and roundup might
be necessary. Feel free to change the code and remove my additional
debug statements.
(default identity, language settings, etc.). To get the settings
working again, one can change the array in kolab.php back to
$params['uid'] = array('mail');
I wonder a little bit about the approach to the problem. Wouldn't it
help to do the first LDAP lookup based on the data in the array to
retrieve the primary mail address and operate on that one in all
subsequent lookups?
Anyway, the current state of the sources isn't really an improvement.
<http://cvs.horde.org/diff.php/framework/Prefs/Prefs/kolab.php?r1=1.2&r2=1.3&ty=u> is also needed in order for the Kolab prefs driver to actually make use of the new
functionality.
State ⇒ Feedback
<http://cvs.horde.org/diff.php/framework/Prefs/Prefs/ldap.php?r1=1.86&r2=1.87&ty=u>
One minor problem I've noticed is the "Last login:" notice on the
portal page is not consistent between two logins using email and uid
fields (it ends up being "Never" for one of the logins).
well as my e-mail address to authenticate in the Horde frontend.
The ldap search is done via mail=<used login>, but this of course
cannot work when I used my uid to log into Horde. The query would have
to be uid=<used login> and that's not supported currently.
Using my e-mail address when logging into Horde results in proper LDAP
lookups.
State ⇒ Assigned
Priority ⇒ 1. Low
Type ⇒ Bug
Summary ⇒ LDAP store() fails on Kolab LDAP server
Queue ⇒ Horde Base
State ⇒ Unconfirmed
class hordePerson using uid=<login> which will return an inetOrgPerson
instance in the Kolab LDAP tree.
If you manipulate Prefs/ldap.php, you can avoid those lines. Just comment
out the section below the comment /* Send the hash to the LDAP server. */
in Prefs_ldap.store() and let the "if ($search)" some lines above evaluate
to false.