summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2001-07-20 01:35:00 +0000
committerTim Potter <tpot@samba.org>2001-07-20 01:35:00 +0000
commit2accab2589d8c3decc489fb6af8d65d437a506e7 (patch)
treee60db248d28e245d4211c0dc92cf39dfe18aebd4 /source
parente5b62b4961769e45bc377be6180ca61ef5f6c22e (diff)
downloadsamba-2accab2589d8c3decc489fb6af8d65d437a506e7.tar.gz
samba-2accab2589d8c3decc489fb6af8d65d437a506e7.tar.xz
samba-2accab2589d8c3decc489fb6af8d65d437a506e7.zip
Changed the cli_lsa_lookup_sids() function to unpack the domain and user or
group using rpcstr_pull_unistr2_fstring rather than pull_ascii_fstring (!!)
Diffstat (limited to 'source')
-rw-r--r--source/libsmb/cli_lsarpc.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/source/libsmb/cli_lsarpc.c b/source/libsmb/cli_lsarpc.c
index 61afeb7f38a..4f015f20f09 100644
--- a/source/libsmb/cli_lsarpc.c
+++ b/source/libsmb/cli_lsarpc.c
@@ -268,15 +268,19 @@ uint32 cli_lsa_lookup_sids(struct cli_state *cli, TALLOC_CTX *mem_ctx,
/* Translate optimised name through domain index array */
if (dom_idx != 0xffffffff) {
- pull_ascii_fstring(dom_name, &ref.ref_dom[dom_idx].uni_dom_name);
- pull_ascii_fstring(name, &t_names.uni_name[i]);
+
+ rpcstr_pull_unistr2_fstring(
+ dom_name, &ref.ref_dom[dom_idx].uni_dom_name);
+ rpcstr_pull_unistr2_fstring(
+ name, &t_names.uni_name[i]);
slprintf(full_name, sizeof(full_name) - 1,
"%s%s%s", dom_name, dom_name[0] ?
- "\\" : "", name);
+ lp_winbind_separator() : "", name);
(*names)[i] = talloc_strdup(mem_ctx, full_name);
(*types)[i] = t_names.name[i].sid_name_use;
+
} else {
(*names)[i] = NULL;
(*types)[i] = SID_NAME_UNKNOWN;