You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Emmanuel Lecharny (JIRA)" <ji...@apache.org> on 2009/02/15 15:18:59 UTC
[jira] Closed: (DIRSERVER-1009) ASN.1 decoder does not use UTF-8
encoding for strings
[ https://issues.apache.org/jira/browse/DIRSERVER-1009?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Emmanuel Lecharny closed DIRSERVER-1009.
----------------------------------------
closed
> ASN.1 decoder does not use UTF-8 encoding for strings
> -----------------------------------------------------
>
> Key: DIRSERVER-1009
> URL: https://issues.apache.org/jira/browse/DIRSERVER-1009
> Project: Directory ApacheDS
> Issue Type: Bug
> Components: asn1
> Affects Versions: 1.5.0
> Environment: JDK 1.6, WinXP
> Reporter: Klemen Zagar
> Assignee: Emmanuel Lecharny
>
> Currently, LDAP ASN.1 decoder transforms byte[] to String via calls such as:
> String any = new String( tlv.getValue().getData() );
> (source: /ldap/src/main/java/org/apache/directory/shared/ldap/codec/actions/StoreAnyAction.java, line 74)
> This uses some default encoding, though according to LDAP RFC, UTF-8 should always be used (http://www.rfc-editor.org/rfc/rfc2251.txt, section 4.1.2).
> I recommend that the following code be used for converting byte[] to String:
> // static variable containing the UTF8 encoder
> private static final Charset UTF8 = Charset.forName("UTF8");
> // wherever byte[]->string conversion is needed
> String any = UTF8.decode(tlv.getValue().getData()).toString();
> From user's perspective, the problem is that non-ASCII characters in search filters are messed up, and search doesn't return any results.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.