summaryrefslogtreecommitdiff
path: root/source3/rpc_server/srv_samr.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2001-02-16 19:21:18 +0000
committerJeremy Allison <jra@samba.org>2001-02-16 19:21:18 +0000
commitfd46817f0b20c633c80dee70a29cf7478e2dfd68 (patch)
treec7bc095fe35ac78b061d36ae04851ff04b006275 /source3/rpc_server/srv_samr.c
parent62dc55a43295e9e3abd9da13148b322b3aa89917 (diff)
downloadsamba-fd46817f0b20c633c80dee70a29cf7478e2dfd68.tar.gz
samba-fd46817f0b20c633c80dee70a29cf7478e2dfd68.tar.bz2
samba-fd46817f0b20c633c80dee70a29cf7478e2dfd68.zip
Excise snprintf -> slprintf.
srv_samr.c: duplicate gid fix. srv_spoolss_nt.c: Merge of JF's work. uid.c: Fix for returning names when a PDC. Jeremy. (This used to be commit d938ad6963a2dd4eda930d508600ec1902dc2b16)
Diffstat (limited to 'source3/rpc_server/srv_samr.c')
-rw-r--r--source3/rpc_server/srv_samr.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/source3/rpc_server/srv_samr.c b/source3/rpc_server/srv_samr.c
index e92658ea4d..eb24f672a9 100644
--- a/source3/rpc_server/srv_samr.c
+++ b/source3/rpc_server/srv_samr.c
@@ -788,6 +788,8 @@ static BOOL samr_reply_enum_dom_aliases(SAMR_Q_ENUM_DOM_ALIASES *q_u,
while (num_entries < MAX_SAM_ENTRIES && ((grp = getgrent()) != NULL))
{
+ int i;
+ uint32 trid;
name = grp->gr_name;
/* Don't return winbind groups as they are not local! */
@@ -796,8 +798,14 @@ static BOOL samr_reply_enum_dom_aliases(SAMR_Q_ENUM_DOM_ALIASES *q_u,
continue;
}
+ trid = pdb_gid_to_group_rid(grp->gr_gid);
+ for( i = 0; i < num_entries; i++)
+ if ( pass[i].user_rid == trid ) break;
+ if ( i < num_entries )
+ continue; /* rid was there, dup! */
+
init_unistr2(&(pass[num_entries].uni_user_name), name, strlen(name)+1);
- pass[num_entries].user_rid = pdb_gid_to_group_rid(grp->gr_gid);
+ pass[num_entries].user_rid = trid;
num_entries++;
}