summaryrefslogtreecommitdiffstats
path: root/source4/rpc_server
diff options
context:
space:
mode:
authorMatthias Dieter Wallnöfer <mdw@samba.org>2010-09-11 14:02:11 +0200
committerMatthias Dieter Wallnöfer <mdw@samba.org>2010-09-11 14:34:37 +0200
commit83cd3f76307edcba7df2fbbde54a029ce5b4e9f8 (patch)
treee43c8302db4308d07e9fb2dbcadf7a2cc104a025 /source4/rpc_server
parente84ab1b35fc6d1b1fbb4c02102be96db3e08cb83 (diff)
downloadsamba-83cd3f76307edcba7df2fbbde54a029ce5b4e9f8.tar.gz
samba-83cd3f76307edcba7df2fbbde54a029ce5b4e9f8.tar.xz
samba-83cd3f76307edcba7df2fbbde54a029ce5b4e9f8.zip
s4:dcesrv_samr_GetGroupsForUser - also universal group memberships are returned here
Tested using User Manager for Domains against Windows Server 2008. MS-SAMR 3.1.5.9.1 is wrong in this case therefore I've informed the dochelp team.
Diffstat (limited to 'source4/rpc_server')
-rw-r--r--source4/rpc_server/samr/dcesrv_samr.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/source4/rpc_server/samr/dcesrv_samr.c b/source4/rpc_server/samr/dcesrv_samr.c
index e222a41d26..4a3f95e68d 100644
--- a/source4/rpc_server/samr/dcesrv_samr.c
+++ b/source4/rpc_server/samr/dcesrv_samr.c
@@ -3564,9 +3564,10 @@ static NTSTATUS dcesrv_samr_GetGroupsForUser(struct dcesrv_call_state *dce_call,
count = samdb_search_domain(a_state->sam_ctx, mem_ctx,
d_state->domain_dn, &res,
attrs, d_state->domain_sid,
- "(&(member=%s)(grouptype=%d)(objectclass=group))",
+ "(&(member=%s)(|(grouptype=%d)(grouptype=%d))(objectclass=group))",
ldb_dn_get_linearized(a_state->account_dn),
- GTYPE_SECURITY_GLOBAL_GROUP);
+ GTYPE_SECURITY_GLOBAL_GROUP,
+ GTYPE_SECURITY_UNIVERSAL_GROUP);
if (count < 0)
return NT_STATUS_INTERNAL_DB_CORRUPTION;