summaryrefslogtreecommitdiffstats
path: root/src/providers/ldap/ldap_id.c
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2011-08-04 16:55:36 +0200
committerStephen Gallagher <sgallagh@redhat.com>2011-08-04 14:48:37 -0400
commit9357219643b329b107ed311d91fef8b6e6f3b804 (patch)
tree7b86d66e66b7a26b392f89a1c573641325df1a58 /src/providers/ldap/ldap_id.c
parent4a96fc15b3bcb381517850907c75bf847999ec0b (diff)
downloadsssd_unused-9357219643b329b107ed311d91fef8b6e6f3b804.tar.gz
sssd_unused-9357219643b329b107ed311d91fef8b6e6f3b804.tar.xz
sssd_unused-9357219643b329b107ed311d91fef8b6e6f3b804.zip
Fix returning groups when gidNumber attribute is not ordered
https://fedorahosted.org/sssd/ticket/951
Diffstat (limited to 'src/providers/ldap/ldap_id.c')
-rw-r--r--src/providers/ldap/ldap_id.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/providers/ldap/ldap_id.c b/src/providers/ldap/ldap_id.c
index 85d4aa0e..be347e17 100644
--- a/src/providers/ldap/ldap_id.c
+++ b/src/providers/ldap/ldap_id.c
@@ -346,10 +346,12 @@ struct tevent_req *groups_get_send(TALLOC_CTX *memctx,
goto fail;
}
- base_filter = talloc_asprintf(state, "(&(%s=%s)(objectclass=%s)(%s=*)(%s>=1))",
+ base_filter = talloc_asprintf(state,
+ "(&(%s=%s)(objectclass=%s)(%s=*)(&(%s=*)(!(%s=0))))",
attr_name, clean_name,
ctx->opts->group_map[SDAP_OC_GROUP].name,
ctx->opts->group_map[SDAP_AT_GROUP_NAME].name,
+ ctx->opts->group_map[SDAP_AT_GROUP_GID].name,
ctx->opts->group_map[SDAP_AT_GROUP_GID].name);
talloc_zfree(clean_name);
if (!base_filter) {