3 #include "lib/util/tevent_ntstatus.h"
4 #include "librpc/rpc/dcerpc_connection.h"
5 #include "bin/default/source4/librpc/gen_ndr/s3compat_winstation.h"
7 struct _s3_compat_winstation_foo_state {
8 struct tevent_context *ev;
9 struct dcerpc_call_handle *call;
10 struct winstation_foo *r;
13 static struct tevent_req *_s3_compat_winstation_foo_send(TALLOC_CTX *mem_ctx,
14 struct tevent_context *ev,
15 struct dcerpc_call_handle *call,
16 struct winstation_foo *r)
18 struct tevent_req *req;
19 struct _s3_compat_winstation_foo_state *state;
20 struct pipes_struct *p;
22 req = tevent_req_create(mem_ctx, &state,
23 struct _s3_compat_winstation_foo_state);
31 p = dcerpc_call_handle_get_pipes_struct(call);
33 tevent_req_nterror(req, NT_STATUS_NO_MEMORY);
34 return tevent_req_post(req, ev);
37 _winstation_foo(p, r);
40 NTSTATUS status = dcerpc_fault_to_nt_status(p->fault_state);
41 tevent_req_nterror(req, status);
42 return tevent_req_post(req, ev);
46 return tevent_req_post(req, ev);
49 static NTSTATUS _s3_compat_winstation_foo_recv(struct tevent_req *req)
51 return tevent_req_simple_recv_ntstatus(req);
55 static const struct dcerpc_call_entry_point_fns _s3_compat_winstation_fns[] = {
57 .send_fn = (dcerpc_call_entry_point_send_fn_t)
58 _s3_compat_winstation_foo_send,
59 .recv_fn = (dcerpc_call_entry_point_recv_fn_t)
60 _s3_compat_winstation_foo_recv,
68 static const struct dcerpc_call_entry_point_vector _s3_compat_winstation_epv[] = {
70 .name = "_s3_compat_winstation",
71 .table = &ndr_table_winstation,
73 .fns = _s3_compat_winstation_fns,
77 NTSTATUS dcerpc_server_setup_s3compat_winstation(struct dcerpc_server *server)
79 return NT_STATUS_NOT_IMPLEMENTED;