directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <>
Subject [jira] Commented: (DIRSERVER-646) Replacing an unknown attribute with no values (deletion) causes an error
Date Sun, 02 Jul 2006 15:22:31 GMT
    [ ] 

Emmanuel Lecharny commented on DIRSERVER-646:

The LDAP RFC 2251 is pretty clear about this one :

4.6 Modify Operation :
While individual modifications may violate the directory schema, the resulting entry after
the entire list of modifications is performed MUST conform to the requirements of the directory

So I think that modifying a not existing attribute type violate the schema, thus must not
be accepted

> Replacing an unknown attribute with no values (deletion) causes an error
> ------------------------------------------------------------------------
>          Key: DIRSERVER-646
>          URL:
>      Project: Directory ApacheDS
>         Type: Bug

>     Versions: 1.0-RC3
>  Environment: ApacheDS 1.0 RC 3
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_04-b05)
> Microsoft Windows XP version 5.1 Service Pack 1
>     Reporter: Stefan Zoerner

> I am not sure, whether we have implemented the following right: RFC 2251 says in chapter
4.6. (Modify Operation) the following about replace modification items:
> "replace: replace all existing values of the given attribute with the new values listed,
creating the attribute if it did not already exist. A replace with no value will delete the
entire attribute if it exists, and is ignored if the attribute does not exist."
> The problem I have found has to do with the second part. To make it more concrete, here
is my example entry:
> dn: cn=Kate Bush,dc=example,dc=com
> cn: Kate Bush
> objectclass: top
> objectclass: person
> sn: Bush
> If I apply the following modification to it (replace with no value)
> dn: cn=Kate Bush,dc=example,dc=com
> changetype: modify
> replace: description
> -
> i.e.
> $ ldapmodify -h localhost -p 10389 -D "uid=admin,ou=system" -w ****** -f replaceDescription.ldif
> modifying entry cn=Kate Bush,dc=example,dc=com
> $
> ApacheDS works as expected and described in the RFC above: Nothing happens (especially
no error).  
> If I use an attribute which is not known to the server, e.g.
> dn: cn=Kate Bush,dc=example,dc=com
> changetype: modify
> replace: numberOfOctaves
> -
> The following happens
> $ ldapmodify -h localhost -p 10389 -D "uid=admin,ou=system" -w ****** -f replaceOctaves.ldif
> modifying entry cn=Kate Bush,dc=example,dc=com
> ldap_modify: Undefined attribute type
> ldap_modify: additional info: failed to modify entry cn=Kate Bush,dc=example,dc=com
> $
> I am not sure, whether the correct behavior is to ignore the replace modification here.
But I assume it (what does "is ignored if the attribute does not exist" exactly mean in the
RFC?). Sun Java System Directory Server 5.2. for instance does not throw an error in this

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message