svn commit: samba r6283 - in trunk/source/rpc_server: .
vlendec at samba.org
vlendec at samba.org
Sun Apr 10 17:12:39 GMT 2005
Author: vlendec
Date: 2005-04-10 17:12:38 +0000 (Sun, 10 Apr 2005)
New Revision: 6283
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=6283
Log:
Before converting enum_dom_groups, better get the previous version a bit
closer to being correct. 'svn blame' shows CVSIN, but somehow I get the
feeling this is my code...
Volker
Modified:
trunk/source/rpc_server/srv_samr_nt.c
Changeset:
Modified: trunk/source/rpc_server/srv_samr_nt.c
===================================================================
--- trunk/source/rpc_server/srv_samr_nt.c 2005-04-10 17:12:25 UTC (rev 6282)
+++ trunk/source/rpc_server/srv_samr_nt.c 2005-04-10 17:12:38 UTC (rev 6283)
@@ -977,6 +977,7 @@
int i;
uint32 group_entries = 0;
uint32 num_entries = 0;
+ NTSTATUS result = NT_STATUS_OK;
*p_num_entries = 0;
@@ -994,6 +995,7 @@
if (num_entries>max_entries) {
DEBUG(5,("Limiting to %d entries\n", max_entries));
num_entries=max_entries;
+ result = STATUS_MORE_ENTRIES;
}
*d_grp=TALLOC_ZERO_ARRAY(ctx, DOMAIN_GRP, num_entries);
@@ -1016,7 +1018,7 @@
DEBUG(10,("get_group_domain_entries: returning %d entries\n",
*p_num_entries));
- return NT_STATUS_OK;
+ return result;
}
/*******************************************************************
@@ -1083,13 +1085,19 @@
DEBUG(5,("samr_reply_enum_dom_groups: %d\n", __LINE__));
/* the domain group array is being allocated in the function below */
- if (!NT_STATUS_IS_OK(r_u->status = get_group_domain_entries(p->mem_ctx, &grp, &sid, q_u->start_idx, &num_entries, MAX_SAM_ENTRIES))) {
+ r_u->status = get_group_domain_entries(p->mem_ctx, &grp, &sid,
+ q_u->start_idx, &num_entries,
+ MAX_SAM_ENTRIES);
+
+ if (!NT_STATUS_IS_OK(r_u->status) &&
+ !NT_STATUS_EQUAL(r_u->status, STATUS_MORE_ENTRIES))
return r_u->status;
- }
- make_group_sam_entry_list(p->mem_ctx, &r_u->sam, &r_u->uni_grp_name, num_entries, grp);
+ make_group_sam_entry_list(p->mem_ctx, &r_u->sam, &r_u->uni_grp_name,
+ num_entries, grp);
- init_samr_r_enum_dom_groups(r_u, q_u->start_idx, num_entries);
+ init_samr_r_enum_dom_groups(r_u, q_u->start_idx+num_entries,
+ num_entries);
DEBUG(5,("samr_enum_dom_groups: %d\n", __LINE__));
More information about the samba-cvs
mailing list