[
https://issues.apache.org/jira/browse/DIRSERVER-646?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alex Karasulu closed DIRSERVER-646.
-----------------------------------
Resolution: Fixed
http://svn.apache.org/viewvc?view=rev&revision=642984
Fixed for now. Added tests for all conditions even when multiple modifications
are present.
> Replacing an unknown attribute with no values (deletion) causes an error
> ------------------------------------------------------------------------
>
> Key: DIRSERVER-646
> URL: https://issues.apache.org/jira/browse/DIRSERVER-646
> Project: Directory ApacheDS
> Issue Type: Bug
> Affects Versions: 1.5.1, 1.0.2
> 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
> Assignee: Alex Karasulu
> Priority: Critical
> Fix For: 1.5.2, bigbang, 1.0.3
>
> Attachments: ReplaceNonExistingAttribute.java
>
>
> 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 situation.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.