• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/samba-3.5.8/librpc/gen_ndr/
1/*
2 * Unix SMB/CIFS implementation.
3 * client auto-generated by pidl. DO NOT MODIFY!
4 */
5
6#include "includes.h"
7#include "../librpc/gen_ndr/cli_initshutdown.h"
8
9struct 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);
14};
15
16static void rpccli_initshutdown_Init_done(struct tevent_req *subreq);
17
18struct 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]  */)
26{
27	struct tevent_req *req;
28	struct rpccli_initshutdown_Init_state *state;
29	struct tevent_req *subreq;
30
31	req = tevent_req_create(mem_ctx, &state,
32				struct rpccli_initshutdown_Init_state);
33	if (req == NULL) {
34		return NULL;
35	}
36	state->out_mem_ctx = NULL;
37	state->dispatch_recv = cli->dispatch_recv;
38
39	/* In parameters */
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;
45
46	/* Out parameters */
47
48	/* Result */
49	ZERO_STRUCT(state->orig.out.result);
50
51	/* make a temporary copy, that we pass to the dispatch function */
52	state->tmp = state->orig;
53
54	subreq = cli->dispatch_send(state, ev, cli,
55				    &ndr_table_initshutdown,
56				    NDR_INITSHUTDOWN_INIT,
57				    &state->tmp);
58	if (tevent_req_nomem(subreq, req)) {
59		return tevent_req_post(req, ev);
60	}
61	tevent_req_set_callback(subreq, rpccli_initshutdown_Init_done, req);
62	return req;
63}
64
65static void rpccli_initshutdown_Init_done(struct tevent_req *subreq)
66{
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);
71	NTSTATUS status;
72	TALLOC_CTX *mem_ctx;
73
74	if (state->out_mem_ctx) {
75		mem_ctx = state->out_mem_ctx;
76	} else {
77		mem_ctx = state;
78	}
79
80	status = state->dispatch_recv(subreq, mem_ctx);
81	TALLOC_FREE(subreq);
82	if (!NT_STATUS_IS_OK(status)) {
83		tevent_req_nterror(req, status);
84		return;
85	}
86
87	/* Copy out parameters */
88
89	/* Copy result */
90	state->orig.out.result = state->tmp.out.result;
91
92	/* Reset temporary structure */
93	ZERO_STRUCT(state->tmp);
94
95	tevent_req_done(req);
96}
97
98NTSTATUS rpccli_initshutdown_Init_recv(struct tevent_req *req,
99				       TALLOC_CTX *mem_ctx,
100				       WERROR *result)
101{
102	struct rpccli_initshutdown_Init_state *state = tevent_req_data(
103		req, struct rpccli_initshutdown_Init_state);
104	NTSTATUS status;
105
106	if (tevent_req_is_nterror(req, &status)) {
107		tevent_req_received(req);
108		return status;
109	}
110
111	/* Steal possbile out parameters to the callers context */
112	talloc_steal(mem_ctx, state->out_mem_ctx);
113
114	/* Return result */
115	*result = state->orig.out.result;
116
117	tevent_req_received(req);
118	return NT_STATUS_OK;
119}
120
121NTSTATUS rpccli_initshutdown_Init(struct rpc_pipe_client *cli,
122				  TALLOC_CTX *mem_ctx,
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]  */,
128				  WERROR *werror)
129{
130	struct initshutdown_Init r;
131	NTSTATUS status;
132
133	/* In parameters */
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;
139
140	status = cli->dispatch(cli,
141				mem_ctx,
142				&ndr_table_initshutdown,
143				NDR_INITSHUTDOWN_INIT,
144				&r);
145
146	if (!NT_STATUS_IS_OK(status)) {
147		return status;
148	}
149
150	if (NT_STATUS_IS_ERR(status)) {
151		return status;
152	}
153
154	/* Return variables */
155
156	/* Return result */
157	if (werror) {
158		*werror = r.out.result;
159	}
160
161	return werror_to_ntstatus(r.out.result);
162}
163
164struct 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);
169};
170
171static void rpccli_initshutdown_Abort_done(struct tevent_req *subreq);
172
173struct 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] */)
177{
178	struct tevent_req *req;
179	struct rpccli_initshutdown_Abort_state *state;
180	struct tevent_req *subreq;
181
182	req = tevent_req_create(mem_ctx, &state,
183				struct rpccli_initshutdown_Abort_state);
184	if (req == NULL) {
185		return NULL;
186	}
187	state->out_mem_ctx = NULL;
188	state->dispatch_recv = cli->dispatch_recv;
189
190	/* In parameters */
191	state->orig.in.server = _server;
192
193	/* Out parameters */
194
195	/* Result */
196	ZERO_STRUCT(state->orig.out.result);
197
198	/* make a temporary copy, that we pass to the dispatch function */
199	state->tmp = state->orig;
200
201	subreq = cli->dispatch_send(state, ev, cli,
202				    &ndr_table_initshutdown,
203				    NDR_INITSHUTDOWN_ABORT,
204				    &state->tmp);
205	if (tevent_req_nomem(subreq, req)) {
206		return tevent_req_post(req, ev);
207	}
208	tevent_req_set_callback(subreq, rpccli_initshutdown_Abort_done, req);
209	return req;
210}
211
212static void rpccli_initshutdown_Abort_done(struct tevent_req *subreq)
213{
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);
218	NTSTATUS status;
219	TALLOC_CTX *mem_ctx;
220
221	if (state->out_mem_ctx) {
222		mem_ctx = state->out_mem_ctx;
223	} else {
224		mem_ctx = state;
225	}
226
227	status = state->dispatch_recv(subreq, mem_ctx);
228	TALLOC_FREE(subreq);
229	if (!NT_STATUS_IS_OK(status)) {
230		tevent_req_nterror(req, status);
231		return;
232	}
233
234	/* Copy out parameters */
235
236	/* Copy result */
237	state->orig.out.result = state->tmp.out.result;
238
239	/* Reset temporary structure */
240	ZERO_STRUCT(state->tmp);
241
242	tevent_req_done(req);
243}
244
245NTSTATUS rpccli_initshutdown_Abort_recv(struct tevent_req *req,
246					TALLOC_CTX *mem_ctx,
247					WERROR *result)
248{
249	struct rpccli_initshutdown_Abort_state *state = tevent_req_data(
250		req, struct rpccli_initshutdown_Abort_state);
251	NTSTATUS status;
252
253	if (tevent_req_is_nterror(req, &status)) {
254		tevent_req_received(req);
255		return status;
256	}
257
258	/* Steal possbile out parameters to the callers context */
259	talloc_steal(mem_ctx, state->out_mem_ctx);
260
261	/* Return result */
262	*result = state->orig.out.result;
263
264	tevent_req_received(req);
265	return NT_STATUS_OK;
266}
267
268NTSTATUS rpccli_initshutdown_Abort(struct rpc_pipe_client *cli,
269				   TALLOC_CTX *mem_ctx,
270				   uint16_t *server /* [in] [unique] */,
271				   WERROR *werror)
272{
273	struct initshutdown_Abort r;
274	NTSTATUS status;
275
276	/* In parameters */
277	r.in.server = server;
278
279	status = cli->dispatch(cli,
280				mem_ctx,
281				&ndr_table_initshutdown,
282				NDR_INITSHUTDOWN_ABORT,
283				&r);
284
285	if (!NT_STATUS_IS_OK(status)) {
286		return status;
287	}
288
289	if (NT_STATUS_IS_ERR(status)) {
290		return status;
291	}
292
293	/* Return variables */
294
295	/* Return result */
296	if (werror) {
297		*werror = r.out.result;
298	}
299
300	return werror_to_ntstatus(r.out.result);
301}
302
303struct 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);
308};
309
310static void rpccli_initshutdown_InitEx_done(struct tevent_req *subreq);
311
312struct 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]  */)
321{
322	struct tevent_req *req;
323	struct rpccli_initshutdown_InitEx_state *state;
324	struct tevent_req *subreq;
325
326	req = tevent_req_create(mem_ctx, &state,
327				struct rpccli_initshutdown_InitEx_state);
328	if (req == NULL) {
329		return NULL;
330	}
331	state->out_mem_ctx = NULL;
332	state->dispatch_recv = cli->dispatch_recv;
333
334	/* In parameters */
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;
341
342	/* Out parameters */
343
344	/* Result */
345	ZERO_STRUCT(state->orig.out.result);
346
347	/* make a temporary copy, that we pass to the dispatch function */
348	state->tmp = state->orig;
349
350	subreq = cli->dispatch_send(state, ev, cli,
351				    &ndr_table_initshutdown,
352				    NDR_INITSHUTDOWN_INITEX,
353				    &state->tmp);
354	if (tevent_req_nomem(subreq, req)) {
355		return tevent_req_post(req, ev);
356	}
357	tevent_req_set_callback(subreq, rpccli_initshutdown_InitEx_done, req);
358	return req;
359}
360
361static void rpccli_initshutdown_InitEx_done(struct tevent_req *subreq)
362{
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);
367	NTSTATUS status;
368	TALLOC_CTX *mem_ctx;
369
370	if (state->out_mem_ctx) {
371		mem_ctx = state->out_mem_ctx;
372	} else {
373		mem_ctx = state;
374	}
375
376	status = state->dispatch_recv(subreq, mem_ctx);
377	TALLOC_FREE(subreq);
378	if (!NT_STATUS_IS_OK(status)) {
379		tevent_req_nterror(req, status);
380		return;
381	}
382
383	/* Copy out parameters */
384
385	/* Copy result */
386	state->orig.out.result = state->tmp.out.result;
387
388	/* Reset temporary structure */
389	ZERO_STRUCT(state->tmp);
390
391	tevent_req_done(req);
392}
393
394NTSTATUS rpccli_initshutdown_InitEx_recv(struct tevent_req *req,
395					 TALLOC_CTX *mem_ctx,
396					 WERROR *result)
397{
398	struct rpccli_initshutdown_InitEx_state *state = tevent_req_data(
399		req, struct rpccli_initshutdown_InitEx_state);
400	NTSTATUS status;
401
402	if (tevent_req_is_nterror(req, &status)) {
403		tevent_req_received(req);
404		return status;
405	}
406
407	/* Steal possbile out parameters to the callers context */
408	talloc_steal(mem_ctx, state->out_mem_ctx);
409
410	/* Return result */
411	*result = state->orig.out.result;
412
413	tevent_req_received(req);
414	return NT_STATUS_OK;
415}
416
417NTSTATUS rpccli_initshutdown_InitEx(struct rpc_pipe_client *cli,
418				    TALLOC_CTX *mem_ctx,
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]  */,
425				    WERROR *werror)
426{
427	struct initshutdown_InitEx r;
428	NTSTATUS status;
429
430	/* In parameters */
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;
437
438	status = cli->dispatch(cli,
439				mem_ctx,
440				&ndr_table_initshutdown,
441				NDR_INITSHUTDOWN_INITEX,
442				&r);
443
444	if (!NT_STATUS_IS_OK(status)) {
445		return status;
446	}
447
448	if (NT_STATUS_IS_ERR(status)) {
449		return status;
450	}
451
452	/* Return variables */
453
454	/* Return result */
455	if (werror) {
456		*werror = r.out.result;
457	}
458
459	return werror_to_ntstatus(r.out.result);
460}
461
462