[Date Prev][Date Next] [Chronological] [Thread] [Top]

Sequence of Objectclasses in deletion ordered? (ITS#3346)



Full_Name: Attila Szüts
Version: 2.2.17
OS: Mandrake 8.2
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (195.56.97.217)


BerkleyDB: 4.2.52

If I want to remove many objectclasses from an entry I get this error message:
ldap_modify: No such attribute (16)
	additional info: modify/delete: objectClass: no such value

But if I change the order of objectclasses in LDIF the server will accept the
deletion.

Example entry:
-------------------
dn: mail=sterez@nowhere.com,o=mailAccounts,lvd=nowhere.com,o=domains,o
 =virtmailhosting,dc=nowhere,dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: LSCmailAccount
objectClass: posixAccount
objectClass: shadowAccount
objectClass: sambaSamAccount
cn: SambaName
sn: Samba
givenName:: Name
mail: sterez@nowhere.com
uid: sterez
vmailUid: 250
displayName: SambaName
ou: szerv.
updated: -1
mailHost: smtp:[192.168.1.73]
maildrop: sterez@nowhere.com
gidNumber: 1006
uidNumber: 1003
homeDirectory: /dev/null
loginShell: /bin/false
sambaSID: S-1-5-21-xxx-xxx-xxx-3006
sambaPrimaryGroupSID: S-1-5-21-xxx-xxx-xxx-3013
sambaDomainName: work
sambaPwdMustChange: 2147483647
sambaPwdLastSet: 1
sambaPwdCanChange: 0
sambaAcctFlags: [UXP        ]
created: 1096270294
smtpActive: TRUE
pop3Active: TRUE
mailquota: 10485760S
userPassword:: xxx
mailPassword:: xxx

LDIF, used to remove objectclasses AND their attributes:
--------------------------------------------------------------------------
dn: mail=sterez@nowhere.com,o=mailAccounts,lvd=nowhere.com,o=domains,o=virtmailhosting,dc=nowhere,dc=com
changetype: modify
delete: objectclass
objectclass: shadowAccount
objectclass: posixAccount
objectclass: sambaSamAccount
-
delete: gidNumber
-
delete: uidNumber
-
delete: homeDirectory
-
delete: loginShell
-
delete: sambaSID
-
delete: sambaPrimaryGroupSID
-
delete: sambaDomainName
-
delete: sambaAcctFlags
-
delete: sambaPwdCanChange
-
delete: sambaPwdMustChange
-
delete: sambaPwdLastSet
-

And the most interesting thing:
If you change the objectclasses order to:

objectclass: sambaSamAccount
objectclass: shadowAccount
objectclass: posixAccount

it  will be accepted by the LDAP server.
I've seen oc-s in schema, but couldn't find any relation(inheritance) between
objectclasses above.

Attila