[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: ldapsearch issue



Derek Yarnell wrote:
Hi,

So I was trying to do the following search,

(&(automountMapName=auto*)(objectClass=automountMap))

It logs the following though,

slapd[5205]: conn=258105 op=9 SRCH base="ou=automount,ou=system,dc=XXX,dc=XXX,dc=XXX" scope=2 deref=2 filter="(&(?automountMapName=auto*)(objectClass=automountMap))"

If you do this search

(&(automountMapName=*)(objectClass=automountMap))

slapd[5205]: conn=258174 op=1 SRCH base="ou=automount,ou=system,dc=XXX,dc=XXX,dc=XXX" scope=2 deref=0 filter="(&(automountMapName=*)(objectClass=automountMap))"

This is the schema definition on the server (rfc2307bis),

attributeType (
  1.3.6.1.1.1.1.31 NAME 'automountMapName'
  DESC 'automount Map Name'
  EQUALITY caseExactIA5Match
  SUBSTR caseExactIA5SubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26
  SINGLE-VALUE
  )

My feeling is that caseExactIA5SubstringsMatch is doing something very
wrong here.  Shouldn't slapd be returning a error not injecting a ? in my
search.

No. Read RFC 4511. Invalid filters are simply treated as Undefined, they never generate an error response. The '?' is only present in the log message, to identify what was invalid. It has no effect on any of the processing.

--
  -- Howard Chu
  CTO, Symas Corp.           http://www.symas.com
  Director, Highland Sun     http://highlandsun.com/hyc/
  Chief Architect, OpenLDAP  http://www.openldap.org/project/