|
Emmanuel Lecharny made changes - 23/Nov/06 05:28 PM
After having read the issue again, I realised that it was a real problem when using an embedded server, not a problem when using a remote server.
We have to provide a safer parser for filters.
Emmanuel Lecharny made changes - 09/Sep/08 07:23 AM
Emmanuel Lecharny made changes - 09/Sep/08 07:23 AM
It seems to be fixed. I just have added a test to check that broken filters throw the correct exception (InvalidSearchFilterException) : http://svn.apache.org/viewvc?rev=695143&view=rev
Emmanuel Lecharny made changes - 14/Sep/08 08:43 AM
Emmanuel Lecharny made changes - 15/Feb/09 02:06 PM
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The reason is that the server don't receive the filter the way you write it. The LdapProtocol for a Search Request is a binary protocol, not a textual one, and the search filter is written this way for your request :
(&(cn=somerandomstring)(objectClass=RakInstanceDescriptor))
is translated to :
0xA0
0xA3 0x16
0x04 0x02 'c'n'
0x04 0x10 'somerandomstring'
0xA3 0x24
0x04 0x0B 'objectClass'
0x04 0x15 'RakInstanceDescriptor'
This is the client side parser which should be fixed...
Ok, now, if you use the shared-ldap API to parse the filter, then we have a problem, but this is another JIRA :)