[ https://issues.apache.org/jira/browse/DIRSERVER-1192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12610505#action_12610505 ] Emmanuel Lecharny commented on DIRSERVER-1192: ---------------------------------------------- Seems like we are not un-escaping escaped chars before normalizing the values, leading to a very bad behaviour. This is definitively a bug. > Pound sign beginning in a DN throws error > ----------------------------------------- > > Key: DIRSERVER-1192 > URL: https://issues.apache.org/jira/browse/DIRSERVER-1192 > Project: Directory ApacheDS > Issue Type: Bug > Components: core > Affects Versions: 1.5.3 > Environment: Running on windows Under JBOSS > Reporter: Steve hammond > Assignee: Emmanuel Lecharny > > When I create a dn of groupid=\#g1,ou=local,ou=users,ou=rm it throws out of LdapDN.normalize. I have the # escaped (groupid=\#g1) but when it calls rdn.getUpValue in LdapDN.oidNormalize, it returns "#g1" the backslash is gone, so 3 lines later when it does DefalutStringNormalizer.normalizeString it sees the # at the front and assumes the g1 is hex, and decodes it to a strange character that can't be normalized and throws at org.apache.directory.shared.ldap.schema.DeepTrimToLowerNormalizer.normal > ize(DeepTrimToLowerNormalizer.java:65) > With Invalid value : ? > Code sample is: > DefaultDirectoryService directoryService = new DefaultDirectoryService(); > SocketAcceptor socketAcceptor = new SocketAcceptor( null ); > apacheds = new LdapServer(); > apacheds.setSocketAcceptor( socketAcceptor ); > apacheds.setDirectoryService( directoryService ); > apacheds.setIpPort( ADS_PORT ); > ads = new ApacheDS(directoryService, apacheds, null); > ads.setLdifDirectory(new File(LDIF_DIR).getAbsoluteFile()); > ads.startup(); > LdapDN ldn = new LdapDN("groupid=\\#g1,ou=local,ou=users,ou=rm"); > ldn.normalize(directoryService.getRegistries().getAttributeTypeRegistry().getNormalizerMapping()); -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.