summaryrefslogtreecommitdiff
path: root/source4/rpc_server/wkssvc/dcesrv_wkssvc.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/rpc_server/wkssvc/dcesrv_wkssvc.c')
-rw-r--r--source4/rpc_server/wkssvc/dcesrv_wkssvc.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/source4/rpc_server/wkssvc/dcesrv_wkssvc.c b/source4/rpc_server/wkssvc/dcesrv_wkssvc.c
index 39bd6bfea8..9a94c0c5da 100644
--- a/source4/rpc_server/wkssvc/dcesrv_wkssvc.c
+++ b/source4/rpc_server/wkssvc/dcesrv_wkssvc.c
@@ -126,7 +126,28 @@ static NTSTATUS WKSSVC_NETRWKSTAUSERSETINFO(struct dcesrv_call_state *dce_call,
static NTSTATUS wkssvc_NetWkstaTransportEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX *mem_ctx,
struct wkssvc_NetWkstaTransportEnum *r)
{
- return NT_STATUS_NOT_IMPLEMENTED;
+ r->out.level = r->in.level;
+ r->out.totalentries = 0;
+ r->out.resume_handle = NULL;
+ r->out.result = WERR_OK;
+
+ switch (r->in.level) {
+ case 0: {
+ r->out.ctr.ctr0 = talloc_p(mem_ctx, struct wkssvc_NetWkstaTransportCtr0);
+ WERR_TALLOC_CHECK(r->out.ctr.ctr0);
+
+ r->out.ctr.ctr0->count = 0;
+ r->out.ctr.ctr0->array = NULL;
+
+ r->out.result = WERR_NOT_SUPPORTED;
+ break;
+ }
+ default:
+ r->out.result = WERR_UNKNOWN_LEVEL;
+ break;
+ }
+
+ return NT_STATUS_OK;
}