[Tickets #13941] Re: LDAP List of Contacts fails with missing contact

noreply at bugs.horde.org noreply at bugs.horde.org
Thu Apr 9 18:27:00 UTC 2015


BITTE NICHT AUF DIESE NACHRICHT ANTWORTEN. NACHRICHTEN AN DIESE  
E-MAIL-ADRESSE WERDEN NICHT GELESEN.

Ticket-URL: https://bugs.horde.org/ticket/13941
------------------------------------------------------------------------------
  Ticket           | 13941
  Aktualisiert Von | heinz at htl-steyr.ac.at
  Zusammenfassung  | LDAP List of Contacts fails with missing contact
  Warteschlange    | Turba
  Version          | Git master
  Typ              | Bug
  Status           | Feedback
  Priorität        | 1. Low
  Milestone        |
  Patch            |
  Zuständige       |
------------------------------------------------------------------------------


heinz at htl-steyr.ac.at (2015-04-09 18:27) hat geschrieben:

> The actual bug is that there shouldn't be an exception leading to a  
> fatal error. Can you please provide the full error message and  
> backtrace?

In Turba_Driver_Ldap function _read() is called with an none existing dn.
@ldap_read returns no (false) result and ldap_error is "No such object"
  -> throw new Turba_Exception(sprintf(_("Read failed: (%s) %s"),  
ldap_errno($this->_ds), ldap_error($this->_ds)))


Turba_Driver's getObjects() has no exception handling and
Turba_Object_Group's listMembers() catches only Horde_Exception_NotFound


This results in a red notification box: "Failed to browse list" and no  
existing list members are displayed

quick fix:
catching a Turba_Exception also (in listMembers) leads in a
"There is 1 contact in this list that is not viewable to you"
witch would be correct

But: Maybe the Turba_Driver_Ldap should throw a  
Horde_Exception_NotFound in case of "No such object" error

> But to answer your original question: it's sufficient to copy the  
> $_objectOptions setting from the Kolab driver to the LDAP driver.
This would be nice to have in one of the next turba releases





More information about the bugs mailing list