[
https://issues.apache.org/jira/browse/DIRSERVER-2109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15149989#comment-15149989
]
Stefan Seelmann commented on DIRSERVER-2109:
--------------------------------------------
But then you have to add the flag to the whole call path from Dn to StringValue
to Normalizer to PrepareString.
I wonder if unescaping should at all be done in PrepareString method. IIRC it
is only required when parsing DN/RDN string representation, so probably the
unescape method should be moved to the Dn/Rdn/Ava class and only used there?
> Apply LDIF with special crafted DN creates two CN attributes
> ------------------------------------------------------------
>
> Key: DIRSERVER-2109
> URL: https://issues.apache.org/jira/browse/DIRSERVER-2109
> Project: Directory ApacheDS
> Issue Type: Bug
> Affects Versions: 2.0.0-M21
> Reporter: Stefan Seelmann
>
> In Studio we have a test that injects an entry with a special crafted DN (cn
> starts with #, contains plus, comma, quotes). This entry is injected using
> the {{@ApplyLdifFiles}} annotation. The injected entry then contains two CN
> attributes, one with proper unescaped value, one with still escaped value.
> Here is the LDIF:
> {code}
> # cn=\#\\\+\, \"öé\",ou=users,ou=system
> dn:: Y249XCNcXFwrXCwgXCLDtsOpXCIsb3U9dXNlcnMsb3U9c3lzdGVt
> objectClass: inetOrgPerson
> objectClass: organizationalPerson
> objectClass: person
> objectClass: top
> cn:: I1wrLCAiw7bDqSI=
> sn:: I1wrLCAiw7bDqSI=
> givenName:: I1wrLCAiw7bDqSI=
> uid:: I1wrLCAiw7bDqSI=
> {code}
> Here the sysout of the injected entry with the two CN attributes:
> {code}
> dn[n]: cn=\#\\\+\, \"öé\",ou=users,ou=system
> objectclass: organizationalPerson
> objectclass: person
> objectclass: inetOrgPerson
> objectclass: top
> givenname: #\+, "öé"
> uid: #\+, "öé"
> cn: #\+, "öé"
> cn: \#\\\+\, \"öé\"
> sn: #\+, "öé"
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)