summaryrefslogtreecommitdiff
path: root/source3/rpc_server
diff options
context:
space:
mode:
Diffstat (limited to 'source3/rpc_server')
-rw-r--r--source3/rpc_server/srv_samr_nt.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/source3/rpc_server/srv_samr_nt.c b/source3/rpc_server/srv_samr_nt.c
index 94524da352..2434fad74a 100644
--- a/source3/rpc_server/srv_samr_nt.c
+++ b/source3/rpc_server/srv_samr_nt.c
@@ -798,10 +798,20 @@ static BOOL get_group_alias_entries(DOMAIN_GRP *d_grp, DOM_SID *sid, uint32 star
uint32 trid;
name = grp->gr_name;
+ DEBUG(10,("get_group_alias_entries: got group %s\n", name ));
+
/* Don't return winbind groups as they are not local! */
- if (strchr(name, *sep) != NULL)
+ if (strchr(name, *sep) != NULL) {
+ DEBUG(10,("get_group_alias_entries: not returing %s, not local.\n", name ));
continue;
+ }
+
+ /* Don't return user private groups... */
+ if (Get_Pwnam(name, False) != 0) {
+ DEBUG(10,("get_group_alias_entries: not returing %s, clashes with user.\n", name ));
+ continue;
+ }
trid = pdb_gid_to_group_rid(grp->gr_gid);
for( i = 0; i < num_entries; i++)