1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_srvsvc.h"
6 #include "librpc/gen_ndr/ndr_security.h"
7 #include "librpc/gen_ndr/ndr_svcctl.h"
8 static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevInfo0 *r)
10 if (ndr_flags & NDR_SCALARS) {
11 NDR_CHECK(ndr_push_align(ndr, 4));
12 NDR_CHECK(ndr_push_unique_ptr(ndr, r->device));
14 if (ndr_flags & NDR_BUFFERS) {
16 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
17 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
18 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
19 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->device, ndr_charset_length(r->device, CH_UTF16), sizeof(uint16_t), CH_UTF16));
22 return NDR_ERR_SUCCESS;
25 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevInfo0 *r)
28 TALLOC_CTX *_mem_save_device_0;
29 if (ndr_flags & NDR_SCALARS) {
30 NDR_CHECK(ndr_pull_align(ndr, 4));
31 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_device));
33 NDR_PULL_ALLOC(ndr, r->device);
38 if (ndr_flags & NDR_BUFFERS) {
40 _mem_save_device_0 = NDR_PULL_GET_MEM_CTX(ndr);
41 NDR_PULL_SET_MEM_CTX(ndr, r->device, 0);
42 NDR_CHECK(ndr_pull_array_size(ndr, &r->device));
43 NDR_CHECK(ndr_pull_array_length(ndr, &r->device));
44 if (ndr_get_array_length(ndr, &r->device) > ndr_get_array_size(ndr, &r->device)) {
45 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->device), ndr_get_array_length(ndr, &r->device));
47 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t)));
48 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->device, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t), CH_UTF16));
49 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_device_0, 0);
52 return NDR_ERR_SUCCESS;
55 _PUBLIC_ void ndr_print_srvsvc_NetCharDevInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevInfo0 *r)
57 ndr_print_struct(ndr, name, "srvsvc_NetCharDevInfo0");
59 ndr_print_ptr(ndr, "device", r->device);
62 ndr_print_string(ndr, "device", r->device);
68 static enum ndr_err_code ndr_push_srvsvc_NetCharDevCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevCtr0 *r)
70 uint32_t cntr_array_1;
71 if (ndr_flags & NDR_SCALARS) {
72 NDR_CHECK(ndr_push_align(ndr, 4));
73 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
74 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
76 if (ndr_flags & NDR_BUFFERS) {
78 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
79 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
80 NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
82 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
83 NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
87 return NDR_ERR_SUCCESS;
90 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevCtr0 *r)
93 uint32_t cntr_array_1;
94 TALLOC_CTX *_mem_save_array_0;
95 TALLOC_CTX *_mem_save_array_1;
96 if (ndr_flags & NDR_SCALARS) {
97 NDR_CHECK(ndr_pull_align(ndr, 4));
98 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
99 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
101 NDR_PULL_ALLOC(ndr, r->array);
106 if (ndr_flags & NDR_BUFFERS) {
108 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
109 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
110 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
111 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
112 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
113 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
114 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
115 NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
117 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
118 NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
120 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
121 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
124 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
127 return NDR_ERR_SUCCESS;
130 _PUBLIC_ void ndr_print_srvsvc_NetCharDevCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevCtr0 *r)
132 uint32_t cntr_array_1;
133 ndr_print_struct(ndr, name, "srvsvc_NetCharDevCtr0");
135 ndr_print_uint32(ndr, "count", r->count);
136 ndr_print_ptr(ndr, "array", r->array);
139 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
141 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
143 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
144 ndr_print_srvsvc_NetCharDevInfo0(ndr, "array", &r->array[cntr_array_1]);
154 static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevInfo1 *r)
156 if (ndr_flags & NDR_SCALARS) {
157 NDR_CHECK(ndr_push_align(ndr, 4));
158 NDR_CHECK(ndr_push_unique_ptr(ndr, r->device));
159 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->status));
160 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
161 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->time));
163 if (ndr_flags & NDR_BUFFERS) {
165 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
166 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
167 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
168 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->device, ndr_charset_length(r->device, CH_UTF16), sizeof(uint16_t), CH_UTF16));
171 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
172 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
173 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
174 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
177 return NDR_ERR_SUCCESS;
180 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevInfo1 *r)
182 uint32_t _ptr_device;
183 TALLOC_CTX *_mem_save_device_0;
185 TALLOC_CTX *_mem_save_user_0;
186 if (ndr_flags & NDR_SCALARS) {
187 NDR_CHECK(ndr_pull_align(ndr, 4));
188 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_device));
190 NDR_PULL_ALLOC(ndr, r->device);
194 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->status));
195 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
197 NDR_PULL_ALLOC(ndr, r->user);
201 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time));
203 if (ndr_flags & NDR_BUFFERS) {
205 _mem_save_device_0 = NDR_PULL_GET_MEM_CTX(ndr);
206 NDR_PULL_SET_MEM_CTX(ndr, r->device, 0);
207 NDR_CHECK(ndr_pull_array_size(ndr, &r->device));
208 NDR_CHECK(ndr_pull_array_length(ndr, &r->device));
209 if (ndr_get_array_length(ndr, &r->device) > ndr_get_array_size(ndr, &r->device)) {
210 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->device), ndr_get_array_length(ndr, &r->device));
212 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t)));
213 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->device, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t), CH_UTF16));
214 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_device_0, 0);
217 _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
218 NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
219 NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
220 NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
221 if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
222 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user), ndr_get_array_length(ndr, &r->user));
224 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
225 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
226 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
229 return NDR_ERR_SUCCESS;
232 _PUBLIC_ void ndr_print_srvsvc_NetCharDevInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevInfo1 *r)
234 ndr_print_struct(ndr, name, "srvsvc_NetCharDevInfo1");
236 ndr_print_ptr(ndr, "device", r->device);
239 ndr_print_string(ndr, "device", r->device);
242 ndr_print_uint32(ndr, "status", r->status);
243 ndr_print_ptr(ndr, "user", r->user);
246 ndr_print_string(ndr, "user", r->user);
249 ndr_print_uint32(ndr, "time", r->time);
253 static enum ndr_err_code ndr_push_srvsvc_NetCharDevCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevCtr1 *r)
255 uint32_t cntr_array_1;
256 if (ndr_flags & NDR_SCALARS) {
257 NDR_CHECK(ndr_push_align(ndr, 4));
258 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
259 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
261 if (ndr_flags & NDR_BUFFERS) {
263 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
264 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
265 NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
267 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
268 NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
272 return NDR_ERR_SUCCESS;
275 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevCtr1 *r)
278 uint32_t cntr_array_1;
279 TALLOC_CTX *_mem_save_array_0;
280 TALLOC_CTX *_mem_save_array_1;
281 if (ndr_flags & NDR_SCALARS) {
282 NDR_CHECK(ndr_pull_align(ndr, 4));
283 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
284 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
286 NDR_PULL_ALLOC(ndr, r->array);
291 if (ndr_flags & NDR_BUFFERS) {
293 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
294 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
295 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
296 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
297 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
298 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
299 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
300 NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
302 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
303 NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
305 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
306 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
309 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
312 return NDR_ERR_SUCCESS;
315 _PUBLIC_ void ndr_print_srvsvc_NetCharDevCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevCtr1 *r)
317 uint32_t cntr_array_1;
318 ndr_print_struct(ndr, name, "srvsvc_NetCharDevCtr1");
320 ndr_print_uint32(ndr, "count", r->count);
321 ndr_print_ptr(ndr, "array", r->array);
324 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
326 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
328 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
329 ndr_print_srvsvc_NetCharDevInfo1(ndr, "array", &r->array[cntr_array_1]);
339 static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevInfo *r)
341 if (ndr_flags & NDR_SCALARS) {
342 int level = ndr_push_get_switch_value(ndr, r);
343 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
346 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
350 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
358 if (ndr_flags & NDR_BUFFERS) {
359 int level = ndr_push_get_switch_value(ndr, r);
363 NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
369 NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
378 return NDR_ERR_SUCCESS;
381 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevInfo *r)
385 TALLOC_CTX *_mem_save_info0_0;
386 TALLOC_CTX *_mem_save_info1_0;
387 level = ndr_pull_get_switch_value(ndr, r);
388 if (ndr_flags & NDR_SCALARS) {
389 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
390 if (_level != level) {
391 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
396 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
398 NDR_PULL_ALLOC(ndr, r->info0);
406 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
408 NDR_PULL_ALLOC(ndr, r->info1);
419 if (ndr_flags & NDR_BUFFERS) {
423 _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
424 NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
425 NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
426 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
432 _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
433 NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
434 NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
435 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
444 return NDR_ERR_SUCCESS;
447 _PUBLIC_ void ndr_print_srvsvc_NetCharDevInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevInfo *r)
450 level = ndr_print_get_switch_value(ndr, r);
451 ndr_print_union(ndr, name, level, "srvsvc_NetCharDevInfo");
454 ndr_print_ptr(ndr, "info0", r->info0);
457 ndr_print_srvsvc_NetCharDevInfo0(ndr, "info0", r->info0);
463 ndr_print_ptr(ndr, "info1", r->info1);
466 ndr_print_srvsvc_NetCharDevInfo1(ndr, "info1", r->info1);
477 static enum ndr_err_code ndr_push_srvsvc_NetCharDevCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevCtr *r)
479 if (ndr_flags & NDR_SCALARS) {
480 int level = ndr_push_get_switch_value(ndr, r);
481 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
484 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
488 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
496 if (ndr_flags & NDR_BUFFERS) {
497 int level = ndr_push_get_switch_value(ndr, r);
501 NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
507 NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
516 return NDR_ERR_SUCCESS;
519 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevCtr *r)
523 TALLOC_CTX *_mem_save_ctr0_0;
524 TALLOC_CTX *_mem_save_ctr1_0;
525 level = ndr_pull_get_switch_value(ndr, r);
526 if (ndr_flags & NDR_SCALARS) {
527 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
528 if (_level != level) {
529 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
534 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
536 NDR_PULL_ALLOC(ndr, r->ctr0);
544 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
546 NDR_PULL_ALLOC(ndr, r->ctr1);
557 if (ndr_flags & NDR_BUFFERS) {
561 _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
562 NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
563 NDR_CHECK(ndr_pull_srvsvc_NetCharDevCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
564 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
570 _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
571 NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
572 NDR_CHECK(ndr_pull_srvsvc_NetCharDevCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
573 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
582 return NDR_ERR_SUCCESS;
585 _PUBLIC_ void ndr_print_srvsvc_NetCharDevCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevCtr *r)
588 level = ndr_print_get_switch_value(ndr, r);
589 ndr_print_union(ndr, name, level, "srvsvc_NetCharDevCtr");
592 ndr_print_ptr(ndr, "ctr0", r->ctr0);
595 ndr_print_srvsvc_NetCharDevCtr0(ndr, "ctr0", r->ctr0);
601 ndr_print_ptr(ndr, "ctr1", r->ctr1);
604 ndr_print_srvsvc_NetCharDevCtr1(ndr, "ctr1", r->ctr1);
615 static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevInfoCtr *r)
617 if (ndr_flags & NDR_SCALARS) {
618 NDR_CHECK(ndr_push_align(ndr, 4));
619 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
620 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
621 NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr(ndr, NDR_SCALARS, &r->ctr));
623 if (ndr_flags & NDR_BUFFERS) {
624 NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr(ndr, NDR_BUFFERS, &r->ctr));
626 return NDR_ERR_SUCCESS;
629 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevInfoCtr *r)
631 if (ndr_flags & NDR_SCALARS) {
632 NDR_CHECK(ndr_pull_align(ndr, 4));
633 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
634 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
635 NDR_CHECK(ndr_pull_srvsvc_NetCharDevCtr(ndr, NDR_SCALARS, &r->ctr));
637 if (ndr_flags & NDR_BUFFERS) {
638 NDR_CHECK(ndr_pull_srvsvc_NetCharDevCtr(ndr, NDR_BUFFERS, &r->ctr));
640 return NDR_ERR_SUCCESS;
643 _PUBLIC_ void ndr_print_srvsvc_NetCharDevInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevInfoCtr *r)
645 ndr_print_struct(ndr, name, "srvsvc_NetCharDevInfoCtr");
647 ndr_print_uint32(ndr, "level", r->level);
648 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
649 ndr_print_srvsvc_NetCharDevCtr(ndr, "ctr", &r->ctr);
653 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQInfo0 *r)
655 if (ndr_flags & NDR_SCALARS) {
656 NDR_CHECK(ndr_push_align(ndr, 4));
657 NDR_CHECK(ndr_push_unique_ptr(ndr, r->device));
659 if (ndr_flags & NDR_BUFFERS) {
661 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
662 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
663 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
664 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->device, ndr_charset_length(r->device, CH_UTF16), sizeof(uint16_t), CH_UTF16));
667 return NDR_ERR_SUCCESS;
670 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQInfo0 *r)
672 uint32_t _ptr_device;
673 TALLOC_CTX *_mem_save_device_0;
674 if (ndr_flags & NDR_SCALARS) {
675 NDR_CHECK(ndr_pull_align(ndr, 4));
676 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_device));
678 NDR_PULL_ALLOC(ndr, r->device);
683 if (ndr_flags & NDR_BUFFERS) {
685 _mem_save_device_0 = NDR_PULL_GET_MEM_CTX(ndr);
686 NDR_PULL_SET_MEM_CTX(ndr, r->device, 0);
687 NDR_CHECK(ndr_pull_array_size(ndr, &r->device));
688 NDR_CHECK(ndr_pull_array_length(ndr, &r->device));
689 if (ndr_get_array_length(ndr, &r->device) > ndr_get_array_size(ndr, &r->device)) {
690 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->device), ndr_get_array_length(ndr, &r->device));
692 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t)));
693 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->device, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t), CH_UTF16));
694 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_device_0, 0);
697 return NDR_ERR_SUCCESS;
700 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQInfo0 *r)
702 ndr_print_struct(ndr, name, "srvsvc_NetCharDevQInfo0");
704 ndr_print_ptr(ndr, "device", r->device);
707 ndr_print_string(ndr, "device", r->device);
713 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQCtr0 *r)
715 uint32_t cntr_array_1;
716 if (ndr_flags & NDR_SCALARS) {
717 NDR_CHECK(ndr_push_align(ndr, 4));
718 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
719 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
721 if (ndr_flags & NDR_BUFFERS) {
723 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
724 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
725 NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
727 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
728 NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
732 return NDR_ERR_SUCCESS;
735 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQCtr0 *r)
738 uint32_t cntr_array_1;
739 TALLOC_CTX *_mem_save_array_0;
740 TALLOC_CTX *_mem_save_array_1;
741 if (ndr_flags & NDR_SCALARS) {
742 NDR_CHECK(ndr_pull_align(ndr, 4));
743 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
744 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
746 NDR_PULL_ALLOC(ndr, r->array);
751 if (ndr_flags & NDR_BUFFERS) {
753 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
754 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
755 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
756 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
757 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
758 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
759 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
760 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
762 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
763 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
765 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
766 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
769 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
772 return NDR_ERR_SUCCESS;
775 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQCtr0 *r)
777 uint32_t cntr_array_1;
778 ndr_print_struct(ndr, name, "srvsvc_NetCharDevQCtr0");
780 ndr_print_uint32(ndr, "count", r->count);
781 ndr_print_ptr(ndr, "array", r->array);
784 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
786 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
788 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
789 ndr_print_srvsvc_NetCharDevQInfo0(ndr, "array", &r->array[cntr_array_1]);
799 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQInfo1 *r)
801 if (ndr_flags & NDR_SCALARS) {
802 NDR_CHECK(ndr_push_align(ndr, 4));
803 NDR_CHECK(ndr_push_unique_ptr(ndr, r->device));
804 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->priority));
805 NDR_CHECK(ndr_push_unique_ptr(ndr, r->devices));
806 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->users));
807 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_ahead));
809 if (ndr_flags & NDR_BUFFERS) {
811 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
812 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
813 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->device, CH_UTF16)));
814 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->device, ndr_charset_length(r->device, CH_UTF16), sizeof(uint16_t), CH_UTF16));
817 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->devices, CH_UTF16)));
818 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
819 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->devices, CH_UTF16)));
820 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->devices, ndr_charset_length(r->devices, CH_UTF16), sizeof(uint16_t), CH_UTF16));
823 return NDR_ERR_SUCCESS;
826 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQInfo1 *r)
828 uint32_t _ptr_device;
829 TALLOC_CTX *_mem_save_device_0;
830 uint32_t _ptr_devices;
831 TALLOC_CTX *_mem_save_devices_0;
832 if (ndr_flags & NDR_SCALARS) {
833 NDR_CHECK(ndr_pull_align(ndr, 4));
834 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_device));
836 NDR_PULL_ALLOC(ndr, r->device);
840 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->priority));
841 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_devices));
843 NDR_PULL_ALLOC(ndr, r->devices);
847 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->users));
848 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_ahead));
850 if (ndr_flags & NDR_BUFFERS) {
852 _mem_save_device_0 = NDR_PULL_GET_MEM_CTX(ndr);
853 NDR_PULL_SET_MEM_CTX(ndr, r->device, 0);
854 NDR_CHECK(ndr_pull_array_size(ndr, &r->device));
855 NDR_CHECK(ndr_pull_array_length(ndr, &r->device));
856 if (ndr_get_array_length(ndr, &r->device) > ndr_get_array_size(ndr, &r->device)) {
857 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->device), ndr_get_array_length(ndr, &r->device));
859 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t)));
860 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->device, ndr_get_array_length(ndr, &r->device), sizeof(uint16_t), CH_UTF16));
861 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_device_0, 0);
864 _mem_save_devices_0 = NDR_PULL_GET_MEM_CTX(ndr);
865 NDR_PULL_SET_MEM_CTX(ndr, r->devices, 0);
866 NDR_CHECK(ndr_pull_array_size(ndr, &r->devices));
867 NDR_CHECK(ndr_pull_array_length(ndr, &r->devices));
868 if (ndr_get_array_length(ndr, &r->devices) > ndr_get_array_size(ndr, &r->devices)) {
869 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->devices), ndr_get_array_length(ndr, &r->devices));
871 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->devices), sizeof(uint16_t)));
872 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->devices, ndr_get_array_length(ndr, &r->devices), sizeof(uint16_t), CH_UTF16));
873 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_devices_0, 0);
876 return NDR_ERR_SUCCESS;
879 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQInfo1 *r)
881 ndr_print_struct(ndr, name, "srvsvc_NetCharDevQInfo1");
883 ndr_print_ptr(ndr, "device", r->device);
886 ndr_print_string(ndr, "device", r->device);
889 ndr_print_uint32(ndr, "priority", r->priority);
890 ndr_print_ptr(ndr, "devices", r->devices);
893 ndr_print_string(ndr, "devices", r->devices);
896 ndr_print_uint32(ndr, "users", r->users);
897 ndr_print_uint32(ndr, "num_ahead", r->num_ahead);
901 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQCtr1 *r)
903 uint32_t cntr_array_1;
904 if (ndr_flags & NDR_SCALARS) {
905 NDR_CHECK(ndr_push_align(ndr, 4));
906 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
907 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
909 if (ndr_flags & NDR_BUFFERS) {
911 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
912 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
913 NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
915 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
916 NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
920 return NDR_ERR_SUCCESS;
923 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQCtr1 *r)
926 uint32_t cntr_array_1;
927 TALLOC_CTX *_mem_save_array_0;
928 TALLOC_CTX *_mem_save_array_1;
929 if (ndr_flags & NDR_SCALARS) {
930 NDR_CHECK(ndr_pull_align(ndr, 4));
931 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
932 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
934 NDR_PULL_ALLOC(ndr, r->array);
939 if (ndr_flags & NDR_BUFFERS) {
941 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
942 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
943 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
944 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
945 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
946 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
947 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
948 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
950 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
951 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
953 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
954 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
957 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
960 return NDR_ERR_SUCCESS;
963 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQCtr1 *r)
965 uint32_t cntr_array_1;
966 ndr_print_struct(ndr, name, "srvsvc_NetCharDevQCtr1");
968 ndr_print_uint32(ndr, "count", r->count);
969 ndr_print_ptr(ndr, "array", r->array);
972 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
974 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
976 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
977 ndr_print_srvsvc_NetCharDevQInfo1(ndr, "array", &r->array[cntr_array_1]);
987 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevQInfo *r)
989 if (ndr_flags & NDR_SCALARS) {
990 int level = ndr_push_get_switch_value(ndr, r);
991 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
994 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
998 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
1006 if (ndr_flags & NDR_BUFFERS) {
1007 int level = ndr_push_get_switch_value(ndr, r);
1011 NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
1017 NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
1026 return NDR_ERR_SUCCESS;
1029 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevQInfo *r)
1033 TALLOC_CTX *_mem_save_info0_0;
1034 TALLOC_CTX *_mem_save_info1_0;
1035 level = ndr_pull_get_switch_value(ndr, r);
1036 if (ndr_flags & NDR_SCALARS) {
1037 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
1038 if (_level != level) {
1039 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1043 uint32_t _ptr_info0;
1044 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
1046 NDR_PULL_ALLOC(ndr, r->info0);
1053 uint32_t _ptr_info1;
1054 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
1056 NDR_PULL_ALLOC(ndr, r->info1);
1067 if (ndr_flags & NDR_BUFFERS) {
1071 _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
1072 NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
1073 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
1074 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
1080 _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
1081 NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
1082 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
1083 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
1092 return NDR_ERR_SUCCESS;
1095 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevQInfo *r)
1098 level = ndr_print_get_switch_value(ndr, r);
1099 ndr_print_union(ndr, name, level, "srvsvc_NetCharDevQInfo");
1102 ndr_print_ptr(ndr, "info0", r->info0);
1105 ndr_print_srvsvc_NetCharDevQInfo0(ndr, "info0", r->info0);
1111 ndr_print_ptr(ndr, "info1", r->info1);
1114 ndr_print_srvsvc_NetCharDevQInfo1(ndr, "info1", r->info1);
1125 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevQCtr *r)
1127 if (ndr_flags & NDR_SCALARS) {
1128 int level = ndr_push_get_switch_value(ndr, r);
1129 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
1132 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
1136 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
1144 if (ndr_flags & NDR_BUFFERS) {
1145 int level = ndr_push_get_switch_value(ndr, r);
1149 NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
1155 NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
1164 return NDR_ERR_SUCCESS;
1167 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevQCtr *r)
1171 TALLOC_CTX *_mem_save_ctr0_0;
1172 TALLOC_CTX *_mem_save_ctr1_0;
1173 level = ndr_pull_get_switch_value(ndr, r);
1174 if (ndr_flags & NDR_SCALARS) {
1175 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
1176 if (_level != level) {
1177 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1182 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
1184 NDR_PULL_ALLOC(ndr, r->ctr0);
1192 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
1194 NDR_PULL_ALLOC(ndr, r->ctr1);
1205 if (ndr_flags & NDR_BUFFERS) {
1209 _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
1210 NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
1211 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
1212 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
1218 _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
1219 NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
1220 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
1221 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
1230 return NDR_ERR_SUCCESS;
1233 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevQCtr *r)
1236 level = ndr_print_get_switch_value(ndr, r);
1237 ndr_print_union(ndr, name, level, "srvsvc_NetCharDevQCtr");
1240 ndr_print_ptr(ndr, "ctr0", r->ctr0);
1243 ndr_print_srvsvc_NetCharDevQCtr0(ndr, "ctr0", r->ctr0);
1249 ndr_print_ptr(ndr, "ctr1", r->ctr1);
1252 ndr_print_srvsvc_NetCharDevQCtr1(ndr, "ctr1", r->ctr1);
1263 static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQInfoCtr *r)
1265 if (ndr_flags & NDR_SCALARS) {
1266 NDR_CHECK(ndr_push_align(ndr, 4));
1267 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
1268 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
1269 NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr(ndr, NDR_SCALARS, &r->ctr));
1271 if (ndr_flags & NDR_BUFFERS) {
1272 NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr(ndr, NDR_BUFFERS, &r->ctr));
1274 return NDR_ERR_SUCCESS;
1277 static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQInfoCtr *r)
1279 if (ndr_flags & NDR_SCALARS) {
1280 NDR_CHECK(ndr_pull_align(ndr, 4));
1281 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
1282 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
1283 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQCtr(ndr, NDR_SCALARS, &r->ctr));
1285 if (ndr_flags & NDR_BUFFERS) {
1286 NDR_CHECK(ndr_pull_srvsvc_NetCharDevQCtr(ndr, NDR_BUFFERS, &r->ctr));
1288 return NDR_ERR_SUCCESS;
1291 _PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQInfoCtr *r)
1293 ndr_print_struct(ndr, name, "srvsvc_NetCharDevQInfoCtr");
1295 ndr_print_uint32(ndr, "level", r->level);
1296 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
1297 ndr_print_srvsvc_NetCharDevQCtr(ndr, "ctr", &r->ctr);
1301 static enum ndr_err_code ndr_push_srvsvc_NetConnInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnInfo0 *r)
1303 if (ndr_flags & NDR_SCALARS) {
1304 NDR_CHECK(ndr_push_align(ndr, 4));
1305 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->conn_id));
1307 if (ndr_flags & NDR_BUFFERS) {
1309 return NDR_ERR_SUCCESS;
1312 static enum ndr_err_code ndr_pull_srvsvc_NetConnInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnInfo0 *r)
1314 if (ndr_flags & NDR_SCALARS) {
1315 NDR_CHECK(ndr_pull_align(ndr, 4));
1316 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->conn_id));
1318 if (ndr_flags & NDR_BUFFERS) {
1320 return NDR_ERR_SUCCESS;
1323 _PUBLIC_ void ndr_print_srvsvc_NetConnInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnInfo0 *r)
1325 ndr_print_struct(ndr, name, "srvsvc_NetConnInfo0");
1327 ndr_print_uint32(ndr, "conn_id", r->conn_id);
1331 static enum ndr_err_code ndr_push_srvsvc_NetConnCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnCtr0 *r)
1333 uint32_t cntr_array_1;
1334 if (ndr_flags & NDR_SCALARS) {
1335 NDR_CHECK(ndr_push_align(ndr, 4));
1336 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1337 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
1339 if (ndr_flags & NDR_BUFFERS) {
1341 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1342 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1343 NDR_CHECK(ndr_push_srvsvc_NetConnInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
1347 return NDR_ERR_SUCCESS;
1350 static enum ndr_err_code ndr_pull_srvsvc_NetConnCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnCtr0 *r)
1352 uint32_t _ptr_array;
1353 uint32_t cntr_array_1;
1354 TALLOC_CTX *_mem_save_array_0;
1355 TALLOC_CTX *_mem_save_array_1;
1356 if (ndr_flags & NDR_SCALARS) {
1357 NDR_CHECK(ndr_pull_align(ndr, 4));
1358 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1359 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
1361 NDR_PULL_ALLOC(ndr, r->array);
1366 if (ndr_flags & NDR_BUFFERS) {
1368 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
1369 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
1370 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
1371 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
1372 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
1373 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
1374 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1375 NDR_CHECK(ndr_pull_srvsvc_NetConnInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
1377 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
1378 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
1381 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
1384 return NDR_ERR_SUCCESS;
1387 _PUBLIC_ void ndr_print_srvsvc_NetConnCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnCtr0 *r)
1389 uint32_t cntr_array_1;
1390 ndr_print_struct(ndr, name, "srvsvc_NetConnCtr0");
1392 ndr_print_uint32(ndr, "count", r->count);
1393 ndr_print_ptr(ndr, "array", r->array);
1396 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
1398 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
1400 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
1401 ndr_print_srvsvc_NetConnInfo0(ndr, "array", &r->array[cntr_array_1]);
1411 static enum ndr_err_code ndr_push_srvsvc_NetConnInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnInfo1 *r)
1413 if (ndr_flags & NDR_SCALARS) {
1414 NDR_CHECK(ndr_push_align(ndr, 4));
1415 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->conn_id));
1416 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->conn_type));
1417 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_open));
1418 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_users));
1419 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->conn_time));
1420 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
1421 NDR_CHECK(ndr_push_unique_ptr(ndr, r->share));
1423 if (ndr_flags & NDR_BUFFERS) {
1425 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
1426 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1427 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
1428 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1431 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->share, CH_UTF16)));
1432 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1433 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->share, CH_UTF16)));
1434 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->share, ndr_charset_length(r->share, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1437 return NDR_ERR_SUCCESS;
1440 static enum ndr_err_code ndr_pull_srvsvc_NetConnInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnInfo1 *r)
1443 TALLOC_CTX *_mem_save_user_0;
1444 uint32_t _ptr_share;
1445 TALLOC_CTX *_mem_save_share_0;
1446 if (ndr_flags & NDR_SCALARS) {
1447 NDR_CHECK(ndr_pull_align(ndr, 4));
1448 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->conn_id));
1449 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->conn_type));
1450 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_open));
1451 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_users));
1452 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->conn_time));
1453 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
1455 NDR_PULL_ALLOC(ndr, r->user);
1459 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_share));
1461 NDR_PULL_ALLOC(ndr, r->share);
1466 if (ndr_flags & NDR_BUFFERS) {
1468 _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
1469 NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
1470 NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
1471 NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
1472 if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
1473 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user), ndr_get_array_length(ndr, &r->user));
1475 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
1476 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
1477 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
1480 _mem_save_share_0 = NDR_PULL_GET_MEM_CTX(ndr);
1481 NDR_PULL_SET_MEM_CTX(ndr, r->share, 0);
1482 NDR_CHECK(ndr_pull_array_size(ndr, &r->share));
1483 NDR_CHECK(ndr_pull_array_length(ndr, &r->share));
1484 if (ndr_get_array_length(ndr, &r->share) > ndr_get_array_size(ndr, &r->share)) {
1485 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->share), ndr_get_array_length(ndr, &r->share));
1487 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->share), sizeof(uint16_t)));
1488 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->share, ndr_get_array_length(ndr, &r->share), sizeof(uint16_t), CH_UTF16));
1489 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_share_0, 0);
1492 return NDR_ERR_SUCCESS;
1495 _PUBLIC_ void ndr_print_srvsvc_NetConnInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnInfo1 *r)
1497 ndr_print_struct(ndr, name, "srvsvc_NetConnInfo1");
1499 ndr_print_uint32(ndr, "conn_id", r->conn_id);
1500 ndr_print_uint32(ndr, "conn_type", r->conn_type);
1501 ndr_print_uint32(ndr, "num_open", r->num_open);
1502 ndr_print_uint32(ndr, "num_users", r->num_users);
1503 ndr_print_uint32(ndr, "conn_time", r->conn_time);
1504 ndr_print_ptr(ndr, "user", r->user);
1507 ndr_print_string(ndr, "user", r->user);
1510 ndr_print_ptr(ndr, "share", r->share);
1513 ndr_print_string(ndr, "share", r->share);
1519 static enum ndr_err_code ndr_push_srvsvc_NetConnCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnCtr1 *r)
1521 uint32_t cntr_array_1;
1522 if (ndr_flags & NDR_SCALARS) {
1523 NDR_CHECK(ndr_push_align(ndr, 4));
1524 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1525 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
1527 if (ndr_flags & NDR_BUFFERS) {
1529 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1530 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1531 NDR_CHECK(ndr_push_srvsvc_NetConnInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
1533 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1534 NDR_CHECK(ndr_push_srvsvc_NetConnInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
1538 return NDR_ERR_SUCCESS;
1541 static enum ndr_err_code ndr_pull_srvsvc_NetConnCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnCtr1 *r)
1543 uint32_t _ptr_array;
1544 uint32_t cntr_array_1;
1545 TALLOC_CTX *_mem_save_array_0;
1546 TALLOC_CTX *_mem_save_array_1;
1547 if (ndr_flags & NDR_SCALARS) {
1548 NDR_CHECK(ndr_pull_align(ndr, 4));
1549 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1550 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
1552 NDR_PULL_ALLOC(ndr, r->array);
1557 if (ndr_flags & NDR_BUFFERS) {
1559 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
1560 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
1561 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
1562 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
1563 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
1564 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
1565 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1566 NDR_CHECK(ndr_pull_srvsvc_NetConnInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
1568 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1569 NDR_CHECK(ndr_pull_srvsvc_NetConnInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
1571 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
1572 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
1575 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
1578 return NDR_ERR_SUCCESS;
1581 _PUBLIC_ void ndr_print_srvsvc_NetConnCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnCtr1 *r)
1583 uint32_t cntr_array_1;
1584 ndr_print_struct(ndr, name, "srvsvc_NetConnCtr1");
1586 ndr_print_uint32(ndr, "count", r->count);
1587 ndr_print_ptr(ndr, "array", r->array);
1590 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
1592 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
1594 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
1595 ndr_print_srvsvc_NetConnInfo1(ndr, "array", &r->array[cntr_array_1]);
1605 static enum ndr_err_code ndr_push_srvsvc_NetConnCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetConnCtr *r)
1607 if (ndr_flags & NDR_SCALARS) {
1608 int level = ndr_push_get_switch_value(ndr, r);
1609 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
1612 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
1616 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
1624 if (ndr_flags & NDR_BUFFERS) {
1625 int level = ndr_push_get_switch_value(ndr, r);
1629 NDR_CHECK(ndr_push_srvsvc_NetConnCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
1635 NDR_CHECK(ndr_push_srvsvc_NetConnCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
1644 return NDR_ERR_SUCCESS;
1647 static enum ndr_err_code ndr_pull_srvsvc_NetConnCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetConnCtr *r)
1651 TALLOC_CTX *_mem_save_ctr0_0;
1652 TALLOC_CTX *_mem_save_ctr1_0;
1653 level = ndr_pull_get_switch_value(ndr, r);
1654 if (ndr_flags & NDR_SCALARS) {
1655 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
1656 if (_level != level) {
1657 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1662 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
1664 NDR_PULL_ALLOC(ndr, r->ctr0);
1672 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
1674 NDR_PULL_ALLOC(ndr, r->ctr1);
1685 if (ndr_flags & NDR_BUFFERS) {
1689 _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
1690 NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
1691 NDR_CHECK(ndr_pull_srvsvc_NetConnCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
1692 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
1698 _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
1699 NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
1700 NDR_CHECK(ndr_pull_srvsvc_NetConnCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
1701 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
1710 return NDR_ERR_SUCCESS;
1713 _PUBLIC_ void ndr_print_srvsvc_NetConnCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetConnCtr *r)
1716 level = ndr_print_get_switch_value(ndr, r);
1717 ndr_print_union(ndr, name, level, "srvsvc_NetConnCtr");
1720 ndr_print_ptr(ndr, "ctr0", r->ctr0);
1723 ndr_print_srvsvc_NetConnCtr0(ndr, "ctr0", r->ctr0);
1729 ndr_print_ptr(ndr, "ctr1", r->ctr1);
1732 ndr_print_srvsvc_NetConnCtr1(ndr, "ctr1", r->ctr1);
1743 static enum ndr_err_code ndr_push_srvsvc_NetConnInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnInfoCtr *r)
1745 if (ndr_flags & NDR_SCALARS) {
1746 NDR_CHECK(ndr_push_align(ndr, 4));
1747 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
1748 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
1749 NDR_CHECK(ndr_push_srvsvc_NetConnCtr(ndr, NDR_SCALARS, &r->ctr));
1751 if (ndr_flags & NDR_BUFFERS) {
1752 NDR_CHECK(ndr_push_srvsvc_NetConnCtr(ndr, NDR_BUFFERS, &r->ctr));
1754 return NDR_ERR_SUCCESS;
1757 static enum ndr_err_code ndr_pull_srvsvc_NetConnInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnInfoCtr *r)
1759 if (ndr_flags & NDR_SCALARS) {
1760 NDR_CHECK(ndr_pull_align(ndr, 4));
1761 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
1762 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
1763 NDR_CHECK(ndr_pull_srvsvc_NetConnCtr(ndr, NDR_SCALARS, &r->ctr));
1765 if (ndr_flags & NDR_BUFFERS) {
1766 NDR_CHECK(ndr_pull_srvsvc_NetConnCtr(ndr, NDR_BUFFERS, &r->ctr));
1768 return NDR_ERR_SUCCESS;
1771 _PUBLIC_ void ndr_print_srvsvc_NetConnInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnInfoCtr *r)
1773 ndr_print_struct(ndr, name, "srvsvc_NetConnInfoCtr");
1775 ndr_print_uint32(ndr, "level", r->level);
1776 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
1777 ndr_print_srvsvc_NetConnCtr(ndr, "ctr", &r->ctr);
1781 static enum ndr_err_code ndr_push_srvsvc_NetFileInfo2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileInfo2 *r)
1783 if (ndr_flags & NDR_SCALARS) {
1784 NDR_CHECK(ndr_push_align(ndr, 4));
1785 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->fid));
1787 if (ndr_flags & NDR_BUFFERS) {
1789 return NDR_ERR_SUCCESS;
1792 static enum ndr_err_code ndr_pull_srvsvc_NetFileInfo2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileInfo2 *r)
1794 if (ndr_flags & NDR_SCALARS) {
1795 NDR_CHECK(ndr_pull_align(ndr, 4));
1796 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->fid));
1798 if (ndr_flags & NDR_BUFFERS) {
1800 return NDR_ERR_SUCCESS;
1803 _PUBLIC_ void ndr_print_srvsvc_NetFileInfo2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileInfo2 *r)
1805 ndr_print_struct(ndr, name, "srvsvc_NetFileInfo2");
1807 ndr_print_uint32(ndr, "fid", r->fid);
1811 static enum ndr_err_code ndr_push_srvsvc_NetFileCtr2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileCtr2 *r)
1813 uint32_t cntr_array_1;
1814 if (ndr_flags & NDR_SCALARS) {
1815 NDR_CHECK(ndr_push_align(ndr, 4));
1816 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1817 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
1819 if (ndr_flags & NDR_BUFFERS) {
1821 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1822 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1823 NDR_CHECK(ndr_push_srvsvc_NetFileInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
1827 return NDR_ERR_SUCCESS;
1830 static enum ndr_err_code ndr_pull_srvsvc_NetFileCtr2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileCtr2 *r)
1832 uint32_t _ptr_array;
1833 uint32_t cntr_array_1;
1834 TALLOC_CTX *_mem_save_array_0;
1835 TALLOC_CTX *_mem_save_array_1;
1836 if (ndr_flags & NDR_SCALARS) {
1837 NDR_CHECK(ndr_pull_align(ndr, 4));
1838 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1839 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
1841 NDR_PULL_ALLOC(ndr, r->array);
1846 if (ndr_flags & NDR_BUFFERS) {
1848 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
1849 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
1850 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
1851 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
1852 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
1853 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
1854 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
1855 NDR_CHECK(ndr_pull_srvsvc_NetFileInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
1857 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
1858 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
1861 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
1864 return NDR_ERR_SUCCESS;
1867 _PUBLIC_ void ndr_print_srvsvc_NetFileCtr2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileCtr2 *r)
1869 uint32_t cntr_array_1;
1870 ndr_print_struct(ndr, name, "srvsvc_NetFileCtr2");
1872 ndr_print_uint32(ndr, "count", r->count);
1873 ndr_print_ptr(ndr, "array", r->array);
1876 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
1878 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
1880 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
1881 ndr_print_srvsvc_NetFileInfo2(ndr, "array", &r->array[cntr_array_1]);
1891 static enum ndr_err_code ndr_push_srvsvc_NetFileInfo3(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileInfo3 *r)
1893 if (ndr_flags & NDR_SCALARS) {
1894 NDR_CHECK(ndr_push_align(ndr, 4));
1895 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->fid));
1896 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->permissions));
1897 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_locks));
1898 NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
1899 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
1901 if (ndr_flags & NDR_BUFFERS) {
1903 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
1904 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1905 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
1906 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1909 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
1910 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1911 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
1912 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1915 return NDR_ERR_SUCCESS;
1918 static enum ndr_err_code ndr_pull_srvsvc_NetFileInfo3(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileInfo3 *r)
1921 TALLOC_CTX *_mem_save_path_0;
1923 TALLOC_CTX *_mem_save_user_0;
1924 if (ndr_flags & NDR_SCALARS) {
1925 NDR_CHECK(ndr_pull_align(ndr, 4));
1926 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->fid));
1927 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->permissions));
1928 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_locks));
1929 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
1931 NDR_PULL_ALLOC(ndr, r->path);
1935 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
1937 NDR_PULL_ALLOC(ndr, r->user);
1942 if (ndr_flags & NDR_BUFFERS) {
1944 _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
1945 NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
1946 NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
1947 NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
1948 if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
1949 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->path), ndr_get_array_length(ndr, &r->path));
1951 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
1952 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
1953 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
1956 _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
1957 NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
1958 NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
1959 NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
1960 if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
1961 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user), ndr_get_array_length(ndr, &r->user));
1963 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
1964 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
1965 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
1968 return NDR_ERR_SUCCESS;
1971 _PUBLIC_ void ndr_print_srvsvc_NetFileInfo3(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileInfo3 *r)
1973 ndr_print_struct(ndr, name, "srvsvc_NetFileInfo3");
1975 ndr_print_uint32(ndr, "fid", r->fid);
1976 ndr_print_uint32(ndr, "permissions", r->permissions);
1977 ndr_print_uint32(ndr, "num_locks", r->num_locks);
1978 ndr_print_ptr(ndr, "path", r->path);
1981 ndr_print_string(ndr, "path", r->path);
1984 ndr_print_ptr(ndr, "user", r->user);
1987 ndr_print_string(ndr, "user", r->user);
1993 static enum ndr_err_code ndr_push_srvsvc_NetFileCtr3(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileCtr3 *r)
1995 uint32_t cntr_array_1;
1996 if (ndr_flags & NDR_SCALARS) {
1997 NDR_CHECK(ndr_push_align(ndr, 4));
1998 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1999 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
2001 if (ndr_flags & NDR_BUFFERS) {
2003 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2004 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2005 NDR_CHECK(ndr_push_srvsvc_NetFileInfo3(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
2007 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2008 NDR_CHECK(ndr_push_srvsvc_NetFileInfo3(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
2012 return NDR_ERR_SUCCESS;
2015 static enum ndr_err_code ndr_pull_srvsvc_NetFileCtr3(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileCtr3 *r)
2017 uint32_t _ptr_array;
2018 uint32_t cntr_array_1;
2019 TALLOC_CTX *_mem_save_array_0;
2020 TALLOC_CTX *_mem_save_array_1;
2021 if (ndr_flags & NDR_SCALARS) {
2022 NDR_CHECK(ndr_pull_align(ndr, 4));
2023 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2024 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
2026 NDR_PULL_ALLOC(ndr, r->array);
2031 if (ndr_flags & NDR_BUFFERS) {
2033 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
2034 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
2035 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
2036 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
2037 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
2038 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
2039 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2040 NDR_CHECK(ndr_pull_srvsvc_NetFileInfo3(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
2042 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2043 NDR_CHECK(ndr_pull_srvsvc_NetFileInfo3(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
2045 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
2046 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
2049 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
2052 return NDR_ERR_SUCCESS;
2055 _PUBLIC_ void ndr_print_srvsvc_NetFileCtr3(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileCtr3 *r)
2057 uint32_t cntr_array_1;
2058 ndr_print_struct(ndr, name, "srvsvc_NetFileCtr3");
2060 ndr_print_uint32(ndr, "count", r->count);
2061 ndr_print_ptr(ndr, "array", r->array);
2064 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
2066 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
2068 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
2069 ndr_print_srvsvc_NetFileInfo3(ndr, "array", &r->array[cntr_array_1]);
2079 static enum ndr_err_code ndr_push_srvsvc_NetFileInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetFileInfo *r)
2081 if (ndr_flags & NDR_SCALARS) {
2082 int level = ndr_push_get_switch_value(ndr, r);
2083 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
2086 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
2090 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info3));
2098 if (ndr_flags & NDR_BUFFERS) {
2099 int level = ndr_push_get_switch_value(ndr, r);
2103 NDR_CHECK(ndr_push_srvsvc_NetFileInfo2(ndr, NDR_SCALARS, r->info2));
2109 NDR_CHECK(ndr_push_srvsvc_NetFileInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
2118 return NDR_ERR_SUCCESS;
2121 static enum ndr_err_code ndr_pull_srvsvc_NetFileInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetFileInfo *r)
2125 TALLOC_CTX *_mem_save_info2_0;
2126 TALLOC_CTX *_mem_save_info3_0;
2127 level = ndr_pull_get_switch_value(ndr, r);
2128 if (ndr_flags & NDR_SCALARS) {
2129 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
2130 if (_level != level) {
2131 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
2135 uint32_t _ptr_info2;
2136 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
2138 NDR_PULL_ALLOC(ndr, r->info2);
2145 uint32_t _ptr_info3;
2146 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info3));
2148 NDR_PULL_ALLOC(ndr, r->info3);
2159 if (ndr_flags & NDR_BUFFERS) {
2163 _mem_save_info2_0 = NDR_PULL_GET_MEM_CTX(ndr);
2164 NDR_PULL_SET_MEM_CTX(ndr, r->info2, 0);
2165 NDR_CHECK(ndr_pull_srvsvc_NetFileInfo2(ndr, NDR_SCALARS, r->info2));
2166 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info2_0, 0);
2172 _mem_save_info3_0 = NDR_PULL_GET_MEM_CTX(ndr);
2173 NDR_PULL_SET_MEM_CTX(ndr, r->info3, 0);
2174 NDR_CHECK(ndr_pull_srvsvc_NetFileInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
2175 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info3_0, 0);
2184 return NDR_ERR_SUCCESS;
2187 _PUBLIC_ void ndr_print_srvsvc_NetFileInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetFileInfo *r)
2190 level = ndr_print_get_switch_value(ndr, r);
2191 ndr_print_union(ndr, name, level, "srvsvc_NetFileInfo");
2194 ndr_print_ptr(ndr, "info2", r->info2);
2197 ndr_print_srvsvc_NetFileInfo2(ndr, "info2", r->info2);
2203 ndr_print_ptr(ndr, "info3", r->info3);
2206 ndr_print_srvsvc_NetFileInfo3(ndr, "info3", r->info3);
2217 static enum ndr_err_code ndr_push_srvsvc_NetFileCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetFileCtr *r)
2219 if (ndr_flags & NDR_SCALARS) {
2220 int level = ndr_push_get_switch_value(ndr, r);
2221 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
2224 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
2228 NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr3));
2236 if (ndr_flags & NDR_BUFFERS) {
2237 int level = ndr_push_get_switch_value(ndr, r);
2241 NDR_CHECK(ndr_push_srvsvc_NetFileCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
2247 NDR_CHECK(ndr_push_srvsvc_NetFileCtr3(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr3));
2256 return NDR_ERR_SUCCESS;
2259 static enum ndr_err_code ndr_pull_srvsvc_NetFileCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetFileCtr *r)
2263 TALLOC_CTX *_mem_save_ctr2_0;
2264 TALLOC_CTX *_mem_save_ctr3_0;
2265 level = ndr_pull_get_switch_value(ndr, r);
2266 if (ndr_flags & NDR_SCALARS) {
2267 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
2268 if (_level != level) {
2269 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
2274 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
2276 NDR_PULL_ALLOC(ndr, r->ctr2);
2284 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr3));
2286 NDR_PULL_ALLOC(ndr, r->ctr3);
2297 if (ndr_flags & NDR_BUFFERS) {
2301 _mem_save_ctr2_0 = NDR_PULL_GET_MEM_CTX(ndr);
2302 NDR_PULL_SET_MEM_CTX(ndr, r->ctr2, 0);
2303 NDR_CHECK(ndr_pull_srvsvc_NetFileCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
2304 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr2_0, 0);
2310 _mem_save_ctr3_0 = NDR_PULL_GET_MEM_CTX(ndr);
2311 NDR_PULL_SET_MEM_CTX(ndr, r->ctr3, 0);
2312 NDR_CHECK(ndr_pull_srvsvc_NetFileCtr3(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr3));
2313 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr3_0, 0);
2322 return NDR_ERR_SUCCESS;
2325 _PUBLIC_ void ndr_print_srvsvc_NetFileCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetFileCtr *r)
2328 level = ndr_print_get_switch_value(ndr, r);
2329 ndr_print_union(ndr, name, level, "srvsvc_NetFileCtr");
2332 ndr_print_ptr(ndr, "ctr2", r->ctr2);
2335 ndr_print_srvsvc_NetFileCtr2(ndr, "ctr2", r->ctr2);
2341 ndr_print_ptr(ndr, "ctr3", r->ctr3);
2344 ndr_print_srvsvc_NetFileCtr3(ndr, "ctr3", r->ctr3);
2355 static enum ndr_err_code ndr_push_srvsvc_NetFileInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileInfoCtr *r)
2357 if (ndr_flags & NDR_SCALARS) {
2358 NDR_CHECK(ndr_push_align(ndr, 4));
2359 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
2360 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
2361 NDR_CHECK(ndr_push_srvsvc_NetFileCtr(ndr, NDR_SCALARS, &r->ctr));
2363 if (ndr_flags & NDR_BUFFERS) {
2364 NDR_CHECK(ndr_push_srvsvc_NetFileCtr(ndr, NDR_BUFFERS, &r->ctr));
2366 return NDR_ERR_SUCCESS;
2369 static enum ndr_err_code ndr_pull_srvsvc_NetFileInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileInfoCtr *r)
2371 if (ndr_flags & NDR_SCALARS) {
2372 NDR_CHECK(ndr_pull_align(ndr, 4));
2373 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
2374 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
2375 NDR_CHECK(ndr_pull_srvsvc_NetFileCtr(ndr, NDR_SCALARS, &r->ctr));
2377 if (ndr_flags & NDR_BUFFERS) {
2378 NDR_CHECK(ndr_pull_srvsvc_NetFileCtr(ndr, NDR_BUFFERS, &r->ctr));
2380 return NDR_ERR_SUCCESS;
2383 _PUBLIC_ void ndr_print_srvsvc_NetFileInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileInfoCtr *r)
2385 ndr_print_struct(ndr, name, "srvsvc_NetFileInfoCtr");
2387 ndr_print_uint32(ndr, "level", r->level);
2388 ndr_print_set_switch_value(ndr, &r->ctr, r->level);
2389 ndr_print_srvsvc_NetFileCtr(ndr, "ctr", &r->ctr);
2393 static enum ndr_err_code ndr_push_srvsvc_NetSessInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo0 *r)
2395 if (ndr_flags & NDR_SCALARS) {
2396 NDR_CHECK(ndr_push_align(ndr, 4));
2397 NDR_CHECK(ndr_push_unique_ptr(ndr, r->client));
2399 if (ndr_flags & NDR_BUFFERS) {
2401 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
2402 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2403 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
2404 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client, ndr_charset_length(r->client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
2407 return NDR_ERR_SUCCESS;
2410 static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo0 *r)
2412 uint32_t _ptr_client;
2413 TALLOC_CTX *_mem_save_client_0;
2414 if (ndr_flags & NDR_SCALARS) {
2415 NDR_CHECK(ndr_pull_align(ndr, 4));
2416 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
2418 NDR_PULL_ALLOC(ndr, r->client);
2423 if (ndr_flags & NDR_BUFFERS) {
2425 _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
2426 NDR_PULL_SET_MEM_CTX(ndr, r->client, 0);
2427 NDR_CHECK(ndr_pull_array_size(ndr, &r->client));
2428 NDR_CHECK(ndr_pull_array_length(ndr, &r->client));
2429 if (ndr_get_array_length(ndr, &r->client) > ndr_get_array_size(ndr, &r->client)) {
2430 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->client), ndr_get_array_length(ndr, &r->client));
2432 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t)));
2433 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t), CH_UTF16));
2434 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
2437 return NDR_ERR_SUCCESS;
2440 _PUBLIC_ void ndr_print_srvsvc_NetSessInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo0 *r)
2442 ndr_print_struct(ndr, name, "srvsvc_NetSessInfo0");
2444 ndr_print_ptr(ndr, "client", r->client);
2447 ndr_print_string(ndr, "client", r->client);
2453 static enum ndr_err_code ndr_push_srvsvc_NetSessCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr0 *r)
2455 uint32_t cntr_array_1;
2456 if (ndr_flags & NDR_SCALARS) {
2457 NDR_CHECK(ndr_push_align(ndr, 4));
2458 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2459 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
2461 if (ndr_flags & NDR_BUFFERS) {
2463 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2464 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2465 NDR_CHECK(ndr_push_srvsvc_NetSessInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
2467 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2468 NDR_CHECK(ndr_push_srvsvc_NetSessInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
2472 return NDR_ERR_SUCCESS;
2475 static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr0 *r)
2477 uint32_t _ptr_array;
2478 uint32_t cntr_array_1;
2479 TALLOC_CTX *_mem_save_array_0;
2480 TALLOC_CTX *_mem_save_array_1;
2481 if (ndr_flags & NDR_SCALARS) {
2482 NDR_CHECK(ndr_pull_align(ndr, 4));
2483 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2484 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
2486 NDR_PULL_ALLOC(ndr, r->array);
2491 if (ndr_flags & NDR_BUFFERS) {
2493 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
2494 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
2495 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
2496 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
2497 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
2498 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
2499 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2500 NDR_CHECK(ndr_pull_srvsvc_NetSessInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
2502 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2503 NDR_CHECK(ndr_pull_srvsvc_NetSessInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
2505 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
2506 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
2509 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
2512 return NDR_ERR_SUCCESS;
2515 _PUBLIC_ void ndr_print_srvsvc_NetSessCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr0 *r)
2517 uint32_t cntr_array_1;
2518 ndr_print_struct(ndr, name, "srvsvc_NetSessCtr0");
2520 ndr_print_uint32(ndr, "count", r->count);
2521 ndr_print_ptr(ndr, "array", r->array);
2524 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
2526 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
2528 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
2529 ndr_print_srvsvc_NetSessInfo0(ndr, "array", &r->array[cntr_array_1]);
2539 static enum ndr_err_code ndr_push_srvsvc_NetSessInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo1 *r)
2541 if (ndr_flags & NDR_SCALARS) {
2542 NDR_CHECK(ndr_push_align(ndr, 4));
2543 NDR_CHECK(ndr_push_unique_ptr(ndr, r->client));
2544 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
2545 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_open));
2546 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->time));
2547 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idle_time));
2548 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->user_flags));
2550 if (ndr_flags & NDR_BUFFERS) {
2552 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
2553 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2554 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
2555 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client, ndr_charset_length(r->client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
2558 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
2559 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2560 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
2561 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
2564 return NDR_ERR_SUCCESS;
2567 static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo1 *r)
2569 uint32_t _ptr_client;
2570 TALLOC_CTX *_mem_save_client_0;
2572 TALLOC_CTX *_mem_save_user_0;
2573 if (ndr_flags & NDR_SCALARS) {
2574 NDR_CHECK(ndr_pull_align(ndr, 4));
2575 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
2577 NDR_PULL_ALLOC(ndr, r->client);
2581 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
2583 NDR_PULL_ALLOC(ndr, r->user);
2587 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_open));
2588 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time));
2589 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idle_time));
2590 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->user_flags));
2592 if (ndr_flags & NDR_BUFFERS) {
2594 _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
2595 NDR_PULL_SET_MEM_CTX(ndr, r->client, 0);
2596 NDR_CHECK(ndr_pull_array_size(ndr, &r->client));
2597 NDR_CHECK(ndr_pull_array_length(ndr, &r->client));
2598 if (ndr_get_array_length(ndr, &r->client) > ndr_get_array_size(ndr, &r->client)) {
2599 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->client), ndr_get_array_length(ndr, &r->client));
2601 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t)));
2602 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t), CH_UTF16));
2603 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
2606 _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
2607 NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
2608 NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
2609 NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
2610 if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
2611 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user), ndr_get_array_length(ndr, &r->user));
2613 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
2614 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
2615 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
2618 return NDR_ERR_SUCCESS;
2621 _PUBLIC_ void ndr_print_srvsvc_NetSessInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo1 *r)
2623 ndr_print_struct(ndr, name, "srvsvc_NetSessInfo1");
2625 ndr_print_ptr(ndr, "client", r->client);
2628 ndr_print_string(ndr, "client", r->client);
2631 ndr_print_ptr(ndr, "user", r->user);
2634 ndr_print_string(ndr, "user", r->user);
2637 ndr_print_uint32(ndr, "num_open", r->num_open);
2638 ndr_print_uint32(ndr, "time", r->time);
2639 ndr_print_uint32(ndr, "idle_time", r->idle_time);
2640 ndr_print_uint32(ndr, "user_flags", r->user_flags);
2644 static enum ndr_err_code ndr_push_srvsvc_NetSessCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr1 *r)
2646 uint32_t cntr_array_1;
2647 if (ndr_flags & NDR_SCALARS) {
2648 NDR_CHECK(ndr_push_align(ndr, 4));
2649 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2650 NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
2652 if (ndr_flags & NDR_BUFFERS) {
2654 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2655 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2656 NDR_CHECK(ndr_push_srvsvc_NetSessInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
2658 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2659 NDR_CHECK(ndr_push_srvsvc_NetSessInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
2663 return NDR_ERR_SUCCESS;
2666 static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr1 *r)
2668 uint32_t _ptr_array;
2669 uint32_t cntr_array_1;
2670 TALLOC_CTX *_mem_save_array_0;
2671 TALLOC_CTX *_mem_save_array_1;
2672 if (ndr_flags & NDR_SCALARS) {
2673 NDR_CHECK(ndr_pull_align(ndr, 4));
2674 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2675 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
2677 NDR_PULL_ALLOC(ndr, r->array);
2682 if (ndr_flags & NDR_BUFFERS) {
2684 _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
2685 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
2686 NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
2687 NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
2688 _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
2689 NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
2690 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2691 NDR_CHECK(ndr_pull_srvsvc_NetSessInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
2693 for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
2694 NDR_CHECK(ndr_pull_srvsvc_NetSessInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
2696 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
2697 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
2700 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
2703 return NDR_ERR_SUCCESS;
2706 _PUBLIC_ void ndr_print_srvsvc_NetSessCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr1 *r)
2708 uint32_t cntr_array_1;
2709 ndr_print_struct(ndr, name, "srvsvc_NetSessCtr1");
2711 ndr_print_uint32(ndr, "count", r->count);
2712 ndr_print_ptr(ndr, "array", r->array);
2715 ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
2717 for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
2719 if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
2720 ndr_print_srvsvc_NetSessInfo1(ndr, "array", &r->array[cntr_array_1]);
2730 static enum ndr_err_code ndr_push_srvsvc_NetSessInfo2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo2 *r)
2732 if (ndr_flags & NDR_SCALARS) {
2733 NDR_CHECK(ndr_push_align(ndr, 4));
2734 NDR_CHECK(ndr_push_unique_ptr(ndr, r->client));
2735 NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
2736 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_open));
2737 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->time));
2738 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idle_time));
2739 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->user_flags));
2740 NDR_CHECK(ndr_push_unique_ptr(ndr, r->client_type));
2742 if (ndr_flags & NDR_BUFFERS) {
2744 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
2745 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2746 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
2747 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client, ndr_charset_length(r->client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
2750 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
2751 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2752 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
2753 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
2755 if (r->client_type) {
2756 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client_type, CH_UTF16)));
2757 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2758 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client_type, CH_UTF16)));
2759 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client_type, ndr_charset_length(r->client_type, CH_UTF16), sizeof(uint16_t), CH_UTF16));
2762 return NDR_ERR_SUCCESS;
2765 static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo2 *r)
2767 uint32_t _ptr_client;
2768 TALLOC_CTX *_mem_save_client_0;
2770 TALLOC_CTX *_mem_save_user_0;
2771 uint32_t _ptr_client_type;
2772 TALLOC_CTX *_mem_save_client_type_0;
2773 if (ndr_flags & NDR_SCALARS) {
2774 NDR_CHECK(ndr_pull_align(ndr, 4));
2775 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
2777 NDR_PULL_ALLOC(ndr, r->client);
2781 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
2783 NDR_PULL_ALLOC(ndr, r->user);
2787 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_open));
2788 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time));
2789 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idle_time));
2790 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->user_flags));
2791 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client_type));
2792 if (_ptr_client_type) {
2793 NDR_PULL_ALLOC(ndr, r->client_type);
2795 r->client_type = NULL;
2798 if (ndr_flags & NDR_BUFFERS) {
2800 _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
2801 NDR_PULL_SET_MEM_CTX(ndr, r->client, 0);
2802 NDR_CHECK(ndr_pull_array_size(ndr, &r->client));
2803 NDR_CHECK(ndr_pull_array_length(ndr, &r->client));
2804 if (ndr_get_array_length(ndr, &r->client) > ndr_get_array_size(ndr, &r->client)) {
2805 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->client), ndr_get_array_length(ndr, &r->client));
2807 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t)));
2808 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t), CH_UTF16));
2809 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
2812 _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
2813 NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
2814 NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
2815 NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
2816 if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
2817 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->user), ndr_get_array_length(ndr, &r->user));
2819 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
2820 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
2821 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
2823 if (r->client_type) {
2824 _mem_save_client_type_0 = NDR_PULL_GET_MEM_CTX(ndr);
2825 NDR_PULL_SET_MEM_CTX(ndr, r->client_type, 0);
2826 NDR_CHECK(ndr_pull_array_size(ndr, &r->client_type));
2827 NDR_CHECK(ndr_pull_array_length(ndr, &r->client_type));
2828 if (ndr_get_array_length(ndr, &r->client_type) > ndr_get_array_size(ndr, &r->client_type)) {
2829 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->client_type), ndr_get_array_length(ndr, &r->client_type));
2831 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client_type), sizeof(uint16_t)));
2832 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client_type, ndr_get_array_length(ndr, &r->client_type), sizeof(uint16_t), CH_UTF16));
2833 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_type_0, 0);
2836 return NDR_ERR_SUCCESS;
2839 _PUBLIC_ void ndr_print_srvsvc_NetSessInfo2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo2 *r)
2841 ndr_print_struct(ndr, name, "srvsvc_NetSessInfo2");
2843 ndr_print_ptr(ndr, "client", r->client);
2846 ndr_print_string(ndr, "client", r->client);
2849 ndr_print_ptr(ndr, "user", r->user);
2852 ndr_print_string(ndr, "user", r->user);
2855 ndr_print_uint32(ndr, "num_open", r->num_open);
2856 ndr_print_uint32(ndr, "time", r->time);
2857 ndr_print_uint32(ndr, "idle_time", r->idle_time);
2858 ndr_print_uint32(ndr, "user_flags", r->user_flags);
2859 ndr_print_ptr(ndr, "client_type", r->client_type);