[turba] ldap add contact error - object class violation

Adam Tauno Williams adam at morrison-ind.com
Thu Mar 13 06:58:01 PST 2003


>>i posted with this problem about a month ago, didn't get any responses,
>>re-did my horde setup, still having same prob so now i'm trying again. i
>>think i must be missing something simple...  i'm trying to get a turba
>>personal address book working with an ldap backend but seem to be having
>>problems adding new contacts. also, i can use the preferences-based
>>address book so i know horde is talking to ldap correctly.
>>[ID 217296 local4.debug] conn=5 op=1 RESULT tag=105 err=65 text=invalid
>>structural object class chain (pilotPerson/organizationalPerson)

You can use the OpenLDAPperson which combines these two and is defined in the
standard schema.
objectClass ( 1.3.6.1.4.1.4203.1.4.5 NAME 'OpenLDAPperson'
        DESC 'OpenLDAP Person'
        SUP ( pilotPerson $ inetOrgPerson )
        MUST ( uid $ cn )
        MAY ( givenName $ labeledURI $ o ) )

>hello, 
>i instgalled horde 2.2 and imp 3.2 with turba1.1 about 1 Month ago
>on linux (Suse) with openLDAP 2.1.4
>storing users, preferences, turba all in LDAP (i dont use MYSQL)
>It was a hard WAY, because LDAP is not the favorite for the developers and
>the doc are pretty small.

I don't percieve this as true,  LDAP support in Horde is leaps and bounds above
that found in most application suites.  They fixed several annoying things in
Turba 1.2.

>I have understod that my and probable yours problem is Openldap Version 3:

There is no OpenLDAP version three, there is version 3 of the LDAP spec.

>is very strict with the schema definition (with schemacheck off or ON)

Schemacheck in openldap only effects the enforcement of the MUST/MAY clauses of
objectclasses.  Attributes must still be defined and the LDAP data model must
still be respected.  You shouldn't need to turn if off, and over the long term
you REALLY don't want to.
 
>ITS TIME TO WRITE A GOOD LDAP-DOCU for Horde !! (ldap is the future)

ftp://ftp.kalamazoolinux.org/pub/pdf/ldapv3.pdf
It has a section on Turba, and I'm working on a section on Horde in general.
It is linked to from the Turba project page.

> i have inserted in sources.php for the personala adressook:
>   'map' => array(
>         '__key' => 'dn',
>         '__type' => 'type',
>         '__members' => 'members',
> for this i inserted in my hordepers.schema:
> attributetype ( 1.3.6.1.4.1.13040.221.222.4.101
>         NAME 'type'
>         DESC 'type'
>         EQUALITY caseIgnoreIA5Match
>         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{1024} )
> attributetype ( 1.3.6.1.4.1.13040.221.2222.4.102
>         NAME 'members'
>         DESC 'members'
>         EQUALITY caseIgnoreIA5Match
>         SYNTAX 1.3.6.1.4.1.1466.115.121.1.26{1024} )
> ##############################
> that was i sayed bevor: to use this features with ldap i have to change the 
> schemas .... but there is no documentation on how to make it

I'd think that "type" and "members" are bad choices for names, as they are bound
to conflict with some schema down the line.  turbaType and turbaMembers would
probably be safer.  One rule of schema design is the make the names as specific
as possible.  

Also to create your own schema you need to register for an OID, or use the
expiremental branch under 1.1.x.  You shouldn't camp on other people's OIDs. 
I presume 1.3.6.1.4.1.13040 belongs to the Horde project.


More information about the turba mailing list