1 /* client functions auto-generated by pidl */
5 #include "lib/util/tevent_ntstatus.h"
6 #include "bin/default/source4/librpc/gen_ndr/ndr_winsif.h"
7 #include "bin/default/source4/librpc/gen_ndr/ndr_winsif_c.h"
9 /* winsif - client functions generated by pidl */
11 struct dcerpc_winsif_WinsRecordAction_r_state {
12 TALLOC_CTX *out_mem_ctx;
15 static void dcerpc_winsif_WinsRecordAction_r_done(struct tevent_req *subreq);
17 struct tevent_req *dcerpc_winsif_WinsRecordAction_r_send(TALLOC_CTX *mem_ctx,
18 struct tevent_context *ev,
19 struct dcerpc_binding_handle *h,
20 struct winsif_WinsRecordAction *r)
22 struct tevent_req *req;
23 struct dcerpc_winsif_WinsRecordAction_r_state *state;
24 struct tevent_req *subreq;
26 req = tevent_req_create(mem_ctx, &state,
27 struct dcerpc_winsif_WinsRecordAction_r_state);
32 state->out_mem_ctx = talloc_new(state);
33 if (tevent_req_nomem(state->out_mem_ctx, req)) {
34 return tevent_req_post(req, ev);
37 subreq = dcerpc_binding_handle_call_send(state, ev, h,
38 NULL, &ndr_table_winsif,
39 NDR_WINSIF_WINSRECORDACTION, state->out_mem_ctx, r);
40 if (tevent_req_nomem(subreq, req)) {
41 return tevent_req_post(req, ev);
43 tevent_req_set_callback(subreq, dcerpc_winsif_WinsRecordAction_r_done, req);
48 static void dcerpc_winsif_WinsRecordAction_r_done(struct tevent_req *subreq)
50 struct tevent_req *req =
51 tevent_req_callback_data(subreq,
55 status = dcerpc_binding_handle_call_recv(subreq);
57 if (tevent_req_nterror(req, status)) {
64 NTSTATUS dcerpc_winsif_WinsRecordAction_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
66 struct dcerpc_winsif_WinsRecordAction_r_state *state =
68 struct dcerpc_winsif_WinsRecordAction_r_state);
71 if (tevent_req_is_nterror(req, &status)) {
72 tevent_req_received(req);
76 talloc_steal(mem_ctx, state->out_mem_ctx);
78 tevent_req_received(req);
82 NTSTATUS dcerpc_winsif_WinsRecordAction_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsRecordAction *r)
86 status = dcerpc_binding_handle_call(h,
87 NULL, &ndr_table_winsif,
88 NDR_WINSIF_WINSRECORDACTION, mem_ctx, r);
93 struct dcerpc_winsif_WinsRecordAction_state {
94 struct winsif_WinsRecordAction orig;
95 struct winsif_WinsRecordAction tmp;
96 TALLOC_CTX *out_mem_ctx;
99 static void dcerpc_winsif_WinsRecordAction_done(struct tevent_req *subreq);
101 struct tevent_req *dcerpc_winsif_WinsRecordAction_send(TALLOC_CTX *mem_ctx,
102 struct tevent_context *ev,
103 struct dcerpc_binding_handle *h,
104 struct winsif_RecordAction **_record_action /* [in,out] [ref] */)
106 struct tevent_req *req;
107 struct dcerpc_winsif_WinsRecordAction_state *state;
108 struct tevent_req *subreq;
110 req = tevent_req_create(mem_ctx, &state,
111 struct dcerpc_winsif_WinsRecordAction_state);
115 state->out_mem_ctx = NULL;
118 state->orig.in.record_action = _record_action;
121 state->orig.out.record_action = _record_action;
124 ZERO_STRUCT(state->orig.out.result);
126 state->out_mem_ctx = talloc_named_const(state, 0,
127 "dcerpc_winsif_WinsRecordAction_out_memory");
128 if (tevent_req_nomem(state->out_mem_ctx, req)) {
129 return tevent_req_post(req, ev);
132 /* make a temporary copy, that we pass to the dispatch function */
133 state->tmp = state->orig;
135 subreq = dcerpc_winsif_WinsRecordAction_r_send(state, ev, h, &state->tmp);
136 if (tevent_req_nomem(subreq, req)) {
137 return tevent_req_post(req, ev);
139 tevent_req_set_callback(subreq, dcerpc_winsif_WinsRecordAction_done, req);
143 static void dcerpc_winsif_WinsRecordAction_done(struct tevent_req *subreq)
145 struct tevent_req *req = tevent_req_callback_data(
146 subreq, struct tevent_req);
147 struct dcerpc_winsif_WinsRecordAction_state *state = tevent_req_data(
148 req, struct dcerpc_winsif_WinsRecordAction_state);
152 if (state->out_mem_ctx) {
153 mem_ctx = state->out_mem_ctx;
158 status = dcerpc_winsif_WinsRecordAction_r_recv(subreq, mem_ctx);
160 if (tevent_req_nterror(req, status)) {
164 /* Copy out parameters */
165 *state->orig.out.record_action = *state->tmp.out.record_action;
168 state->orig.out.result = state->tmp.out.result;
170 /* Reset temporary structure */
171 ZERO_STRUCT(state->tmp);
173 tevent_req_done(req);
176 NTSTATUS dcerpc_winsif_WinsRecordAction_recv(struct tevent_req *req,
180 struct dcerpc_winsif_WinsRecordAction_state *state = tevent_req_data(
181 req, struct dcerpc_winsif_WinsRecordAction_state);
184 if (tevent_req_is_nterror(req, &status)) {
185 tevent_req_received(req);
189 /* Steal possible out parameters to the callers context */
190 talloc_steal(mem_ctx, state->out_mem_ctx);
193 *result = state->orig.out.result;
195 tevent_req_received(req);
199 NTSTATUS dcerpc_winsif_WinsRecordAction(struct dcerpc_binding_handle *h,
201 struct winsif_RecordAction **_record_action /* [in,out] [ref] */,
204 struct winsif_WinsRecordAction r;
208 r.in.record_action = _record_action;
210 status = dcerpc_winsif_WinsRecordAction_r(h, mem_ctx, &r);
211 if (!NT_STATUS_IS_OK(status)) {
215 /* Return variables */
216 *_record_action = *r.out.record_action;
219 *result = r.out.result;
224 struct dcerpc_winsif_WinsStatus_r_state {
225 TALLOC_CTX *out_mem_ctx;
228 static void dcerpc_winsif_WinsStatus_r_done(struct tevent_req *subreq);
230 struct tevent_req *dcerpc_winsif_WinsStatus_r_send(TALLOC_CTX *mem_ctx,
231 struct tevent_context *ev,
232 struct dcerpc_binding_handle *h,
233 struct winsif_WinsStatus *r)
235 struct tevent_req *req;
236 struct dcerpc_winsif_WinsStatus_r_state *state;
237 struct tevent_req *subreq;
239 req = tevent_req_create(mem_ctx, &state,
240 struct dcerpc_winsif_WinsStatus_r_state);
245 state->out_mem_ctx = talloc_new(state);
246 if (tevent_req_nomem(state->out_mem_ctx, req)) {
247 return tevent_req_post(req, ev);
250 subreq = dcerpc_binding_handle_call_send(state, ev, h,
251 NULL, &ndr_table_winsif,
252 NDR_WINSIF_WINSSTATUS, state->out_mem_ctx, r);
253 if (tevent_req_nomem(subreq, req)) {
254 return tevent_req_post(req, ev);
256 tevent_req_set_callback(subreq, dcerpc_winsif_WinsStatus_r_done, req);
261 static void dcerpc_winsif_WinsStatus_r_done(struct tevent_req *subreq)
263 struct tevent_req *req =
264 tevent_req_callback_data(subreq,
268 status = dcerpc_binding_handle_call_recv(subreq);
270 if (tevent_req_nterror(req, status)) {
274 tevent_req_done(req);
277 NTSTATUS dcerpc_winsif_WinsStatus_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
279 struct dcerpc_winsif_WinsStatus_r_state *state =
281 struct dcerpc_winsif_WinsStatus_r_state);
284 if (tevent_req_is_nterror(req, &status)) {
285 tevent_req_received(req);
289 talloc_steal(mem_ctx, state->out_mem_ctx);
291 tevent_req_received(req);
295 NTSTATUS dcerpc_winsif_WinsStatus_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsStatus *r)
299 status = dcerpc_binding_handle_call(h,
300 NULL, &ndr_table_winsif,
301 NDR_WINSIF_WINSSTATUS, mem_ctx, r);
306 struct dcerpc_winsif_WinsStatus_state {
307 struct winsif_WinsStatus orig;
308 struct winsif_WinsStatus tmp;
309 TALLOC_CTX *out_mem_ctx;
312 static void dcerpc_winsif_WinsStatus_done(struct tevent_req *subreq);
314 struct tevent_req *dcerpc_winsif_WinsStatus_send(TALLOC_CTX *mem_ctx,
315 struct tevent_context *ev,
316 struct dcerpc_binding_handle *h,
317 enum winsif_StatusCmd _cmd /* [in] */,
318 struct winsif_Results *_results /* [in,out] [ref] */)
320 struct tevent_req *req;
321 struct dcerpc_winsif_WinsStatus_state *state;
322 struct tevent_req *subreq;
324 req = tevent_req_create(mem_ctx, &state,
325 struct dcerpc_winsif_WinsStatus_state);
329 state->out_mem_ctx = NULL;
332 state->orig.in.cmd = _cmd;
333 state->orig.in.results = _results;
336 state->orig.out.results = _results;
339 ZERO_STRUCT(state->orig.out.result);
341 state->out_mem_ctx = talloc_named_const(state, 0,
342 "dcerpc_winsif_WinsStatus_out_memory");
343 if (tevent_req_nomem(state->out_mem_ctx, req)) {
344 return tevent_req_post(req, ev);
347 /* make a temporary copy, that we pass to the dispatch function */
348 state->tmp = state->orig;
350 subreq = dcerpc_winsif_WinsStatus_r_send(state, ev, h, &state->tmp);
351 if (tevent_req_nomem(subreq, req)) {
352 return tevent_req_post(req, ev);
354 tevent_req_set_callback(subreq, dcerpc_winsif_WinsStatus_done, req);
358 static void dcerpc_winsif_WinsStatus_done(struct tevent_req *subreq)
360 struct tevent_req *req = tevent_req_callback_data(
361 subreq, struct tevent_req);
362 struct dcerpc_winsif_WinsStatus_state *state = tevent_req_data(
363 req, struct dcerpc_winsif_WinsStatus_state);
367 if (state->out_mem_ctx) {
368 mem_ctx = state->out_mem_ctx;
373 status = dcerpc_winsif_WinsStatus_r_recv(subreq, mem_ctx);
375 if (tevent_req_nterror(req, status)) {
379 /* Copy out parameters */
380 *state->orig.out.results = *state->tmp.out.results;
383 state->orig.out.result = state->tmp.out.result;
385 /* Reset temporary structure */
386 ZERO_STRUCT(state->tmp);
388 tevent_req_done(req);
391 NTSTATUS dcerpc_winsif_WinsStatus_recv(struct tevent_req *req,
395 struct dcerpc_winsif_WinsStatus_state *state = tevent_req_data(
396 req, struct dcerpc_winsif_WinsStatus_state);
399 if (tevent_req_is_nterror(req, &status)) {
400 tevent_req_received(req);
404 /* Steal possible out parameters to the callers context */
405 talloc_steal(mem_ctx, state->out_mem_ctx);
408 *result = state->orig.out.result;
410 tevent_req_received(req);
414 NTSTATUS dcerpc_winsif_WinsStatus(struct dcerpc_binding_handle *h,
416 enum winsif_StatusCmd _cmd /* [in] */,
417 struct winsif_Results *_results /* [in,out] [ref] */,
420 struct winsif_WinsStatus r;
425 r.in.results = _results;
427 status = dcerpc_winsif_WinsStatus_r(h, mem_ctx, &r);
428 if (!NT_STATUS_IS_OK(status)) {
432 /* Return variables */
433 *_results = *r.out.results;
436 *result = r.out.result;
441 struct dcerpc_winsif_WinsTrigger_r_state {
442 TALLOC_CTX *out_mem_ctx;
445 static void dcerpc_winsif_WinsTrigger_r_done(struct tevent_req *subreq);
447 struct tevent_req *dcerpc_winsif_WinsTrigger_r_send(TALLOC_CTX *mem_ctx,
448 struct tevent_context *ev,
449 struct dcerpc_binding_handle *h,
450 struct winsif_WinsTrigger *r)
452 struct tevent_req *req;
453 struct dcerpc_winsif_WinsTrigger_r_state *state;
454 struct tevent_req *subreq;
456 req = tevent_req_create(mem_ctx, &state,
457 struct dcerpc_winsif_WinsTrigger_r_state);
462 state->out_mem_ctx = NULL;
464 subreq = dcerpc_binding_handle_call_send(state, ev, h,
465 NULL, &ndr_table_winsif,
466 NDR_WINSIF_WINSTRIGGER, state, r);
467 if (tevent_req_nomem(subreq, req)) {
468 return tevent_req_post(req, ev);
470 tevent_req_set_callback(subreq, dcerpc_winsif_WinsTrigger_r_done, req);
475 static void dcerpc_winsif_WinsTrigger_r_done(struct tevent_req *subreq)
477 struct tevent_req *req =
478 tevent_req_callback_data(subreq,
482 status = dcerpc_binding_handle_call_recv(subreq);
484 if (tevent_req_nterror(req, status)) {
488 tevent_req_done(req);
491 NTSTATUS dcerpc_winsif_WinsTrigger_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
493 struct dcerpc_winsif_WinsTrigger_r_state *state =
495 struct dcerpc_winsif_WinsTrigger_r_state);
498 if (tevent_req_is_nterror(req, &status)) {
499 tevent_req_received(req);
503 talloc_steal(mem_ctx, state->out_mem_ctx);
505 tevent_req_received(req);
509 NTSTATUS dcerpc_winsif_WinsTrigger_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsTrigger *r)
513 status = dcerpc_binding_handle_call(h,
514 NULL, &ndr_table_winsif,
515 NDR_WINSIF_WINSTRIGGER, mem_ctx, r);
520 struct dcerpc_winsif_WinsTrigger_state {
521 struct winsif_WinsTrigger orig;
522 struct winsif_WinsTrigger tmp;
523 TALLOC_CTX *out_mem_ctx;
526 static void dcerpc_winsif_WinsTrigger_done(struct tevent_req *subreq);
528 struct tevent_req *dcerpc_winsif_WinsTrigger_send(TALLOC_CTX *mem_ctx,
529 struct tevent_context *ev,
530 struct dcerpc_binding_handle *h,
531 struct winsif_Address *_owner_address /* [in] [ref] */,
532 enum winsif_TriggerType _trigger_type /* [in] */)
534 struct tevent_req *req;
535 struct dcerpc_winsif_WinsTrigger_state *state;
536 struct tevent_req *subreq;
538 req = tevent_req_create(mem_ctx, &state,
539 struct dcerpc_winsif_WinsTrigger_state);
543 state->out_mem_ctx = NULL;
546 state->orig.in.owner_address = _owner_address;
547 state->orig.in.trigger_type = _trigger_type;
552 ZERO_STRUCT(state->orig.out.result);
554 /* make a temporary copy, that we pass to the dispatch function */
555 state->tmp = state->orig;
557 subreq = dcerpc_winsif_WinsTrigger_r_send(state, ev, h, &state->tmp);
558 if (tevent_req_nomem(subreq, req)) {
559 return tevent_req_post(req, ev);
561 tevent_req_set_callback(subreq, dcerpc_winsif_WinsTrigger_done, req);
565 static void dcerpc_winsif_WinsTrigger_done(struct tevent_req *subreq)
567 struct tevent_req *req = tevent_req_callback_data(
568 subreq, struct tevent_req);
569 struct dcerpc_winsif_WinsTrigger_state *state = tevent_req_data(
570 req, struct dcerpc_winsif_WinsTrigger_state);
574 if (state->out_mem_ctx) {
575 mem_ctx = state->out_mem_ctx;
580 status = dcerpc_winsif_WinsTrigger_r_recv(subreq, mem_ctx);
582 if (tevent_req_nterror(req, status)) {
586 /* Copy out parameters */
589 state->orig.out.result = state->tmp.out.result;
591 /* Reset temporary structure */
592 ZERO_STRUCT(state->tmp);
594 tevent_req_done(req);
597 NTSTATUS dcerpc_winsif_WinsTrigger_recv(struct tevent_req *req,
601 struct dcerpc_winsif_WinsTrigger_state *state = tevent_req_data(
602 req, struct dcerpc_winsif_WinsTrigger_state);
605 if (tevent_req_is_nterror(req, &status)) {
606 tevent_req_received(req);
610 /* Steal possible out parameters to the callers context */
611 talloc_steal(mem_ctx, state->out_mem_ctx);
614 *result = state->orig.out.result;
616 tevent_req_received(req);
620 NTSTATUS dcerpc_winsif_WinsTrigger(struct dcerpc_binding_handle *h,
622 struct winsif_Address *_owner_address /* [in] [ref] */,
623 enum winsif_TriggerType _trigger_type /* [in] */,
626 struct winsif_WinsTrigger r;
630 r.in.owner_address = _owner_address;
631 r.in.trigger_type = _trigger_type;
633 status = dcerpc_winsif_WinsTrigger_r(h, mem_ctx, &r);
634 if (!NT_STATUS_IS_OK(status)) {
638 /* Return variables */
641 *result = r.out.result;
646 struct dcerpc_winsif_WinsDoStaticInit_r_state {
647 TALLOC_CTX *out_mem_ctx;
650 static void dcerpc_winsif_WinsDoStaticInit_r_done(struct tevent_req *subreq);
652 struct tevent_req *dcerpc_winsif_WinsDoStaticInit_r_send(TALLOC_CTX *mem_ctx,
653 struct tevent_context *ev,
654 struct dcerpc_binding_handle *h,
655 struct winsif_WinsDoStaticInit *r)
657 struct tevent_req *req;
658 struct dcerpc_winsif_WinsDoStaticInit_r_state *state;
659 struct tevent_req *subreq;
661 req = tevent_req_create(mem_ctx, &state,
662 struct dcerpc_winsif_WinsDoStaticInit_r_state);
667 state->out_mem_ctx = NULL;
669 subreq = dcerpc_binding_handle_call_send(state, ev, h,
670 NULL, &ndr_table_winsif,
671 NDR_WINSIF_WINSDOSTATICINIT, state, r);
672 if (tevent_req_nomem(subreq, req)) {
673 return tevent_req_post(req, ev);
675 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDoStaticInit_r_done, req);
680 static void dcerpc_winsif_WinsDoStaticInit_r_done(struct tevent_req *subreq)
682 struct tevent_req *req =
683 tevent_req_callback_data(subreq,
687 status = dcerpc_binding_handle_call_recv(subreq);
689 if (tevent_req_nterror(req, status)) {
693 tevent_req_done(req);
696 NTSTATUS dcerpc_winsif_WinsDoStaticInit_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
698 struct dcerpc_winsif_WinsDoStaticInit_r_state *state =
700 struct dcerpc_winsif_WinsDoStaticInit_r_state);
703 if (tevent_req_is_nterror(req, &status)) {
704 tevent_req_received(req);
708 talloc_steal(mem_ctx, state->out_mem_ctx);
710 tevent_req_received(req);
714 NTSTATUS dcerpc_winsif_WinsDoStaticInit_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsDoStaticInit *r)
718 status = dcerpc_binding_handle_call(h,
719 NULL, &ndr_table_winsif,
720 NDR_WINSIF_WINSDOSTATICINIT, mem_ctx, r);
725 struct dcerpc_winsif_WinsDoStaticInit_state {
726 struct winsif_WinsDoStaticInit orig;
727 struct winsif_WinsDoStaticInit tmp;
728 TALLOC_CTX *out_mem_ctx;
731 static void dcerpc_winsif_WinsDoStaticInit_done(struct tevent_req *subreq);
733 struct tevent_req *dcerpc_winsif_WinsDoStaticInit_send(TALLOC_CTX *mem_ctx,
734 struct tevent_context *ev,
735 struct dcerpc_binding_handle *h,
736 const char *_data_file_path /* [in] [unique,charset(UTF16)] */,
737 uint32_t _delete_file /* [in] */)
739 struct tevent_req *req;
740 struct dcerpc_winsif_WinsDoStaticInit_state *state;
741 struct tevent_req *subreq;
743 req = tevent_req_create(mem_ctx, &state,
744 struct dcerpc_winsif_WinsDoStaticInit_state);
748 state->out_mem_ctx = NULL;
751 state->orig.in.data_file_path = _data_file_path;
752 state->orig.in.delete_file = _delete_file;
757 ZERO_STRUCT(state->orig.out.result);
759 /* make a temporary copy, that we pass to the dispatch function */
760 state->tmp = state->orig;
762 subreq = dcerpc_winsif_WinsDoStaticInit_r_send(state, ev, h, &state->tmp);
763 if (tevent_req_nomem(subreq, req)) {
764 return tevent_req_post(req, ev);
766 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDoStaticInit_done, req);
770 static void dcerpc_winsif_WinsDoStaticInit_done(struct tevent_req *subreq)
772 struct tevent_req *req = tevent_req_callback_data(
773 subreq, struct tevent_req);
774 struct dcerpc_winsif_WinsDoStaticInit_state *state = tevent_req_data(
775 req, struct dcerpc_winsif_WinsDoStaticInit_state);
779 if (state->out_mem_ctx) {
780 mem_ctx = state->out_mem_ctx;
785 status = dcerpc_winsif_WinsDoStaticInit_r_recv(subreq, mem_ctx);
787 if (tevent_req_nterror(req, status)) {
791 /* Copy out parameters */
794 state->orig.out.result = state->tmp.out.result;
796 /* Reset temporary structure */
797 ZERO_STRUCT(state->tmp);
799 tevent_req_done(req);
802 NTSTATUS dcerpc_winsif_WinsDoStaticInit_recv(struct tevent_req *req,
806 struct dcerpc_winsif_WinsDoStaticInit_state *state = tevent_req_data(
807 req, struct dcerpc_winsif_WinsDoStaticInit_state);
810 if (tevent_req_is_nterror(req, &status)) {
811 tevent_req_received(req);
815 /* Steal possible out parameters to the callers context */
816 talloc_steal(mem_ctx, state->out_mem_ctx);
819 *result = state->orig.out.result;
821 tevent_req_received(req);
825 NTSTATUS dcerpc_winsif_WinsDoStaticInit(struct dcerpc_binding_handle *h,
827 const char *_data_file_path /* [in] [unique,charset(UTF16)] */,
828 uint32_t _delete_file /* [in] */,
831 struct winsif_WinsDoStaticInit r;
835 r.in.data_file_path = _data_file_path;
836 r.in.delete_file = _delete_file;
838 status = dcerpc_winsif_WinsDoStaticInit_r(h, mem_ctx, &r);
839 if (!NT_STATUS_IS_OK(status)) {
843 /* Return variables */
846 *result = r.out.result;
851 struct dcerpc_winsif_WinsDoScavenging_r_state {
852 TALLOC_CTX *out_mem_ctx;
855 static void dcerpc_winsif_WinsDoScavenging_r_done(struct tevent_req *subreq);
857 struct tevent_req *dcerpc_winsif_WinsDoScavenging_r_send(TALLOC_CTX *mem_ctx,
858 struct tevent_context *ev,
859 struct dcerpc_binding_handle *h,
860 struct winsif_WinsDoScavenging *r)
862 struct tevent_req *req;
863 struct dcerpc_winsif_WinsDoScavenging_r_state *state;
864 struct tevent_req *subreq;
866 req = tevent_req_create(mem_ctx, &state,
867 struct dcerpc_winsif_WinsDoScavenging_r_state);
872 state->out_mem_ctx = NULL;
874 subreq = dcerpc_binding_handle_call_send(state, ev, h,
875 NULL, &ndr_table_winsif,
876 NDR_WINSIF_WINSDOSCAVENGING, state, r);
877 if (tevent_req_nomem(subreq, req)) {
878 return tevent_req_post(req, ev);
880 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDoScavenging_r_done, req);
885 static void dcerpc_winsif_WinsDoScavenging_r_done(struct tevent_req *subreq)
887 struct tevent_req *req =
888 tevent_req_callback_data(subreq,
892 status = dcerpc_binding_handle_call_recv(subreq);
894 if (tevent_req_nterror(req, status)) {
898 tevent_req_done(req);
901 NTSTATUS dcerpc_winsif_WinsDoScavenging_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
903 struct dcerpc_winsif_WinsDoScavenging_r_state *state =
905 struct dcerpc_winsif_WinsDoScavenging_r_state);
908 if (tevent_req_is_nterror(req, &status)) {
909 tevent_req_received(req);
913 talloc_steal(mem_ctx, state->out_mem_ctx);
915 tevent_req_received(req);
919 NTSTATUS dcerpc_winsif_WinsDoScavenging_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsDoScavenging *r)
923 status = dcerpc_binding_handle_call(h,
924 NULL, &ndr_table_winsif,
925 NDR_WINSIF_WINSDOSCAVENGING, mem_ctx, r);
930 struct dcerpc_winsif_WinsDoScavenging_state {
931 struct winsif_WinsDoScavenging orig;
932 struct winsif_WinsDoScavenging tmp;
933 TALLOC_CTX *out_mem_ctx;
936 static void dcerpc_winsif_WinsDoScavenging_done(struct tevent_req *subreq);
938 struct tevent_req *dcerpc_winsif_WinsDoScavenging_send(TALLOC_CTX *mem_ctx,
939 struct tevent_context *ev,
940 struct dcerpc_binding_handle *h)
942 struct tevent_req *req;
943 struct dcerpc_winsif_WinsDoScavenging_state *state;
944 struct tevent_req *subreq;
946 req = tevent_req_create(mem_ctx, &state,
947 struct dcerpc_winsif_WinsDoScavenging_state);
951 state->out_mem_ctx = NULL;
958 ZERO_STRUCT(state->orig.out.result);
960 /* make a temporary copy, that we pass to the dispatch function */
961 state->tmp = state->orig;
963 subreq = dcerpc_winsif_WinsDoScavenging_r_send(state, ev, h, &state->tmp);
964 if (tevent_req_nomem(subreq, req)) {
965 return tevent_req_post(req, ev);
967 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDoScavenging_done, req);
971 static void dcerpc_winsif_WinsDoScavenging_done(struct tevent_req *subreq)
973 struct tevent_req *req = tevent_req_callback_data(
974 subreq, struct tevent_req);
975 struct dcerpc_winsif_WinsDoScavenging_state *state = tevent_req_data(
976 req, struct dcerpc_winsif_WinsDoScavenging_state);
980 if (state->out_mem_ctx) {
981 mem_ctx = state->out_mem_ctx;
986 status = dcerpc_winsif_WinsDoScavenging_r_recv(subreq, mem_ctx);
988 if (tevent_req_nterror(req, status)) {
992 /* Copy out parameters */
995 state->orig.out.result = state->tmp.out.result;
997 /* Reset temporary structure */
998 ZERO_STRUCT(state->tmp);
1000 tevent_req_done(req);
1003 NTSTATUS dcerpc_winsif_WinsDoScavenging_recv(struct tevent_req *req,
1004 TALLOC_CTX *mem_ctx,
1007 struct dcerpc_winsif_WinsDoScavenging_state *state = tevent_req_data(
1008 req, struct dcerpc_winsif_WinsDoScavenging_state);
1011 if (tevent_req_is_nterror(req, &status)) {
1012 tevent_req_received(req);
1016 /* Steal possible out parameters to the callers context */
1017 talloc_steal(mem_ctx, state->out_mem_ctx);
1020 *result = state->orig.out.result;
1022 tevent_req_received(req);
1023 return NT_STATUS_OK;
1026 NTSTATUS dcerpc_winsif_WinsDoScavenging(struct dcerpc_binding_handle *h,
1027 TALLOC_CTX *mem_ctx,
1030 struct winsif_WinsDoScavenging r;
1035 status = dcerpc_winsif_WinsDoScavenging_r(h, mem_ctx, &r);
1036 if (!NT_STATUS_IS_OK(status)) {
1040 /* Return variables */
1043 *result = r.out.result;
1045 return NT_STATUS_OK;
1048 struct dcerpc_winsif_WinsGetDbRecs_r_state {
1049 TALLOC_CTX *out_mem_ctx;
1052 static void dcerpc_winsif_WinsGetDbRecs_r_done(struct tevent_req *subreq);
1054 struct tevent_req *dcerpc_winsif_WinsGetDbRecs_r_send(TALLOC_CTX *mem_ctx,
1055 struct tevent_context *ev,
1056 struct dcerpc_binding_handle *h,
1057 struct winsif_WinsGetDbRecs *r)
1059 struct tevent_req *req;
1060 struct dcerpc_winsif_WinsGetDbRecs_r_state *state;
1061 struct tevent_req *subreq;
1063 req = tevent_req_create(mem_ctx, &state,
1064 struct dcerpc_winsif_WinsGetDbRecs_r_state);
1069 state->out_mem_ctx = talloc_new(state);
1070 if (tevent_req_nomem(state->out_mem_ctx, req)) {
1071 return tevent_req_post(req, ev);
1074 subreq = dcerpc_binding_handle_call_send(state, ev, h,
1075 NULL, &ndr_table_winsif,
1076 NDR_WINSIF_WINSGETDBRECS, state->out_mem_ctx, r);
1077 if (tevent_req_nomem(subreq, req)) {
1078 return tevent_req_post(req, ev);
1080 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetDbRecs_r_done, req);
1085 static void dcerpc_winsif_WinsGetDbRecs_r_done(struct tevent_req *subreq)
1087 struct tevent_req *req =
1088 tevent_req_callback_data(subreq,
1092 status = dcerpc_binding_handle_call_recv(subreq);
1093 TALLOC_FREE(subreq);
1094 if (tevent_req_nterror(req, status)) {
1098 tevent_req_done(req);
1101 NTSTATUS dcerpc_winsif_WinsGetDbRecs_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
1103 struct dcerpc_winsif_WinsGetDbRecs_r_state *state =
1104 tevent_req_data(req,
1105 struct dcerpc_winsif_WinsGetDbRecs_r_state);
1108 if (tevent_req_is_nterror(req, &status)) {
1109 tevent_req_received(req);
1113 talloc_steal(mem_ctx, state->out_mem_ctx);
1115 tevent_req_received(req);
1116 return NT_STATUS_OK;
1119 NTSTATUS dcerpc_winsif_WinsGetDbRecs_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsGetDbRecs *r)
1123 status = dcerpc_binding_handle_call(h,
1124 NULL, &ndr_table_winsif,
1125 NDR_WINSIF_WINSGETDBRECS, mem_ctx, r);
1130 struct dcerpc_winsif_WinsGetDbRecs_state {
1131 struct winsif_WinsGetDbRecs orig;
1132 struct winsif_WinsGetDbRecs tmp;
1133 TALLOC_CTX *out_mem_ctx;
1136 static void dcerpc_winsif_WinsGetDbRecs_done(struct tevent_req *subreq);
1138 struct tevent_req *dcerpc_winsif_WinsGetDbRecs_send(TALLOC_CTX *mem_ctx,
1139 struct tevent_context *ev,
1140 struct dcerpc_binding_handle *h,
1141 struct winsif_Address *_owner_address /* [in] [unique] */,
1142 uint64_t _min_version_number /* [in] */,
1143 uint64_t _max_version_number /* [in] */,
1144 struct winsif_Records *_records /* [out] [ref] */)
1146 struct tevent_req *req;
1147 struct dcerpc_winsif_WinsGetDbRecs_state *state;
1148 struct tevent_req *subreq;
1150 req = tevent_req_create(mem_ctx, &state,
1151 struct dcerpc_winsif_WinsGetDbRecs_state);
1155 state->out_mem_ctx = NULL;
1158 state->orig.in.owner_address = _owner_address;
1159 state->orig.in.min_version_number = _min_version_number;
1160 state->orig.in.max_version_number = _max_version_number;
1162 /* Out parameters */
1163 state->orig.out.records = _records;
1166 ZERO_STRUCT(state->orig.out.result);
1168 state->out_mem_ctx = talloc_named_const(state, 0,
1169 "dcerpc_winsif_WinsGetDbRecs_out_memory");
1170 if (tevent_req_nomem(state->out_mem_ctx, req)) {
1171 return tevent_req_post(req, ev);
1174 /* make a temporary copy, that we pass to the dispatch function */
1175 state->tmp = state->orig;
1177 subreq = dcerpc_winsif_WinsGetDbRecs_r_send(state, ev, h, &state->tmp);
1178 if (tevent_req_nomem(subreq, req)) {
1179 return tevent_req_post(req, ev);
1181 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetDbRecs_done, req);
1185 static void dcerpc_winsif_WinsGetDbRecs_done(struct tevent_req *subreq)
1187 struct tevent_req *req = tevent_req_callback_data(
1188 subreq, struct tevent_req);
1189 struct dcerpc_winsif_WinsGetDbRecs_state *state = tevent_req_data(
1190 req, struct dcerpc_winsif_WinsGetDbRecs_state);
1192 TALLOC_CTX *mem_ctx;
1194 if (state->out_mem_ctx) {
1195 mem_ctx = state->out_mem_ctx;
1200 status = dcerpc_winsif_WinsGetDbRecs_r_recv(subreq, mem_ctx);
1201 TALLOC_FREE(subreq);
1202 if (tevent_req_nterror(req, status)) {
1206 /* Copy out parameters */
1207 *state->orig.out.records = *state->tmp.out.records;
1210 state->orig.out.result = state->tmp.out.result;
1212 /* Reset temporary structure */
1213 ZERO_STRUCT(state->tmp);
1215 tevent_req_done(req);
1218 NTSTATUS dcerpc_winsif_WinsGetDbRecs_recv(struct tevent_req *req,
1219 TALLOC_CTX *mem_ctx,
1222 struct dcerpc_winsif_WinsGetDbRecs_state *state = tevent_req_data(
1223 req, struct dcerpc_winsif_WinsGetDbRecs_state);
1226 if (tevent_req_is_nterror(req, &status)) {
1227 tevent_req_received(req);
1231 /* Steal possible out parameters to the callers context */
1232 talloc_steal(mem_ctx, state->out_mem_ctx);
1235 *result = state->orig.out.result;
1237 tevent_req_received(req);
1238 return NT_STATUS_OK;
1241 NTSTATUS dcerpc_winsif_WinsGetDbRecs(struct dcerpc_binding_handle *h,
1242 TALLOC_CTX *mem_ctx,
1243 struct winsif_Address *_owner_address /* [in] [unique] */,
1244 uint64_t _min_version_number /* [in] */,
1245 uint64_t _max_version_number /* [in] */,
1246 struct winsif_Records *_records /* [out] [ref] */,
1249 struct winsif_WinsGetDbRecs r;
1253 r.in.owner_address = _owner_address;
1254 r.in.min_version_number = _min_version_number;
1255 r.in.max_version_number = _max_version_number;
1257 status = dcerpc_winsif_WinsGetDbRecs_r(h, mem_ctx, &r);
1258 if (!NT_STATUS_IS_OK(status)) {
1262 /* Return variables */
1263 *_records = *r.out.records;
1266 *result = r.out.result;
1268 return NT_STATUS_OK;
1271 struct dcerpc_winsif_WinsTerm_r_state {
1272 TALLOC_CTX *out_mem_ctx;
1275 static void dcerpc_winsif_WinsTerm_r_done(struct tevent_req *subreq);
1277 struct tevent_req *dcerpc_winsif_WinsTerm_r_send(TALLOC_CTX *mem_ctx,
1278 struct tevent_context *ev,
1279 struct dcerpc_binding_handle *h,
1280 struct winsif_WinsTerm *r)
1282 struct tevent_req *req;
1283 struct dcerpc_winsif_WinsTerm_r_state *state;
1284 struct tevent_req *subreq;
1286 req = tevent_req_create(mem_ctx, &state,
1287 struct dcerpc_winsif_WinsTerm_r_state);
1292 state->out_mem_ctx = NULL;
1294 subreq = dcerpc_binding_handle_call_send(state, ev, h,
1295 NULL, &ndr_table_winsif,
1296 NDR_WINSIF_WINSTERM, state, r);
1297 if (tevent_req_nomem(subreq, req)) {
1298 return tevent_req_post(req, ev);
1300 tevent_req_set_callback(subreq, dcerpc_winsif_WinsTerm_r_done, req);
1305 static void dcerpc_winsif_WinsTerm_r_done(struct tevent_req *subreq)
1307 struct tevent_req *req =
1308 tevent_req_callback_data(subreq,
1312 status = dcerpc_binding_handle_call_recv(subreq);
1313 TALLOC_FREE(subreq);
1314 if (tevent_req_nterror(req, status)) {
1318 tevent_req_done(req);
1321 NTSTATUS dcerpc_winsif_WinsTerm_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
1323 struct dcerpc_winsif_WinsTerm_r_state *state =
1324 tevent_req_data(req,
1325 struct dcerpc_winsif_WinsTerm_r_state);
1328 if (tevent_req_is_nterror(req, &status)) {
1329 tevent_req_received(req);
1333 talloc_steal(mem_ctx, state->out_mem_ctx);
1335 tevent_req_received(req);
1336 return NT_STATUS_OK;
1339 NTSTATUS dcerpc_winsif_WinsTerm_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsTerm *r)
1343 status = dcerpc_binding_handle_call(h,
1344 NULL, &ndr_table_winsif,
1345 NDR_WINSIF_WINSTERM, mem_ctx, r);
1350 struct dcerpc_winsif_WinsTerm_state {
1351 struct winsif_WinsTerm orig;
1352 struct winsif_WinsTerm tmp;
1353 TALLOC_CTX *out_mem_ctx;
1356 static void dcerpc_winsif_WinsTerm_done(struct tevent_req *subreq);
1358 struct tevent_req *dcerpc_winsif_WinsTerm_send(TALLOC_CTX *mem_ctx,
1359 struct tevent_context *ev,
1360 struct dcerpc_binding_handle *h,
1361 uint16_t _abrupt_termination /* [in] */)
1363 struct tevent_req *req;
1364 struct dcerpc_winsif_WinsTerm_state *state;
1365 struct tevent_req *subreq;
1367 req = tevent_req_create(mem_ctx, &state,
1368 struct dcerpc_winsif_WinsTerm_state);
1372 state->out_mem_ctx = NULL;
1375 state->orig.in.abrupt_termination = _abrupt_termination;
1377 /* Out parameters */
1380 ZERO_STRUCT(state->orig.out.result);
1382 /* make a temporary copy, that we pass to the dispatch function */
1383 state->tmp = state->orig;
1385 subreq = dcerpc_winsif_WinsTerm_r_send(state, ev, h, &state->tmp);
1386 if (tevent_req_nomem(subreq, req)) {
1387 return tevent_req_post(req, ev);
1389 tevent_req_set_callback(subreq, dcerpc_winsif_WinsTerm_done, req);
1393 static void dcerpc_winsif_WinsTerm_done(struct tevent_req *subreq)
1395 struct tevent_req *req = tevent_req_callback_data(
1396 subreq, struct tevent_req);
1397 struct dcerpc_winsif_WinsTerm_state *state = tevent_req_data(
1398 req, struct dcerpc_winsif_WinsTerm_state);
1400 TALLOC_CTX *mem_ctx;
1402 if (state->out_mem_ctx) {
1403 mem_ctx = state->out_mem_ctx;
1408 status = dcerpc_winsif_WinsTerm_r_recv(subreq, mem_ctx);
1409 TALLOC_FREE(subreq);
1410 if (tevent_req_nterror(req, status)) {
1414 /* Copy out parameters */
1417 state->orig.out.result = state->tmp.out.result;
1419 /* Reset temporary structure */
1420 ZERO_STRUCT(state->tmp);
1422 tevent_req_done(req);
1425 NTSTATUS dcerpc_winsif_WinsTerm_recv(struct tevent_req *req,
1426 TALLOC_CTX *mem_ctx,
1429 struct dcerpc_winsif_WinsTerm_state *state = tevent_req_data(
1430 req, struct dcerpc_winsif_WinsTerm_state);
1433 if (tevent_req_is_nterror(req, &status)) {
1434 tevent_req_received(req);
1438 /* Steal possible out parameters to the callers context */
1439 talloc_steal(mem_ctx, state->out_mem_ctx);
1442 *result = state->orig.out.result;
1444 tevent_req_received(req);
1445 return NT_STATUS_OK;
1448 NTSTATUS dcerpc_winsif_WinsTerm(struct dcerpc_binding_handle *h,
1449 TALLOC_CTX *mem_ctx,
1450 uint16_t _abrupt_termination /* [in] */,
1453 struct winsif_WinsTerm r;
1457 r.in.abrupt_termination = _abrupt_termination;
1459 status = dcerpc_winsif_WinsTerm_r(h, mem_ctx, &r);
1460 if (!NT_STATUS_IS_OK(status)) {
1464 /* Return variables */
1467 *result = r.out.result;
1469 return NT_STATUS_OK;
1472 struct dcerpc_winsif_WinsBackup_r_state {
1473 TALLOC_CTX *out_mem_ctx;
1476 static void dcerpc_winsif_WinsBackup_r_done(struct tevent_req *subreq);
1478 struct tevent_req *dcerpc_winsif_WinsBackup_r_send(TALLOC_CTX *mem_ctx,
1479 struct tevent_context *ev,
1480 struct dcerpc_binding_handle *h,
1481 struct winsif_WinsBackup *r)
1483 struct tevent_req *req;
1484 struct dcerpc_winsif_WinsBackup_r_state *state;
1485 struct tevent_req *subreq;
1487 req = tevent_req_create(mem_ctx, &state,
1488 struct dcerpc_winsif_WinsBackup_r_state);
1493 state->out_mem_ctx = NULL;
1495 subreq = dcerpc_binding_handle_call_send(state, ev, h,
1496 NULL, &ndr_table_winsif,
1497 NDR_WINSIF_WINSBACKUP, state, r);
1498 if (tevent_req_nomem(subreq, req)) {
1499 return tevent_req_post(req, ev);
1501 tevent_req_set_callback(subreq, dcerpc_winsif_WinsBackup_r_done, req);
1506 static void dcerpc_winsif_WinsBackup_r_done(struct tevent_req *subreq)
1508 struct tevent_req *req =
1509 tevent_req_callback_data(subreq,
1513 status = dcerpc_binding_handle_call_recv(subreq);
1514 TALLOC_FREE(subreq);
1515 if (tevent_req_nterror(req, status)) {
1519 tevent_req_done(req);
1522 NTSTATUS dcerpc_winsif_WinsBackup_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
1524 struct dcerpc_winsif_WinsBackup_r_state *state =
1525 tevent_req_data(req,
1526 struct dcerpc_winsif_WinsBackup_r_state);
1529 if (tevent_req_is_nterror(req, &status)) {
1530 tevent_req_received(req);
1534 talloc_steal(mem_ctx, state->out_mem_ctx);
1536 tevent_req_received(req);
1537 return NT_STATUS_OK;
1540 NTSTATUS dcerpc_winsif_WinsBackup_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsBackup *r)
1544 status = dcerpc_binding_handle_call(h,
1545 NULL, &ndr_table_winsif,
1546 NDR_WINSIF_WINSBACKUP, mem_ctx, r);
1551 struct dcerpc_winsif_WinsBackup_state {
1552 struct winsif_WinsBackup orig;
1553 struct winsif_WinsBackup tmp;
1554 TALLOC_CTX *out_mem_ctx;
1557 static void dcerpc_winsif_WinsBackup_done(struct tevent_req *subreq);
1559 struct tevent_req *dcerpc_winsif_WinsBackup_send(TALLOC_CTX *mem_ctx,
1560 struct tevent_context *ev,
1561 struct dcerpc_binding_handle *h,
1562 const char *_backup_path /* [in] [ref,charset(DOS)] */,
1563 uint16_t _incremental /* [in] */)
1565 struct tevent_req *req;
1566 struct dcerpc_winsif_WinsBackup_state *state;
1567 struct tevent_req *subreq;
1569 req = tevent_req_create(mem_ctx, &state,
1570 struct dcerpc_winsif_WinsBackup_state);
1574 state->out_mem_ctx = NULL;
1577 state->orig.in.backup_path = _backup_path;
1578 state->orig.in.incremental = _incremental;
1580 /* Out parameters */
1583 ZERO_STRUCT(state->orig.out.result);
1585 /* make a temporary copy, that we pass to the dispatch function */
1586 state->tmp = state->orig;
1588 subreq = dcerpc_winsif_WinsBackup_r_send(state, ev, h, &state->tmp);
1589 if (tevent_req_nomem(subreq, req)) {
1590 return tevent_req_post(req, ev);
1592 tevent_req_set_callback(subreq, dcerpc_winsif_WinsBackup_done, req);
1596 static void dcerpc_winsif_WinsBackup_done(struct tevent_req *subreq)
1598 struct tevent_req *req = tevent_req_callback_data(
1599 subreq, struct tevent_req);
1600 struct dcerpc_winsif_WinsBackup_state *state = tevent_req_data(
1601 req, struct dcerpc_winsif_WinsBackup_state);
1603 TALLOC_CTX *mem_ctx;
1605 if (state->out_mem_ctx) {
1606 mem_ctx = state->out_mem_ctx;
1611 status = dcerpc_winsif_WinsBackup_r_recv(subreq, mem_ctx);
1612 TALLOC_FREE(subreq);
1613 if (tevent_req_nterror(req, status)) {
1617 /* Copy out parameters */
1620 state->orig.out.result = state->tmp.out.result;
1622 /* Reset temporary structure */
1623 ZERO_STRUCT(state->tmp);
1625 tevent_req_done(req);
1628 NTSTATUS dcerpc_winsif_WinsBackup_recv(struct tevent_req *req,
1629 TALLOC_CTX *mem_ctx,
1632 struct dcerpc_winsif_WinsBackup_state *state = tevent_req_data(
1633 req, struct dcerpc_winsif_WinsBackup_state);
1636 if (tevent_req_is_nterror(req, &status)) {
1637 tevent_req_received(req);
1641 /* Steal possible out parameters to the callers context */
1642 talloc_steal(mem_ctx, state->out_mem_ctx);
1645 *result = state->orig.out.result;
1647 tevent_req_received(req);
1648 return NT_STATUS_OK;
1651 NTSTATUS dcerpc_winsif_WinsBackup(struct dcerpc_binding_handle *h,
1652 TALLOC_CTX *mem_ctx,
1653 const char *_backup_path /* [in] [ref,charset(DOS)] */,
1654 uint16_t _incremental /* [in] */,
1657 struct winsif_WinsBackup r;
1661 r.in.backup_path = _backup_path;
1662 r.in.incremental = _incremental;
1664 status = dcerpc_winsif_WinsBackup_r(h, mem_ctx, &r);
1665 if (!NT_STATUS_IS_OK(status)) {
1669 /* Return variables */
1672 *result = r.out.result;
1674 return NT_STATUS_OK;
1677 struct dcerpc_winsif_WinsDelDbRecs_r_state {
1678 TALLOC_CTX *out_mem_ctx;
1681 static void dcerpc_winsif_WinsDelDbRecs_r_done(struct tevent_req *subreq);
1683 struct tevent_req *dcerpc_winsif_WinsDelDbRecs_r_send(TALLOC_CTX *mem_ctx,
1684 struct tevent_context *ev,
1685 struct dcerpc_binding_handle *h,
1686 struct winsif_WinsDelDbRecs *r)
1688 struct tevent_req *req;
1689 struct dcerpc_winsif_WinsDelDbRecs_r_state *state;
1690 struct tevent_req *subreq;
1692 req = tevent_req_create(mem_ctx, &state,
1693 struct dcerpc_winsif_WinsDelDbRecs_r_state);
1698 state->out_mem_ctx = NULL;
1700 subreq = dcerpc_binding_handle_call_send(state, ev, h,
1701 NULL, &ndr_table_winsif,
1702 NDR_WINSIF_WINSDELDBRECS, state, r);
1703 if (tevent_req_nomem(subreq, req)) {
1704 return tevent_req_post(req, ev);
1706 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDelDbRecs_r_done, req);
1711 static void dcerpc_winsif_WinsDelDbRecs_r_done(struct tevent_req *subreq)
1713 struct tevent_req *req =
1714 tevent_req_callback_data(subreq,
1718 status = dcerpc_binding_handle_call_recv(subreq);
1719 TALLOC_FREE(subreq);
1720 if (tevent_req_nterror(req, status)) {
1724 tevent_req_done(req);
1727 NTSTATUS dcerpc_winsif_WinsDelDbRecs_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
1729 struct dcerpc_winsif_WinsDelDbRecs_r_state *state =
1730 tevent_req_data(req,
1731 struct dcerpc_winsif_WinsDelDbRecs_r_state);
1734 if (tevent_req_is_nterror(req, &status)) {
1735 tevent_req_received(req);
1739 talloc_steal(mem_ctx, state->out_mem_ctx);
1741 tevent_req_received(req);
1742 return NT_STATUS_OK;
1745 NTSTATUS dcerpc_winsif_WinsDelDbRecs_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsDelDbRecs *r)
1749 status = dcerpc_binding_handle_call(h,
1750 NULL, &ndr_table_winsif,
1751 NDR_WINSIF_WINSDELDBRECS, mem_ctx, r);
1756 struct dcerpc_winsif_WinsDelDbRecs_state {
1757 struct winsif_WinsDelDbRecs orig;
1758 struct winsif_WinsDelDbRecs tmp;
1759 TALLOC_CTX *out_mem_ctx;
1762 static void dcerpc_winsif_WinsDelDbRecs_done(struct tevent_req *subreq);
1764 struct tevent_req *dcerpc_winsif_WinsDelDbRecs_send(TALLOC_CTX *mem_ctx,
1765 struct tevent_context *ev,
1766 struct dcerpc_binding_handle *h,
1767 struct winsif_Address *_owner_address /* [in] [ref] */,
1768 uint64_t _min_version_number /* [in] */,
1769 uint64_t _max_version_number /* [in] */)
1771 struct tevent_req *req;
1772 struct dcerpc_winsif_WinsDelDbRecs_state *state;
1773 struct tevent_req *subreq;
1775 req = tevent_req_create(mem_ctx, &state,
1776 struct dcerpc_winsif_WinsDelDbRecs_state);
1780 state->out_mem_ctx = NULL;
1783 state->orig.in.owner_address = _owner_address;
1784 state->orig.in.min_version_number = _min_version_number;
1785 state->orig.in.max_version_number = _max_version_number;
1787 /* Out parameters */
1790 ZERO_STRUCT(state->orig.out.result);
1792 /* make a temporary copy, that we pass to the dispatch function */
1793 state->tmp = state->orig;
1795 subreq = dcerpc_winsif_WinsDelDbRecs_r_send(state, ev, h, &state->tmp);
1796 if (tevent_req_nomem(subreq, req)) {
1797 return tevent_req_post(req, ev);
1799 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDelDbRecs_done, req);
1803 static void dcerpc_winsif_WinsDelDbRecs_done(struct tevent_req *subreq)
1805 struct tevent_req *req = tevent_req_callback_data(
1806 subreq, struct tevent_req);
1807 struct dcerpc_winsif_WinsDelDbRecs_state *state = tevent_req_data(
1808 req, struct dcerpc_winsif_WinsDelDbRecs_state);
1810 TALLOC_CTX *mem_ctx;
1812 if (state->out_mem_ctx) {
1813 mem_ctx = state->out_mem_ctx;
1818 status = dcerpc_winsif_WinsDelDbRecs_r_recv(subreq, mem_ctx);
1819 TALLOC_FREE(subreq);
1820 if (tevent_req_nterror(req, status)) {
1824 /* Copy out parameters */
1827 state->orig.out.result = state->tmp.out.result;
1829 /* Reset temporary structure */
1830 ZERO_STRUCT(state->tmp);
1832 tevent_req_done(req);
1835 NTSTATUS dcerpc_winsif_WinsDelDbRecs_recv(struct tevent_req *req,
1836 TALLOC_CTX *mem_ctx,
1839 struct dcerpc_winsif_WinsDelDbRecs_state *state = tevent_req_data(
1840 req, struct dcerpc_winsif_WinsDelDbRecs_state);
1843 if (tevent_req_is_nterror(req, &status)) {
1844 tevent_req_received(req);
1848 /* Steal possible out parameters to the callers context */
1849 talloc_steal(mem_ctx, state->out_mem_ctx);
1852 *result = state->orig.out.result;
1854 tevent_req_received(req);
1855 return NT_STATUS_OK;
1858 NTSTATUS dcerpc_winsif_WinsDelDbRecs(struct dcerpc_binding_handle *h,
1859 TALLOC_CTX *mem_ctx,
1860 struct winsif_Address *_owner_address /* [in] [ref] */,
1861 uint64_t _min_version_number /* [in] */,
1862 uint64_t _max_version_number /* [in] */,
1865 struct winsif_WinsDelDbRecs r;
1869 r.in.owner_address = _owner_address;
1870 r.in.min_version_number = _min_version_number;
1871 r.in.max_version_number = _max_version_number;
1873 status = dcerpc_winsif_WinsDelDbRecs_r(h, mem_ctx, &r);
1874 if (!NT_STATUS_IS_OK(status)) {
1878 /* Return variables */
1881 *result = r.out.result;
1883 return NT_STATUS_OK;
1886 struct dcerpc_winsif_WinsPullRange_r_state {
1887 TALLOC_CTX *out_mem_ctx;
1890 static void dcerpc_winsif_WinsPullRange_r_done(struct tevent_req *subreq);
1892 struct tevent_req *dcerpc_winsif_WinsPullRange_r_send(TALLOC_CTX *mem_ctx,
1893 struct tevent_context *ev,
1894 struct dcerpc_binding_handle *h,
1895 struct winsif_WinsPullRange *r)
1897 struct tevent_req *req;
1898 struct dcerpc_winsif_WinsPullRange_r_state *state;
1899 struct tevent_req *subreq;
1901 req = tevent_req_create(mem_ctx, &state,
1902 struct dcerpc_winsif_WinsPullRange_r_state);
1907 state->out_mem_ctx = NULL;
1909 subreq = dcerpc_binding_handle_call_send(state, ev, h,
1910 NULL, &ndr_table_winsif,
1911 NDR_WINSIF_WINSPULLRANGE, state, r);
1912 if (tevent_req_nomem(subreq, req)) {
1913 return tevent_req_post(req, ev);
1915 tevent_req_set_callback(subreq, dcerpc_winsif_WinsPullRange_r_done, req);
1920 static void dcerpc_winsif_WinsPullRange_r_done(struct tevent_req *subreq)
1922 struct tevent_req *req =
1923 tevent_req_callback_data(subreq,
1927 status = dcerpc_binding_handle_call_recv(subreq);
1928 TALLOC_FREE(subreq);
1929 if (tevent_req_nterror(req, status)) {
1933 tevent_req_done(req);
1936 NTSTATUS dcerpc_winsif_WinsPullRange_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
1938 struct dcerpc_winsif_WinsPullRange_r_state *state =
1939 tevent_req_data(req,
1940 struct dcerpc_winsif_WinsPullRange_r_state);
1943 if (tevent_req_is_nterror(req, &status)) {
1944 tevent_req_received(req);
1948 talloc_steal(mem_ctx, state->out_mem_ctx);
1950 tevent_req_received(req);
1951 return NT_STATUS_OK;
1954 NTSTATUS dcerpc_winsif_WinsPullRange_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsPullRange *r)
1958 status = dcerpc_binding_handle_call(h,
1959 NULL, &ndr_table_winsif,
1960 NDR_WINSIF_WINSPULLRANGE, mem_ctx, r);
1965 struct dcerpc_winsif_WinsPullRange_state {
1966 struct winsif_WinsPullRange orig;
1967 struct winsif_WinsPullRange tmp;
1968 TALLOC_CTX *out_mem_ctx;
1971 static void dcerpc_winsif_WinsPullRange_done(struct tevent_req *subreq);
1973 struct tevent_req *dcerpc_winsif_WinsPullRange_send(TALLOC_CTX *mem_ctx,
1974 struct tevent_context *ev,
1975 struct dcerpc_binding_handle *h,
1976 struct winsif_Address *_server_address /* [in] [ref] */,
1977 struct winsif_Address *_owner_address /* [in] [ref] */,
1978 uint64_t _min_version_number /* [in] */,
1979 uint64_t _max_version_number /* [in] */)
1981 struct tevent_req *req;
1982 struct dcerpc_winsif_WinsPullRange_state *state;
1983 struct tevent_req *subreq;
1985 req = tevent_req_create(mem_ctx, &state,
1986 struct dcerpc_winsif_WinsPullRange_state);
1990 state->out_mem_ctx = NULL;
1993 state->orig.in.server_address = _server_address;
1994 state->orig.in.owner_address = _owner_address;
1995 state->orig.in.min_version_number = _min_version_number;
1996 state->orig.in.max_version_number = _max_version_number;
1998 /* Out parameters */
2001 ZERO_STRUCT(state->orig.out.result);
2003 /* make a temporary copy, that we pass to the dispatch function */
2004 state->tmp = state->orig;
2006 subreq = dcerpc_winsif_WinsPullRange_r_send(state, ev, h, &state->tmp);
2007 if (tevent_req_nomem(subreq, req)) {
2008 return tevent_req_post(req, ev);
2010 tevent_req_set_callback(subreq, dcerpc_winsif_WinsPullRange_done, req);
2014 static void dcerpc_winsif_WinsPullRange_done(struct tevent_req *subreq)
2016 struct tevent_req *req = tevent_req_callback_data(
2017 subreq, struct tevent_req);
2018 struct dcerpc_winsif_WinsPullRange_state *state = tevent_req_data(
2019 req, struct dcerpc_winsif_WinsPullRange_state);
2021 TALLOC_CTX *mem_ctx;
2023 if (state->out_mem_ctx) {
2024 mem_ctx = state->out_mem_ctx;
2029 status = dcerpc_winsif_WinsPullRange_r_recv(subreq, mem_ctx);
2030 TALLOC_FREE(subreq);
2031 if (tevent_req_nterror(req, status)) {
2035 /* Copy out parameters */
2038 state->orig.out.result = state->tmp.out.result;
2040 /* Reset temporary structure */
2041 ZERO_STRUCT(state->tmp);
2043 tevent_req_done(req);
2046 NTSTATUS dcerpc_winsif_WinsPullRange_recv(struct tevent_req *req,
2047 TALLOC_CTX *mem_ctx,
2050 struct dcerpc_winsif_WinsPullRange_state *state = tevent_req_data(
2051 req, struct dcerpc_winsif_WinsPullRange_state);
2054 if (tevent_req_is_nterror(req, &status)) {
2055 tevent_req_received(req);
2059 /* Steal possible out parameters to the callers context */
2060 talloc_steal(mem_ctx, state->out_mem_ctx);
2063 *result = state->orig.out.result;
2065 tevent_req_received(req);
2066 return NT_STATUS_OK;
2069 NTSTATUS dcerpc_winsif_WinsPullRange(struct dcerpc_binding_handle *h,
2070 TALLOC_CTX *mem_ctx,
2071 struct winsif_Address *_server_address /* [in] [ref] */,
2072 struct winsif_Address *_owner_address /* [in] [ref] */,
2073 uint64_t _min_version_number /* [in] */,
2074 uint64_t _max_version_number /* [in] */,
2077 struct winsif_WinsPullRange r;
2081 r.in.server_address = _server_address;
2082 r.in.owner_address = _owner_address;
2083 r.in.min_version_number = _min_version_number;
2084 r.in.max_version_number = _max_version_number;
2086 status = dcerpc_winsif_WinsPullRange_r(h, mem_ctx, &r);
2087 if (!NT_STATUS_IS_OK(status)) {
2091 /* Return variables */
2094 *result = r.out.result;
2096 return NT_STATUS_OK;
2099 struct dcerpc_winsif_WinsSetPriorityClass_r_state {
2100 TALLOC_CTX *out_mem_ctx;
2103 static void dcerpc_winsif_WinsSetPriorityClass_r_done(struct tevent_req *subreq);
2105 struct tevent_req *dcerpc_winsif_WinsSetPriorityClass_r_send(TALLOC_CTX *mem_ctx,
2106 struct tevent_context *ev,
2107 struct dcerpc_binding_handle *h,
2108 struct winsif_WinsSetPriorityClass *r)
2110 struct tevent_req *req;
2111 struct dcerpc_winsif_WinsSetPriorityClass_r_state *state;
2112 struct tevent_req *subreq;
2114 req = tevent_req_create(mem_ctx, &state,
2115 struct dcerpc_winsif_WinsSetPriorityClass_r_state);
2120 state->out_mem_ctx = NULL;
2122 subreq = dcerpc_binding_handle_call_send(state, ev, h,
2123 NULL, &ndr_table_winsif,
2124 NDR_WINSIF_WINSSETPRIORITYCLASS, state, r);
2125 if (tevent_req_nomem(subreq, req)) {
2126 return tevent_req_post(req, ev);
2128 tevent_req_set_callback(subreq, dcerpc_winsif_WinsSetPriorityClass_r_done, req);
2133 static void dcerpc_winsif_WinsSetPriorityClass_r_done(struct tevent_req *subreq)
2135 struct tevent_req *req =
2136 tevent_req_callback_data(subreq,
2140 status = dcerpc_binding_handle_call_recv(subreq);
2141 TALLOC_FREE(subreq);
2142 if (tevent_req_nterror(req, status)) {
2146 tevent_req_done(req);
2149 NTSTATUS dcerpc_winsif_WinsSetPriorityClass_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
2151 struct dcerpc_winsif_WinsSetPriorityClass_r_state *state =
2152 tevent_req_data(req,
2153 struct dcerpc_winsif_WinsSetPriorityClass_r_state);
2156 if (tevent_req_is_nterror(req, &status)) {
2157 tevent_req_received(req);
2161 talloc_steal(mem_ctx, state->out_mem_ctx);
2163 tevent_req_received(req);
2164 return NT_STATUS_OK;
2167 NTSTATUS dcerpc_winsif_WinsSetPriorityClass_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsSetPriorityClass *r)
2171 status = dcerpc_binding_handle_call(h,
2172 NULL, &ndr_table_winsif,
2173 NDR_WINSIF_WINSSETPRIORITYCLASS, mem_ctx, r);
2178 struct dcerpc_winsif_WinsSetPriorityClass_state {
2179 struct winsif_WinsSetPriorityClass orig;
2180 struct winsif_WinsSetPriorityClass tmp;
2181 TALLOC_CTX *out_mem_ctx;
2184 static void dcerpc_winsif_WinsSetPriorityClass_done(struct tevent_req *subreq);
2186 struct tevent_req *dcerpc_winsif_WinsSetPriorityClass_send(TALLOC_CTX *mem_ctx,
2187 struct tevent_context *ev,
2188 struct dcerpc_binding_handle *h,
2189 enum winsif_PriorityClass _prioritiy_class /* [in] */)
2191 struct tevent_req *req;
2192 struct dcerpc_winsif_WinsSetPriorityClass_state *state;
2193 struct tevent_req *subreq;
2195 req = tevent_req_create(mem_ctx, &state,
2196 struct dcerpc_winsif_WinsSetPriorityClass_state);
2200 state->out_mem_ctx = NULL;
2203 state->orig.in.prioritiy_class = _prioritiy_class;
2205 /* Out parameters */
2208 ZERO_STRUCT(state->orig.out.result);
2210 /* make a temporary copy, that we pass to the dispatch function */
2211 state->tmp = state->orig;
2213 subreq = dcerpc_winsif_WinsSetPriorityClass_r_send(state, ev, h, &state->tmp);
2214 if (tevent_req_nomem(subreq, req)) {
2215 return tevent_req_post(req, ev);
2217 tevent_req_set_callback(subreq, dcerpc_winsif_WinsSetPriorityClass_done, req);
2221 static void dcerpc_winsif_WinsSetPriorityClass_done(struct tevent_req *subreq)
2223 struct tevent_req *req = tevent_req_callback_data(
2224 subreq, struct tevent_req);
2225 struct dcerpc_winsif_WinsSetPriorityClass_state *state = tevent_req_data(
2226 req, struct dcerpc_winsif_WinsSetPriorityClass_state);
2228 TALLOC_CTX *mem_ctx;
2230 if (state->out_mem_ctx) {
2231 mem_ctx = state->out_mem_ctx;
2236 status = dcerpc_winsif_WinsSetPriorityClass_r_recv(subreq, mem_ctx);
2237 TALLOC_FREE(subreq);
2238 if (tevent_req_nterror(req, status)) {
2242 /* Copy out parameters */
2245 state->orig.out.result = state->tmp.out.result;
2247 /* Reset temporary structure */
2248 ZERO_STRUCT(state->tmp);
2250 tevent_req_done(req);
2253 NTSTATUS dcerpc_winsif_WinsSetPriorityClass_recv(struct tevent_req *req,
2254 TALLOC_CTX *mem_ctx,
2257 struct dcerpc_winsif_WinsSetPriorityClass_state *state = tevent_req_data(
2258 req, struct dcerpc_winsif_WinsSetPriorityClass_state);
2261 if (tevent_req_is_nterror(req, &status)) {
2262 tevent_req_received(req);
2266 /* Steal possible out parameters to the callers context */
2267 talloc_steal(mem_ctx, state->out_mem_ctx);
2270 *result = state->orig.out.result;
2272 tevent_req_received(req);
2273 return NT_STATUS_OK;
2276 NTSTATUS dcerpc_winsif_WinsSetPriorityClass(struct dcerpc_binding_handle *h,
2277 TALLOC_CTX *mem_ctx,
2278 enum winsif_PriorityClass _prioritiy_class /* [in] */,
2281 struct winsif_WinsSetPriorityClass r;
2285 r.in.prioritiy_class = _prioritiy_class;
2287 status = dcerpc_winsif_WinsSetPriorityClass_r(h, mem_ctx, &r);
2288 if (!NT_STATUS_IS_OK(status)) {
2292 /* Return variables */
2295 *result = r.out.result;
2297 return NT_STATUS_OK;
2300 struct dcerpc_winsif_WinsResetCounters_r_state {
2301 TALLOC_CTX *out_mem_ctx;
2304 static void dcerpc_winsif_WinsResetCounters_r_done(struct tevent_req *subreq);
2306 struct tevent_req *dcerpc_winsif_WinsResetCounters_r_send(TALLOC_CTX *mem_ctx,
2307 struct tevent_context *ev,
2308 struct dcerpc_binding_handle *h,
2309 struct winsif_WinsResetCounters *r)
2311 struct tevent_req *req;
2312 struct dcerpc_winsif_WinsResetCounters_r_state *state;
2313 struct tevent_req *subreq;
2315 req = tevent_req_create(mem_ctx, &state,
2316 struct dcerpc_winsif_WinsResetCounters_r_state);
2321 state->out_mem_ctx = NULL;
2323 subreq = dcerpc_binding_handle_call_send(state, ev, h,
2324 NULL, &ndr_table_winsif,
2325 NDR_WINSIF_WINSRESETCOUNTERS, state, r);
2326 if (tevent_req_nomem(subreq, req)) {
2327 return tevent_req_post(req, ev);
2329 tevent_req_set_callback(subreq, dcerpc_winsif_WinsResetCounters_r_done, req);
2334 static void dcerpc_winsif_WinsResetCounters_r_done(struct tevent_req *subreq)
2336 struct tevent_req *req =
2337 tevent_req_callback_data(subreq,
2341 status = dcerpc_binding_handle_call_recv(subreq);
2342 TALLOC_FREE(subreq);
2343 if (tevent_req_nterror(req, status)) {
2347 tevent_req_done(req);
2350 NTSTATUS dcerpc_winsif_WinsResetCounters_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
2352 struct dcerpc_winsif_WinsResetCounters_r_state *state =
2353 tevent_req_data(req,
2354 struct dcerpc_winsif_WinsResetCounters_r_state);
2357 if (tevent_req_is_nterror(req, &status)) {
2358 tevent_req_received(req);
2362 talloc_steal(mem_ctx, state->out_mem_ctx);
2364 tevent_req_received(req);
2365 return NT_STATUS_OK;
2368 NTSTATUS dcerpc_winsif_WinsResetCounters_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsResetCounters *r)
2372 status = dcerpc_binding_handle_call(h,
2373 NULL, &ndr_table_winsif,
2374 NDR_WINSIF_WINSRESETCOUNTERS, mem_ctx, r);
2379 struct dcerpc_winsif_WinsResetCounters_state {
2380 struct winsif_WinsResetCounters orig;
2381 struct winsif_WinsResetCounters tmp;
2382 TALLOC_CTX *out_mem_ctx;
2385 static void dcerpc_winsif_WinsResetCounters_done(struct tevent_req *subreq);
2387 struct tevent_req *dcerpc_winsif_WinsResetCounters_send(TALLOC_CTX *mem_ctx,
2388 struct tevent_context *ev,
2389 struct dcerpc_binding_handle *h)
2391 struct tevent_req *req;
2392 struct dcerpc_winsif_WinsResetCounters_state *state;
2393 struct tevent_req *subreq;
2395 req = tevent_req_create(mem_ctx, &state,
2396 struct dcerpc_winsif_WinsResetCounters_state);
2400 state->out_mem_ctx = NULL;
2404 /* Out parameters */
2407 ZERO_STRUCT(state->orig.out.result);
2409 /* make a temporary copy, that we pass to the dispatch function */
2410 state->tmp = state->orig;
2412 subreq = dcerpc_winsif_WinsResetCounters_r_send(state, ev, h, &state->tmp);
2413 if (tevent_req_nomem(subreq, req)) {
2414 return tevent_req_post(req, ev);
2416 tevent_req_set_callback(subreq, dcerpc_winsif_WinsResetCounters_done, req);
2420 static void dcerpc_winsif_WinsResetCounters_done(struct tevent_req *subreq)
2422 struct tevent_req *req = tevent_req_callback_data(
2423 subreq, struct tevent_req);
2424 struct dcerpc_winsif_WinsResetCounters_state *state = tevent_req_data(
2425 req, struct dcerpc_winsif_WinsResetCounters_state);
2427 TALLOC_CTX *mem_ctx;
2429 if (state->out_mem_ctx) {
2430 mem_ctx = state->out_mem_ctx;
2435 status = dcerpc_winsif_WinsResetCounters_r_recv(subreq, mem_ctx);
2436 TALLOC_FREE(subreq);
2437 if (tevent_req_nterror(req, status)) {
2441 /* Copy out parameters */
2444 state->orig.out.result = state->tmp.out.result;
2446 /* Reset temporary structure */
2447 ZERO_STRUCT(state->tmp);
2449 tevent_req_done(req);
2452 NTSTATUS dcerpc_winsif_WinsResetCounters_recv(struct tevent_req *req,
2453 TALLOC_CTX *mem_ctx,
2456 struct dcerpc_winsif_WinsResetCounters_state *state = tevent_req_data(
2457 req, struct dcerpc_winsif_WinsResetCounters_state);
2460 if (tevent_req_is_nterror(req, &status)) {
2461 tevent_req_received(req);
2465 /* Steal possible out parameters to the callers context */
2466 talloc_steal(mem_ctx, state->out_mem_ctx);
2469 *result = state->orig.out.result;
2471 tevent_req_received(req);
2472 return NT_STATUS_OK;
2475 NTSTATUS dcerpc_winsif_WinsResetCounters(struct dcerpc_binding_handle *h,
2476 TALLOC_CTX *mem_ctx,
2479 struct winsif_WinsResetCounters r;
2484 status = dcerpc_winsif_WinsResetCounters_r(h, mem_ctx, &r);
2485 if (!NT_STATUS_IS_OK(status)) {
2489 /* Return variables */
2492 *result = r.out.result;
2494 return NT_STATUS_OK;
2497 struct dcerpc_winsif_WinsWorkerThreadUpdate_r_state {
2498 TALLOC_CTX *out_mem_ctx;
2501 static void dcerpc_winsif_WinsWorkerThreadUpdate_r_done(struct tevent_req *subreq);
2503 struct tevent_req *dcerpc_winsif_WinsWorkerThreadUpdate_r_send(TALLOC_CTX *mem_ctx,
2504 struct tevent_context *ev,
2505 struct dcerpc_binding_handle *h,
2506 struct winsif_WinsWorkerThreadUpdate *r)
2508 struct tevent_req *req;
2509 struct dcerpc_winsif_WinsWorkerThreadUpdate_r_state *state;
2510 struct tevent_req *subreq;
2512 req = tevent_req_create(mem_ctx, &state,
2513 struct dcerpc_winsif_WinsWorkerThreadUpdate_r_state);
2518 state->out_mem_ctx = NULL;
2520 subreq = dcerpc_binding_handle_call_send(state, ev, h,
2521 NULL, &ndr_table_winsif,
2522 NDR_WINSIF_WINSWORKERTHREADUPDATE, state, r);
2523 if (tevent_req_nomem(subreq, req)) {
2524 return tevent_req_post(req, ev);
2526 tevent_req_set_callback(subreq, dcerpc_winsif_WinsWorkerThreadUpdate_r_done, req);
2531 static void dcerpc_winsif_WinsWorkerThreadUpdate_r_done(struct tevent_req *subreq)
2533 struct tevent_req *req =
2534 tevent_req_callback_data(subreq,
2538 status = dcerpc_binding_handle_call_recv(subreq);
2539 TALLOC_FREE(subreq);
2540 if (tevent_req_nterror(req, status)) {
2544 tevent_req_done(req);
2547 NTSTATUS dcerpc_winsif_WinsWorkerThreadUpdate_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
2549 struct dcerpc_winsif_WinsWorkerThreadUpdate_r_state *state =
2550 tevent_req_data(req,
2551 struct dcerpc_winsif_WinsWorkerThreadUpdate_r_state);
2554 if (tevent_req_is_nterror(req, &status)) {
2555 tevent_req_received(req);
2559 talloc_steal(mem_ctx, state->out_mem_ctx);
2561 tevent_req_received(req);
2562 return NT_STATUS_OK;
2565 NTSTATUS dcerpc_winsif_WinsWorkerThreadUpdate_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsWorkerThreadUpdate *r)
2569 status = dcerpc_binding_handle_call(h,
2570 NULL, &ndr_table_winsif,
2571 NDR_WINSIF_WINSWORKERTHREADUPDATE, mem_ctx, r);
2576 struct dcerpc_winsif_WinsWorkerThreadUpdate_state {
2577 struct winsif_WinsWorkerThreadUpdate orig;
2578 struct winsif_WinsWorkerThreadUpdate tmp;
2579 TALLOC_CTX *out_mem_ctx;
2582 static void dcerpc_winsif_WinsWorkerThreadUpdate_done(struct tevent_req *subreq);
2584 struct tevent_req *dcerpc_winsif_WinsWorkerThreadUpdate_send(TALLOC_CTX *mem_ctx,
2585 struct tevent_context *ev,
2586 struct dcerpc_binding_handle *h,
2587 uint32_t _num_of_threads /* [in] */)
2589 struct tevent_req *req;
2590 struct dcerpc_winsif_WinsWorkerThreadUpdate_state *state;
2591 struct tevent_req *subreq;
2593 req = tevent_req_create(mem_ctx, &state,
2594 struct dcerpc_winsif_WinsWorkerThreadUpdate_state);
2598 state->out_mem_ctx = NULL;
2601 state->orig.in.num_of_threads = _num_of_threads;
2603 /* Out parameters */
2606 ZERO_STRUCT(state->orig.out.result);
2608 /* make a temporary copy, that we pass to the dispatch function */
2609 state->tmp = state->orig;
2611 subreq = dcerpc_winsif_WinsWorkerThreadUpdate_r_send(state, ev, h, &state->tmp);
2612 if (tevent_req_nomem(subreq, req)) {
2613 return tevent_req_post(req, ev);
2615 tevent_req_set_callback(subreq, dcerpc_winsif_WinsWorkerThreadUpdate_done, req);
2619 static void dcerpc_winsif_WinsWorkerThreadUpdate_done(struct tevent_req *subreq)
2621 struct tevent_req *req = tevent_req_callback_data(
2622 subreq, struct tevent_req);
2623 struct dcerpc_winsif_WinsWorkerThreadUpdate_state *state = tevent_req_data(
2624 req, struct dcerpc_winsif_WinsWorkerThreadUpdate_state);
2626 TALLOC_CTX *mem_ctx;
2628 if (state->out_mem_ctx) {
2629 mem_ctx = state->out_mem_ctx;
2634 status = dcerpc_winsif_WinsWorkerThreadUpdate_r_recv(subreq, mem_ctx);
2635 TALLOC_FREE(subreq);
2636 if (tevent_req_nterror(req, status)) {
2640 /* Copy out parameters */
2643 state->orig.out.result = state->tmp.out.result;
2645 /* Reset temporary structure */
2646 ZERO_STRUCT(state->tmp);
2648 tevent_req_done(req);
2651 NTSTATUS dcerpc_winsif_WinsWorkerThreadUpdate_recv(struct tevent_req *req,
2652 TALLOC_CTX *mem_ctx,
2655 struct dcerpc_winsif_WinsWorkerThreadUpdate_state *state = tevent_req_data(
2656 req, struct dcerpc_winsif_WinsWorkerThreadUpdate_state);
2659 if (tevent_req_is_nterror(req, &status)) {
2660 tevent_req_received(req);
2664 /* Steal possible out parameters to the callers context */
2665 talloc_steal(mem_ctx, state->out_mem_ctx);
2668 *result = state->orig.out.result;
2670 tevent_req_received(req);
2671 return NT_STATUS_OK;
2674 NTSTATUS dcerpc_winsif_WinsWorkerThreadUpdate(struct dcerpc_binding_handle *h,
2675 TALLOC_CTX *mem_ctx,
2676 uint32_t _num_of_threads /* [in] */,
2679 struct winsif_WinsWorkerThreadUpdate r;
2683 r.in.num_of_threads = _num_of_threads;
2685 status = dcerpc_winsif_WinsWorkerThreadUpdate_r(h, mem_ctx, &r);
2686 if (!NT_STATUS_IS_OK(status)) {
2690 /* Return variables */
2693 *result = r.out.result;
2695 return NT_STATUS_OK;
2698 struct dcerpc_winsif_WinsGetNameAndAdd_r_state {
2699 TALLOC_CTX *out_mem_ctx;
2702 static void dcerpc_winsif_WinsGetNameAndAdd_r_done(struct tevent_req *subreq);
2704 struct tevent_req *dcerpc_winsif_WinsGetNameAndAdd_r_send(TALLOC_CTX *mem_ctx,
2705 struct tevent_context *ev,
2706 struct dcerpc_binding_handle *h,
2707 struct winsif_WinsGetNameAndAdd *r)
2709 struct tevent_req *req;
2710 struct dcerpc_winsif_WinsGetNameAndAdd_r_state *state;
2711 struct tevent_req *subreq;
2713 req = tevent_req_create(mem_ctx, &state,
2714 struct dcerpc_winsif_WinsGetNameAndAdd_r_state);
2719 state->out_mem_ctx = talloc_new(state);
2720 if (tevent_req_nomem(state->out_mem_ctx, req)) {
2721 return tevent_req_post(req, ev);
2724 subreq = dcerpc_binding_handle_call_send(state, ev, h,
2725 NULL, &ndr_table_winsif,
2726 NDR_WINSIF_WINSGETNAMEANDADD, state->out_mem_ctx, r);
2727 if (tevent_req_nomem(subreq, req)) {
2728 return tevent_req_post(req, ev);
2730 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetNameAndAdd_r_done, req);
2735 static void dcerpc_winsif_WinsGetNameAndAdd_r_done(struct tevent_req *subreq)
2737 struct tevent_req *req =
2738 tevent_req_callback_data(subreq,
2742 status = dcerpc_binding_handle_call_recv(subreq);
2743 TALLOC_FREE(subreq);
2744 if (tevent_req_nterror(req, status)) {
2748 tevent_req_done(req);
2751 NTSTATUS dcerpc_winsif_WinsGetNameAndAdd_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
2753 struct dcerpc_winsif_WinsGetNameAndAdd_r_state *state =
2754 tevent_req_data(req,
2755 struct dcerpc_winsif_WinsGetNameAndAdd_r_state);
2758 if (tevent_req_is_nterror(req, &status)) {
2759 tevent_req_received(req);
2763 talloc_steal(mem_ctx, state->out_mem_ctx);
2765 tevent_req_received(req);
2766 return NT_STATUS_OK;
2769 NTSTATUS dcerpc_winsif_WinsGetNameAndAdd_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsGetNameAndAdd *r)
2773 status = dcerpc_binding_handle_call(h,
2774 NULL, &ndr_table_winsif,
2775 NDR_WINSIF_WINSGETNAMEANDADD, mem_ctx, r);
2780 struct dcerpc_winsif_WinsGetNameAndAdd_state {
2781 struct winsif_WinsGetNameAndAdd orig;
2782 struct winsif_WinsGetNameAndAdd tmp;
2783 TALLOC_CTX *out_mem_ctx;
2786 static void dcerpc_winsif_WinsGetNameAndAdd_done(struct tevent_req *subreq);
2788 struct tevent_req *dcerpc_winsif_WinsGetNameAndAdd_send(TALLOC_CTX *mem_ctx,
2789 struct tevent_context *ev,
2790 struct dcerpc_binding_handle *h,
2791 struct winsif_Address *_server_address /* [out] [ref] */,
2792 const char *_unc_name /* [out] [ref,charset(DOS),size_is(80)] */)
2794 struct tevent_req *req;
2795 struct dcerpc_winsif_WinsGetNameAndAdd_state *state;
2796 struct tevent_req *subreq;
2798 req = tevent_req_create(mem_ctx, &state,
2799 struct dcerpc_winsif_WinsGetNameAndAdd_state);
2803 state->out_mem_ctx = NULL;
2807 /* Out parameters */
2808 state->orig.out.server_address = _server_address;
2809 state->orig.out.unc_name = _unc_name;
2812 ZERO_STRUCT(state->orig.out.result);
2814 state->out_mem_ctx = talloc_named_const(state, 0,
2815 "dcerpc_winsif_WinsGetNameAndAdd_out_memory");
2816 if (tevent_req_nomem(state->out_mem_ctx, req)) {
2817 return tevent_req_post(req, ev);
2820 /* make a temporary copy, that we pass to the dispatch function */
2821 state->tmp = state->orig;
2823 subreq = dcerpc_winsif_WinsGetNameAndAdd_r_send(state, ev, h, &state->tmp);
2824 if (tevent_req_nomem(subreq, req)) {
2825 return tevent_req_post(req, ev);
2827 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetNameAndAdd_done, req);
2831 static void dcerpc_winsif_WinsGetNameAndAdd_done(struct tevent_req *subreq)
2833 struct tevent_req *req = tevent_req_callback_data(
2834 subreq, struct tevent_req);
2835 struct dcerpc_winsif_WinsGetNameAndAdd_state *state = tevent_req_data(
2836 req, struct dcerpc_winsif_WinsGetNameAndAdd_state);
2838 TALLOC_CTX *mem_ctx;
2840 if (state->out_mem_ctx) {
2841 mem_ctx = state->out_mem_ctx;
2846 status = dcerpc_winsif_WinsGetNameAndAdd_r_recv(subreq, mem_ctx);
2847 TALLOC_FREE(subreq);
2848 if (tevent_req_nterror(req, status)) {
2852 /* Copy out parameters */
2853 *state->orig.out.server_address = *state->tmp.out.server_address;
2855 size_t _copy_len_unc_name;
2856 _copy_len_unc_name = ndr_charset_length(state->tmp.out.unc_name, CH_UNIX);
2857 if (_copy_len_unc_name > 80) {
2858 tevent_req_nterror(req, NT_STATUS_INVALID_NETWORK_RESPONSE);
2861 memcpy(discard_const_p(uint8_t *, state->orig.out.unc_name), state->tmp.out.unc_name, _copy_len_unc_name * sizeof(*state->orig.out.unc_name));
2865 state->orig.out.result = state->tmp.out.result;
2867 /* Reset temporary structure */
2868 ZERO_STRUCT(state->tmp);
2870 tevent_req_done(req);
2873 NTSTATUS dcerpc_winsif_WinsGetNameAndAdd_recv(struct tevent_req *req,
2874 TALLOC_CTX *mem_ctx,
2877 struct dcerpc_winsif_WinsGetNameAndAdd_state *state = tevent_req_data(
2878 req, struct dcerpc_winsif_WinsGetNameAndAdd_state);
2881 if (tevent_req_is_nterror(req, &status)) {
2882 tevent_req_received(req);
2886 /* Steal possible out parameters to the callers context */
2887 talloc_steal(mem_ctx, state->out_mem_ctx);
2890 *result = state->orig.out.result;
2892 tevent_req_received(req);
2893 return NT_STATUS_OK;
2896 NTSTATUS dcerpc_winsif_WinsGetNameAndAdd(struct dcerpc_binding_handle *h,
2897 TALLOC_CTX *mem_ctx,
2898 struct winsif_Address *_server_address /* [out] [ref] */,
2899 const char *_unc_name /* [out] [ref,charset(DOS),size_is(80)] */,
2902 struct winsif_WinsGetNameAndAdd r;
2907 status = dcerpc_winsif_WinsGetNameAndAdd_r(h, mem_ctx, &r);
2908 if (!NT_STATUS_IS_OK(status)) {
2912 /* Return variables */
2913 *_server_address = *r.out.server_address;
2915 size_t _copy_len_unc_name;
2916 _copy_len_unc_name = ndr_charset_length(r.out.unc_name, CH_UNIX);
2917 if (_copy_len_unc_name > 80) {
2918 return NT_STATUS_INVALID_NETWORK_RESPONSE;
2920 memcpy(discard_const_p(uint8_t *, _unc_name), r.out.unc_name, _copy_len_unc_name * sizeof(*_unc_name));
2924 *result = r.out.result;
2926 return NT_STATUS_OK;
2929 struct dcerpc_winsif_WinsGetBrowserNames_Old_r_state {
2930 TALLOC_CTX *out_mem_ctx;
2933 static void dcerpc_winsif_WinsGetBrowserNames_Old_r_done(struct tevent_req *subreq);
2935 struct tevent_req *dcerpc_winsif_WinsGetBrowserNames_Old_r_send(TALLOC_CTX *mem_ctx,
2936 struct tevent_context *ev,
2937 struct dcerpc_binding_handle *h,
2938 struct winsif_WinsGetBrowserNames_Old *r)
2940 struct tevent_req *req;
2941 struct dcerpc_winsif_WinsGetBrowserNames_Old_r_state *state;
2942 struct tevent_req *subreq;
2944 req = tevent_req_create(mem_ctx, &state,
2945 struct dcerpc_winsif_WinsGetBrowserNames_Old_r_state);
2950 state->out_mem_ctx = talloc_new(state);
2951 if (tevent_req_nomem(state->out_mem_ctx, req)) {
2952 return tevent_req_post(req, ev);
2955 subreq = dcerpc_binding_handle_call_send(state, ev, h,
2956 NULL, &ndr_table_winsif,
2957 NDR_WINSIF_WINSGETBROWSERNAMES_OLD, state->out_mem_ctx, r);
2958 if (tevent_req_nomem(subreq, req)) {
2959 return tevent_req_post(req, ev);
2961 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetBrowserNames_Old_r_done, req);
2966 static void dcerpc_winsif_WinsGetBrowserNames_Old_r_done(struct tevent_req *subreq)
2968 struct tevent_req *req =
2969 tevent_req_callback_data(subreq,
2973 status = dcerpc_binding_handle_call_recv(subreq);
2974 TALLOC_FREE(subreq);
2975 if (tevent_req_nterror(req, status)) {
2979 tevent_req_done(req);
2982 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_Old_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
2984 struct dcerpc_winsif_WinsGetBrowserNames_Old_r_state *state =
2985 tevent_req_data(req,
2986 struct dcerpc_winsif_WinsGetBrowserNames_Old_r_state);
2989 if (tevent_req_is_nterror(req, &status)) {
2990 tevent_req_received(req);
2994 talloc_steal(mem_ctx, state->out_mem_ctx);
2996 tevent_req_received(req);
2997 return NT_STATUS_OK;
3000 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_Old_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsGetBrowserNames_Old *r)
3004 status = dcerpc_binding_handle_call(h,
3005 NULL, &ndr_table_winsif,
3006 NDR_WINSIF_WINSGETBROWSERNAMES_OLD, mem_ctx, r);
3011 struct dcerpc_winsif_WinsGetBrowserNames_Old_state {
3012 struct winsif_WinsGetBrowserNames_Old orig;
3013 struct winsif_WinsGetBrowserNames_Old tmp;
3014 TALLOC_CTX *out_mem_ctx;
3017 static void dcerpc_winsif_WinsGetBrowserNames_Old_done(struct tevent_req *subreq);
3019 struct tevent_req *dcerpc_winsif_WinsGetBrowserNames_Old_send(TALLOC_CTX *mem_ctx,
3020 struct tevent_context *ev,
3021 struct dcerpc_binding_handle *h,
3022 struct winsif_BrowserNames *_names /* [out] [ref] */)
3024 struct tevent_req *req;
3025 struct dcerpc_winsif_WinsGetBrowserNames_Old_state *state;
3026 struct tevent_req *subreq;
3028 req = tevent_req_create(mem_ctx, &state,
3029 struct dcerpc_winsif_WinsGetBrowserNames_Old_state);
3033 state->out_mem_ctx = NULL;
3037 /* Out parameters */
3038 state->orig.out.names = _names;
3041 ZERO_STRUCT(state->orig.out.result);
3043 state->out_mem_ctx = talloc_named_const(state, 0,
3044 "dcerpc_winsif_WinsGetBrowserNames_Old_out_memory");
3045 if (tevent_req_nomem(state->out_mem_ctx, req)) {
3046 return tevent_req_post(req, ev);
3049 /* make a temporary copy, that we pass to the dispatch function */
3050 state->tmp = state->orig;
3052 subreq = dcerpc_winsif_WinsGetBrowserNames_Old_r_send(state, ev, h, &state->tmp);
3053 if (tevent_req_nomem(subreq, req)) {
3054 return tevent_req_post(req, ev);
3056 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetBrowserNames_Old_done, req);
3060 static void dcerpc_winsif_WinsGetBrowserNames_Old_done(struct tevent_req *subreq)
3062 struct tevent_req *req = tevent_req_callback_data(
3063 subreq, struct tevent_req);
3064 struct dcerpc_winsif_WinsGetBrowserNames_Old_state *state = tevent_req_data(
3065 req, struct dcerpc_winsif_WinsGetBrowserNames_Old_state);
3067 TALLOC_CTX *mem_ctx;
3069 if (state->out_mem_ctx) {
3070 mem_ctx = state->out_mem_ctx;
3075 status = dcerpc_winsif_WinsGetBrowserNames_Old_r_recv(subreq, mem_ctx);
3076 TALLOC_FREE(subreq);
3077 if (tevent_req_nterror(req, status)) {
3081 /* Copy out parameters */
3082 *state->orig.out.names = *state->tmp.out.names;
3085 state->orig.out.result = state->tmp.out.result;
3087 /* Reset temporary structure */
3088 ZERO_STRUCT(state->tmp);
3090 tevent_req_done(req);
3093 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_Old_recv(struct tevent_req *req,
3094 TALLOC_CTX *mem_ctx,
3097 struct dcerpc_winsif_WinsGetBrowserNames_Old_state *state = tevent_req_data(
3098 req, struct dcerpc_winsif_WinsGetBrowserNames_Old_state);
3101 if (tevent_req_is_nterror(req, &status)) {
3102 tevent_req_received(req);
3106 /* Steal possible out parameters to the callers context */
3107 talloc_steal(mem_ctx, state->out_mem_ctx);
3110 *result = state->orig.out.result;
3112 tevent_req_received(req);
3113 return NT_STATUS_OK;
3116 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_Old(struct dcerpc_binding_handle *h,
3117 TALLOC_CTX *mem_ctx,
3118 struct winsif_BrowserNames *_names /* [out] [ref] */,
3121 struct winsif_WinsGetBrowserNames_Old r;
3126 status = dcerpc_winsif_WinsGetBrowserNames_Old_r(h, mem_ctx, &r);
3127 if (!NT_STATUS_IS_OK(status)) {
3131 /* Return variables */
3132 *_names = *r.out.names;
3135 *result = r.out.result;
3137 return NT_STATUS_OK;
3140 struct dcerpc_winsif_WinsDeleteWins_r_state {
3141 TALLOC_CTX *out_mem_ctx;
3144 static void dcerpc_winsif_WinsDeleteWins_r_done(struct tevent_req *subreq);
3146 struct tevent_req *dcerpc_winsif_WinsDeleteWins_r_send(TALLOC_CTX *mem_ctx,
3147 struct tevent_context *ev,
3148 struct dcerpc_binding_handle *h,
3149 struct winsif_WinsDeleteWins *r)
3151 struct tevent_req *req;
3152 struct dcerpc_winsif_WinsDeleteWins_r_state *state;
3153 struct tevent_req *subreq;
3155 req = tevent_req_create(mem_ctx, &state,
3156 struct dcerpc_winsif_WinsDeleteWins_r_state);
3161 state->out_mem_ctx = NULL;
3163 subreq = dcerpc_binding_handle_call_send(state, ev, h,
3164 NULL, &ndr_table_winsif,
3165 NDR_WINSIF_WINSDELETEWINS, state, r);
3166 if (tevent_req_nomem(subreq, req)) {
3167 return tevent_req_post(req, ev);
3169 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDeleteWins_r_done, req);
3174 static void dcerpc_winsif_WinsDeleteWins_r_done(struct tevent_req *subreq)
3176 struct tevent_req *req =
3177 tevent_req_callback_data(subreq,
3181 status = dcerpc_binding_handle_call_recv(subreq);
3182 TALLOC_FREE(subreq);
3183 if (tevent_req_nterror(req, status)) {
3187 tevent_req_done(req);
3190 NTSTATUS dcerpc_winsif_WinsDeleteWins_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
3192 struct dcerpc_winsif_WinsDeleteWins_r_state *state =
3193 tevent_req_data(req,
3194 struct dcerpc_winsif_WinsDeleteWins_r_state);
3197 if (tevent_req_is_nterror(req, &status)) {
3198 tevent_req_received(req);
3202 talloc_steal(mem_ctx, state->out_mem_ctx);
3204 tevent_req_received(req);
3205 return NT_STATUS_OK;
3208 NTSTATUS dcerpc_winsif_WinsDeleteWins_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsDeleteWins *r)
3212 status = dcerpc_binding_handle_call(h,
3213 NULL, &ndr_table_winsif,
3214 NDR_WINSIF_WINSDELETEWINS, mem_ctx, r);
3219 struct dcerpc_winsif_WinsDeleteWins_state {
3220 struct winsif_WinsDeleteWins orig;
3221 struct winsif_WinsDeleteWins tmp;
3222 TALLOC_CTX *out_mem_ctx;
3225 static void dcerpc_winsif_WinsDeleteWins_done(struct tevent_req *subreq);
3227 struct tevent_req *dcerpc_winsif_WinsDeleteWins_send(TALLOC_CTX *mem_ctx,
3228 struct tevent_context *ev,
3229 struct dcerpc_binding_handle *h,
3230 struct winsif_Address *_owner_address /* [in] [ref] */)
3232 struct tevent_req *req;
3233 struct dcerpc_winsif_WinsDeleteWins_state *state;
3234 struct tevent_req *subreq;
3236 req = tevent_req_create(mem_ctx, &state,
3237 struct dcerpc_winsif_WinsDeleteWins_state);
3241 state->out_mem_ctx = NULL;
3244 state->orig.in.owner_address = _owner_address;
3246 /* Out parameters */
3249 ZERO_STRUCT(state->orig.out.result);
3251 /* make a temporary copy, that we pass to the dispatch function */
3252 state->tmp = state->orig;
3254 subreq = dcerpc_winsif_WinsDeleteWins_r_send(state, ev, h, &state->tmp);
3255 if (tevent_req_nomem(subreq, req)) {
3256 return tevent_req_post(req, ev);
3258 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDeleteWins_done, req);
3262 static void dcerpc_winsif_WinsDeleteWins_done(struct tevent_req *subreq)
3264 struct tevent_req *req = tevent_req_callback_data(
3265 subreq, struct tevent_req);
3266 struct dcerpc_winsif_WinsDeleteWins_state *state = tevent_req_data(
3267 req, struct dcerpc_winsif_WinsDeleteWins_state);
3269 TALLOC_CTX *mem_ctx;
3271 if (state->out_mem_ctx) {
3272 mem_ctx = state->out_mem_ctx;
3277 status = dcerpc_winsif_WinsDeleteWins_r_recv(subreq, mem_ctx);
3278 TALLOC_FREE(subreq);
3279 if (tevent_req_nterror(req, status)) {
3283 /* Copy out parameters */
3286 state->orig.out.result = state->tmp.out.result;
3288 /* Reset temporary structure */
3289 ZERO_STRUCT(state->tmp);
3291 tevent_req_done(req);
3294 NTSTATUS dcerpc_winsif_WinsDeleteWins_recv(struct tevent_req *req,
3295 TALLOC_CTX *mem_ctx,
3298 struct dcerpc_winsif_WinsDeleteWins_state *state = tevent_req_data(
3299 req, struct dcerpc_winsif_WinsDeleteWins_state);
3302 if (tevent_req_is_nterror(req, &status)) {
3303 tevent_req_received(req);
3307 /* Steal possible out parameters to the callers context */
3308 talloc_steal(mem_ctx, state->out_mem_ctx);
3311 *result = state->orig.out.result;
3313 tevent_req_received(req);
3314 return NT_STATUS_OK;
3317 NTSTATUS dcerpc_winsif_WinsDeleteWins(struct dcerpc_binding_handle *h,
3318 TALLOC_CTX *mem_ctx,
3319 struct winsif_Address *_owner_address /* [in] [ref] */,
3322 struct winsif_WinsDeleteWins r;
3326 r.in.owner_address = _owner_address;
3328 status = dcerpc_winsif_WinsDeleteWins_r(h, mem_ctx, &r);
3329 if (!NT_STATUS_IS_OK(status)) {
3333 /* Return variables */
3336 *result = r.out.result;
3338 return NT_STATUS_OK;
3341 struct dcerpc_winsif_WinsSetFlags_r_state {
3342 TALLOC_CTX *out_mem_ctx;
3345 static void dcerpc_winsif_WinsSetFlags_r_done(struct tevent_req *subreq);
3347 struct tevent_req *dcerpc_winsif_WinsSetFlags_r_send(TALLOC_CTX *mem_ctx,
3348 struct tevent_context *ev,
3349 struct dcerpc_binding_handle *h,
3350 struct winsif_WinsSetFlags *r)
3352 struct tevent_req *req;
3353 struct dcerpc_winsif_WinsSetFlags_r_state *state;
3354 struct tevent_req *subreq;
3356 req = tevent_req_create(mem_ctx, &state,
3357 struct dcerpc_winsif_WinsSetFlags_r_state);
3362 state->out_mem_ctx = NULL;
3364 subreq = dcerpc_binding_handle_call_send(state, ev, h,
3365 NULL, &ndr_table_winsif,
3366 NDR_WINSIF_WINSSETFLAGS, state, r);
3367 if (tevent_req_nomem(subreq, req)) {
3368 return tevent_req_post(req, ev);
3370 tevent_req_set_callback(subreq, dcerpc_winsif_WinsSetFlags_r_done, req);
3375 static void dcerpc_winsif_WinsSetFlags_r_done(struct tevent_req *subreq)
3377 struct tevent_req *req =
3378 tevent_req_callback_data(subreq,
3382 status = dcerpc_binding_handle_call_recv(subreq);
3383 TALLOC_FREE(subreq);
3384 if (tevent_req_nterror(req, status)) {
3388 tevent_req_done(req);
3391 NTSTATUS dcerpc_winsif_WinsSetFlags_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
3393 struct dcerpc_winsif_WinsSetFlags_r_state *state =
3394 tevent_req_data(req,
3395 struct dcerpc_winsif_WinsSetFlags_r_state);
3398 if (tevent_req_is_nterror(req, &status)) {
3399 tevent_req_received(req);
3403 talloc_steal(mem_ctx, state->out_mem_ctx);
3405 tevent_req_received(req);
3406 return NT_STATUS_OK;
3409 NTSTATUS dcerpc_winsif_WinsSetFlags_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsSetFlags *r)
3413 status = dcerpc_binding_handle_call(h,
3414 NULL, &ndr_table_winsif,
3415 NDR_WINSIF_WINSSETFLAGS, mem_ctx, r);
3420 struct dcerpc_winsif_WinsSetFlags_state {
3421 struct winsif_WinsSetFlags orig;
3422 struct winsif_WinsSetFlags tmp;
3423 TALLOC_CTX *out_mem_ctx;
3426 static void dcerpc_winsif_WinsSetFlags_done(struct tevent_req *subreq);
3428 struct tevent_req *dcerpc_winsif_WinsSetFlags_send(TALLOC_CTX *mem_ctx,
3429 struct tevent_context *ev,
3430 struct dcerpc_binding_handle *h,
3431 uint32_t _flags /* [in] */)
3433 struct tevent_req *req;
3434 struct dcerpc_winsif_WinsSetFlags_state *state;
3435 struct tevent_req *subreq;
3437 req = tevent_req_create(mem_ctx, &state,
3438 struct dcerpc_winsif_WinsSetFlags_state);
3442 state->out_mem_ctx = NULL;
3445 state->orig.in.flags = _flags;
3447 /* Out parameters */
3450 ZERO_STRUCT(state->orig.out.result);
3452 /* make a temporary copy, that we pass to the dispatch function */
3453 state->tmp = state->orig;
3455 subreq = dcerpc_winsif_WinsSetFlags_r_send(state, ev, h, &state->tmp);
3456 if (tevent_req_nomem(subreq, req)) {
3457 return tevent_req_post(req, ev);
3459 tevent_req_set_callback(subreq, dcerpc_winsif_WinsSetFlags_done, req);
3463 static void dcerpc_winsif_WinsSetFlags_done(struct tevent_req *subreq)
3465 struct tevent_req *req = tevent_req_callback_data(
3466 subreq, struct tevent_req);
3467 struct dcerpc_winsif_WinsSetFlags_state *state = tevent_req_data(
3468 req, struct dcerpc_winsif_WinsSetFlags_state);
3470 TALLOC_CTX *mem_ctx;
3472 if (state->out_mem_ctx) {
3473 mem_ctx = state->out_mem_ctx;
3478 status = dcerpc_winsif_WinsSetFlags_r_recv(subreq, mem_ctx);
3479 TALLOC_FREE(subreq);
3480 if (tevent_req_nterror(req, status)) {
3484 /* Copy out parameters */
3487 state->orig.out.result = state->tmp.out.result;
3489 /* Reset temporary structure */
3490 ZERO_STRUCT(state->tmp);
3492 tevent_req_done(req);
3495 NTSTATUS dcerpc_winsif_WinsSetFlags_recv(struct tevent_req *req,
3496 TALLOC_CTX *mem_ctx,
3499 struct dcerpc_winsif_WinsSetFlags_state *state = tevent_req_data(
3500 req, struct dcerpc_winsif_WinsSetFlags_state);
3503 if (tevent_req_is_nterror(req, &status)) {
3504 tevent_req_received(req);
3508 /* Steal possible out parameters to the callers context */
3509 talloc_steal(mem_ctx, state->out_mem_ctx);
3512 *result = state->orig.out.result;
3514 tevent_req_received(req);
3515 return NT_STATUS_OK;
3518 NTSTATUS dcerpc_winsif_WinsSetFlags(struct dcerpc_binding_handle *h,
3519 TALLOC_CTX *mem_ctx,
3520 uint32_t _flags /* [in] */,
3523 struct winsif_WinsSetFlags r;
3527 r.in.flags = _flags;
3529 status = dcerpc_winsif_WinsSetFlags_r(h, mem_ctx, &r);
3530 if (!NT_STATUS_IS_OK(status)) {
3534 /* Return variables */
3537 *result = r.out.result;
3539 return NT_STATUS_OK;
3542 struct dcerpc_winsif_WinsGetBrowserNames_r_state {
3543 TALLOC_CTX *out_mem_ctx;
3546 static void dcerpc_winsif_WinsGetBrowserNames_r_done(struct tevent_req *subreq);
3548 struct tevent_req *dcerpc_winsif_WinsGetBrowserNames_r_send(TALLOC_CTX *mem_ctx,
3549 struct tevent_context *ev,
3550 struct dcerpc_binding_handle *h,
3551 struct winsif_WinsGetBrowserNames *r)
3553 struct tevent_req *req;
3554 struct dcerpc_winsif_WinsGetBrowserNames_r_state *state;
3555 struct tevent_req *subreq;
3557 req = tevent_req_create(mem_ctx, &state,
3558 struct dcerpc_winsif_WinsGetBrowserNames_r_state);
3563 state->out_mem_ctx = talloc_new(state);
3564 if (tevent_req_nomem(state->out_mem_ctx, req)) {
3565 return tevent_req_post(req, ev);
3568 subreq = dcerpc_binding_handle_call_send(state, ev, h,
3569 NULL, &ndr_table_winsif,
3570 NDR_WINSIF_WINSGETBROWSERNAMES, state->out_mem_ctx, r);
3571 if (tevent_req_nomem(subreq, req)) {
3572 return tevent_req_post(req, ev);
3574 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetBrowserNames_r_done, req);
3579 static void dcerpc_winsif_WinsGetBrowserNames_r_done(struct tevent_req *subreq)
3581 struct tevent_req *req =
3582 tevent_req_callback_data(subreq,
3586 status = dcerpc_binding_handle_call_recv(subreq);
3587 TALLOC_FREE(subreq);
3588 if (tevent_req_nterror(req, status)) {
3592 tevent_req_done(req);
3595 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
3597 struct dcerpc_winsif_WinsGetBrowserNames_r_state *state =
3598 tevent_req_data(req,
3599 struct dcerpc_winsif_WinsGetBrowserNames_r_state);
3602 if (tevent_req_is_nterror(req, &status)) {
3603 tevent_req_received(req);
3607 talloc_steal(mem_ctx, state->out_mem_ctx);
3609 tevent_req_received(req);
3610 return NT_STATUS_OK;
3613 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsGetBrowserNames *r)
3617 status = dcerpc_binding_handle_call(h,
3618 NULL, &ndr_table_winsif,
3619 NDR_WINSIF_WINSGETBROWSERNAMES, mem_ctx, r);
3624 struct dcerpc_winsif_WinsGetBrowserNames_state {
3625 struct winsif_WinsGetBrowserNames orig;
3626 struct winsif_WinsGetBrowserNames tmp;
3627 TALLOC_CTX *out_mem_ctx;
3630 static void dcerpc_winsif_WinsGetBrowserNames_done(struct tevent_req *subreq);
3632 struct tevent_req *dcerpc_winsif_WinsGetBrowserNames_send(TALLOC_CTX *mem_ctx,
3633 struct tevent_context *ev,
3634 struct dcerpc_binding_handle *h,
3635 struct winsif_BindData *_server_handle /* [in] [ref] */,
3636 struct winsif_BrowserNames *_names /* [out] [ref] */)
3638 struct tevent_req *req;
3639 struct dcerpc_winsif_WinsGetBrowserNames_state *state;
3640 struct tevent_req *subreq;
3642 req = tevent_req_create(mem_ctx, &state,
3643 struct dcerpc_winsif_WinsGetBrowserNames_state);
3647 state->out_mem_ctx = NULL;
3650 state->orig.in.server_handle = _server_handle;
3652 /* Out parameters */
3653 state->orig.out.names = _names;
3656 ZERO_STRUCT(state->orig.out.result);
3658 state->out_mem_ctx = talloc_named_const(state, 0,
3659 "dcerpc_winsif_WinsGetBrowserNames_out_memory");
3660 if (tevent_req_nomem(state->out_mem_ctx, req)) {
3661 return tevent_req_post(req, ev);
3664 /* make a temporary copy, that we pass to the dispatch function */
3665 state->tmp = state->orig;
3667 subreq = dcerpc_winsif_WinsGetBrowserNames_r_send(state, ev, h, &state->tmp);
3668 if (tevent_req_nomem(subreq, req)) {
3669 return tevent_req_post(req, ev);
3671 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetBrowserNames_done, req);
3675 static void dcerpc_winsif_WinsGetBrowserNames_done(struct tevent_req *subreq)
3677 struct tevent_req *req = tevent_req_callback_data(
3678 subreq, struct tevent_req);
3679 struct dcerpc_winsif_WinsGetBrowserNames_state *state = tevent_req_data(
3680 req, struct dcerpc_winsif_WinsGetBrowserNames_state);
3682 TALLOC_CTX *mem_ctx;
3684 if (state->out_mem_ctx) {
3685 mem_ctx = state->out_mem_ctx;
3690 status = dcerpc_winsif_WinsGetBrowserNames_r_recv(subreq, mem_ctx);
3691 TALLOC_FREE(subreq);
3692 if (tevent_req_nterror(req, status)) {
3696 /* Copy out parameters */
3697 *state->orig.out.names = *state->tmp.out.names;
3700 state->orig.out.result = state->tmp.out.result;
3702 /* Reset temporary structure */
3703 ZERO_STRUCT(state->tmp);
3705 tevent_req_done(req);
3708 NTSTATUS dcerpc_winsif_WinsGetBrowserNames_recv(struct tevent_req *req,
3709 TALLOC_CTX *mem_ctx,
3712 struct dcerpc_winsif_WinsGetBrowserNames_state *state = tevent_req_data(
3713 req, struct dcerpc_winsif_WinsGetBrowserNames_state);
3716 if (tevent_req_is_nterror(req, &status)) {
3717 tevent_req_received(req);
3721 /* Steal possible out parameters to the callers context */
3722 talloc_steal(mem_ctx, state->out_mem_ctx);
3725 *result = state->orig.out.result;
3727 tevent_req_received(req);
3728 return NT_STATUS_OK;
3731 NTSTATUS dcerpc_winsif_WinsGetBrowserNames(struct dcerpc_binding_handle *h,
3732 TALLOC_CTX *mem_ctx,
3733 struct winsif_BindData *_server_handle /* [in] [ref] */,
3734 struct winsif_BrowserNames *_names /* [out] [ref] */,
3737 struct winsif_WinsGetBrowserNames r;
3741 r.in.server_handle = _server_handle;
3743 status = dcerpc_winsif_WinsGetBrowserNames_r(h, mem_ctx, &r);
3744 if (!NT_STATUS_IS_OK(status)) {
3748 /* Return variables */
3749 *_names = *r.out.names;
3752 *result = r.out.result;
3754 return NT_STATUS_OK;
3757 struct dcerpc_winsif_WinsGetDbRecsByName_r_state {
3758 TALLOC_CTX *out_mem_ctx;
3761 static void dcerpc_winsif_WinsGetDbRecsByName_r_done(struct tevent_req *subreq);
3763 struct tevent_req *dcerpc_winsif_WinsGetDbRecsByName_r_send(TALLOC_CTX *mem_ctx,
3764 struct tevent_context *ev,
3765 struct dcerpc_binding_handle *h,
3766 struct winsif_WinsGetDbRecsByName *r)
3768 struct tevent_req *req;
3769 struct dcerpc_winsif_WinsGetDbRecsByName_r_state *state;
3770 struct tevent_req *subreq;
3772 req = tevent_req_create(mem_ctx, &state,
3773 struct dcerpc_winsif_WinsGetDbRecsByName_r_state);
3778 state->out_mem_ctx = talloc_new(state);
3779 if (tevent_req_nomem(state->out_mem_ctx, req)) {
3780 return tevent_req_post(req, ev);
3783 subreq = dcerpc_binding_handle_call_send(state, ev, h,
3784 NULL, &ndr_table_winsif,
3785 NDR_WINSIF_WINSGETDBRECSBYNAME, state->out_mem_ctx, r);
3786 if (tevent_req_nomem(subreq, req)) {
3787 return tevent_req_post(req, ev);
3789 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetDbRecsByName_r_done, req);
3794 static void dcerpc_winsif_WinsGetDbRecsByName_r_done(struct tevent_req *subreq)
3796 struct tevent_req *req =
3797 tevent_req_callback_data(subreq,
3801 status = dcerpc_binding_handle_call_recv(subreq);
3802 TALLOC_FREE(subreq);
3803 if (tevent_req_nterror(req, status)) {
3807 tevent_req_done(req);
3810 NTSTATUS dcerpc_winsif_WinsGetDbRecsByName_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
3812 struct dcerpc_winsif_WinsGetDbRecsByName_r_state *state =
3813 tevent_req_data(req,
3814 struct dcerpc_winsif_WinsGetDbRecsByName_r_state);
3817 if (tevent_req_is_nterror(req, &status)) {
3818 tevent_req_received(req);
3822 talloc_steal(mem_ctx, state->out_mem_ctx);
3824 tevent_req_received(req);
3825 return NT_STATUS_OK;
3828 NTSTATUS dcerpc_winsif_WinsGetDbRecsByName_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsGetDbRecsByName *r)
3832 status = dcerpc_binding_handle_call(h,
3833 NULL, &ndr_table_winsif,
3834 NDR_WINSIF_WINSGETDBRECSBYNAME, mem_ctx, r);
3839 struct dcerpc_winsif_WinsGetDbRecsByName_state {
3840 struct winsif_WinsGetDbRecsByName orig;
3841 struct winsif_WinsGetDbRecsByName tmp;
3842 TALLOC_CTX *out_mem_ctx;
3845 static void dcerpc_winsif_WinsGetDbRecsByName_done(struct tevent_req *subreq);
3847 struct tevent_req *dcerpc_winsif_WinsGetDbRecsByName_send(TALLOC_CTX *mem_ctx,
3848 struct tevent_context *ev,
3849 struct dcerpc_binding_handle *h,
3850 struct winsif_Address *_owner_address /* [in] [unique] */,
3851 uint32_t _search_backward /* [in] */,
3852 struct nbt_name * _name /* [in] [unique] */,
3853 uint32_t _name_len /* [in] [value(name?16:0),range(0,16)] */,
3854 uint32_t _num_records_desired /* [in] */,
3855 uint32_t _only_statics /* [in] */,
3856 struct winsif_Records *_records /* [out] [ref] */)
3858 struct tevent_req *req;
3859 struct dcerpc_winsif_WinsGetDbRecsByName_state *state;
3860 struct tevent_req *subreq;
3862 req = tevent_req_create(mem_ctx, &state,
3863 struct dcerpc_winsif_WinsGetDbRecsByName_state);
3867 state->out_mem_ctx = NULL;
3870 state->orig.in.owner_address = _owner_address;
3871 state->orig.in.search_backward = _search_backward;
3872 state->orig.in.name = _name;
3873 state->orig.in.name_len = _name_len;
3874 state->orig.in.num_records_desired = _num_records_desired;
3875 state->orig.in.only_statics = _only_statics;
3877 /* Out parameters */
3878 state->orig.out.records = _records;
3881 ZERO_STRUCT(state->orig.out.result);
3883 state->out_mem_ctx = talloc_named_const(state, 0,
3884 "dcerpc_winsif_WinsGetDbRecsByName_out_memory");
3885 if (tevent_req_nomem(state->out_mem_ctx, req)) {
3886 return tevent_req_post(req, ev);
3889 /* make a temporary copy, that we pass to the dispatch function */
3890 state->tmp = state->orig;
3892 subreq = dcerpc_winsif_WinsGetDbRecsByName_r_send(state, ev, h, &state->tmp);
3893 if (tevent_req_nomem(subreq, req)) {
3894 return tevent_req_post(req, ev);
3896 tevent_req_set_callback(subreq, dcerpc_winsif_WinsGetDbRecsByName_done, req);
3900 static void dcerpc_winsif_WinsGetDbRecsByName_done(struct tevent_req *subreq)
3902 struct tevent_req *req = tevent_req_callback_data(
3903 subreq, struct tevent_req);
3904 struct dcerpc_winsif_WinsGetDbRecsByName_state *state = tevent_req_data(
3905 req, struct dcerpc_winsif_WinsGetDbRecsByName_state);
3907 TALLOC_CTX *mem_ctx;
3909 if (state->out_mem_ctx) {
3910 mem_ctx = state->out_mem_ctx;
3915 status = dcerpc_winsif_WinsGetDbRecsByName_r_recv(subreq, mem_ctx);
3916 TALLOC_FREE(subreq);
3917 if (tevent_req_nterror(req, status)) {
3921 /* Copy out parameters */
3922 *state->orig.out.records = *state->tmp.out.records;
3925 state->orig.out.result = state->tmp.out.result;
3927 /* Reset temporary structure */
3928 ZERO_STRUCT(state->tmp);
3930 tevent_req_done(req);
3933 NTSTATUS dcerpc_winsif_WinsGetDbRecsByName_recv(struct tevent_req *req,
3934 TALLOC_CTX *mem_ctx,
3937 struct dcerpc_winsif_WinsGetDbRecsByName_state *state = tevent_req_data(
3938 req, struct dcerpc_winsif_WinsGetDbRecsByName_state);
3941 if (tevent_req_is_nterror(req, &status)) {
3942 tevent_req_received(req);
3946 /* Steal possible out parameters to the callers context */
3947 talloc_steal(mem_ctx, state->out_mem_ctx);
3950 *result = state->orig.out.result;
3952 tevent_req_received(req);
3953 return NT_STATUS_OK;
3956 NTSTATUS dcerpc_winsif_WinsGetDbRecsByName(struct dcerpc_binding_handle *h,
3957 TALLOC_CTX *mem_ctx,
3958 struct winsif_Address *_owner_address /* [in] [unique] */,
3959 uint32_t _search_backward /* [in] */,
3960 struct nbt_name * _name /* [in] [unique] */,
3961 uint32_t _name_len /* [in] [value(name?16:0),range(0,16)] */,
3962 uint32_t _num_records_desired /* [in] */,
3963 uint32_t _only_statics /* [in] */,
3964 struct winsif_Records *_records /* [out] [ref] */,
3967 struct winsif_WinsGetDbRecsByName r;
3971 r.in.owner_address = _owner_address;
3972 r.in.search_backward = _search_backward;
3974 r.in.name_len = _name_len;
3975 r.in.num_records_desired = _num_records_desired;
3976 r.in.only_statics = _only_statics;
3978 status = dcerpc_winsif_WinsGetDbRecsByName_r(h, mem_ctx, &r);
3979 if (!NT_STATUS_IS_OK(status)) {
3983 /* Return variables */
3984 *_records = *r.out.records;
3987 *result = r.out.result;
3989 return NT_STATUS_OK;
3992 struct dcerpc_winsif_WinsStatusNew_r_state {
3993 TALLOC_CTX *out_mem_ctx;
3996 static void dcerpc_winsif_WinsStatusNew_r_done(struct tevent_req *subreq);
3998 struct tevent_req *dcerpc_winsif_WinsStatusNew_r_send(TALLOC_CTX *mem_ctx,
3999 struct tevent_context *ev,
4000 struct dcerpc_binding_handle *h,
4001 struct winsif_WinsStatusNew *r)
4003 struct tevent_req *req;
4004 struct dcerpc_winsif_WinsStatusNew_r_state *state;
4005 struct tevent_req *subreq;
4007 req = tevent_req_create(mem_ctx, &state,
4008 struct dcerpc_winsif_WinsStatusNew_r_state);
4013 state->out_mem_ctx = talloc_new(state);
4014 if (tevent_req_nomem(state->out_mem_ctx, req)) {
4015 return tevent_req_post(req, ev);
4018 subreq = dcerpc_binding_handle_call_send(state, ev, h,
4019 NULL, &ndr_table_winsif,
4020 NDR_WINSIF_WINSSTATUSNEW, state->out_mem_ctx, r);
4021 if (tevent_req_nomem(subreq, req)) {
4022 return tevent_req_post(req, ev);
4024 tevent_req_set_callback(subreq, dcerpc_winsif_WinsStatusNew_r_done, req);
4029 static void dcerpc_winsif_WinsStatusNew_r_done(struct tevent_req *subreq)
4031 struct tevent_req *req =
4032 tevent_req_callback_data(subreq,
4036 status = dcerpc_binding_handle_call_recv(subreq);
4037 TALLOC_FREE(subreq);
4038 if (tevent_req_nterror(req, status)) {
4042 tevent_req_done(req);
4045 NTSTATUS dcerpc_winsif_WinsStatusNew_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
4047 struct dcerpc_winsif_WinsStatusNew_r_state *state =
4048 tevent_req_data(req,
4049 struct dcerpc_winsif_WinsStatusNew_r_state);
4052 if (tevent_req_is_nterror(req, &status)) {
4053 tevent_req_received(req);
4057 talloc_steal(mem_ctx, state->out_mem_ctx);
4059 tevent_req_received(req);
4060 return NT_STATUS_OK;
4063 NTSTATUS dcerpc_winsif_WinsStatusNew_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsStatusNew *r)
4067 status = dcerpc_binding_handle_call(h,
4068 NULL, &ndr_table_winsif,
4069 NDR_WINSIF_WINSSTATUSNEW, mem_ctx, r);
4074 struct dcerpc_winsif_WinsStatusNew_state {
4075 struct winsif_WinsStatusNew orig;
4076 struct winsif_WinsStatusNew tmp;
4077 TALLOC_CTX *out_mem_ctx;
4080 static void dcerpc_winsif_WinsStatusNew_done(struct tevent_req *subreq);
4082 struct tevent_req *dcerpc_winsif_WinsStatusNew_send(TALLOC_CTX *mem_ctx,
4083 struct tevent_context *ev,
4084 struct dcerpc_binding_handle *h,
4085 enum winsif_StatusCmd _cmd /* [in] */,
4086 struct winsif_ResultsNew *_results /* [out] [ref] */)
4088 struct tevent_req *req;
4089 struct dcerpc_winsif_WinsStatusNew_state *state;
4090 struct tevent_req *subreq;
4092 req = tevent_req_create(mem_ctx, &state,
4093 struct dcerpc_winsif_WinsStatusNew_state);
4097 state->out_mem_ctx = NULL;
4100 state->orig.in.cmd = _cmd;
4102 /* Out parameters */
4103 state->orig.out.results = _results;
4106 ZERO_STRUCT(state->orig.out.result);
4108 state->out_mem_ctx = talloc_named_const(state, 0,
4109 "dcerpc_winsif_WinsStatusNew_out_memory");
4110 if (tevent_req_nomem(state->out_mem_ctx, req)) {
4111 return tevent_req_post(req, ev);
4114 /* make a temporary copy, that we pass to the dispatch function */
4115 state->tmp = state->orig;
4117 subreq = dcerpc_winsif_WinsStatusNew_r_send(state, ev, h, &state->tmp);
4118 if (tevent_req_nomem(subreq, req)) {
4119 return tevent_req_post(req, ev);
4121 tevent_req_set_callback(subreq, dcerpc_winsif_WinsStatusNew_done, req);
4125 static void dcerpc_winsif_WinsStatusNew_done(struct tevent_req *subreq)
4127 struct tevent_req *req = tevent_req_callback_data(
4128 subreq, struct tevent_req);
4129 struct dcerpc_winsif_WinsStatusNew_state *state = tevent_req_data(
4130 req, struct dcerpc_winsif_WinsStatusNew_state);
4132 TALLOC_CTX *mem_ctx;
4134 if (state->out_mem_ctx) {
4135 mem_ctx = state->out_mem_ctx;
4140 status = dcerpc_winsif_WinsStatusNew_r_recv(subreq, mem_ctx);
4141 TALLOC_FREE(subreq);
4142 if (tevent_req_nterror(req, status)) {
4146 /* Copy out parameters */
4147 *state->orig.out.results = *state->tmp.out.results;
4150 state->orig.out.result = state->tmp.out.result;
4152 /* Reset temporary structure */
4153 ZERO_STRUCT(state->tmp);
4155 tevent_req_done(req);
4158 NTSTATUS dcerpc_winsif_WinsStatusNew_recv(struct tevent_req *req,
4159 TALLOC_CTX *mem_ctx,
4162 struct dcerpc_winsif_WinsStatusNew_state *state = tevent_req_data(
4163 req, struct dcerpc_winsif_WinsStatusNew_state);
4166 if (tevent_req_is_nterror(req, &status)) {
4167 tevent_req_received(req);
4171 /* Steal possible out parameters to the callers context */
4172 talloc_steal(mem_ctx, state->out_mem_ctx);
4175 *result = state->orig.out.result;
4177 tevent_req_received(req);
4178 return NT_STATUS_OK;
4181 NTSTATUS dcerpc_winsif_WinsStatusNew(struct dcerpc_binding_handle *h,
4182 TALLOC_CTX *mem_ctx,
4183 enum winsif_StatusCmd _cmd /* [in] */,
4184 struct winsif_ResultsNew *_results /* [out] [ref] */,
4187 struct winsif_WinsStatusNew r;
4193 status = dcerpc_winsif_WinsStatusNew_r(h, mem_ctx, &r);
4194 if (!NT_STATUS_IS_OK(status)) {
4198 /* Return variables */
4199 *_results = *r.out.results;
4202 *result = r.out.result;
4204 return NT_STATUS_OK;
4207 struct dcerpc_winsif_WinsStatusWHdl_r_state {
4208 TALLOC_CTX *out_mem_ctx;
4211 static void dcerpc_winsif_WinsStatusWHdl_r_done(struct tevent_req *subreq);
4213 struct tevent_req *dcerpc_winsif_WinsStatusWHdl_r_send(TALLOC_CTX *mem_ctx,
4214 struct tevent_context *ev,
4215 struct dcerpc_binding_handle *h,
4216 struct winsif_WinsStatusWHdl *r)
4218 struct tevent_req *req;
4219 struct dcerpc_winsif_WinsStatusWHdl_r_state *state;
4220 struct tevent_req *subreq;
4222 req = tevent_req_create(mem_ctx, &state,
4223 struct dcerpc_winsif_WinsStatusWHdl_r_state);
4228 state->out_mem_ctx = talloc_new(state);
4229 if (tevent_req_nomem(state->out_mem_ctx, req)) {
4230 return tevent_req_post(req, ev);
4233 subreq = dcerpc_binding_handle_call_send(state, ev, h,
4234 NULL, &ndr_table_winsif,
4235 NDR_WINSIF_WINSSTATUSWHDL, state->out_mem_ctx, r);
4236 if (tevent_req_nomem(subreq, req)) {
4237 return tevent_req_post(req, ev);
4239 tevent_req_set_callback(subreq, dcerpc_winsif_WinsStatusWHdl_r_done, req);
4244 static void dcerpc_winsif_WinsStatusWHdl_r_done(struct tevent_req *subreq)
4246 struct tevent_req *req =
4247 tevent_req_callback_data(subreq,
4251 status = dcerpc_binding_handle_call_recv(subreq);
4252 TALLOC_FREE(subreq);
4253 if (tevent_req_nterror(req, status)) {
4257 tevent_req_done(req);
4260 NTSTATUS dcerpc_winsif_WinsStatusWHdl_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
4262 struct dcerpc_winsif_WinsStatusWHdl_r_state *state =
4263 tevent_req_data(req,
4264 struct dcerpc_winsif_WinsStatusWHdl_r_state);
4267 if (tevent_req_is_nterror(req, &status)) {
4268 tevent_req_received(req);
4272 talloc_steal(mem_ctx, state->out_mem_ctx);
4274 tevent_req_received(req);
4275 return NT_STATUS_OK;
4278 NTSTATUS dcerpc_winsif_WinsStatusWHdl_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsStatusWHdl *r)
4282 status = dcerpc_binding_handle_call(h,
4283 NULL, &ndr_table_winsif,
4284 NDR_WINSIF_WINSSTATUSWHDL, mem_ctx, r);
4289 struct dcerpc_winsif_WinsStatusWHdl_state {
4290 struct winsif_WinsStatusWHdl orig;
4291 struct winsif_WinsStatusWHdl tmp;
4292 TALLOC_CTX *out_mem_ctx;
4295 static void dcerpc_winsif_WinsStatusWHdl_done(struct tevent_req *subreq);
4297 struct tevent_req *dcerpc_winsif_WinsStatusWHdl_send(TALLOC_CTX *mem_ctx,
4298 struct tevent_context *ev,
4299 struct dcerpc_binding_handle *h,
4300 struct winsif_BindData *_server_handle /* [in] [ref] */,
4301 enum winsif_StatusCmd _cmd /* [in] */,
4302 struct winsif_ResultsNew *_results /* [in,out] [ref] */)
4304 struct tevent_req *req;
4305 struct dcerpc_winsif_WinsStatusWHdl_state *state;
4306 struct tevent_req *subreq;
4308 req = tevent_req_create(mem_ctx, &state,
4309 struct dcerpc_winsif_WinsStatusWHdl_state);
4313 state->out_mem_ctx = NULL;
4316 state->orig.in.server_handle = _server_handle;
4317 state->orig.in.cmd = _cmd;
4318 state->orig.in.results = _results;
4320 /* Out parameters */
4321 state->orig.out.results = _results;
4324 ZERO_STRUCT(state->orig.out.result);
4326 state->out_mem_ctx = talloc_named_const(state, 0,
4327 "dcerpc_winsif_WinsStatusWHdl_out_memory");
4328 if (tevent_req_nomem(state->out_mem_ctx, req)) {
4329 return tevent_req_post(req, ev);
4332 /* make a temporary copy, that we pass to the dispatch function */
4333 state->tmp = state->orig;
4335 subreq = dcerpc_winsif_WinsStatusWHdl_r_send(state, ev, h, &state->tmp);
4336 if (tevent_req_nomem(subreq, req)) {
4337 return tevent_req_post(req, ev);
4339 tevent_req_set_callback(subreq, dcerpc_winsif_WinsStatusWHdl_done, req);
4343 static void dcerpc_winsif_WinsStatusWHdl_done(struct tevent_req *subreq)
4345 struct tevent_req *req = tevent_req_callback_data(
4346 subreq, struct tevent_req);
4347 struct dcerpc_winsif_WinsStatusWHdl_state *state = tevent_req_data(
4348 req, struct dcerpc_winsif_WinsStatusWHdl_state);
4350 TALLOC_CTX *mem_ctx;
4352 if (state->out_mem_ctx) {
4353 mem_ctx = state->out_mem_ctx;
4358 status = dcerpc_winsif_WinsStatusWHdl_r_recv(subreq, mem_ctx);
4359 TALLOC_FREE(subreq);
4360 if (tevent_req_nterror(req, status)) {
4364 /* Copy out parameters */
4365 *state->orig.out.results = *state->tmp.out.results;
4368 state->orig.out.result = state->tmp.out.result;
4370 /* Reset temporary structure */
4371 ZERO_STRUCT(state->tmp);
4373 tevent_req_done(req);
4376 NTSTATUS dcerpc_winsif_WinsStatusWHdl_recv(struct tevent_req *req,
4377 TALLOC_CTX *mem_ctx,
4380 struct dcerpc_winsif_WinsStatusWHdl_state *state = tevent_req_data(
4381 req, struct dcerpc_winsif_WinsStatusWHdl_state);
4384 if (tevent_req_is_nterror(req, &status)) {
4385 tevent_req_received(req);
4389 /* Steal possible out parameters to the callers context */
4390 talloc_steal(mem_ctx, state->out_mem_ctx);
4393 *result = state->orig.out.result;
4395 tevent_req_received(req);
4396 return NT_STATUS_OK;
4399 NTSTATUS dcerpc_winsif_WinsStatusWHdl(struct dcerpc_binding_handle *h,
4400 TALLOC_CTX *mem_ctx,
4401 struct winsif_BindData *_server_handle /* [in] [ref] */,
4402 enum winsif_StatusCmd _cmd /* [in] */,
4403 struct winsif_ResultsNew *_results /* [in,out] [ref] */,
4406 struct winsif_WinsStatusWHdl r;
4410 r.in.server_handle = _server_handle;
4412 r.in.results = _results;
4414 status = dcerpc_winsif_WinsStatusWHdl_r(h, mem_ctx, &r);
4415 if (!NT_STATUS_IS_OK(status)) {
4419 /* Return variables */
4420 *_results = *r.out.results;
4423 *result = r.out.result;
4425 return NT_STATUS_OK;
4428 struct dcerpc_winsif_WinsDoScanvengingNew_r_state {
4429 TALLOC_CTX *out_mem_ctx;
4432 static void dcerpc_winsif_WinsDoScanvengingNew_r_done(struct tevent_req *subreq);
4434 struct tevent_req *dcerpc_winsif_WinsDoScanvengingNew_r_send(TALLOC_CTX *mem_ctx,
4435 struct tevent_context *ev,
4436 struct dcerpc_binding_handle *h,
4437 struct winsif_WinsDoScanvengingNew *r)
4439 struct tevent_req *req;
4440 struct dcerpc_winsif_WinsDoScanvengingNew_r_state *state;
4441 struct tevent_req *subreq;
4443 req = tevent_req_create(mem_ctx, &state,
4444 struct dcerpc_winsif_WinsDoScanvengingNew_r_state);
4449 state->out_mem_ctx = NULL;
4451 subreq = dcerpc_binding_handle_call_send(state, ev, h,
4452 NULL, &ndr_table_winsif,
4453 NDR_WINSIF_WINSDOSCANVENGINGNEW, state, r);
4454 if (tevent_req_nomem(subreq, req)) {
4455 return tevent_req_post(req, ev);
4457 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDoScanvengingNew_r_done, req);
4462 static void dcerpc_winsif_WinsDoScanvengingNew_r_done(struct tevent_req *subreq)
4464 struct tevent_req *req =
4465 tevent_req_callback_data(subreq,
4469 status = dcerpc_binding_handle_call_recv(subreq);
4470 TALLOC_FREE(subreq);
4471 if (tevent_req_nterror(req, status)) {
4475 tevent_req_done(req);
4478 NTSTATUS dcerpc_winsif_WinsDoScanvengingNew_r_recv(struct tevent_req *req, TALLOC_CTX *mem_ctx)
4480 struct dcerpc_winsif_WinsDoScanvengingNew_r_state *state =
4481 tevent_req_data(req,
4482 struct dcerpc_winsif_WinsDoScanvengingNew_r_state);
4485 if (tevent_req_is_nterror(req, &status)) {
4486 tevent_req_received(req);
4490 talloc_steal(mem_ctx, state->out_mem_ctx);
4492 tevent_req_received(req);
4493 return NT_STATUS_OK;
4496 NTSTATUS dcerpc_winsif_WinsDoScanvengingNew_r(struct dcerpc_binding_handle *h, TALLOC_CTX *mem_ctx, struct winsif_WinsDoScanvengingNew *r)
4500 status = dcerpc_binding_handle_call(h,
4501 NULL, &ndr_table_winsif,
4502 NDR_WINSIF_WINSDOSCANVENGINGNEW, mem_ctx, r);
4507 struct dcerpc_winsif_WinsDoScanvengingNew_state {
4508 struct winsif_WinsDoScanvengingNew orig;
4509 struct winsif_WinsDoScanvengingNew tmp;
4510 TALLOC_CTX *out_mem_ctx;
4513 static void dcerpc_winsif_WinsDoScanvengingNew_done(struct tevent_req *subreq);
4515 struct tevent_req *dcerpc_winsif_WinsDoScanvengingNew_send(TALLOC_CTX *mem_ctx,
4516 struct tevent_context *ev,
4517 struct dcerpc_binding_handle *h,
4518 struct winsif_ScavengingRequest *_request /* [in] [ref] */)
4520 struct tevent_req *req;
4521 struct dcerpc_winsif_WinsDoScanvengingNew_state *state;
4522 struct tevent_req *subreq;
4524 req = tevent_req_create(mem_ctx, &state,
4525 struct dcerpc_winsif_WinsDoScanvengingNew_state);
4529 state->out_mem_ctx = NULL;
4532 state->orig.in.request = _request;
4534 /* Out parameters */
4537 ZERO_STRUCT(state->orig.out.result);
4539 /* make a temporary copy, that we pass to the dispatch function */
4540 state->tmp = state->orig;
4542 subreq = dcerpc_winsif_WinsDoScanvengingNew_r_send(state, ev, h, &state->tmp);
4543 if (tevent_req_nomem(subreq, req)) {
4544 return tevent_req_post(req, ev);
4546 tevent_req_set_callback(subreq, dcerpc_winsif_WinsDoScanvengingNew_done, req);
4550 static void dcerpc_winsif_WinsDoScanvengingNew_done(struct tevent_req *subreq)
4552 struct tevent_req *req = tevent_req_callback_data(
4553 subreq, struct tevent_req);
4554 struct dcerpc_winsif_WinsDoScanvengingNew_state *state = tevent_req_data(
4555 req, struct dcerpc_winsif_WinsDoScanvengingNew_state);
4557 TALLOC_CTX *mem_ctx;
4559 if (state->out_mem_ctx) {
4560 mem_ctx = state->out_mem_ctx;
4565 status = dcerpc_winsif_WinsDoScanvengingNew_r_recv(subreq, mem_ctx);
4566 TALLOC_FREE(subreq);
4567 if (tevent_req_nterror(req, status)) {
4571 /* Copy out parameters */
4574 state->orig.out.result = state->tmp.out.result;
4576 /* Reset temporary structure */
4577 ZERO_STRUCT(state->tmp);
4579 tevent_req_done(req);
4582 NTSTATUS dcerpc_winsif_WinsDoScanvengingNew_recv(struct tevent_req *req,
4583 TALLOC_CTX *mem_ctx,
4586 struct dcerpc_winsif_WinsDoScanvengingNew_state *state = tevent_req_data(
4587 req, struct dcerpc_winsif_WinsDoScanvengingNew_state);
4590 if (tevent_req_is_nterror(req, &status)) {
4591 tevent_req_received(req);
4595 /* Steal possible out parameters to the callers context */
4596 talloc_steal(mem_ctx, state->out_mem_ctx);
4599 *result = state->orig.out.result;
4601 tevent_req_received(req);
4602 return NT_STATUS_OK;
4605 NTSTATUS dcerpc_winsif_WinsDoScanvengingNew(struct dcerpc_binding_handle *h,
4606 TALLOC_CTX *mem_ctx,
4607 struct winsif_ScavengingRequest *_request /* [in] [ref] */,
4610 struct winsif_WinsDoScanvengingNew r;
4614 r.in.request = _request;
4616 status = dcerpc_winsif_WinsDoScanvengingNew_r(h, mem_ctx, &r);
4617 if (!NT_STATUS_IS_OK(status)) {
4621 /* Return variables */
4624 *result = r.out.result;
4626 return NT_STATUS_OK;