[ 
https://issues.apache.org/jira/browse/DIRSERVER-1192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14153419#comment-14153419
 ] 

Emmanuel Lecharny commented on DIRSERVER-1192:
----------------------------------------------

To be clear :

(memberOf:1.2.840.113556.1.4.1941:=CN=\#GROUP,OU=Americas,DC=example,DC=com)

is invalid. the '\' should only prefix hex values, # is not a hax value (ie, 
0-9, a-f, A-F).

Second, ApacheDS does not support extensible filter component. Whatever you 
use, it will just do nothing.

> 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 was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to