Re: [Evolution] LDAP server update with Evolution
- From: Chris Toshok <toshok ximian com>
- To: Joaquim Fellmann <mljf altern org>
- Cc: Evolution Mailing List <evolution ximian com>
- Subject: Re: [Evolution] LDAP server update with Evolution
- Date: 07 Jan 2003 16:05:38 -0800
On Wed, 2003-01-08 at 14:33, Joaquim Fellmann wrote:
On Tue, 2003-01-07 at 23:01, Chris Toshok wrote:
Hm, were you trying to replace the existing objectClasses with person?
There shouldn't be a conflict between person and account that I can see.
Yes but not intentionaly.
I finally resolved the problem but can't understand why evolution is
unable to get the thing to work.
Here are the objectClasses needed for LDAP entries corresponding to user
account (to log in):
top
account
posixAccount
shadowAccount
Here's what evolution need to store 'mail' attribute:
top
person
organizationalPerson
inetOrgPerson
attribute sn is needed for the person objectClass
I resolved the problem by modifying manualy an entry with the following
ldif:
dn: uid=test,ou=People,dc=test,dc=com
objectClass: top
objectClass: account
objectClass: shadowAccount
objectClass: posixAccount
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
sn: Test
Why Evolution couldn't add the missing objectClass and attribute is
beyond me.
It does add the missing objectClasses (that's the reason the 'sn'
attribute is required), but it won't add an sn attribute if there's not
one in the contact editor, it only stores what it can from the input you
give.
Actually I may have an idea:
objectClass is a mutlivalued attribute.
If you want to update it you have to recall all objectclasses that were
already present in LDAP entries. If you do not, it's assuming you wan't
to replace the objectclass attribute. In our case replacing atrribute
objectClass (defined to account, posixAccount and shadowAccount) with
the person stuff is not possible because of attributes that need the one
you're overwriting (uid, uidNumber,...). I'm affraid evolution is not
including objectClasses of the already existing entries when it tries to
update an entry. I may be wrong. Just an idea.
Hm, there's actually code in the backend to do exactly this (keep
existing objectclasses while inserting evolution's...)
I added the following entry to my ldap server to test things out:
# accounttest, xtoph, org
dn: uid=accounttest,dc=xtoph,dc=org
uid: accounttest
objectClass: top
objectClass: account
objectClass: posixAccount
cn: Account
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/toshok
I bring that up in the contact editor and add an email address. When I
click "Save and Close" I get the same error dialog, and wombat spits
out:
ldap_modify_s: Object class violation
additional info: object class 'person' requires attribute 'sn'
But if I put the cursor into the Full Name field and change its value to
"Account Test" everything works fine. You can also set the surname
explicitly by clicking "Full Name..."
After completing the edit, the entry is:
# accounttest, xtoph, org
dn: uid=accounttest,dc=xtoph,dc=org
uid: accounttest
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: evolutionPerson
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/toshok
cn: Account Test
sn: Test
fileAs: Test, Account
mail: toshok ximian com
Chris
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]