directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Emmanuel Lecharny (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DIRSERVER-1553) Incorrect LDAP search query filter decoding depending on items order
Date Wed, 15 Sep 2010 23:10:33 GMT

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

Emmanuel Lecharny commented on DIRSERVER-1553:
----------------------------------------------

It's complicated. I'm wondering if the second filter was correctly handled by the pre-merge
code. Have to grab the revision and to debug it, to see how it behaves. Will take four more
hours, and as it's already 1am, will do that tomorrow.

This part of the code is really convoluted...

> 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
>            Assignee: Emmanuel Lecharny
>         Attachments: jagplay-data.ldif, jagplay-partition.ldif, jagplay-schema.ldif
>
>
> 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.


Mime
View raw message