From be533b6915f32934f9e8d34f299846f42038dd1d Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 19 Feb 2004 23:01:52 +0000 Subject: Fixup returns from lookupsids in the same way as lookupnames. Inspired by Volkers patch. Jeremy. (This used to be commit aff6bacf0e461322e6e165cb7a6a42f4d976f52b) --- source3/rpc_server/srv_lsa_nt.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/source3/rpc_server/srv_lsa_nt.c b/source3/rpc_server/srv_lsa_nt.c index ddf79ef564..aa933f9d0d 100644 --- a/source3/rpc_server/srv_lsa_nt.c +++ b/source3/rpc_server/srv_lsa_nt.c @@ -174,7 +174,7 @@ static void init_lsa_rid2s(DOM_R_REF *ref, DOM_RID2 *rid2, (*mapped_count)++; } else { dom_idx = -1; - rid = 0xffffffff; + rid = 0; name_type = SID_NAME_UNKNOWN; } @@ -202,11 +202,6 @@ static void init_reply_lookup_names(LSA_R_LOOKUP_NAMES *r_l, r_l->dom_rid = rid2; r_l->mapped_count = mapped_count; - - if (mapped_count == 0) - r_l->status = NT_STATUS_NONE_MAPPED; - else - r_l->status = NT_STATUS_OK; } /*************************************************************************** @@ -711,6 +706,12 @@ done: /* set up the LSA Lookup RIDs response */ init_lsa_rid2s(ref, rids, num_entries, names, &mapped_count, p->endian); + if (mapped_count == 0) + r_u->status = NT_STATUS_NONE_MAPPED; + else if (mapped_count != num_entries) + r_u->status = STATUS_SOME_UNMAPPED; + else + r_u->status = NT_STATUS_OK; init_reply_lookup_names(r_u, ref, num_entries, rids, mapped_count); return r_u->status; -- cgit