[
https://issues.apache.org/jira/browse/DIRSTUDIO-1078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15021573#comment-15021573
]
Emmanuel Lecharny commented on DIRSTUDIO-1078:
----------------------------------------------
It's now clear to me we are overdoing. We use the same {{FilterParse}} class to
process a filter in the API and in the server, when obviously the processing
should be different. The normal procedure should be :
Client filter -> filter processing -> send to server -> Server filter -> search
processing
The client filter should just validate that the filter is correct, but by no
means should it change the initial filter if it's valid, because the server
filter will also check if the filter is valid and change it by unescaping the
values. If we unescape on the client side, we might end with invalide values on
the server side. This is typically what happens with the '#' seen in attribute
like {{member}}.
We need a flag that tells the {{FilterParser.parse()}} method to keep the
original filter on the client side.
> unable to use # pound hash sign in LDAP filters
> -----------------------------------------------
>
> Key: DIRSTUDIO-1078
> URL: https://issues.apache.org/jira/browse/DIRSTUDIO-1078
> Project: Directory Studio
> Issue Type: Bug
> Affects Versions: 2.0.0-M9 (2.0.0.v20150606-M9)
> Reporter: Sorin Sbarnea
>
> It seems impossible to perform searches that to use # sign inside. Tried to
> add them, not escaped, escaped with single or double backslash but none of
> these approaches worked.
> Example
> {code}
> (&(objectClass=group)(displayName=*)(|(memberOf:1.2.840.113556.1.4.1941:=CN=\\#SOME,OU=Groups,OU=EMEA,DC=example,DC=net)))
> (&(objectClass=group)(displayName=*)(|(memberOf:1.2.840.113556.1.4.1941:=CN=\#SOME,OU=Groups,OU=EMEA,DC=example,DC=net)))
> (&(objectClass=group)(displayName=*)(|(memberOf:1.2.840.113556.1.4.1941:=CN=#SOME,OU=Groups,OU=EMEA,DC=example,DC=net)))
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)