ADSI Filters May Return Incorrect Results When Text Is Inside a Filter Match (258670)
The information in this article applies to:
- Microsoft Site Server 3.0
- Microsoft Site Server 3.0 Commerce Edition
This article was previously published under Q258670 SYMPTOMS
When you perform queries by using Active Directory Service Interfaces (ADSI) filters, incorrect results may be returned when there is text inside a filter match. The results vary depending on the data source that is being used.
For example, when the following query is performed by using Microsoft SQL Server, no results are returned:
<LDAP://server:port/o=Org/ou=Members>;(|(cn=*user*)(mail=*user*));ADsPath, cn, mail;subtree
However, when you use Microsoft Access, the correct information is returned, but an additional, incorrect record is also added to the recordset.
CAUSE
No results are returned because a substring search is actually being performed, and the substring is not being searched for completely throughout the comparing string. The search only works correctly if the substring appears at the beginning of the comparing string.
In other words, for the example query in the "Symptoms" section, the results are obtained by performing a search for user* instead of querying for *user*.
WORKAROUND
For the example query in the "Symptoms" section, change:
(&(cn=*user*)(|(mail=*user*)))
to:
(|(cn=*user*)(mail=*user*))
RESOLUTIONTo resolve this problem, obtain the latest service pack for Site Server version 3.0. For additional information, click the following article number to view the article in the
Microsoft Knowledge Base:
219292 How to Obtain the Latest Site Server 3.0 Service Pack
STATUSMicrosoft has confirmed that this is a problem in Site Server 3.0. This problem was first corrected in Site Server 3.0 Service Pack 4.
Modification Type: | Minor | Last Reviewed: | 9/26/2005 |
---|
Keywords: | kbHotfixServer kbQFE kbbug kbfix kbQFE kbSiteServ300sp4fix KB258670 |
---|
|