Incorrect LDAP search query filter decoding depending on items order
--------------------------------------------------------------------
Key: DIRSERVER-1553
URL: https://issues.apache.org/jira/browse/DIRSERVER-1553
Project: Directory ApacheDS
Issue Type: Bug
Components: ldap
Affects Versions: 2.0.0
Reporter: Victor Antonovich
In current trunk version of ApacheDS some search queries decoded incorrectly.
For example, search query with filter:
(&(&(jagplayUserGroup=Active)(!(jagplayUserGroup=Banned))(jagplayUserNickname=admin)))
is decoded correctly with log:
[15:18:02] DEBUG [org.apache.directory.shared.ldap.codec.LdapDecoder] - Decoded
LdapMessage : SearchRequest
baseDn : 'ou=users,dc=jagplay,dc=com'
filter :
'&(&(jagplayUserGroup=Active)(!(jagplayUserGroup=Banned))(jagplayUserNickname=admin))'
scope : whole subtree
typesOnly : false
Size Limit : 1000
Time Limit : no limit
Deref Aliases : deref Always
attributes : 'objectClass'
but same query with only swapped items:
(&(jagplayUserNickname=admin)(&(jagplayUserGroup=Active)(!(jagplayUserGroup=Banned))))
is decoded incorrectly with message:
[15:28:43] DEBUG [org.apache.directory.shared.ldap.codec.LdapDecoder] - Decoded
LdapMessage : SearchRequest
baseDn : 'ou=users,dc=jagplay,dc=com'
filter : '&(jagplayUserGroup=Active)(!(jagplayUserGroup=Banned))'
scope : whole subtree
typesOnly : false
Size Limit : 1000
Time Limit : no limit
Deref Aliases : deref Always
attributes : 'objectClass'
so top AND assertion with (jagplayUserNickname=admin) item is lost completely
and search results are totally wrong.
Seems like this behavior was introduced after commit 987606 "merging changes
done by Emmanuel in codec message merge branch".
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.