- /* ensure this handle goes away at the end of this call */
- DCESRV_PULL_HANDLE(h, r2.in.handle, LSA_HANDLE_POLICY);
- talloc_steal(mem_ctx, h);
+ ZERO_STRUCT(q);
+
+ q.in.handle = NULL;
+ q.in.num_names = r->in.num_names;
+ q.in.names = r->in.names;
+ q.in.level = r->in.level;
+ q.in.sids = r->in.sids;
+ q.in.count = r->in.count;
+ q.in.lookup_options = r->in.lookup_options;
+ q.in.client_revision = r->in.client_revision;
+
+ q.out.count = r->out.count;
+ q.out.sids = r->out.sids;
+ q.out.domains = r->out.domains;
+
+ status = dcesrv_lsa_LookupNames_common(dce_call,
+ mem_ctx,
+ policy_state,
+ &q);
+
+ talloc_free(policy_state);
+
+ r->out.count = q.out.count;
+ r->out.sids = q.out.sids;
+ r->out.domains = q.out.domains;