diff options
Diffstat (limited to 'source4/rpc_server/srvsvc')
-rw-r--r-- | source4/rpc_server/srvsvc/dcesrv_srvsvc.c | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/source4/rpc_server/srvsvc/dcesrv_srvsvc.c b/source4/rpc_server/srvsvc/dcesrv_srvsvc.c index 9e43317ae8..dc115547cf 100644 --- a/source4/rpc_server/srvsvc/dcesrv_srvsvc.c +++ b/source4/rpc_server/srvsvc/dcesrv_srvsvc.c @@ -1558,27 +1558,26 @@ static WERROR dcesrv_srvsvc_NetSrvSetInfo(struct dcesrv_call_state *dce_call, TA static WERROR dcesrv_srvsvc_NetDiskEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx, struct srvsvc_NetDiskEnum *r) { - r->out.info.disks = NULL; - r->out.info.count = 0; - r->out.totalentries = 0; - r->out.resume_handle = NULL; + r->out.info->disks = NULL; + r->out.info->count = 0; + *r->out.totalentries = 0; switch (r->in.level) { case 0: { /* we can safely hardcode the reply and report we have only one disk (C:) */ /* for some reason Windows wants 2 entries with the second being empty */ - r->out.info.disks = talloc_array(mem_ctx, struct srvsvc_NetDiskInfo0, 2); - W_ERROR_HAVE_NO_MEMORY(r->out.info.disks); - r->out.info.count = 2; + r->out.info->disks = talloc_array(mem_ctx, struct srvsvc_NetDiskInfo0, 2); + W_ERROR_HAVE_NO_MEMORY(r->out.info->disks); + r->out.info->count = 2; - r->out.info.disks[0].disk = talloc_strdup(mem_ctx, "C:"); - W_ERROR_HAVE_NO_MEMORY(r->out.info.disks[0].disk); + r->out.info->disks[0].disk = talloc_strdup(mem_ctx, "C:"); + W_ERROR_HAVE_NO_MEMORY(r->out.info->disks[0].disk); - r->out.info.disks[1].disk = talloc_strdup(mem_ctx, ""); - W_ERROR_HAVE_NO_MEMORY(r->out.info.disks[1].disk); + r->out.info->disks[1].disk = talloc_strdup(mem_ctx, ""); + W_ERROR_HAVE_NO_MEMORY(r->out.info->disks[1].disk); - r->out.totalentries = 1; + *r->out.totalentries = 1; r->out.resume_handle = r->in.resume_handle; return WERR_OK; |