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

Re: Filter Problem



Hi Kenny,

I think for the filters, you should first identify the objectClass and then the attributes such as mail or givenName. The attributes that you are searching is within the inetOrgPerson objectClass. The inetOrgPerson is defined in inetorgperson.schema.

# inetOrgPerson
# The inetOrgPerson represents people who are associated with an
# organization in some way. It is a structural class and is derived
# from the organizationalPerson which is defined in X.521 [X521].
objectclass ( 2.16.840.1.113730.3.2.2
NAME 'inetOrgPerson'
DESC 'RFC2798: Internet Organizational Person'
SUP organizationalPerson
STRUCTURAL
MAY (
audio $ businessCategory $ carLicense $ departmentNumber $
displayName $ employeeNumber $ employeeType $ givenName $
homePhone $ homePostalAddress $ initials $ jpegPhoto $
labeledURI $ mail $ manager $ mobile $ o $ pager $
photo $ roomNumber $ secretary $ uid $ userCertificate $
x500uniqueIdentifier $ preferredLanguage $
userSMIMECertificate $ userPKCS12 )
)

For the first case, the attributes filter goes first, and that failed before it checks the second condition for objectClass.

first:
(&(|(mail=a*)(givenName=a*))(objectClass=inetOrgPerson))

Also for third case, are you missing the two right parenthses )'s at the end?

third: (|( &(objectClass=inetOrgPerson)(mail=a*)
         (&(objectClass=inetOrgPerson)(givenName=a*))
  ))   <== the missing two )'s.


Regards, Shuh


----- Original Message ----- From: "Kenny Chong" <kennycyb@gmail.com>
To: <OpenLDAP-software@OpenLDAP.org>
Sent: Monday, February 20, 2006 2:04 AM
Subject: Filter Problem



i have three identical filter

first:
(&(|(mail=a*)(givenName=a*))(objectClass=inetOrgPerson))

second:
(&(objectClass=inetOrgPerson)(|(mail=a*)(givenName=a*)))

third:
(|(&(objectClass=inetOrgPerson)(mail=a*)(&(objectClass=inetOrgPerson)(givenName=a*))

however, the first filter i didn't get any result, but the second and third filter i get what i want.

anyone know what is the problem with the first filter? the entries i want to search for contains all the three attribute (mail, givenName, objectClass)