2 * Unix SMB/CIFS implementation.
3 * client auto-generated by pidl. DO NOT MODIFY!
7 #include "../librpc/gen_ndr/cli_initshutdown.h"
9 struct rpccli_initshutdown_Init_state
{
10 struct initshutdown_Init orig
;
11 struct initshutdown_Init tmp
;
12 TALLOC_CTX
*out_mem_ctx
;
13 NTSTATUS (*dispatch_recv
)(struct tevent_req
*req
, TALLOC_CTX
*mem_ctx
);
16 static void rpccli_initshutdown_Init_done(struct tevent_req
*subreq
);
18 struct tevent_req
*rpccli_initshutdown_Init_send(TALLOC_CTX
*mem_ctx
,
19 struct tevent_context
*ev
,
20 struct rpc_pipe_client
*cli
,
21 uint16_t *_hostname
/* [in] [unique] */,
22 struct lsa_StringLarge
*_message
/* [in] [unique] */,
23 uint32_t _timeout
/* [in] */,
24 uint8_t _force_apps
/* [in] */,
25 uint8_t _do_reboot
/* [in] */)
27 struct tevent_req
*req
;
28 struct rpccli_initshutdown_Init_state
*state
;
29 struct tevent_req
*subreq
;
31 req
= tevent_req_create(mem_ctx
, &state
,
32 struct rpccli_initshutdown_Init_state
);
36 state
->out_mem_ctx
= NULL
;
37 state
->dispatch_recv
= cli
->dispatch_recv
;
40 state
->orig
.in
.hostname
= _hostname
;
41 state
->orig
.in
.message
= _message
;
42 state
->orig
.in
.timeout
= _timeout
;
43 state
->orig
.in
.force_apps
= _force_apps
;
44 state
->orig
.in
.do_reboot
= _do_reboot
;
49 ZERO_STRUCT(state
->orig
.out
.result
);
51 /* make a temporary copy, that we pass to the dispatch function */
52 state
->tmp
= state
->orig
;
54 subreq
= cli
->dispatch_send(state
, ev
, cli
,
55 &ndr_table_initshutdown
,
56 NDR_INITSHUTDOWN_INIT
,
58 if (tevent_req_nomem(subreq
, req
)) {
59 return tevent_req_post(req
, ev
);
61 tevent_req_set_callback(subreq
, rpccli_initshutdown_Init_done
, req
);
65 static void rpccli_initshutdown_Init_done(struct tevent_req
*subreq
)
67 struct tevent_req
*req
= tevent_req_callback_data(
68 subreq
, struct tevent_req
);
69 struct rpccli_initshutdown_Init_state
*state
= tevent_req_data(
70 req
, struct rpccli_initshutdown_Init_state
);
74 if (state
->out_mem_ctx
) {
75 mem_ctx
= state
->out_mem_ctx
;
80 status
= state
->dispatch_recv(subreq
, mem_ctx
);
82 if (!NT_STATUS_IS_OK(status
)) {
83 tevent_req_nterror(req
, status
);
87 /* Copy out parameters */
90 state
->orig
.out
.result
= state
->tmp
.out
.result
;
92 /* Reset temporary structure */
93 ZERO_STRUCT(state
->tmp
);
98 NTSTATUS
rpccli_initshutdown_Init_recv(struct tevent_req
*req
,
102 struct rpccli_initshutdown_Init_state
*state
= tevent_req_data(
103 req
, struct rpccli_initshutdown_Init_state
);
106 if (tevent_req_is_nterror(req
, &status
)) {
107 tevent_req_received(req
);
111 /* Steal possbile out parameters to the callers context */
112 talloc_steal(mem_ctx
, state
->out_mem_ctx
);
115 *result
= state
->orig
.out
.result
;
117 tevent_req_received(req
);
121 NTSTATUS
rpccli_initshutdown_Init(struct rpc_pipe_client
*cli
,
123 uint16_t *hostname
/* [in] [unique] */,
124 struct lsa_StringLarge
*message
/* [in] [unique] */,
125 uint32_t timeout
/* [in] */,
126 uint8_t force_apps
/* [in] */,
127 uint8_t do_reboot
/* [in] */,
130 struct initshutdown_Init r
;
134 r
.in
.hostname
= hostname
;
135 r
.in
.message
= message
;
136 r
.in
.timeout
= timeout
;
137 r
.in
.force_apps
= force_apps
;
138 r
.in
.do_reboot
= do_reboot
;
140 status
= cli
->dispatch(cli
,
142 &ndr_table_initshutdown
,
143 NDR_INITSHUTDOWN_INIT
,
146 if (!NT_STATUS_IS_OK(status
)) {
150 if (NT_STATUS_IS_ERR(status
)) {
154 /* Return variables */
158 *werror
= r
.out
.result
;
161 return werror_to_ntstatus(r
.out
.result
);
164 struct rpccli_initshutdown_Abort_state
{
165 struct initshutdown_Abort orig
;
166 struct initshutdown_Abort tmp
;
167 TALLOC_CTX
*out_mem_ctx
;
168 NTSTATUS (*dispatch_recv
)(struct tevent_req
*req
, TALLOC_CTX
*mem_ctx
);
171 static void rpccli_initshutdown_Abort_done(struct tevent_req
*subreq
);
173 struct tevent_req
*rpccli_initshutdown_Abort_send(TALLOC_CTX
*mem_ctx
,
174 struct tevent_context
*ev
,
175 struct rpc_pipe_client
*cli
,
176 uint16_t *_server
/* [in] [unique] */)
178 struct tevent_req
*req
;
179 struct rpccli_initshutdown_Abort_state
*state
;
180 struct tevent_req
*subreq
;
182 req
= tevent_req_create(mem_ctx
, &state
,
183 struct rpccli_initshutdown_Abort_state
);
187 state
->out_mem_ctx
= NULL
;
188 state
->dispatch_recv
= cli
->dispatch_recv
;
191 state
->orig
.in
.server
= _server
;
196 ZERO_STRUCT(state
->orig
.out
.result
);
198 /* make a temporary copy, that we pass to the dispatch function */
199 state
->tmp
= state
->orig
;
201 subreq
= cli
->dispatch_send(state
, ev
, cli
,
202 &ndr_table_initshutdown
,
203 NDR_INITSHUTDOWN_ABORT
,
205 if (tevent_req_nomem(subreq
, req
)) {
206 return tevent_req_post(req
, ev
);
208 tevent_req_set_callback(subreq
, rpccli_initshutdown_Abort_done
, req
);
212 static void rpccli_initshutdown_Abort_done(struct tevent_req
*subreq
)
214 struct tevent_req
*req
= tevent_req_callback_data(
215 subreq
, struct tevent_req
);
216 struct rpccli_initshutdown_Abort_state
*state
= tevent_req_data(
217 req
, struct rpccli_initshutdown_Abort_state
);
221 if (state
->out_mem_ctx
) {
222 mem_ctx
= state
->out_mem_ctx
;
227 status
= state
->dispatch_recv(subreq
, mem_ctx
);
229 if (!NT_STATUS_IS_OK(status
)) {
230 tevent_req_nterror(req
, status
);
234 /* Copy out parameters */
237 state
->orig
.out
.result
= state
->tmp
.out
.result
;
239 /* Reset temporary structure */
240 ZERO_STRUCT(state
->tmp
);
242 tevent_req_done(req
);
245 NTSTATUS
rpccli_initshutdown_Abort_recv(struct tevent_req
*req
,
249 struct rpccli_initshutdown_Abort_state
*state
= tevent_req_data(
250 req
, struct rpccli_initshutdown_Abort_state
);
253 if (tevent_req_is_nterror(req
, &status
)) {
254 tevent_req_received(req
);
258 /* Steal possbile out parameters to the callers context */
259 talloc_steal(mem_ctx
, state
->out_mem_ctx
);
262 *result
= state
->orig
.out
.result
;
264 tevent_req_received(req
);
268 NTSTATUS
rpccli_initshutdown_Abort(struct rpc_pipe_client
*cli
,
270 uint16_t *server
/* [in] [unique] */,
273 struct initshutdown_Abort r
;
277 r
.in
.server
= server
;
279 status
= cli
->dispatch(cli
,
281 &ndr_table_initshutdown
,
282 NDR_INITSHUTDOWN_ABORT
,
285 if (!NT_STATUS_IS_OK(status
)) {
289 if (NT_STATUS_IS_ERR(status
)) {
293 /* Return variables */
297 *werror
= r
.out
.result
;
300 return werror_to_ntstatus(r
.out
.result
);
303 struct rpccli_initshutdown_InitEx_state
{
304 struct initshutdown_InitEx orig
;
305 struct initshutdown_InitEx tmp
;
306 TALLOC_CTX
*out_mem_ctx
;
307 NTSTATUS (*dispatch_recv
)(struct tevent_req
*req
, TALLOC_CTX
*mem_ctx
);
310 static void rpccli_initshutdown_InitEx_done(struct tevent_req
*subreq
);
312 struct tevent_req
*rpccli_initshutdown_InitEx_send(TALLOC_CTX
*mem_ctx
,
313 struct tevent_context
*ev
,
314 struct rpc_pipe_client
*cli
,
315 uint16_t *_hostname
/* [in] [unique] */,
316 struct lsa_StringLarge
*_message
/* [in] [unique] */,
317 uint32_t _timeout
/* [in] */,
318 uint8_t _force_apps
/* [in] */,
319 uint8_t _do_reboot
/* [in] */,
320 uint32_t _reason
/* [in] */)
322 struct tevent_req
*req
;
323 struct rpccli_initshutdown_InitEx_state
*state
;
324 struct tevent_req
*subreq
;
326 req
= tevent_req_create(mem_ctx
, &state
,
327 struct rpccli_initshutdown_InitEx_state
);
331 state
->out_mem_ctx
= NULL
;
332 state
->dispatch_recv
= cli
->dispatch_recv
;
335 state
->orig
.in
.hostname
= _hostname
;
336 state
->orig
.in
.message
= _message
;
337 state
->orig
.in
.timeout
= _timeout
;
338 state
->orig
.in
.force_apps
= _force_apps
;
339 state
->orig
.in
.do_reboot
= _do_reboot
;
340 state
->orig
.in
.reason
= _reason
;
345 ZERO_STRUCT(state
->orig
.out
.result
);
347 /* make a temporary copy, that we pass to the dispatch function */
348 state
->tmp
= state
->orig
;
350 subreq
= cli
->dispatch_send(state
, ev
, cli
,
351 &ndr_table_initshutdown
,
352 NDR_INITSHUTDOWN_INITEX
,
354 if (tevent_req_nomem(subreq
, req
)) {
355 return tevent_req_post(req
, ev
);
357 tevent_req_set_callback(subreq
, rpccli_initshutdown_InitEx_done
, req
);
361 static void rpccli_initshutdown_InitEx_done(struct tevent_req
*subreq
)
363 struct tevent_req
*req
= tevent_req_callback_data(
364 subreq
, struct tevent_req
);
365 struct rpccli_initshutdown_InitEx_state
*state
= tevent_req_data(
366 req
, struct rpccli_initshutdown_InitEx_state
);
370 if (state
->out_mem_ctx
) {
371 mem_ctx
= state
->out_mem_ctx
;
376 status
= state
->dispatch_recv(subreq
, mem_ctx
);
378 if (!NT_STATUS_IS_OK(status
)) {
379 tevent_req_nterror(req
, status
);
383 /* Copy out parameters */
386 state
->orig
.out
.result
= state
->tmp
.out
.result
;
388 /* Reset temporary structure */
389 ZERO_STRUCT(state
->tmp
);
391 tevent_req_done(req
);
394 NTSTATUS
rpccli_initshutdown_InitEx_recv(struct tevent_req
*req
,
398 struct rpccli_initshutdown_InitEx_state
*state
= tevent_req_data(
399 req
, struct rpccli_initshutdown_InitEx_state
);
402 if (tevent_req_is_nterror(req
, &status
)) {
403 tevent_req_received(req
);
407 /* Steal possbile out parameters to the callers context */
408 talloc_steal(mem_ctx
, state
->out_mem_ctx
);
411 *result
= state
->orig
.out
.result
;
413 tevent_req_received(req
);
417 NTSTATUS
rpccli_initshutdown_InitEx(struct rpc_pipe_client
*cli
,
419 uint16_t *hostname
/* [in] [unique] */,
420 struct lsa_StringLarge
*message
/* [in] [unique] */,
421 uint32_t timeout
/* [in] */,
422 uint8_t force_apps
/* [in] */,
423 uint8_t do_reboot
/* [in] */,
424 uint32_t reason
/* [in] */,
427 struct initshutdown_InitEx r
;
431 r
.in
.hostname
= hostname
;
432 r
.in
.message
= message
;
433 r
.in
.timeout
= timeout
;
434 r
.in
.force_apps
= force_apps
;
435 r
.in
.do_reboot
= do_reboot
;
436 r
.in
.reason
= reason
;
438 status
= cli
->dispatch(cli
,
440 &ndr_table_initshutdown
,
441 NDR_INITSHUTDOWN_INITEX
,
444 if (!NT_STATUS_IS_OK(status
)) {
448 if (NT_STATUS_IS_ERR(status
)) {
452 /* Return variables */
456 *werror
= r
.out
.result
;
459 return werror_to_ntstatus(r
.out
.result
);