r15460: Prefer to use the indexed objectCategory attribute (instead of
authorGünther Deschner <gd@samba.org>
Fri, 5 May 2006 15:44:00 +0000 (15:44 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 16:16:49 +0000 (11:16 -0500)
objectClass which is not indexed on AD) in LDAP queries.

Guenther
(This used to be commit 847882a98328b91a2157959c5dad0a2023223846)

source3/nsswitch/winbindd_ads.c
source3/utils/net_ads.c

index 30064603d16e995ac4b749eb3ac58caf97b4c028..d233821111f629efcfa23d1d7dd0e462824c290f 100644 (file)
@@ -173,7 +173,7 @@ static NTSTATUS query_user_list(struct winbindd_domain *domain,
                goto done;
        }
 
-       rc = ads_search_retry(ads, &res, "(objectClass=user)", attrs);
+       rc = ads_search_retry(ads, &res, "(objectCategory=user)", attrs);
        if (!ADS_ERR_OK(rc) || !res) {
                DEBUG(1,("query_user_list ads_search: %s\n", ads_errstr(rc)));
                goto done;
@@ -552,7 +552,7 @@ static NTSTATUS lookup_usergroups_alt(struct winbindd_domain *domain,
        /* buggy server, no tokenGroups.  Instead lookup what groups this user
           is a member of by DN search on member*/
 
-       if (!(ldap_exp = talloc_asprintf(mem_ctx, "(&(member=%s)(objectClass=group))", escaped_dn))) {
+       if (!(ldap_exp = talloc_asprintf(mem_ctx, "(&(member=%s)(objectCategory=group))", escaped_dn))) {
                DEBUG(1,("lookup_usergroups(dn=%s) asprintf failed!\n", user_dn));
                SAFE_FREE(escaped_dn);
                status = NT_STATUS_NO_MEMORY;
index e02da46b9c650c15ef1ba60a5f0dccf4228d5440..cca8dd63d0bc8fc9336fc792b3dce74f9687b7ec 100644 (file)
@@ -473,7 +473,7 @@ int net_ads_user(int argc, const char **argv)
 
                rc = ads_do_search_all_fn(ads, ads->config.bind_path, 
                                          LDAP_SCOPE_SUBTREE,
-                                         "(objectclass=user)", 
+                                         "(objectCategory=user)", 
                                          opt_long_list_entries ? longattrs :
                                          shortattrs, usergrp_display, 
                                          disp_fields);
@@ -597,7 +597,7 @@ int net_ads_group(int argc, const char **argv)
                                 "\n-----------------------------\n");
                rc = ads_do_search_all_fn(ads, ads->config.bind_path, 
                                          LDAP_SCOPE_SUBTREE, 
-                                         "(objectclass=group)", 
+                                         "(objectCategory=group)", 
                                          opt_long_list_entries ? longattrs : 
                                          shortattrs, usergrp_display, 
                                          disp_fields);