r18799: Prepare query_disp_info to use the next idx from the last result entry
authorGünther Deschner <gd@samba.org>
Thu, 21 Sep 2006 22:44:32 +0000 (22:44 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:00:59 +0000 (12:00 -0500)
for the enumeration loop (following msdn docs of that call).

Guenther

source/rpc_client/cli_samr.c

index fceafeca8524079df2fb8614b1737257743bae10..1ea1d33ffc568a7e6786dcd62dbb8f5a49ab5d6a 100644 (file)
@@ -1424,6 +1424,24 @@ void get_query_dispinfo_params(int loop_count, uint32 *max_entries,
 
 /* Query display info */
 
+static uint32 get_next_idx(SAMR_R_QUERY_DISPINFO *r)
+{
+       switch (r->switch_level) {
+       case 1:
+               return r->ctr->sam.info1->sam[r->num_entries-1].user_idx;
+       case 2:
+               return r->ctr->sam.info2->sam[r->num_entries-1].user_idx;
+       case 3:
+               return r->ctr->sam.info3->sam[r->num_entries-1].grp_idx;
+       case 4:
+               return r->ctr->sam.info4->sam[r->num_entries-1].user_idx;
+       case 5:
+               return r->ctr->sam.info5->sam[r->num_entries-1].grp_idx;
+       default:
+               return 0;
+       }
+}
+
 NTSTATUS rpccli_samr_query_dispinfo(struct rpc_pipe_client *cli,
                                    TALLOC_CTX *mem_ctx, 
                                    POLICY_HND *domain_pol, uint32 *start_idx,