~zulcss/samba/server-dailies-3.4

« back to all changes in this revision

Viewing changes to librpc/gen_ndr/ndr_srvsvc.c

  • Committer: Chuck Short
  • Date: 2010-09-28 20:38:39 UTC
  • Revision ID: zulcss@ubuntu.com-20100928203839-pgjulytsi9ue63x1
Initial version

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* parser auto-generated by pidl */
 
2
 
 
3
#include "includes.h"
 
4
#include "../librpc/gen_ndr/ndr_srvsvc.h"
 
5
 
 
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)
 
9
{
 
10
        if (ndr_flags & NDR_SCALARS) {
 
11
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->device));
 
13
        }
 
14
        if (ndr_flags & NDR_BUFFERS) {
 
15
                if (r->device) {
 
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));
 
20
                }
 
21
        }
 
22
        return NDR_ERR_SUCCESS;
 
23
}
 
24
 
 
25
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevInfo0 *r)
 
26
{
 
27
        uint32_t _ptr_device;
 
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));
 
32
                if (_ptr_device) {
 
33
                        NDR_PULL_ALLOC(ndr, r->device);
 
34
                } else {
 
35
                        r->device = NULL;
 
36
                }
 
37
        }
 
38
        if (ndr_flags & NDR_BUFFERS) {
 
39
                if (r->device) {
 
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));
 
46
                        }
 
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);
 
50
                }
 
51
        }
 
52
        return NDR_ERR_SUCCESS;
 
53
}
 
54
 
 
55
_PUBLIC_ void ndr_print_srvsvc_NetCharDevInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevInfo0 *r)
 
56
{
 
57
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevInfo0");
 
58
        ndr->depth++;
 
59
        ndr_print_ptr(ndr, "device", r->device);
 
60
        ndr->depth++;
 
61
        if (r->device) {
 
62
                ndr_print_string(ndr, "device", r->device);
 
63
        }
 
64
        ndr->depth--;
 
65
        ndr->depth--;
 
66
}
 
67
 
 
68
static enum ndr_err_code ndr_push_srvsvc_NetCharDevCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevCtr0 *r)
 
69
{
 
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));
 
75
        }
 
76
        if (ndr_flags & NDR_BUFFERS) {
 
77
                if (r->array) {
 
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]));
 
81
                        }
 
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]));
 
84
                        }
 
85
                }
 
86
        }
 
87
        return NDR_ERR_SUCCESS;
 
88
}
 
89
 
 
90
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevCtr0 *r)
 
91
{
 
92
        uint32_t _ptr_array;
 
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));
 
100
                if (_ptr_array) {
 
101
                        NDR_PULL_ALLOC(ndr, r->array);
 
102
                } else {
 
103
                        r->array = NULL;
 
104
                }
 
105
        }
 
106
        if (ndr_flags & NDR_BUFFERS) {
 
107
                if (r->array) {
 
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]));
 
116
                        }
 
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]));
 
119
                        }
 
120
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
121
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
122
                }
 
123
                if (r->array) {
 
124
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
125
                }
 
126
        }
 
127
        return NDR_ERR_SUCCESS;
 
128
}
 
129
 
 
130
_PUBLIC_ void ndr_print_srvsvc_NetCharDevCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevCtr0 *r)
 
131
{
 
132
        uint32_t cntr_array_1;
 
133
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevCtr0");
 
134
        ndr->depth++;
 
135
        ndr_print_uint32(ndr, "count", r->count);
 
136
        ndr_print_ptr(ndr, "array", r->array);
 
137
        ndr->depth++;
 
138
        if (r->array) {
 
139
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
140
                ndr->depth++;
 
141
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
142
                        char *idx_1=NULL;
 
143
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
144
                                ndr_print_srvsvc_NetCharDevInfo0(ndr, "array", &r->array[cntr_array_1]);
 
145
                                free(idx_1);
 
146
                        }
 
147
                }
 
148
                ndr->depth--;
 
149
        }
 
150
        ndr->depth--;
 
151
        ndr->depth--;
 
152
}
 
153
 
 
154
static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevInfo1 *r)
 
155
{
 
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));
 
162
        }
 
163
        if (ndr_flags & NDR_BUFFERS) {
 
164
                if (r->device) {
 
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));
 
169
                }
 
170
                if (r->user) {
 
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));
 
175
                }
 
176
        }
 
177
        return NDR_ERR_SUCCESS;
 
178
}
 
179
 
 
180
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevInfo1 *r)
 
181
{
 
182
        uint32_t _ptr_device;
 
183
        TALLOC_CTX *_mem_save_device_0;
 
184
        uint32_t _ptr_user;
 
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));
 
189
                if (_ptr_device) {
 
190
                        NDR_PULL_ALLOC(ndr, r->device);
 
191
                } else {
 
192
                        r->device = NULL;
 
193
                }
 
194
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->status));
 
195
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
196
                if (_ptr_user) {
 
197
                        NDR_PULL_ALLOC(ndr, r->user);
 
198
                } else {
 
199
                        r->user = NULL;
 
200
                }
 
201
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time));
 
202
        }
 
203
        if (ndr_flags & NDR_BUFFERS) {
 
204
                if (r->device) {
 
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));
 
211
                        }
 
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);
 
215
                }
 
216
                if (r->user) {
 
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));
 
223
                        }
 
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);
 
227
                }
 
228
        }
 
229
        return NDR_ERR_SUCCESS;
 
230
}
 
231
 
 
232
_PUBLIC_ void ndr_print_srvsvc_NetCharDevInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevInfo1 *r)
 
233
{
 
234
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevInfo1");
 
235
        ndr->depth++;
 
236
        ndr_print_ptr(ndr, "device", r->device);
 
237
        ndr->depth++;
 
238
        if (r->device) {
 
239
                ndr_print_string(ndr, "device", r->device);
 
240
        }
 
241
        ndr->depth--;
 
242
        ndr_print_uint32(ndr, "status", r->status);
 
243
        ndr_print_ptr(ndr, "user", r->user);
 
244
        ndr->depth++;
 
245
        if (r->user) {
 
246
                ndr_print_string(ndr, "user", r->user);
 
247
        }
 
248
        ndr->depth--;
 
249
        ndr_print_uint32(ndr, "time", r->time);
 
250
        ndr->depth--;
 
251
}
 
252
 
 
253
static enum ndr_err_code ndr_push_srvsvc_NetCharDevCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevCtr1 *r)
 
254
{
 
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));
 
260
        }
 
261
        if (ndr_flags & NDR_BUFFERS) {
 
262
                if (r->array) {
 
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]));
 
266
                        }
 
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]));
 
269
                        }
 
270
                }
 
271
        }
 
272
        return NDR_ERR_SUCCESS;
 
273
}
 
274
 
 
275
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevCtr1 *r)
 
276
{
 
277
        uint32_t _ptr_array;
 
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));
 
285
                if (_ptr_array) {
 
286
                        NDR_PULL_ALLOC(ndr, r->array);
 
287
                } else {
 
288
                        r->array = NULL;
 
289
                }
 
290
        }
 
291
        if (ndr_flags & NDR_BUFFERS) {
 
292
                if (r->array) {
 
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]));
 
301
                        }
 
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]));
 
304
                        }
 
305
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
306
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
307
                }
 
308
                if (r->array) {
 
309
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
310
                }
 
311
        }
 
312
        return NDR_ERR_SUCCESS;
 
313
}
 
314
 
 
315
_PUBLIC_ void ndr_print_srvsvc_NetCharDevCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevCtr1 *r)
 
316
{
 
317
        uint32_t cntr_array_1;
 
318
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevCtr1");
 
319
        ndr->depth++;
 
320
        ndr_print_uint32(ndr, "count", r->count);
 
321
        ndr_print_ptr(ndr, "array", r->array);
 
322
        ndr->depth++;
 
323
        if (r->array) {
 
324
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
325
                ndr->depth++;
 
326
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
327
                        char *idx_1=NULL;
 
328
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
329
                                ndr_print_srvsvc_NetCharDevInfo1(ndr, "array", &r->array[cntr_array_1]);
 
330
                                free(idx_1);
 
331
                        }
 
332
                }
 
333
                ndr->depth--;
 
334
        }
 
335
        ndr->depth--;
 
336
        ndr->depth--;
 
337
}
 
338
 
 
339
static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevInfo *r)
 
340
{
 
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));
 
344
                switch (level) {
 
345
                        case 0: {
 
346
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
 
347
                        break; }
 
348
 
 
349
                        case 1: {
 
350
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
 
351
                        break; }
 
352
 
 
353
                        default: {
 
354
                        break; }
 
355
 
 
356
                }
 
357
        }
 
358
        if (ndr_flags & NDR_BUFFERS) {
 
359
                int level = ndr_push_get_switch_value(ndr, r);
 
360
                switch (level) {
 
361
                        case 0:
 
362
                                if (r->info0) {
 
363
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
 
364
                                }
 
365
                        break;
 
366
 
 
367
                        case 1:
 
368
                                if (r->info1) {
 
369
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
 
370
                                }
 
371
                        break;
 
372
 
 
373
                        default:
 
374
                        break;
 
375
 
 
376
                }
 
377
        }
 
378
        return NDR_ERR_SUCCESS;
 
379
}
 
380
 
 
381
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevInfo *r)
 
382
{
 
383
        int level;
 
384
        uint32_t _level;
 
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);
 
392
                }
 
393
                switch (level) {
 
394
                        case 0: {
 
395
                                uint32_t _ptr_info0;
 
396
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
 
397
                                if (_ptr_info0) {
 
398
                                        NDR_PULL_ALLOC(ndr, r->info0);
 
399
                                } else {
 
400
                                        r->info0 = NULL;
 
401
                                }
 
402
                        break; }
 
403
 
 
404
                        case 1: {
 
405
                                uint32_t _ptr_info1;
 
406
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
 
407
                                if (_ptr_info1) {
 
408
                                        NDR_PULL_ALLOC(ndr, r->info1);
 
409
                                } else {
 
410
                                        r->info1 = NULL;
 
411
                                }
 
412
                        break; }
 
413
 
 
414
                        default: {
 
415
                        break; }
 
416
 
 
417
                }
 
418
        }
 
419
        if (ndr_flags & NDR_BUFFERS) {
 
420
                switch (level) {
 
421
                        case 0:
 
422
                                if (r->info0) {
 
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);
 
427
                                }
 
428
                        break;
 
429
 
 
430
                        case 1:
 
431
                                if (r->info1) {
 
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);
 
436
                                }
 
437
                        break;
 
438
 
 
439
                        default:
 
440
                        break;
 
441
 
 
442
                }
 
443
        }
 
444
        return NDR_ERR_SUCCESS;
 
445
}
 
446
 
 
447
_PUBLIC_ void ndr_print_srvsvc_NetCharDevInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevInfo *r)
 
448
{
 
449
        int level;
 
450
        level = ndr_print_get_switch_value(ndr, r);
 
451
        ndr_print_union(ndr, name, level, "srvsvc_NetCharDevInfo");
 
452
        switch (level) {
 
453
                case 0:
 
454
                        ndr_print_ptr(ndr, "info0", r->info0);
 
455
                        ndr->depth++;
 
456
                        if (r->info0) {
 
457
                                ndr_print_srvsvc_NetCharDevInfo0(ndr, "info0", r->info0);
 
458
                        }
 
459
                        ndr->depth--;
 
460
                break;
 
461
 
 
462
                case 1:
 
463
                        ndr_print_ptr(ndr, "info1", r->info1);
 
464
                        ndr->depth++;
 
465
                        if (r->info1) {
 
466
                                ndr_print_srvsvc_NetCharDevInfo1(ndr, "info1", r->info1);
 
467
                        }
 
468
                        ndr->depth--;
 
469
                break;
 
470
 
 
471
                default:
 
472
                break;
 
473
 
 
474
        }
 
475
}
 
476
 
 
477
static enum ndr_err_code ndr_push_srvsvc_NetCharDevCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevCtr *r)
 
478
{
 
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));
 
482
                switch (level) {
 
483
                        case 0: {
 
484
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
 
485
                        break; }
 
486
 
 
487
                        case 1: {
 
488
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
 
489
                        break; }
 
490
 
 
491
                        default: {
 
492
                        break; }
 
493
 
 
494
                }
 
495
        }
 
496
        if (ndr_flags & NDR_BUFFERS) {
 
497
                int level = ndr_push_get_switch_value(ndr, r);
 
498
                switch (level) {
 
499
                        case 0:
 
500
                                if (r->ctr0) {
 
501
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
502
                                }
 
503
                        break;
 
504
 
 
505
                        case 1:
 
506
                                if (r->ctr1) {
 
507
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
508
                                }
 
509
                        break;
 
510
 
 
511
                        default:
 
512
                        break;
 
513
 
 
514
                }
 
515
        }
 
516
        return NDR_ERR_SUCCESS;
 
517
}
 
518
 
 
519
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevCtr *r)
 
520
{
 
521
        int level;
 
522
        uint32_t _level;
 
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);
 
530
                }
 
531
                switch (level) {
 
532
                        case 0: {
 
533
                                uint32_t _ptr_ctr0;
 
534
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
 
535
                                if (_ptr_ctr0) {
 
536
                                        NDR_PULL_ALLOC(ndr, r->ctr0);
 
537
                                } else {
 
538
                                        r->ctr0 = NULL;
 
539
                                }
 
540
                        break; }
 
541
 
 
542
                        case 1: {
 
543
                                uint32_t _ptr_ctr1;
 
544
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
 
545
                                if (_ptr_ctr1) {
 
546
                                        NDR_PULL_ALLOC(ndr, r->ctr1);
 
547
                                } else {
 
548
                                        r->ctr1 = NULL;
 
549
                                }
 
550
                        break; }
 
551
 
 
552
                        default: {
 
553
                        break; }
 
554
 
 
555
                }
 
556
        }
 
557
        if (ndr_flags & NDR_BUFFERS) {
 
558
                switch (level) {
 
559
                        case 0:
 
560
                                if (r->ctr0) {
 
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);
 
565
                                }
 
566
                        break;
 
567
 
 
568
                        case 1:
 
569
                                if (r->ctr1) {
 
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);
 
574
                                }
 
575
                        break;
 
576
 
 
577
                        default:
 
578
                        break;
 
579
 
 
580
                }
 
581
        }
 
582
        return NDR_ERR_SUCCESS;
 
583
}
 
584
 
 
585
_PUBLIC_ void ndr_print_srvsvc_NetCharDevCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevCtr *r)
 
586
{
 
587
        int level;
 
588
        level = ndr_print_get_switch_value(ndr, r);
 
589
        ndr_print_union(ndr, name, level, "srvsvc_NetCharDevCtr");
 
590
        switch (level) {
 
591
                case 0:
 
592
                        ndr_print_ptr(ndr, "ctr0", r->ctr0);
 
593
                        ndr->depth++;
 
594
                        if (r->ctr0) {
 
595
                                ndr_print_srvsvc_NetCharDevCtr0(ndr, "ctr0", r->ctr0);
 
596
                        }
 
597
                        ndr->depth--;
 
598
                break;
 
599
 
 
600
                case 1:
 
601
                        ndr_print_ptr(ndr, "ctr1", r->ctr1);
 
602
                        ndr->depth++;
 
603
                        if (r->ctr1) {
 
604
                                ndr_print_srvsvc_NetCharDevCtr1(ndr, "ctr1", r->ctr1);
 
605
                        }
 
606
                        ndr->depth--;
 
607
                break;
 
608
 
 
609
                default:
 
610
                break;
 
611
 
 
612
        }
 
613
}
 
614
 
 
615
static enum ndr_err_code ndr_push_srvsvc_NetCharDevInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevInfoCtr *r)
 
616
{
 
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));
 
622
        }
 
623
        if (ndr_flags & NDR_BUFFERS) {
 
624
                NDR_CHECK(ndr_push_srvsvc_NetCharDevCtr(ndr, NDR_BUFFERS, &r->ctr));
 
625
        }
 
626
        return NDR_ERR_SUCCESS;
 
627
}
 
628
 
 
629
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevInfoCtr *r)
 
630
{
 
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));
 
636
        }
 
637
        if (ndr_flags & NDR_BUFFERS) {
 
638
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevCtr(ndr, NDR_BUFFERS, &r->ctr));
 
639
        }
 
640
        return NDR_ERR_SUCCESS;
 
641
}
 
642
 
 
643
_PUBLIC_ void ndr_print_srvsvc_NetCharDevInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevInfoCtr *r)
 
644
{
 
645
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevInfoCtr");
 
646
        ndr->depth++;
 
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);
 
650
        ndr->depth--;
 
651
}
 
652
 
 
653
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQInfo0 *r)
 
654
{
 
655
        if (ndr_flags & NDR_SCALARS) {
 
656
                NDR_CHECK(ndr_push_align(ndr, 4));
 
657
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->device));
 
658
        }
 
659
        if (ndr_flags & NDR_BUFFERS) {
 
660
                if (r->device) {
 
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));
 
665
                }
 
666
        }
 
667
        return NDR_ERR_SUCCESS;
 
668
}
 
669
 
 
670
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQInfo0 *r)
 
671
{
 
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));
 
677
                if (_ptr_device) {
 
678
                        NDR_PULL_ALLOC(ndr, r->device);
 
679
                } else {
 
680
                        r->device = NULL;
 
681
                }
 
682
        }
 
683
        if (ndr_flags & NDR_BUFFERS) {
 
684
                if (r->device) {
 
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));
 
691
                        }
 
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);
 
695
                }
 
696
        }
 
697
        return NDR_ERR_SUCCESS;
 
698
}
 
699
 
 
700
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQInfo0 *r)
 
701
{
 
702
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQInfo0");
 
703
        ndr->depth++;
 
704
        ndr_print_ptr(ndr, "device", r->device);
 
705
        ndr->depth++;
 
706
        if (r->device) {
 
707
                ndr_print_string(ndr, "device", r->device);
 
708
        }
 
709
        ndr->depth--;
 
710
        ndr->depth--;
 
711
}
 
712
 
 
713
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQCtr0 *r)
 
714
{
 
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));
 
720
        }
 
721
        if (ndr_flags & NDR_BUFFERS) {
 
722
                if (r->array) {
 
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]));
 
726
                        }
 
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]));
 
729
                        }
 
730
                }
 
731
        }
 
732
        return NDR_ERR_SUCCESS;
 
733
}
 
734
 
 
735
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQCtr0 *r)
 
736
{
 
737
        uint32_t _ptr_array;
 
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));
 
745
                if (_ptr_array) {
 
746
                        NDR_PULL_ALLOC(ndr, r->array);
 
747
                } else {
 
748
                        r->array = NULL;
 
749
                }
 
750
        }
 
751
        if (ndr_flags & NDR_BUFFERS) {
 
752
                if (r->array) {
 
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]));
 
761
                        }
 
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]));
 
764
                        }
 
765
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
766
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
767
                }
 
768
                if (r->array) {
 
769
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
770
                }
 
771
        }
 
772
        return NDR_ERR_SUCCESS;
 
773
}
 
774
 
 
775
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQCtr0 *r)
 
776
{
 
777
        uint32_t cntr_array_1;
 
778
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQCtr0");
 
779
        ndr->depth++;
 
780
        ndr_print_uint32(ndr, "count", r->count);
 
781
        ndr_print_ptr(ndr, "array", r->array);
 
782
        ndr->depth++;
 
783
        if (r->array) {
 
784
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
785
                ndr->depth++;
 
786
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
787
                        char *idx_1=NULL;
 
788
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
789
                                ndr_print_srvsvc_NetCharDevQInfo0(ndr, "array", &r->array[cntr_array_1]);
 
790
                                free(idx_1);
 
791
                        }
 
792
                }
 
793
                ndr->depth--;
 
794
        }
 
795
        ndr->depth--;
 
796
        ndr->depth--;
 
797
}
 
798
 
 
799
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQInfo1 *r)
 
800
{
 
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));
 
808
        }
 
809
        if (ndr_flags & NDR_BUFFERS) {
 
810
                if (r->device) {
 
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));
 
815
                }
 
816
                if (r->devices) {
 
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));
 
821
                }
 
822
        }
 
823
        return NDR_ERR_SUCCESS;
 
824
}
 
825
 
 
826
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQInfo1 *r)
 
827
{
 
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));
 
835
                if (_ptr_device) {
 
836
                        NDR_PULL_ALLOC(ndr, r->device);
 
837
                } else {
 
838
                        r->device = NULL;
 
839
                }
 
840
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->priority));
 
841
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_devices));
 
842
                if (_ptr_devices) {
 
843
                        NDR_PULL_ALLOC(ndr, r->devices);
 
844
                } else {
 
845
                        r->devices = NULL;
 
846
                }
 
847
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->users));
 
848
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_ahead));
 
849
        }
 
850
        if (ndr_flags & NDR_BUFFERS) {
 
851
                if (r->device) {
 
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));
 
858
                        }
 
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);
 
862
                }
 
863
                if (r->devices) {
 
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));
 
870
                        }
 
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);
 
874
                }
 
875
        }
 
876
        return NDR_ERR_SUCCESS;
 
877
}
 
878
 
 
879
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQInfo1 *r)
 
880
{
 
881
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQInfo1");
 
882
        ndr->depth++;
 
883
        ndr_print_ptr(ndr, "device", r->device);
 
884
        ndr->depth++;
 
885
        if (r->device) {
 
886
                ndr_print_string(ndr, "device", r->device);
 
887
        }
 
888
        ndr->depth--;
 
889
        ndr_print_uint32(ndr, "priority", r->priority);
 
890
        ndr_print_ptr(ndr, "devices", r->devices);
 
891
        ndr->depth++;
 
892
        if (r->devices) {
 
893
                ndr_print_string(ndr, "devices", r->devices);
 
894
        }
 
895
        ndr->depth--;
 
896
        ndr_print_uint32(ndr, "users", r->users);
 
897
        ndr_print_uint32(ndr, "num_ahead", r->num_ahead);
 
898
        ndr->depth--;
 
899
}
 
900
 
 
901
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQCtr1 *r)
 
902
{
 
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));
 
908
        }
 
909
        if (ndr_flags & NDR_BUFFERS) {
 
910
                if (r->array) {
 
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]));
 
914
                        }
 
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]));
 
917
                        }
 
918
                }
 
919
        }
 
920
        return NDR_ERR_SUCCESS;
 
921
}
 
922
 
 
923
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQCtr1 *r)
 
924
{
 
925
        uint32_t _ptr_array;
 
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));
 
933
                if (_ptr_array) {
 
934
                        NDR_PULL_ALLOC(ndr, r->array);
 
935
                } else {
 
936
                        r->array = NULL;
 
937
                }
 
938
        }
 
939
        if (ndr_flags & NDR_BUFFERS) {
 
940
                if (r->array) {
 
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]));
 
949
                        }
 
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]));
 
952
                        }
 
953
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
954
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
955
                }
 
956
                if (r->array) {
 
957
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
958
                }
 
959
        }
 
960
        return NDR_ERR_SUCCESS;
 
961
}
 
962
 
 
963
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQCtr1 *r)
 
964
{
 
965
        uint32_t cntr_array_1;
 
966
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQCtr1");
 
967
        ndr->depth++;
 
968
        ndr_print_uint32(ndr, "count", r->count);
 
969
        ndr_print_ptr(ndr, "array", r->array);
 
970
        ndr->depth++;
 
971
        if (r->array) {
 
972
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
973
                ndr->depth++;
 
974
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
975
                        char *idx_1=NULL;
 
976
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
977
                                ndr_print_srvsvc_NetCharDevQInfo1(ndr, "array", &r->array[cntr_array_1]);
 
978
                                free(idx_1);
 
979
                        }
 
980
                }
 
981
                ndr->depth--;
 
982
        }
 
983
        ndr->depth--;
 
984
        ndr->depth--;
 
985
}
 
986
 
 
987
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevQInfo *r)
 
988
{
 
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));
 
992
                switch (level) {
 
993
                        case 0: {
 
994
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
 
995
                        break; }
 
996
 
 
997
                        case 1: {
 
998
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
 
999
                        break; }
 
1000
 
 
1001
                        default: {
 
1002
                        break; }
 
1003
 
 
1004
                }
 
1005
        }
 
1006
        if (ndr_flags & NDR_BUFFERS) {
 
1007
                int level = ndr_push_get_switch_value(ndr, r);
 
1008
                switch (level) {
 
1009
                        case 0:
 
1010
                                if (r->info0) {
 
1011
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
 
1012
                                }
 
1013
                        break;
 
1014
 
 
1015
                        case 1:
 
1016
                                if (r->info1) {
 
1017
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
 
1018
                                }
 
1019
                        break;
 
1020
 
 
1021
                        default:
 
1022
                        break;
 
1023
 
 
1024
                }
 
1025
        }
 
1026
        return NDR_ERR_SUCCESS;
 
1027
}
 
1028
 
 
1029
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevQInfo *r)
 
1030
{
 
1031
        int level;
 
1032
        uint32_t _level;
 
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);
 
1040
                }
 
1041
                switch (level) {
 
1042
                        case 0: {
 
1043
                                uint32_t _ptr_info0;
 
1044
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
 
1045
                                if (_ptr_info0) {
 
1046
                                        NDR_PULL_ALLOC(ndr, r->info0);
 
1047
                                } else {
 
1048
                                        r->info0 = NULL;
 
1049
                                }
 
1050
                        break; }
 
1051
 
 
1052
                        case 1: {
 
1053
                                uint32_t _ptr_info1;
 
1054
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
 
1055
                                if (_ptr_info1) {
 
1056
                                        NDR_PULL_ALLOC(ndr, r->info1);
 
1057
                                } else {
 
1058
                                        r->info1 = NULL;
 
1059
                                }
 
1060
                        break; }
 
1061
 
 
1062
                        default: {
 
1063
                        break; }
 
1064
 
 
1065
                }
 
1066
        }
 
1067
        if (ndr_flags & NDR_BUFFERS) {
 
1068
                switch (level) {
 
1069
                        case 0:
 
1070
                                if (r->info0) {
 
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);
 
1075
                                }
 
1076
                        break;
 
1077
 
 
1078
                        case 1:
 
1079
                                if (r->info1) {
 
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);
 
1084
                                }
 
1085
                        break;
 
1086
 
 
1087
                        default:
 
1088
                        break;
 
1089
 
 
1090
                }
 
1091
        }
 
1092
        return NDR_ERR_SUCCESS;
 
1093
}
 
1094
 
 
1095
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevQInfo *r)
 
1096
{
 
1097
        int level;
 
1098
        level = ndr_print_get_switch_value(ndr, r);
 
1099
        ndr_print_union(ndr, name, level, "srvsvc_NetCharDevQInfo");
 
1100
        switch (level) {
 
1101
                case 0:
 
1102
                        ndr_print_ptr(ndr, "info0", r->info0);
 
1103
                        ndr->depth++;
 
1104
                        if (r->info0) {
 
1105
                                ndr_print_srvsvc_NetCharDevQInfo0(ndr, "info0", r->info0);
 
1106
                        }
 
1107
                        ndr->depth--;
 
1108
                break;
 
1109
 
 
1110
                case 1:
 
1111
                        ndr_print_ptr(ndr, "info1", r->info1);
 
1112
                        ndr->depth++;
 
1113
                        if (r->info1) {
 
1114
                                ndr_print_srvsvc_NetCharDevQInfo1(ndr, "info1", r->info1);
 
1115
                        }
 
1116
                        ndr->depth--;
 
1117
                break;
 
1118
 
 
1119
                default:
 
1120
                break;
 
1121
 
 
1122
        }
 
1123
}
 
1124
 
 
1125
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetCharDevQCtr *r)
 
1126
{
 
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));
 
1130
                switch (level) {
 
1131
                        case 0: {
 
1132
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
 
1133
                        break; }
 
1134
 
 
1135
                        case 1: {
 
1136
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
 
1137
                        break; }
 
1138
 
 
1139
                        default: {
 
1140
                        break; }
 
1141
 
 
1142
                }
 
1143
        }
 
1144
        if (ndr_flags & NDR_BUFFERS) {
 
1145
                int level = ndr_push_get_switch_value(ndr, r);
 
1146
                switch (level) {
 
1147
                        case 0:
 
1148
                                if (r->ctr0) {
 
1149
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
1150
                                }
 
1151
                        break;
 
1152
 
 
1153
                        case 1:
 
1154
                                if (r->ctr1) {
 
1155
                                        NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
1156
                                }
 
1157
                        break;
 
1158
 
 
1159
                        default:
 
1160
                        break;
 
1161
 
 
1162
                }
 
1163
        }
 
1164
        return NDR_ERR_SUCCESS;
 
1165
}
 
1166
 
 
1167
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetCharDevQCtr *r)
 
1168
{
 
1169
        int level;
 
1170
        uint32_t _level;
 
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);
 
1178
                }
 
1179
                switch (level) {
 
1180
                        case 0: {
 
1181
                                uint32_t _ptr_ctr0;
 
1182
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
 
1183
                                if (_ptr_ctr0) {
 
1184
                                        NDR_PULL_ALLOC(ndr, r->ctr0);
 
1185
                                } else {
 
1186
                                        r->ctr0 = NULL;
 
1187
                                }
 
1188
                        break; }
 
1189
 
 
1190
                        case 1: {
 
1191
                                uint32_t _ptr_ctr1;
 
1192
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
 
1193
                                if (_ptr_ctr1) {
 
1194
                                        NDR_PULL_ALLOC(ndr, r->ctr1);
 
1195
                                } else {
 
1196
                                        r->ctr1 = NULL;
 
1197
                                }
 
1198
                        break; }
 
1199
 
 
1200
                        default: {
 
1201
                        break; }
 
1202
 
 
1203
                }
 
1204
        }
 
1205
        if (ndr_flags & NDR_BUFFERS) {
 
1206
                switch (level) {
 
1207
                        case 0:
 
1208
                                if (r->ctr0) {
 
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);
 
1213
                                }
 
1214
                        break;
 
1215
 
 
1216
                        case 1:
 
1217
                                if (r->ctr1) {
 
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);
 
1222
                                }
 
1223
                        break;
 
1224
 
 
1225
                        default:
 
1226
                        break;
 
1227
 
 
1228
                }
 
1229
        }
 
1230
        return NDR_ERR_SUCCESS;
 
1231
}
 
1232
 
 
1233
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetCharDevQCtr *r)
 
1234
{
 
1235
        int level;
 
1236
        level = ndr_print_get_switch_value(ndr, r);
 
1237
        ndr_print_union(ndr, name, level, "srvsvc_NetCharDevQCtr");
 
1238
        switch (level) {
 
1239
                case 0:
 
1240
                        ndr_print_ptr(ndr, "ctr0", r->ctr0);
 
1241
                        ndr->depth++;
 
1242
                        if (r->ctr0) {
 
1243
                                ndr_print_srvsvc_NetCharDevQCtr0(ndr, "ctr0", r->ctr0);
 
1244
                        }
 
1245
                        ndr->depth--;
 
1246
                break;
 
1247
 
 
1248
                case 1:
 
1249
                        ndr_print_ptr(ndr, "ctr1", r->ctr1);
 
1250
                        ndr->depth++;
 
1251
                        if (r->ctr1) {
 
1252
                                ndr_print_srvsvc_NetCharDevQCtr1(ndr, "ctr1", r->ctr1);
 
1253
                        }
 
1254
                        ndr->depth--;
 
1255
                break;
 
1256
 
 
1257
                default:
 
1258
                break;
 
1259
 
 
1260
        }
 
1261
}
 
1262
 
 
1263
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetCharDevQInfoCtr *r)
 
1264
{
 
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));
 
1270
        }
 
1271
        if (ndr_flags & NDR_BUFFERS) {
 
1272
                NDR_CHECK(ndr_push_srvsvc_NetCharDevQCtr(ndr, NDR_BUFFERS, &r->ctr));
 
1273
        }
 
1274
        return NDR_ERR_SUCCESS;
 
1275
}
 
1276
 
 
1277
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetCharDevQInfoCtr *r)
 
1278
{
 
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));
 
1284
        }
 
1285
        if (ndr_flags & NDR_BUFFERS) {
 
1286
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevQCtr(ndr, NDR_BUFFERS, &r->ctr));
 
1287
        }
 
1288
        return NDR_ERR_SUCCESS;
 
1289
}
 
1290
 
 
1291
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetCharDevQInfoCtr *r)
 
1292
{
 
1293
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQInfoCtr");
 
1294
        ndr->depth++;
 
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);
 
1298
        ndr->depth--;
 
1299
}
 
1300
 
 
1301
static enum ndr_err_code ndr_push_srvsvc_NetConnInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnInfo0 *r)
 
1302
{
 
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));
 
1306
        }
 
1307
        if (ndr_flags & NDR_BUFFERS) {
 
1308
        }
 
1309
        return NDR_ERR_SUCCESS;
 
1310
}
 
1311
 
 
1312
static enum ndr_err_code ndr_pull_srvsvc_NetConnInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnInfo0 *r)
 
1313
{
 
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));
 
1317
        }
 
1318
        if (ndr_flags & NDR_BUFFERS) {
 
1319
        }
 
1320
        return NDR_ERR_SUCCESS;
 
1321
}
 
1322
 
 
1323
_PUBLIC_ void ndr_print_srvsvc_NetConnInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnInfo0 *r)
 
1324
{
 
1325
        ndr_print_struct(ndr, name, "srvsvc_NetConnInfo0");
 
1326
        ndr->depth++;
 
1327
        ndr_print_uint32(ndr, "conn_id", r->conn_id);
 
1328
        ndr->depth--;
 
1329
}
 
1330
 
 
1331
static enum ndr_err_code ndr_push_srvsvc_NetConnCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnCtr0 *r)
 
1332
{
 
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));
 
1338
        }
 
1339
        if (ndr_flags & NDR_BUFFERS) {
 
1340
                if (r->array) {
 
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]));
 
1344
                        }
 
1345
                }
 
1346
        }
 
1347
        return NDR_ERR_SUCCESS;
 
1348
}
 
1349
 
 
1350
static enum ndr_err_code ndr_pull_srvsvc_NetConnCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnCtr0 *r)
 
1351
{
 
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));
 
1360
                if (_ptr_array) {
 
1361
                        NDR_PULL_ALLOC(ndr, r->array);
 
1362
                } else {
 
1363
                        r->array = NULL;
 
1364
                }
 
1365
        }
 
1366
        if (ndr_flags & NDR_BUFFERS) {
 
1367
                if (r->array) {
 
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]));
 
1376
                        }
 
1377
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
1378
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
1379
                }
 
1380
                if (r->array) {
 
1381
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
1382
                }
 
1383
        }
 
1384
        return NDR_ERR_SUCCESS;
 
1385
}
 
1386
 
 
1387
_PUBLIC_ void ndr_print_srvsvc_NetConnCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnCtr0 *r)
 
1388
{
 
1389
        uint32_t cntr_array_1;
 
1390
        ndr_print_struct(ndr, name, "srvsvc_NetConnCtr0");
 
1391
        ndr->depth++;
 
1392
        ndr_print_uint32(ndr, "count", r->count);
 
1393
        ndr_print_ptr(ndr, "array", r->array);
 
1394
        ndr->depth++;
 
1395
        if (r->array) {
 
1396
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
1397
                ndr->depth++;
 
1398
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
1399
                        char *idx_1=NULL;
 
1400
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
1401
                                ndr_print_srvsvc_NetConnInfo0(ndr, "array", &r->array[cntr_array_1]);
 
1402
                                free(idx_1);
 
1403
                        }
 
1404
                }
 
1405
                ndr->depth--;
 
1406
        }
 
1407
        ndr->depth--;
 
1408
        ndr->depth--;
 
1409
}
 
1410
 
 
1411
static enum ndr_err_code ndr_push_srvsvc_NetConnInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnInfo1 *r)
 
1412
{
 
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));
 
1422
        }
 
1423
        if (ndr_flags & NDR_BUFFERS) {
 
1424
                if (r->user) {
 
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));
 
1429
                }
 
1430
                if (r->share) {
 
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));
 
1435
                }
 
1436
        }
 
1437
        return NDR_ERR_SUCCESS;
 
1438
}
 
1439
 
 
1440
static enum ndr_err_code ndr_pull_srvsvc_NetConnInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnInfo1 *r)
 
1441
{
 
1442
        uint32_t _ptr_user;
 
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));
 
1454
                if (_ptr_user) {
 
1455
                        NDR_PULL_ALLOC(ndr, r->user);
 
1456
                } else {
 
1457
                        r->user = NULL;
 
1458
                }
 
1459
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_share));
 
1460
                if (_ptr_share) {
 
1461
                        NDR_PULL_ALLOC(ndr, r->share);
 
1462
                } else {
 
1463
                        r->share = NULL;
 
1464
                }
 
1465
        }
 
1466
        if (ndr_flags & NDR_BUFFERS) {
 
1467
                if (r->user) {
 
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));
 
1474
                        }
 
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);
 
1478
                }
 
1479
                if (r->share) {
 
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));
 
1486
                        }
 
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);
 
1490
                }
 
1491
        }
 
1492
        return NDR_ERR_SUCCESS;
 
1493
}
 
1494
 
 
1495
_PUBLIC_ void ndr_print_srvsvc_NetConnInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnInfo1 *r)
 
1496
{
 
1497
        ndr_print_struct(ndr, name, "srvsvc_NetConnInfo1");
 
1498
        ndr->depth++;
 
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);
 
1505
        ndr->depth++;
 
1506
        if (r->user) {
 
1507
                ndr_print_string(ndr, "user", r->user);
 
1508
        }
 
1509
        ndr->depth--;
 
1510
        ndr_print_ptr(ndr, "share", r->share);
 
1511
        ndr->depth++;
 
1512
        if (r->share) {
 
1513
                ndr_print_string(ndr, "share", r->share);
 
1514
        }
 
1515
        ndr->depth--;
 
1516
        ndr->depth--;
 
1517
}
 
1518
 
 
1519
static enum ndr_err_code ndr_push_srvsvc_NetConnCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnCtr1 *r)
 
1520
{
 
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));
 
1526
        }
 
1527
        if (ndr_flags & NDR_BUFFERS) {
 
1528
                if (r->array) {
 
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]));
 
1532
                        }
 
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]));
 
1535
                        }
 
1536
                }
 
1537
        }
 
1538
        return NDR_ERR_SUCCESS;
 
1539
}
 
1540
 
 
1541
static enum ndr_err_code ndr_pull_srvsvc_NetConnCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnCtr1 *r)
 
1542
{
 
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));
 
1551
                if (_ptr_array) {
 
1552
                        NDR_PULL_ALLOC(ndr, r->array);
 
1553
                } else {
 
1554
                        r->array = NULL;
 
1555
                }
 
1556
        }
 
1557
        if (ndr_flags & NDR_BUFFERS) {
 
1558
                if (r->array) {
 
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]));
 
1567
                        }
 
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]));
 
1570
                        }
 
1571
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
1572
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
1573
                }
 
1574
                if (r->array) {
 
1575
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
1576
                }
 
1577
        }
 
1578
        return NDR_ERR_SUCCESS;
 
1579
}
 
1580
 
 
1581
_PUBLIC_ void ndr_print_srvsvc_NetConnCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnCtr1 *r)
 
1582
{
 
1583
        uint32_t cntr_array_1;
 
1584
        ndr_print_struct(ndr, name, "srvsvc_NetConnCtr1");
 
1585
        ndr->depth++;
 
1586
        ndr_print_uint32(ndr, "count", r->count);
 
1587
        ndr_print_ptr(ndr, "array", r->array);
 
1588
        ndr->depth++;
 
1589
        if (r->array) {
 
1590
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
1591
                ndr->depth++;
 
1592
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
1593
                        char *idx_1=NULL;
 
1594
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
1595
                                ndr_print_srvsvc_NetConnInfo1(ndr, "array", &r->array[cntr_array_1]);
 
1596
                                free(idx_1);
 
1597
                        }
 
1598
                }
 
1599
                ndr->depth--;
 
1600
        }
 
1601
        ndr->depth--;
 
1602
        ndr->depth--;
 
1603
}
 
1604
 
 
1605
static enum ndr_err_code ndr_push_srvsvc_NetConnCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetConnCtr *r)
 
1606
{
 
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));
 
1610
                switch (level) {
 
1611
                        case 0: {
 
1612
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
 
1613
                        break; }
 
1614
 
 
1615
                        case 1: {
 
1616
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
 
1617
                        break; }
 
1618
 
 
1619
                        default: {
 
1620
                        break; }
 
1621
 
 
1622
                }
 
1623
        }
 
1624
        if (ndr_flags & NDR_BUFFERS) {
 
1625
                int level = ndr_push_get_switch_value(ndr, r);
 
1626
                switch (level) {
 
1627
                        case 0:
 
1628
                                if (r->ctr0) {
 
1629
                                        NDR_CHECK(ndr_push_srvsvc_NetConnCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
1630
                                }
 
1631
                        break;
 
1632
 
 
1633
                        case 1:
 
1634
                                if (r->ctr1) {
 
1635
                                        NDR_CHECK(ndr_push_srvsvc_NetConnCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
1636
                                }
 
1637
                        break;
 
1638
 
 
1639
                        default:
 
1640
                        break;
 
1641
 
 
1642
                }
 
1643
        }
 
1644
        return NDR_ERR_SUCCESS;
 
1645
}
 
1646
 
 
1647
static enum ndr_err_code ndr_pull_srvsvc_NetConnCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetConnCtr *r)
 
1648
{
 
1649
        int level;
 
1650
        uint32_t _level;
 
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);
 
1658
                }
 
1659
                switch (level) {
 
1660
                        case 0: {
 
1661
                                uint32_t _ptr_ctr0;
 
1662
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
 
1663
                                if (_ptr_ctr0) {
 
1664
                                        NDR_PULL_ALLOC(ndr, r->ctr0);
 
1665
                                } else {
 
1666
                                        r->ctr0 = NULL;
 
1667
                                }
 
1668
                        break; }
 
1669
 
 
1670
                        case 1: {
 
1671
                                uint32_t _ptr_ctr1;
 
1672
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
 
1673
                                if (_ptr_ctr1) {
 
1674
                                        NDR_PULL_ALLOC(ndr, r->ctr1);
 
1675
                                } else {
 
1676
                                        r->ctr1 = NULL;
 
1677
                                }
 
1678
                        break; }
 
1679
 
 
1680
                        default: {
 
1681
                        break; }
 
1682
 
 
1683
                }
 
1684
        }
 
1685
        if (ndr_flags & NDR_BUFFERS) {
 
1686
                switch (level) {
 
1687
                        case 0:
 
1688
                                if (r->ctr0) {
 
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);
 
1693
                                }
 
1694
                        break;
 
1695
 
 
1696
                        case 1:
 
1697
                                if (r->ctr1) {
 
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);
 
1702
                                }
 
1703
                        break;
 
1704
 
 
1705
                        default:
 
1706
                        break;
 
1707
 
 
1708
                }
 
1709
        }
 
1710
        return NDR_ERR_SUCCESS;
 
1711
}
 
1712
 
 
1713
_PUBLIC_ void ndr_print_srvsvc_NetConnCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetConnCtr *r)
 
1714
{
 
1715
        int level;
 
1716
        level = ndr_print_get_switch_value(ndr, r);
 
1717
        ndr_print_union(ndr, name, level, "srvsvc_NetConnCtr");
 
1718
        switch (level) {
 
1719
                case 0:
 
1720
                        ndr_print_ptr(ndr, "ctr0", r->ctr0);
 
1721
                        ndr->depth++;
 
1722
                        if (r->ctr0) {
 
1723
                                ndr_print_srvsvc_NetConnCtr0(ndr, "ctr0", r->ctr0);
 
1724
                        }
 
1725
                        ndr->depth--;
 
1726
                break;
 
1727
 
 
1728
                case 1:
 
1729
                        ndr_print_ptr(ndr, "ctr1", r->ctr1);
 
1730
                        ndr->depth++;
 
1731
                        if (r->ctr1) {
 
1732
                                ndr_print_srvsvc_NetConnCtr1(ndr, "ctr1", r->ctr1);
 
1733
                        }
 
1734
                        ndr->depth--;
 
1735
                break;
 
1736
 
 
1737
                default:
 
1738
                break;
 
1739
 
 
1740
        }
 
1741
}
 
1742
 
 
1743
static enum ndr_err_code ndr_push_srvsvc_NetConnInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetConnInfoCtr *r)
 
1744
{
 
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));
 
1750
        }
 
1751
        if (ndr_flags & NDR_BUFFERS) {
 
1752
                NDR_CHECK(ndr_push_srvsvc_NetConnCtr(ndr, NDR_BUFFERS, &r->ctr));
 
1753
        }
 
1754
        return NDR_ERR_SUCCESS;
 
1755
}
 
1756
 
 
1757
static enum ndr_err_code ndr_pull_srvsvc_NetConnInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetConnInfoCtr *r)
 
1758
{
 
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));
 
1764
        }
 
1765
        if (ndr_flags & NDR_BUFFERS) {
 
1766
                NDR_CHECK(ndr_pull_srvsvc_NetConnCtr(ndr, NDR_BUFFERS, &r->ctr));
 
1767
        }
 
1768
        return NDR_ERR_SUCCESS;
 
1769
}
 
1770
 
 
1771
_PUBLIC_ void ndr_print_srvsvc_NetConnInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetConnInfoCtr *r)
 
1772
{
 
1773
        ndr_print_struct(ndr, name, "srvsvc_NetConnInfoCtr");
 
1774
        ndr->depth++;
 
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);
 
1778
        ndr->depth--;
 
1779
}
 
1780
 
 
1781
static enum ndr_err_code ndr_push_srvsvc_NetFileInfo2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileInfo2 *r)
 
1782
{
 
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));
 
1786
        }
 
1787
        if (ndr_flags & NDR_BUFFERS) {
 
1788
        }
 
1789
        return NDR_ERR_SUCCESS;
 
1790
}
 
1791
 
 
1792
static enum ndr_err_code ndr_pull_srvsvc_NetFileInfo2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileInfo2 *r)
 
1793
{
 
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));
 
1797
        }
 
1798
        if (ndr_flags & NDR_BUFFERS) {
 
1799
        }
 
1800
        return NDR_ERR_SUCCESS;
 
1801
}
 
1802
 
 
1803
_PUBLIC_ void ndr_print_srvsvc_NetFileInfo2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileInfo2 *r)
 
1804
{
 
1805
        ndr_print_struct(ndr, name, "srvsvc_NetFileInfo2");
 
1806
        ndr->depth++;
 
1807
        ndr_print_uint32(ndr, "fid", r->fid);
 
1808
        ndr->depth--;
 
1809
}
 
1810
 
 
1811
static enum ndr_err_code ndr_push_srvsvc_NetFileCtr2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileCtr2 *r)
 
1812
{
 
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));
 
1818
        }
 
1819
        if (ndr_flags & NDR_BUFFERS) {
 
1820
                if (r->array) {
 
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]));
 
1824
                        }
 
1825
                }
 
1826
        }
 
1827
        return NDR_ERR_SUCCESS;
 
1828
}
 
1829
 
 
1830
static enum ndr_err_code ndr_pull_srvsvc_NetFileCtr2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileCtr2 *r)
 
1831
{
 
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));
 
1840
                if (_ptr_array) {
 
1841
                        NDR_PULL_ALLOC(ndr, r->array);
 
1842
                } else {
 
1843
                        r->array = NULL;
 
1844
                }
 
1845
        }
 
1846
        if (ndr_flags & NDR_BUFFERS) {
 
1847
                if (r->array) {
 
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]));
 
1856
                        }
 
1857
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
1858
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
1859
                }
 
1860
                if (r->array) {
 
1861
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
1862
                }
 
1863
        }
 
1864
        return NDR_ERR_SUCCESS;
 
1865
}
 
1866
 
 
1867
_PUBLIC_ void ndr_print_srvsvc_NetFileCtr2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileCtr2 *r)
 
1868
{
 
1869
        uint32_t cntr_array_1;
 
1870
        ndr_print_struct(ndr, name, "srvsvc_NetFileCtr2");
 
1871
        ndr->depth++;
 
1872
        ndr_print_uint32(ndr, "count", r->count);
 
1873
        ndr_print_ptr(ndr, "array", r->array);
 
1874
        ndr->depth++;
 
1875
        if (r->array) {
 
1876
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
1877
                ndr->depth++;
 
1878
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
1879
                        char *idx_1=NULL;
 
1880
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
1881
                                ndr_print_srvsvc_NetFileInfo2(ndr, "array", &r->array[cntr_array_1]);
 
1882
                                free(idx_1);
 
1883
                        }
 
1884
                }
 
1885
                ndr->depth--;
 
1886
        }
 
1887
        ndr->depth--;
 
1888
        ndr->depth--;
 
1889
}
 
1890
 
 
1891
static enum ndr_err_code ndr_push_srvsvc_NetFileInfo3(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileInfo3 *r)
 
1892
{
 
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));
 
1900
        }
 
1901
        if (ndr_flags & NDR_BUFFERS) {
 
1902
                if (r->path) {
 
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));
 
1907
                }
 
1908
                if (r->user) {
 
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));
 
1913
                }
 
1914
        }
 
1915
        return NDR_ERR_SUCCESS;
 
1916
}
 
1917
 
 
1918
static enum ndr_err_code ndr_pull_srvsvc_NetFileInfo3(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileInfo3 *r)
 
1919
{
 
1920
        uint32_t _ptr_path;
 
1921
        TALLOC_CTX *_mem_save_path_0;
 
1922
        uint32_t _ptr_user;
 
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));
 
1930
                if (_ptr_path) {
 
1931
                        NDR_PULL_ALLOC(ndr, r->path);
 
1932
                } else {
 
1933
                        r->path = NULL;
 
1934
                }
 
1935
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
1936
                if (_ptr_user) {
 
1937
                        NDR_PULL_ALLOC(ndr, r->user);
 
1938
                } else {
 
1939
                        r->user = NULL;
 
1940
                }
 
1941
        }
 
1942
        if (ndr_flags & NDR_BUFFERS) {
 
1943
                if (r->path) {
 
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));
 
1950
                        }
 
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);
 
1954
                }
 
1955
                if (r->user) {
 
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));
 
1962
                        }
 
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);
 
1966
                }
 
1967
        }
 
1968
        return NDR_ERR_SUCCESS;
 
1969
}
 
1970
 
 
1971
_PUBLIC_ void ndr_print_srvsvc_NetFileInfo3(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileInfo3 *r)
 
1972
{
 
1973
        ndr_print_struct(ndr, name, "srvsvc_NetFileInfo3");
 
1974
        ndr->depth++;
 
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);
 
1979
        ndr->depth++;
 
1980
        if (r->path) {
 
1981
                ndr_print_string(ndr, "path", r->path);
 
1982
        }
 
1983
        ndr->depth--;
 
1984
        ndr_print_ptr(ndr, "user", r->user);
 
1985
        ndr->depth++;
 
1986
        if (r->user) {
 
1987
                ndr_print_string(ndr, "user", r->user);
 
1988
        }
 
1989
        ndr->depth--;
 
1990
        ndr->depth--;
 
1991
}
 
1992
 
 
1993
static enum ndr_err_code ndr_push_srvsvc_NetFileCtr3(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileCtr3 *r)
 
1994
{
 
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));
 
2000
        }
 
2001
        if (ndr_flags & NDR_BUFFERS) {
 
2002
                if (r->array) {
 
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]));
 
2006
                        }
 
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]));
 
2009
                        }
 
2010
                }
 
2011
        }
 
2012
        return NDR_ERR_SUCCESS;
 
2013
}
 
2014
 
 
2015
static enum ndr_err_code ndr_pull_srvsvc_NetFileCtr3(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileCtr3 *r)
 
2016
{
 
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));
 
2025
                if (_ptr_array) {
 
2026
                        NDR_PULL_ALLOC(ndr, r->array);
 
2027
                } else {
 
2028
                        r->array = NULL;
 
2029
                }
 
2030
        }
 
2031
        if (ndr_flags & NDR_BUFFERS) {
 
2032
                if (r->array) {
 
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]));
 
2041
                        }
 
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]));
 
2044
                        }
 
2045
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
2046
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
2047
                }
 
2048
                if (r->array) {
 
2049
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
2050
                }
 
2051
        }
 
2052
        return NDR_ERR_SUCCESS;
 
2053
}
 
2054
 
 
2055
_PUBLIC_ void ndr_print_srvsvc_NetFileCtr3(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileCtr3 *r)
 
2056
{
 
2057
        uint32_t cntr_array_1;
 
2058
        ndr_print_struct(ndr, name, "srvsvc_NetFileCtr3");
 
2059
        ndr->depth++;
 
2060
        ndr_print_uint32(ndr, "count", r->count);
 
2061
        ndr_print_ptr(ndr, "array", r->array);
 
2062
        ndr->depth++;
 
2063
        if (r->array) {
 
2064
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
2065
                ndr->depth++;
 
2066
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
2067
                        char *idx_1=NULL;
 
2068
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
2069
                                ndr_print_srvsvc_NetFileInfo3(ndr, "array", &r->array[cntr_array_1]);
 
2070
                                free(idx_1);
 
2071
                        }
 
2072
                }
 
2073
                ndr->depth--;
 
2074
        }
 
2075
        ndr->depth--;
 
2076
        ndr->depth--;
 
2077
}
 
2078
 
 
2079
static enum ndr_err_code ndr_push_srvsvc_NetFileInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetFileInfo *r)
 
2080
{
 
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));
 
2084
                switch (level) {
 
2085
                        case 2: {
 
2086
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
 
2087
                        break; }
 
2088
 
 
2089
                        case 3: {
 
2090
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info3));
 
2091
                        break; }
 
2092
 
 
2093
                        default: {
 
2094
                        break; }
 
2095
 
 
2096
                }
 
2097
        }
 
2098
        if (ndr_flags & NDR_BUFFERS) {
 
2099
                int level = ndr_push_get_switch_value(ndr, r);
 
2100
                switch (level) {
 
2101
                        case 2:
 
2102
                                if (r->info2) {
 
2103
                                        NDR_CHECK(ndr_push_srvsvc_NetFileInfo2(ndr, NDR_SCALARS, r->info2));
 
2104
                                }
 
2105
                        break;
 
2106
 
 
2107
                        case 3:
 
2108
                                if (r->info3) {
 
2109
                                        NDR_CHECK(ndr_push_srvsvc_NetFileInfo3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
 
2110
                                }
 
2111
                        break;
 
2112
 
 
2113
                        default:
 
2114
                        break;
 
2115
 
 
2116
                }
 
2117
        }
 
2118
        return NDR_ERR_SUCCESS;
 
2119
}
 
2120
 
 
2121
static enum ndr_err_code ndr_pull_srvsvc_NetFileInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetFileInfo *r)
 
2122
{
 
2123
        int level;
 
2124
        uint32_t _level;
 
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);
 
2132
                }
 
2133
                switch (level) {
 
2134
                        case 2: {
 
2135
                                uint32_t _ptr_info2;
 
2136
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
 
2137
                                if (_ptr_info2) {
 
2138
                                        NDR_PULL_ALLOC(ndr, r->info2);
 
2139
                                } else {
 
2140
                                        r->info2 = NULL;
 
2141
                                }
 
2142
                        break; }
 
2143
 
 
2144
                        case 3: {
 
2145
                                uint32_t _ptr_info3;
 
2146
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info3));
 
2147
                                if (_ptr_info3) {
 
2148
                                        NDR_PULL_ALLOC(ndr, r->info3);
 
2149
                                } else {
 
2150
                                        r->info3 = NULL;
 
2151
                                }
 
2152
                        break; }
 
2153
 
 
2154
                        default: {
 
2155
                        break; }
 
2156
 
 
2157
                }
 
2158
        }
 
2159
        if (ndr_flags & NDR_BUFFERS) {
 
2160
                switch (level) {
 
2161
                        case 2:
 
2162
                                if (r->info2) {
 
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);
 
2167
                                }
 
2168
                        break;
 
2169
 
 
2170
                        case 3:
 
2171
                                if (r->info3) {
 
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);
 
2176
                                }
 
2177
                        break;
 
2178
 
 
2179
                        default:
 
2180
                        break;
 
2181
 
 
2182
                }
 
2183
        }
 
2184
        return NDR_ERR_SUCCESS;
 
2185
}
 
2186
 
 
2187
_PUBLIC_ void ndr_print_srvsvc_NetFileInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetFileInfo *r)
 
2188
{
 
2189
        int level;
 
2190
        level = ndr_print_get_switch_value(ndr, r);
 
2191
        ndr_print_union(ndr, name, level, "srvsvc_NetFileInfo");
 
2192
        switch (level) {
 
2193
                case 2:
 
2194
                        ndr_print_ptr(ndr, "info2", r->info2);
 
2195
                        ndr->depth++;
 
2196
                        if (r->info2) {
 
2197
                                ndr_print_srvsvc_NetFileInfo2(ndr, "info2", r->info2);
 
2198
                        }
 
2199
                        ndr->depth--;
 
2200
                break;
 
2201
 
 
2202
                case 3:
 
2203
                        ndr_print_ptr(ndr, "info3", r->info3);
 
2204
                        ndr->depth++;
 
2205
                        if (r->info3) {
 
2206
                                ndr_print_srvsvc_NetFileInfo3(ndr, "info3", r->info3);
 
2207
                        }
 
2208
                        ndr->depth--;
 
2209
                break;
 
2210
 
 
2211
                default:
 
2212
                break;
 
2213
 
 
2214
        }
 
2215
}
 
2216
 
 
2217
static enum ndr_err_code ndr_push_srvsvc_NetFileCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetFileCtr *r)
 
2218
{
 
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));
 
2222
                switch (level) {
 
2223
                        case 2: {
 
2224
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
 
2225
                        break; }
 
2226
 
 
2227
                        case 3: {
 
2228
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr3));
 
2229
                        break; }
 
2230
 
 
2231
                        default: {
 
2232
                        break; }
 
2233
 
 
2234
                }
 
2235
        }
 
2236
        if (ndr_flags & NDR_BUFFERS) {
 
2237
                int level = ndr_push_get_switch_value(ndr, r);
 
2238
                switch (level) {
 
2239
                        case 2:
 
2240
                                if (r->ctr2) {
 
2241
                                        NDR_CHECK(ndr_push_srvsvc_NetFileCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
2242
                                }
 
2243
                        break;
 
2244
 
 
2245
                        case 3:
 
2246
                                if (r->ctr3) {
 
2247
                                        NDR_CHECK(ndr_push_srvsvc_NetFileCtr3(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr3));
 
2248
                                }
 
2249
                        break;
 
2250
 
 
2251
                        default:
 
2252
                        break;
 
2253
 
 
2254
                }
 
2255
        }
 
2256
        return NDR_ERR_SUCCESS;
 
2257
}
 
2258
 
 
2259
static enum ndr_err_code ndr_pull_srvsvc_NetFileCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetFileCtr *r)
 
2260
{
 
2261
        int level;
 
2262
        uint32_t _level;
 
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);
 
2270
                }
 
2271
                switch (level) {
 
2272
                        case 2: {
 
2273
                                uint32_t _ptr_ctr2;
 
2274
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
 
2275
                                if (_ptr_ctr2) {
 
2276
                                        NDR_PULL_ALLOC(ndr, r->ctr2);
 
2277
                                } else {
 
2278
                                        r->ctr2 = NULL;
 
2279
                                }
 
2280
                        break; }
 
2281
 
 
2282
                        case 3: {
 
2283
                                uint32_t _ptr_ctr3;
 
2284
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr3));
 
2285
                                if (_ptr_ctr3) {
 
2286
                                        NDR_PULL_ALLOC(ndr, r->ctr3);
 
2287
                                } else {
 
2288
                                        r->ctr3 = NULL;
 
2289
                                }
 
2290
                        break; }
 
2291
 
 
2292
                        default: {
 
2293
                        break; }
 
2294
 
 
2295
                }
 
2296
        }
 
2297
        if (ndr_flags & NDR_BUFFERS) {
 
2298
                switch (level) {
 
2299
                        case 2:
 
2300
                                if (r->ctr2) {
 
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);
 
2305
                                }
 
2306
                        break;
 
2307
 
 
2308
                        case 3:
 
2309
                                if (r->ctr3) {
 
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);
 
2314
                                }
 
2315
                        break;
 
2316
 
 
2317
                        default:
 
2318
                        break;
 
2319
 
 
2320
                }
 
2321
        }
 
2322
        return NDR_ERR_SUCCESS;
 
2323
}
 
2324
 
 
2325
_PUBLIC_ void ndr_print_srvsvc_NetFileCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetFileCtr *r)
 
2326
{
 
2327
        int level;
 
2328
        level = ndr_print_get_switch_value(ndr, r);
 
2329
        ndr_print_union(ndr, name, level, "srvsvc_NetFileCtr");
 
2330
        switch (level) {
 
2331
                case 2:
 
2332
                        ndr_print_ptr(ndr, "ctr2", r->ctr2);
 
2333
                        ndr->depth++;
 
2334
                        if (r->ctr2) {
 
2335
                                ndr_print_srvsvc_NetFileCtr2(ndr, "ctr2", r->ctr2);
 
2336
                        }
 
2337
                        ndr->depth--;
 
2338
                break;
 
2339
 
 
2340
                case 3:
 
2341
                        ndr_print_ptr(ndr, "ctr3", r->ctr3);
 
2342
                        ndr->depth++;
 
2343
                        if (r->ctr3) {
 
2344
                                ndr_print_srvsvc_NetFileCtr3(ndr, "ctr3", r->ctr3);
 
2345
                        }
 
2346
                        ndr->depth--;
 
2347
                break;
 
2348
 
 
2349
                default:
 
2350
                break;
 
2351
 
 
2352
        }
 
2353
}
 
2354
 
 
2355
static enum ndr_err_code ndr_push_srvsvc_NetFileInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetFileInfoCtr *r)
 
2356
{
 
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));
 
2362
        }
 
2363
        if (ndr_flags & NDR_BUFFERS) {
 
2364
                NDR_CHECK(ndr_push_srvsvc_NetFileCtr(ndr, NDR_BUFFERS, &r->ctr));
 
2365
        }
 
2366
        return NDR_ERR_SUCCESS;
 
2367
}
 
2368
 
 
2369
static enum ndr_err_code ndr_pull_srvsvc_NetFileInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetFileInfoCtr *r)
 
2370
{
 
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));
 
2376
        }
 
2377
        if (ndr_flags & NDR_BUFFERS) {
 
2378
                NDR_CHECK(ndr_pull_srvsvc_NetFileCtr(ndr, NDR_BUFFERS, &r->ctr));
 
2379
        }
 
2380
        return NDR_ERR_SUCCESS;
 
2381
}
 
2382
 
 
2383
_PUBLIC_ void ndr_print_srvsvc_NetFileInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetFileInfoCtr *r)
 
2384
{
 
2385
        ndr_print_struct(ndr, name, "srvsvc_NetFileInfoCtr");
 
2386
        ndr->depth++;
 
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);
 
2390
        ndr->depth--;
 
2391
}
 
2392
 
 
2393
static enum ndr_err_code ndr_push_srvsvc_NetSessInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo0 *r)
 
2394
{
 
2395
        if (ndr_flags & NDR_SCALARS) {
 
2396
                NDR_CHECK(ndr_push_align(ndr, 4));
 
2397
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->client));
 
2398
        }
 
2399
        if (ndr_flags & NDR_BUFFERS) {
 
2400
                if (r->client) {
 
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));
 
2405
                }
 
2406
        }
 
2407
        return NDR_ERR_SUCCESS;
 
2408
}
 
2409
 
 
2410
static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo0 *r)
 
2411
{
 
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));
 
2417
                if (_ptr_client) {
 
2418
                        NDR_PULL_ALLOC(ndr, r->client);
 
2419
                } else {
 
2420
                        r->client = NULL;
 
2421
                }
 
2422
        }
 
2423
        if (ndr_flags & NDR_BUFFERS) {
 
2424
                if (r->client) {
 
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));
 
2431
                        }
 
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);
 
2435
                }
 
2436
        }
 
2437
        return NDR_ERR_SUCCESS;
 
2438
}
 
2439
 
 
2440
_PUBLIC_ void ndr_print_srvsvc_NetSessInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo0 *r)
 
2441
{
 
2442
        ndr_print_struct(ndr, name, "srvsvc_NetSessInfo0");
 
2443
        ndr->depth++;
 
2444
        ndr_print_ptr(ndr, "client", r->client);
 
2445
        ndr->depth++;
 
2446
        if (r->client) {
 
2447
                ndr_print_string(ndr, "client", r->client);
 
2448
        }
 
2449
        ndr->depth--;
 
2450
        ndr->depth--;
 
2451
}
 
2452
 
 
2453
static enum ndr_err_code ndr_push_srvsvc_NetSessCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr0 *r)
 
2454
{
 
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));
 
2460
        }
 
2461
        if (ndr_flags & NDR_BUFFERS) {
 
2462
                if (r->array) {
 
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]));
 
2466
                        }
 
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]));
 
2469
                        }
 
2470
                }
 
2471
        }
 
2472
        return NDR_ERR_SUCCESS;
 
2473
}
 
2474
 
 
2475
static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr0 *r)
 
2476
{
 
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));
 
2485
                if (_ptr_array) {
 
2486
                        NDR_PULL_ALLOC(ndr, r->array);
 
2487
                } else {
 
2488
                        r->array = NULL;
 
2489
                }
 
2490
        }
 
2491
        if (ndr_flags & NDR_BUFFERS) {
 
2492
                if (r->array) {
 
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]));
 
2501
                        }
 
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]));
 
2504
                        }
 
2505
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
2506
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
2507
                }
 
2508
                if (r->array) {
 
2509
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
2510
                }
 
2511
        }
 
2512
        return NDR_ERR_SUCCESS;
 
2513
}
 
2514
 
 
2515
_PUBLIC_ void ndr_print_srvsvc_NetSessCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr0 *r)
 
2516
{
 
2517
        uint32_t cntr_array_1;
 
2518
        ndr_print_struct(ndr, name, "srvsvc_NetSessCtr0");
 
2519
        ndr->depth++;
 
2520
        ndr_print_uint32(ndr, "count", r->count);
 
2521
        ndr_print_ptr(ndr, "array", r->array);
 
2522
        ndr->depth++;
 
2523
        if (r->array) {
 
2524
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
2525
                ndr->depth++;
 
2526
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
2527
                        char *idx_1=NULL;
 
2528
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
2529
                                ndr_print_srvsvc_NetSessInfo0(ndr, "array", &r->array[cntr_array_1]);
 
2530
                                free(idx_1);
 
2531
                        }
 
2532
                }
 
2533
                ndr->depth--;
 
2534
        }
 
2535
        ndr->depth--;
 
2536
        ndr->depth--;
 
2537
}
 
2538
 
 
2539
static enum ndr_err_code ndr_push_srvsvc_NetSessInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo1 *r)
 
2540
{
 
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));
 
2549
        }
 
2550
        if (ndr_flags & NDR_BUFFERS) {
 
2551
                if (r->client) {
 
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));
 
2556
                }
 
2557
                if (r->user) {
 
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));
 
2562
                }
 
2563
        }
 
2564
        return NDR_ERR_SUCCESS;
 
2565
}
 
2566
 
 
2567
static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo1 *r)
 
2568
{
 
2569
        uint32_t _ptr_client;
 
2570
        TALLOC_CTX *_mem_save_client_0;
 
2571
        uint32_t _ptr_user;
 
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));
 
2576
                if (_ptr_client) {
 
2577
                        NDR_PULL_ALLOC(ndr, r->client);
 
2578
                } else {
 
2579
                        r->client = NULL;
 
2580
                }
 
2581
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
2582
                if (_ptr_user) {
 
2583
                        NDR_PULL_ALLOC(ndr, r->user);
 
2584
                } else {
 
2585
                        r->user = NULL;
 
2586
                }
 
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));
 
2591
        }
 
2592
        if (ndr_flags & NDR_BUFFERS) {
 
2593
                if (r->client) {
 
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));
 
2600
                        }
 
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);
 
2604
                }
 
2605
                if (r->user) {
 
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));
 
2612
                        }
 
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);
 
2616
                }
 
2617
        }
 
2618
        return NDR_ERR_SUCCESS;
 
2619
}
 
2620
 
 
2621
_PUBLIC_ void ndr_print_srvsvc_NetSessInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo1 *r)
 
2622
{
 
2623
        ndr_print_struct(ndr, name, "srvsvc_NetSessInfo1");
 
2624
        ndr->depth++;
 
2625
        ndr_print_ptr(ndr, "client", r->client);
 
2626
        ndr->depth++;
 
2627
        if (r->client) {
 
2628
                ndr_print_string(ndr, "client", r->client);
 
2629
        }
 
2630
        ndr->depth--;
 
2631
        ndr_print_ptr(ndr, "user", r->user);
 
2632
        ndr->depth++;
 
2633
        if (r->user) {
 
2634
                ndr_print_string(ndr, "user", r->user);
 
2635
        }
 
2636
        ndr->depth--;
 
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);
 
2641
        ndr->depth--;
 
2642
}
 
2643
 
 
2644
static enum ndr_err_code ndr_push_srvsvc_NetSessCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr1 *r)
 
2645
{
 
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));
 
2651
        }
 
2652
        if (ndr_flags & NDR_BUFFERS) {
 
2653
                if (r->array) {
 
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]));
 
2657
                        }
 
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]));
 
2660
                        }
 
2661
                }
 
2662
        }
 
2663
        return NDR_ERR_SUCCESS;
 
2664
}
 
2665
 
 
2666
static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr1 *r)
 
2667
{
 
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));
 
2676
                if (_ptr_array) {
 
2677
                        NDR_PULL_ALLOC(ndr, r->array);
 
2678
                } else {
 
2679
                        r->array = NULL;
 
2680
                }
 
2681
        }
 
2682
        if (ndr_flags & NDR_BUFFERS) {
 
2683
                if (r->array) {
 
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]));
 
2692
                        }
 
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]));
 
2695
                        }
 
2696
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
2697
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
2698
                }
 
2699
                if (r->array) {
 
2700
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
2701
                }
 
2702
        }
 
2703
        return NDR_ERR_SUCCESS;
 
2704
}
 
2705
 
 
2706
_PUBLIC_ void ndr_print_srvsvc_NetSessCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr1 *r)
 
2707
{
 
2708
        uint32_t cntr_array_1;
 
2709
        ndr_print_struct(ndr, name, "srvsvc_NetSessCtr1");
 
2710
        ndr->depth++;
 
2711
        ndr_print_uint32(ndr, "count", r->count);
 
2712
        ndr_print_ptr(ndr, "array", r->array);
 
2713
        ndr->depth++;
 
2714
        if (r->array) {
 
2715
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
2716
                ndr->depth++;
 
2717
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
2718
                        char *idx_1=NULL;
 
2719
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
2720
                                ndr_print_srvsvc_NetSessInfo1(ndr, "array", &r->array[cntr_array_1]);
 
2721
                                free(idx_1);
 
2722
                        }
 
2723
                }
 
2724
                ndr->depth--;
 
2725
        }
 
2726
        ndr->depth--;
 
2727
        ndr->depth--;
 
2728
}
 
2729
 
 
2730
static enum ndr_err_code ndr_push_srvsvc_NetSessInfo2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo2 *r)
 
2731
{
 
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));
 
2741
        }
 
2742
        if (ndr_flags & NDR_BUFFERS) {
 
2743
                if (r->client) {
 
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));
 
2748
                }
 
2749
                if (r->user) {
 
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));
 
2754
                }
 
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));
 
2760
                }
 
2761
        }
 
2762
        return NDR_ERR_SUCCESS;
 
2763
}
 
2764
 
 
2765
static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo2 *r)
 
2766
{
 
2767
        uint32_t _ptr_client;
 
2768
        TALLOC_CTX *_mem_save_client_0;
 
2769
        uint32_t _ptr_user;
 
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));
 
2776
                if (_ptr_client) {
 
2777
                        NDR_PULL_ALLOC(ndr, r->client);
 
2778
                } else {
 
2779
                        r->client = NULL;
 
2780
                }
 
2781
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
2782
                if (_ptr_user) {
 
2783
                        NDR_PULL_ALLOC(ndr, r->user);
 
2784
                } else {
 
2785
                        r->user = NULL;
 
2786
                }
 
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);
 
2794
                } else {
 
2795
                        r->client_type = NULL;
 
2796
                }
 
2797
        }
 
2798
        if (ndr_flags & NDR_BUFFERS) {
 
2799
                if (r->client) {
 
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));
 
2806
                        }
 
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);
 
2810
                }
 
2811
                if (r->user) {
 
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));
 
2818
                        }
 
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);
 
2822
                }
 
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));
 
2830
                        }
 
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);
 
2834
                }
 
2835
        }
 
2836
        return NDR_ERR_SUCCESS;
 
2837
}
 
2838
 
 
2839
_PUBLIC_ void ndr_print_srvsvc_NetSessInfo2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo2 *r)
 
2840
{
 
2841
        ndr_print_struct(ndr, name, "srvsvc_NetSessInfo2");
 
2842
        ndr->depth++;
 
2843
        ndr_print_ptr(ndr, "client", r->client);
 
2844
        ndr->depth++;
 
2845
        if (r->client) {
 
2846
                ndr_print_string(ndr, "client", r->client);
 
2847
        }
 
2848
        ndr->depth--;
 
2849
        ndr_print_ptr(ndr, "user", r->user);
 
2850
        ndr->depth++;
 
2851
        if (r->user) {
 
2852
                ndr_print_string(ndr, "user", r->user);
 
2853
        }
 
2854
        ndr->depth--;
 
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);
 
2860
        ndr->depth++;
 
2861
        if (r->client_type) {
 
2862
                ndr_print_string(ndr, "client_type", r->client_type);
 
2863
        }
 
2864
        ndr->depth--;
 
2865
        ndr->depth--;
 
2866
}
 
2867
 
 
2868
static enum ndr_err_code ndr_push_srvsvc_NetSessCtr2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr2 *r)
 
2869
{
 
2870
        uint32_t cntr_array_1;
 
2871
        if (ndr_flags & NDR_SCALARS) {
 
2872
                NDR_CHECK(ndr_push_align(ndr, 4));
 
2873
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
2874
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
2875
        }
 
2876
        if (ndr_flags & NDR_BUFFERS) {
 
2877
                if (r->array) {
 
2878
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
2879
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
2880
                                NDR_CHECK(ndr_push_srvsvc_NetSessInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
2881
                        }
 
2882
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
2883
                                NDR_CHECK(ndr_push_srvsvc_NetSessInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
2884
                        }
 
2885
                }
 
2886
        }
 
2887
        return NDR_ERR_SUCCESS;
 
2888
}
 
2889
 
 
2890
static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr2 *r)
 
2891
{
 
2892
        uint32_t _ptr_array;
 
2893
        uint32_t cntr_array_1;
 
2894
        TALLOC_CTX *_mem_save_array_0;
 
2895
        TALLOC_CTX *_mem_save_array_1;
 
2896
        if (ndr_flags & NDR_SCALARS) {
 
2897
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
2898
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
2899
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
2900
                if (_ptr_array) {
 
2901
                        NDR_PULL_ALLOC(ndr, r->array);
 
2902
                } else {
 
2903
                        r->array = NULL;
 
2904
                }
 
2905
        }
 
2906
        if (ndr_flags & NDR_BUFFERS) {
 
2907
                if (r->array) {
 
2908
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
2909
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
2910
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
2911
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
2912
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
2913
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
2914
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
2915
                                NDR_CHECK(ndr_pull_srvsvc_NetSessInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
2916
                        }
 
2917
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
2918
                                NDR_CHECK(ndr_pull_srvsvc_NetSessInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
2919
                        }
 
2920
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
2921
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
2922
                }
 
2923
                if (r->array) {
 
2924
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
2925
                }
 
2926
        }
 
2927
        return NDR_ERR_SUCCESS;
 
2928
}
 
2929
 
 
2930
_PUBLIC_ void ndr_print_srvsvc_NetSessCtr2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr2 *r)
 
2931
{
 
2932
        uint32_t cntr_array_1;
 
2933
        ndr_print_struct(ndr, name, "srvsvc_NetSessCtr2");
 
2934
        ndr->depth++;
 
2935
        ndr_print_uint32(ndr, "count", r->count);
 
2936
        ndr_print_ptr(ndr, "array", r->array);
 
2937
        ndr->depth++;
 
2938
        if (r->array) {
 
2939
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
2940
                ndr->depth++;
 
2941
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
2942
                        char *idx_1=NULL;
 
2943
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
2944
                                ndr_print_srvsvc_NetSessInfo2(ndr, "array", &r->array[cntr_array_1]);
 
2945
                                free(idx_1);
 
2946
                        }
 
2947
                }
 
2948
                ndr->depth--;
 
2949
        }
 
2950
        ndr->depth--;
 
2951
        ndr->depth--;
 
2952
}
 
2953
 
 
2954
static enum ndr_err_code ndr_push_srvsvc_NetSessInfo10(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo10 *r)
 
2955
{
 
2956
        if (ndr_flags & NDR_SCALARS) {
 
2957
                NDR_CHECK(ndr_push_align(ndr, 4));
 
2958
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->client));
 
2959
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
 
2960
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->time));
 
2961
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idle_time));
 
2962
        }
 
2963
        if (ndr_flags & NDR_BUFFERS) {
 
2964
                if (r->client) {
 
2965
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
 
2966
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
2967
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
 
2968
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client, ndr_charset_length(r->client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
2969
                }
 
2970
                if (r->user) {
 
2971
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
 
2972
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
2973
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
 
2974
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
2975
                }
 
2976
        }
 
2977
        return NDR_ERR_SUCCESS;
 
2978
}
 
2979
 
 
2980
static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo10(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo10 *r)
 
2981
{
 
2982
        uint32_t _ptr_client;
 
2983
        TALLOC_CTX *_mem_save_client_0;
 
2984
        uint32_t _ptr_user;
 
2985
        TALLOC_CTX *_mem_save_user_0;
 
2986
        if (ndr_flags & NDR_SCALARS) {
 
2987
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
2988
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
 
2989
                if (_ptr_client) {
 
2990
                        NDR_PULL_ALLOC(ndr, r->client);
 
2991
                } else {
 
2992
                        r->client = NULL;
 
2993
                }
 
2994
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
2995
                if (_ptr_user) {
 
2996
                        NDR_PULL_ALLOC(ndr, r->user);
 
2997
                } else {
 
2998
                        r->user = NULL;
 
2999
                }
 
3000
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time));
 
3001
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idle_time));
 
3002
        }
 
3003
        if (ndr_flags & NDR_BUFFERS) {
 
3004
                if (r->client) {
 
3005
                        _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3006
                        NDR_PULL_SET_MEM_CTX(ndr, r->client, 0);
 
3007
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->client));
 
3008
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->client));
 
3009
                        if (ndr_get_array_length(ndr, &r->client) > ndr_get_array_size(ndr, &r->client)) {
 
3010
                                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));
 
3011
                        }
 
3012
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t)));
 
3013
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t), CH_UTF16));
 
3014
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
 
3015
                }
 
3016
                if (r->user) {
 
3017
                        _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3018
                        NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
 
3019
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
 
3020
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
 
3021
                        if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
 
3022
                                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));
 
3023
                        }
 
3024
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
 
3025
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
 
3026
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
 
3027
                }
 
3028
        }
 
3029
        return NDR_ERR_SUCCESS;
 
3030
}
 
3031
 
 
3032
_PUBLIC_ void ndr_print_srvsvc_NetSessInfo10(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo10 *r)
 
3033
{
 
3034
        ndr_print_struct(ndr, name, "srvsvc_NetSessInfo10");
 
3035
        ndr->depth++;
 
3036
        ndr_print_ptr(ndr, "client", r->client);
 
3037
        ndr->depth++;
 
3038
        if (r->client) {
 
3039
                ndr_print_string(ndr, "client", r->client);
 
3040
        }
 
3041
        ndr->depth--;
 
3042
        ndr_print_ptr(ndr, "user", r->user);
 
3043
        ndr->depth++;
 
3044
        if (r->user) {
 
3045
                ndr_print_string(ndr, "user", r->user);
 
3046
        }
 
3047
        ndr->depth--;
 
3048
        ndr_print_uint32(ndr, "time", r->time);
 
3049
        ndr_print_uint32(ndr, "idle_time", r->idle_time);
 
3050
        ndr->depth--;
 
3051
}
 
3052
 
 
3053
static enum ndr_err_code ndr_push_srvsvc_NetSessCtr10(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr10 *r)
 
3054
{
 
3055
        uint32_t cntr_array_1;
 
3056
        if (ndr_flags & NDR_SCALARS) {
 
3057
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3058
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3059
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
3060
        }
 
3061
        if (ndr_flags & NDR_BUFFERS) {
 
3062
                if (r->array) {
 
3063
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3064
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3065
                                NDR_CHECK(ndr_push_srvsvc_NetSessInfo10(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3066
                        }
 
3067
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3068
                                NDR_CHECK(ndr_push_srvsvc_NetSessInfo10(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3069
                        }
 
3070
                }
 
3071
        }
 
3072
        return NDR_ERR_SUCCESS;
 
3073
}
 
3074
 
 
3075
static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr10(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr10 *r)
 
3076
{
 
3077
        uint32_t _ptr_array;
 
3078
        uint32_t cntr_array_1;
 
3079
        TALLOC_CTX *_mem_save_array_0;
 
3080
        TALLOC_CTX *_mem_save_array_1;
 
3081
        if (ndr_flags & NDR_SCALARS) {
 
3082
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3083
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
3084
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
3085
                if (_ptr_array) {
 
3086
                        NDR_PULL_ALLOC(ndr, r->array);
 
3087
                } else {
 
3088
                        r->array = NULL;
 
3089
                }
 
3090
        }
 
3091
        if (ndr_flags & NDR_BUFFERS) {
 
3092
                if (r->array) {
 
3093
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3094
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
3095
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
3096
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
3097
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
3098
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
3099
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3100
                                NDR_CHECK(ndr_pull_srvsvc_NetSessInfo10(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3101
                        }
 
3102
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3103
                                NDR_CHECK(ndr_pull_srvsvc_NetSessInfo10(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3104
                        }
 
3105
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
3106
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
3107
                }
 
3108
                if (r->array) {
 
3109
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
3110
                }
 
3111
        }
 
3112
        return NDR_ERR_SUCCESS;
 
3113
}
 
3114
 
 
3115
_PUBLIC_ void ndr_print_srvsvc_NetSessCtr10(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr10 *r)
 
3116
{
 
3117
        uint32_t cntr_array_1;
 
3118
        ndr_print_struct(ndr, name, "srvsvc_NetSessCtr10");
 
3119
        ndr->depth++;
 
3120
        ndr_print_uint32(ndr, "count", r->count);
 
3121
        ndr_print_ptr(ndr, "array", r->array);
 
3122
        ndr->depth++;
 
3123
        if (r->array) {
 
3124
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
3125
                ndr->depth++;
 
3126
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
3127
                        char *idx_1=NULL;
 
3128
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
3129
                                ndr_print_srvsvc_NetSessInfo10(ndr, "array", &r->array[cntr_array_1]);
 
3130
                                free(idx_1);
 
3131
                        }
 
3132
                }
 
3133
                ndr->depth--;
 
3134
        }
 
3135
        ndr->depth--;
 
3136
        ndr->depth--;
 
3137
}
 
3138
 
 
3139
static enum ndr_err_code ndr_push_srvsvc_NetSessInfo502(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfo502 *r)
 
3140
{
 
3141
        if (ndr_flags & NDR_SCALARS) {
 
3142
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3143
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->client));
 
3144
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->user));
 
3145
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_open));
 
3146
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->time));
 
3147
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->idle_time));
 
3148
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->user_flags));
 
3149
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->client_type));
 
3150
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->transport));
 
3151
        }
 
3152
        if (ndr_flags & NDR_BUFFERS) {
 
3153
                if (r->client) {
 
3154
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
 
3155
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3156
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client, CH_UTF16)));
 
3157
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client, ndr_charset_length(r->client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3158
                }
 
3159
                if (r->user) {
 
3160
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
 
3161
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3162
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->user, CH_UTF16)));
 
3163
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->user, ndr_charset_length(r->user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3164
                }
 
3165
                if (r->client_type) {
 
3166
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client_type, CH_UTF16)));
 
3167
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3168
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->client_type, CH_UTF16)));
 
3169
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->client_type, ndr_charset_length(r->client_type, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3170
                }
 
3171
                if (r->transport) {
 
3172
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->transport, CH_UTF16)));
 
3173
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3174
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->transport, CH_UTF16)));
 
3175
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->transport, ndr_charset_length(r->transport, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3176
                }
 
3177
        }
 
3178
        return NDR_ERR_SUCCESS;
 
3179
}
 
3180
 
 
3181
static enum ndr_err_code ndr_pull_srvsvc_NetSessInfo502(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfo502 *r)
 
3182
{
 
3183
        uint32_t _ptr_client;
 
3184
        TALLOC_CTX *_mem_save_client_0;
 
3185
        uint32_t _ptr_user;
 
3186
        TALLOC_CTX *_mem_save_user_0;
 
3187
        uint32_t _ptr_client_type;
 
3188
        TALLOC_CTX *_mem_save_client_type_0;
 
3189
        uint32_t _ptr_transport;
 
3190
        TALLOC_CTX *_mem_save_transport_0;
 
3191
        if (ndr_flags & NDR_SCALARS) {
 
3192
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3193
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
 
3194
                if (_ptr_client) {
 
3195
                        NDR_PULL_ALLOC(ndr, r->client);
 
3196
                } else {
 
3197
                        r->client = NULL;
 
3198
                }
 
3199
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
3200
                if (_ptr_user) {
 
3201
                        NDR_PULL_ALLOC(ndr, r->user);
 
3202
                } else {
 
3203
                        r->user = NULL;
 
3204
                }
 
3205
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_open));
 
3206
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->time));
 
3207
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->idle_time));
 
3208
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->user_flags));
 
3209
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client_type));
 
3210
                if (_ptr_client_type) {
 
3211
                        NDR_PULL_ALLOC(ndr, r->client_type);
 
3212
                } else {
 
3213
                        r->client_type = NULL;
 
3214
                }
 
3215
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_transport));
 
3216
                if (_ptr_transport) {
 
3217
                        NDR_PULL_ALLOC(ndr, r->transport);
 
3218
                } else {
 
3219
                        r->transport = NULL;
 
3220
                }
 
3221
        }
 
3222
        if (ndr_flags & NDR_BUFFERS) {
 
3223
                if (r->client) {
 
3224
                        _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3225
                        NDR_PULL_SET_MEM_CTX(ndr, r->client, 0);
 
3226
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->client));
 
3227
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->client));
 
3228
                        if (ndr_get_array_length(ndr, &r->client) > ndr_get_array_size(ndr, &r->client)) {
 
3229
                                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));
 
3230
                        }
 
3231
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t)));
 
3232
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client, ndr_get_array_length(ndr, &r->client), sizeof(uint16_t), CH_UTF16));
 
3233
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
 
3234
                }
 
3235
                if (r->user) {
 
3236
                        _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3237
                        NDR_PULL_SET_MEM_CTX(ndr, r->user, 0);
 
3238
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->user));
 
3239
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->user));
 
3240
                        if (ndr_get_array_length(ndr, &r->user) > ndr_get_array_size(ndr, &r->user)) {
 
3241
                                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));
 
3242
                        }
 
3243
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t)));
 
3244
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->user, ndr_get_array_length(ndr, &r->user), sizeof(uint16_t), CH_UTF16));
 
3245
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
 
3246
                }
 
3247
                if (r->client_type) {
 
3248
                        _mem_save_client_type_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3249
                        NDR_PULL_SET_MEM_CTX(ndr, r->client_type, 0);
 
3250
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->client_type));
 
3251
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->client_type));
 
3252
                        if (ndr_get_array_length(ndr, &r->client_type) > ndr_get_array_size(ndr, &r->client_type)) {
 
3253
                                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));
 
3254
                        }
 
3255
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->client_type), sizeof(uint16_t)));
 
3256
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->client_type, ndr_get_array_length(ndr, &r->client_type), sizeof(uint16_t), CH_UTF16));
 
3257
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_type_0, 0);
 
3258
                }
 
3259
                if (r->transport) {
 
3260
                        _mem_save_transport_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3261
                        NDR_PULL_SET_MEM_CTX(ndr, r->transport, 0);
 
3262
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->transport));
 
3263
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->transport));
 
3264
                        if (ndr_get_array_length(ndr, &r->transport) > ndr_get_array_size(ndr, &r->transport)) {
 
3265
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->transport), ndr_get_array_length(ndr, &r->transport));
 
3266
                        }
 
3267
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->transport), sizeof(uint16_t)));
 
3268
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->transport, ndr_get_array_length(ndr, &r->transport), sizeof(uint16_t), CH_UTF16));
 
3269
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transport_0, 0);
 
3270
                }
 
3271
        }
 
3272
        return NDR_ERR_SUCCESS;
 
3273
}
 
3274
 
 
3275
_PUBLIC_ void ndr_print_srvsvc_NetSessInfo502(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfo502 *r)
 
3276
{
 
3277
        ndr_print_struct(ndr, name, "srvsvc_NetSessInfo502");
 
3278
        ndr->depth++;
 
3279
        ndr_print_ptr(ndr, "client", r->client);
 
3280
        ndr->depth++;
 
3281
        if (r->client) {
 
3282
                ndr_print_string(ndr, "client", r->client);
 
3283
        }
 
3284
        ndr->depth--;
 
3285
        ndr_print_ptr(ndr, "user", r->user);
 
3286
        ndr->depth++;
 
3287
        if (r->user) {
 
3288
                ndr_print_string(ndr, "user", r->user);
 
3289
        }
 
3290
        ndr->depth--;
 
3291
        ndr_print_uint32(ndr, "num_open", r->num_open);
 
3292
        ndr_print_uint32(ndr, "time", r->time);
 
3293
        ndr_print_uint32(ndr, "idle_time", r->idle_time);
 
3294
        ndr_print_uint32(ndr, "user_flags", r->user_flags);
 
3295
        ndr_print_ptr(ndr, "client_type", r->client_type);
 
3296
        ndr->depth++;
 
3297
        if (r->client_type) {
 
3298
                ndr_print_string(ndr, "client_type", r->client_type);
 
3299
        }
 
3300
        ndr->depth--;
 
3301
        ndr_print_ptr(ndr, "transport", r->transport);
 
3302
        ndr->depth++;
 
3303
        if (r->transport) {
 
3304
                ndr_print_string(ndr, "transport", r->transport);
 
3305
        }
 
3306
        ndr->depth--;
 
3307
        ndr->depth--;
 
3308
}
 
3309
 
 
3310
static enum ndr_err_code ndr_push_srvsvc_NetSessCtr502(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessCtr502 *r)
 
3311
{
 
3312
        uint32_t cntr_array_1;
 
3313
        if (ndr_flags & NDR_SCALARS) {
 
3314
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3315
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3316
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
3317
        }
 
3318
        if (ndr_flags & NDR_BUFFERS) {
 
3319
                if (r->array) {
 
3320
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3321
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3322
                                NDR_CHECK(ndr_push_srvsvc_NetSessInfo502(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3323
                        }
 
3324
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3325
                                NDR_CHECK(ndr_push_srvsvc_NetSessInfo502(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3326
                        }
 
3327
                }
 
3328
        }
 
3329
        return NDR_ERR_SUCCESS;
 
3330
}
 
3331
 
 
3332
static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr502(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessCtr502 *r)
 
3333
{
 
3334
        uint32_t _ptr_array;
 
3335
        uint32_t cntr_array_1;
 
3336
        TALLOC_CTX *_mem_save_array_0;
 
3337
        TALLOC_CTX *_mem_save_array_1;
 
3338
        if (ndr_flags & NDR_SCALARS) {
 
3339
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3340
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
3341
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
3342
                if (_ptr_array) {
 
3343
                        NDR_PULL_ALLOC(ndr, r->array);
 
3344
                } else {
 
3345
                        r->array = NULL;
 
3346
                }
 
3347
        }
 
3348
        if (ndr_flags & NDR_BUFFERS) {
 
3349
                if (r->array) {
 
3350
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3351
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
3352
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
3353
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
3354
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
3355
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
3356
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3357
                                NDR_CHECK(ndr_pull_srvsvc_NetSessInfo502(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3358
                        }
 
3359
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3360
                                NDR_CHECK(ndr_pull_srvsvc_NetSessInfo502(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3361
                        }
 
3362
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
3363
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
3364
                }
 
3365
                if (r->array) {
 
3366
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
3367
                }
 
3368
        }
 
3369
        return NDR_ERR_SUCCESS;
 
3370
}
 
3371
 
 
3372
_PUBLIC_ void ndr_print_srvsvc_NetSessCtr502(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessCtr502 *r)
 
3373
{
 
3374
        uint32_t cntr_array_1;
 
3375
        ndr_print_struct(ndr, name, "srvsvc_NetSessCtr502");
 
3376
        ndr->depth++;
 
3377
        ndr_print_uint32(ndr, "count", r->count);
 
3378
        ndr_print_ptr(ndr, "array", r->array);
 
3379
        ndr->depth++;
 
3380
        if (r->array) {
 
3381
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
3382
                ndr->depth++;
 
3383
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
3384
                        char *idx_1=NULL;
 
3385
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
3386
                                ndr_print_srvsvc_NetSessInfo502(ndr, "array", &r->array[cntr_array_1]);
 
3387
                                free(idx_1);
 
3388
                        }
 
3389
                }
 
3390
                ndr->depth--;
 
3391
        }
 
3392
        ndr->depth--;
 
3393
        ndr->depth--;
 
3394
}
 
3395
 
 
3396
static enum ndr_err_code ndr_push_srvsvc_NetSessCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetSessCtr *r)
 
3397
{
 
3398
        if (ndr_flags & NDR_SCALARS) {
 
3399
                int level = ndr_push_get_switch_value(ndr, r);
 
3400
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
 
3401
                switch (level) {
 
3402
                        case 0: {
 
3403
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
 
3404
                        break; }
 
3405
 
 
3406
                        case 1: {
 
3407
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
 
3408
                        break; }
 
3409
 
 
3410
                        case 2: {
 
3411
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
 
3412
                        break; }
 
3413
 
 
3414
                        case 10: {
 
3415
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr10));
 
3416
                        break; }
 
3417
 
 
3418
                        case 502: {
 
3419
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr502));
 
3420
                        break; }
 
3421
 
 
3422
                        default: {
 
3423
                        break; }
 
3424
 
 
3425
                }
 
3426
        }
 
3427
        if (ndr_flags & NDR_BUFFERS) {
 
3428
                int level = ndr_push_get_switch_value(ndr, r);
 
3429
                switch (level) {
 
3430
                        case 0:
 
3431
                                if (r->ctr0) {
 
3432
                                        NDR_CHECK(ndr_push_srvsvc_NetSessCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
3433
                                }
 
3434
                        break;
 
3435
 
 
3436
                        case 1:
 
3437
                                if (r->ctr1) {
 
3438
                                        NDR_CHECK(ndr_push_srvsvc_NetSessCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
3439
                                }
 
3440
                        break;
 
3441
 
 
3442
                        case 2:
 
3443
                                if (r->ctr2) {
 
3444
                                        NDR_CHECK(ndr_push_srvsvc_NetSessCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
3445
                                }
 
3446
                        break;
 
3447
 
 
3448
                        case 10:
 
3449
                                if (r->ctr10) {
 
3450
                                        NDR_CHECK(ndr_push_srvsvc_NetSessCtr10(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr10));
 
3451
                                }
 
3452
                        break;
 
3453
 
 
3454
                        case 502:
 
3455
                                if (r->ctr502) {
 
3456
                                        NDR_CHECK(ndr_push_srvsvc_NetSessCtr502(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr502));
 
3457
                                }
 
3458
                        break;
 
3459
 
 
3460
                        default:
 
3461
                        break;
 
3462
 
 
3463
                }
 
3464
        }
 
3465
        return NDR_ERR_SUCCESS;
 
3466
}
 
3467
 
 
3468
static enum ndr_err_code ndr_pull_srvsvc_NetSessCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetSessCtr *r)
 
3469
{
 
3470
        int level;
 
3471
        uint32_t _level;
 
3472
        TALLOC_CTX *_mem_save_ctr0_0;
 
3473
        TALLOC_CTX *_mem_save_ctr1_0;
 
3474
        TALLOC_CTX *_mem_save_ctr2_0;
 
3475
        TALLOC_CTX *_mem_save_ctr10_0;
 
3476
        TALLOC_CTX *_mem_save_ctr502_0;
 
3477
        level = ndr_pull_get_switch_value(ndr, r);
 
3478
        if (ndr_flags & NDR_SCALARS) {
 
3479
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
 
3480
                if (_level != level) {
 
3481
                        return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
 
3482
                }
 
3483
                switch (level) {
 
3484
                        case 0: {
 
3485
                                uint32_t _ptr_ctr0;
 
3486
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
 
3487
                                if (_ptr_ctr0) {
 
3488
                                        NDR_PULL_ALLOC(ndr, r->ctr0);
 
3489
                                } else {
 
3490
                                        r->ctr0 = NULL;
 
3491
                                }
 
3492
                        break; }
 
3493
 
 
3494
                        case 1: {
 
3495
                                uint32_t _ptr_ctr1;
 
3496
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
 
3497
                                if (_ptr_ctr1) {
 
3498
                                        NDR_PULL_ALLOC(ndr, r->ctr1);
 
3499
                                } else {
 
3500
                                        r->ctr1 = NULL;
 
3501
                                }
 
3502
                        break; }
 
3503
 
 
3504
                        case 2: {
 
3505
                                uint32_t _ptr_ctr2;
 
3506
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
 
3507
                                if (_ptr_ctr2) {
 
3508
                                        NDR_PULL_ALLOC(ndr, r->ctr2);
 
3509
                                } else {
 
3510
                                        r->ctr2 = NULL;
 
3511
                                }
 
3512
                        break; }
 
3513
 
 
3514
                        case 10: {
 
3515
                                uint32_t _ptr_ctr10;
 
3516
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr10));
 
3517
                                if (_ptr_ctr10) {
 
3518
                                        NDR_PULL_ALLOC(ndr, r->ctr10);
 
3519
                                } else {
 
3520
                                        r->ctr10 = NULL;
 
3521
                                }
 
3522
                        break; }
 
3523
 
 
3524
                        case 502: {
 
3525
                                uint32_t _ptr_ctr502;
 
3526
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr502));
 
3527
                                if (_ptr_ctr502) {
 
3528
                                        NDR_PULL_ALLOC(ndr, r->ctr502);
 
3529
                                } else {
 
3530
                                        r->ctr502 = NULL;
 
3531
                                }
 
3532
                        break; }
 
3533
 
 
3534
                        default: {
 
3535
                        break; }
 
3536
 
 
3537
                }
 
3538
        }
 
3539
        if (ndr_flags & NDR_BUFFERS) {
 
3540
                switch (level) {
 
3541
                        case 0:
 
3542
                                if (r->ctr0) {
 
3543
                                        _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3544
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
 
3545
                                        NDR_CHECK(ndr_pull_srvsvc_NetSessCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
3546
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
 
3547
                                }
 
3548
                        break;
 
3549
 
 
3550
                        case 1:
 
3551
                                if (r->ctr1) {
 
3552
                                        _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3553
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
 
3554
                                        NDR_CHECK(ndr_pull_srvsvc_NetSessCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
3555
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
 
3556
                                }
 
3557
                        break;
 
3558
 
 
3559
                        case 2:
 
3560
                                if (r->ctr2) {
 
3561
                                        _mem_save_ctr2_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3562
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr2, 0);
 
3563
                                        NDR_CHECK(ndr_pull_srvsvc_NetSessCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
3564
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr2_0, 0);
 
3565
                                }
 
3566
                        break;
 
3567
 
 
3568
                        case 10:
 
3569
                                if (r->ctr10) {
 
3570
                                        _mem_save_ctr10_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3571
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr10, 0);
 
3572
                                        NDR_CHECK(ndr_pull_srvsvc_NetSessCtr10(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr10));
 
3573
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr10_0, 0);
 
3574
                                }
 
3575
                        break;
 
3576
 
 
3577
                        case 502:
 
3578
                                if (r->ctr502) {
 
3579
                                        _mem_save_ctr502_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3580
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr502, 0);
 
3581
                                        NDR_CHECK(ndr_pull_srvsvc_NetSessCtr502(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr502));
 
3582
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr502_0, 0);
 
3583
                                }
 
3584
                        break;
 
3585
 
 
3586
                        default:
 
3587
                        break;
 
3588
 
 
3589
                }
 
3590
        }
 
3591
        return NDR_ERR_SUCCESS;
 
3592
}
 
3593
 
 
3594
_PUBLIC_ void ndr_print_srvsvc_NetSessCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetSessCtr *r)
 
3595
{
 
3596
        int level;
 
3597
        level = ndr_print_get_switch_value(ndr, r);
 
3598
        ndr_print_union(ndr, name, level, "srvsvc_NetSessCtr");
 
3599
        switch (level) {
 
3600
                case 0:
 
3601
                        ndr_print_ptr(ndr, "ctr0", r->ctr0);
 
3602
                        ndr->depth++;
 
3603
                        if (r->ctr0) {
 
3604
                                ndr_print_srvsvc_NetSessCtr0(ndr, "ctr0", r->ctr0);
 
3605
                        }
 
3606
                        ndr->depth--;
 
3607
                break;
 
3608
 
 
3609
                case 1:
 
3610
                        ndr_print_ptr(ndr, "ctr1", r->ctr1);
 
3611
                        ndr->depth++;
 
3612
                        if (r->ctr1) {
 
3613
                                ndr_print_srvsvc_NetSessCtr1(ndr, "ctr1", r->ctr1);
 
3614
                        }
 
3615
                        ndr->depth--;
 
3616
                break;
 
3617
 
 
3618
                case 2:
 
3619
                        ndr_print_ptr(ndr, "ctr2", r->ctr2);
 
3620
                        ndr->depth++;
 
3621
                        if (r->ctr2) {
 
3622
                                ndr_print_srvsvc_NetSessCtr2(ndr, "ctr2", r->ctr2);
 
3623
                        }
 
3624
                        ndr->depth--;
 
3625
                break;
 
3626
 
 
3627
                case 10:
 
3628
                        ndr_print_ptr(ndr, "ctr10", r->ctr10);
 
3629
                        ndr->depth++;
 
3630
                        if (r->ctr10) {
 
3631
                                ndr_print_srvsvc_NetSessCtr10(ndr, "ctr10", r->ctr10);
 
3632
                        }
 
3633
                        ndr->depth--;
 
3634
                break;
 
3635
 
 
3636
                case 502:
 
3637
                        ndr_print_ptr(ndr, "ctr502", r->ctr502);
 
3638
                        ndr->depth++;
 
3639
                        if (r->ctr502) {
 
3640
                                ndr_print_srvsvc_NetSessCtr502(ndr, "ctr502", r->ctr502);
 
3641
                        }
 
3642
                        ndr->depth--;
 
3643
                break;
 
3644
 
 
3645
                default:
 
3646
                break;
 
3647
 
 
3648
        }
 
3649
}
 
3650
 
 
3651
static enum ndr_err_code ndr_push_srvsvc_NetSessInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSessInfoCtr *r)
 
3652
{
 
3653
        if (ndr_flags & NDR_SCALARS) {
 
3654
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3655
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
 
3656
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
 
3657
                NDR_CHECK(ndr_push_srvsvc_NetSessCtr(ndr, NDR_SCALARS, &r->ctr));
 
3658
        }
 
3659
        if (ndr_flags & NDR_BUFFERS) {
 
3660
                NDR_CHECK(ndr_push_srvsvc_NetSessCtr(ndr, NDR_BUFFERS, &r->ctr));
 
3661
        }
 
3662
        return NDR_ERR_SUCCESS;
 
3663
}
 
3664
 
 
3665
static enum ndr_err_code ndr_pull_srvsvc_NetSessInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSessInfoCtr *r)
 
3666
{
 
3667
        if (ndr_flags & NDR_SCALARS) {
 
3668
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3669
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
 
3670
                NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
 
3671
                NDR_CHECK(ndr_pull_srvsvc_NetSessCtr(ndr, NDR_SCALARS, &r->ctr));
 
3672
        }
 
3673
        if (ndr_flags & NDR_BUFFERS) {
 
3674
                NDR_CHECK(ndr_pull_srvsvc_NetSessCtr(ndr, NDR_BUFFERS, &r->ctr));
 
3675
        }
 
3676
        return NDR_ERR_SUCCESS;
 
3677
}
 
3678
 
 
3679
_PUBLIC_ void ndr_print_srvsvc_NetSessInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSessInfoCtr *r)
 
3680
{
 
3681
        ndr_print_struct(ndr, name, "srvsvc_NetSessInfoCtr");
 
3682
        ndr->depth++;
 
3683
        ndr_print_uint32(ndr, "level", r->level);
 
3684
        ndr_print_set_switch_value(ndr, &r->ctr, r->level);
 
3685
        ndr_print_srvsvc_NetSessCtr(ndr, "ctr", &r->ctr);
 
3686
        ndr->depth--;
 
3687
}
 
3688
 
 
3689
static enum ndr_err_code ndr_push_srvsvc_ShareType(struct ndr_push *ndr, int ndr_flags, enum srvsvc_ShareType r)
 
3690
{
 
3691
        {
 
3692
                uint32_t _flags_save_ENUM = ndr->flags;
 
3693
                ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
 
3694
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
 
3695
                ndr->flags = _flags_save_ENUM;
 
3696
        }
 
3697
        return NDR_ERR_SUCCESS;
 
3698
}
 
3699
 
 
3700
static enum ndr_err_code ndr_pull_srvsvc_ShareType(struct ndr_pull *ndr, int ndr_flags, enum srvsvc_ShareType *r)
 
3701
{
 
3702
        uint32_t v;
 
3703
        {
 
3704
                uint32_t _flags_save_ENUM = ndr->flags;
 
3705
                ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
 
3706
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
 
3707
                *r = v;
 
3708
                ndr->flags = _flags_save_ENUM;
 
3709
        }
 
3710
        return NDR_ERR_SUCCESS;
 
3711
}
 
3712
 
 
3713
_PUBLIC_ void ndr_print_srvsvc_ShareType(struct ndr_print *ndr, const char *name, enum srvsvc_ShareType r)
 
3714
{
 
3715
        const char *val = NULL;
 
3716
 
 
3717
        {
 
3718
                uint32_t _flags_save_ENUM = ndr->flags;
 
3719
                ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
 
3720
                switch (r) {
 
3721
                        case STYPE_DISKTREE: val = "STYPE_DISKTREE"; break;
 
3722
                        case STYPE_DISKTREE_TEMPORARY: val = "STYPE_DISKTREE_TEMPORARY"; break;
 
3723
                        case STYPE_DISKTREE_HIDDEN: val = "STYPE_DISKTREE_HIDDEN"; break;
 
3724
                        case STYPE_PRINTQ: val = "STYPE_PRINTQ"; break;
 
3725
                        case STYPE_PRINTQ_TEMPORARY: val = "STYPE_PRINTQ_TEMPORARY"; break;
 
3726
                        case STYPE_PRINTQ_HIDDEN: val = "STYPE_PRINTQ_HIDDEN"; break;
 
3727
                        case STYPE_DEVICE: val = "STYPE_DEVICE"; break;
 
3728
                        case STYPE_DEVICE_TEMPORARY: val = "STYPE_DEVICE_TEMPORARY"; break;
 
3729
                        case STYPE_DEVICE_HIDDEN: val = "STYPE_DEVICE_HIDDEN"; break;
 
3730
                        case STYPE_IPC: val = "STYPE_IPC"; break;
 
3731
                        case STYPE_IPC_TEMPORARY: val = "STYPE_IPC_TEMPORARY"; break;
 
3732
                        case STYPE_IPC_HIDDEN: val = "STYPE_IPC_HIDDEN"; break;
 
3733
                }
 
3734
                ndr_print_enum(ndr, name, "ENUM", val, r);
 
3735
                ndr->flags = _flags_save_ENUM;
 
3736
        }
 
3737
}
 
3738
 
 
3739
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo0 *r)
 
3740
{
 
3741
        if (ndr_flags & NDR_SCALARS) {
 
3742
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3743
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
3744
        }
 
3745
        if (ndr_flags & NDR_BUFFERS) {
 
3746
                if (r->name) {
 
3747
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
3748
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3749
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
3750
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3751
                }
 
3752
        }
 
3753
        return NDR_ERR_SUCCESS;
 
3754
}
 
3755
 
 
3756
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo0 *r)
 
3757
{
 
3758
        uint32_t _ptr_name;
 
3759
        TALLOC_CTX *_mem_save_name_0;
 
3760
        if (ndr_flags & NDR_SCALARS) {
 
3761
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3762
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
3763
                if (_ptr_name) {
 
3764
                        NDR_PULL_ALLOC(ndr, r->name);
 
3765
                } else {
 
3766
                        r->name = NULL;
 
3767
                }
 
3768
        }
 
3769
        if (ndr_flags & NDR_BUFFERS) {
 
3770
                if (r->name) {
 
3771
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3772
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
3773
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
3774
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
3775
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
3776
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
3777
                        }
 
3778
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
3779
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
3780
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
3781
                }
 
3782
        }
 
3783
        return NDR_ERR_SUCCESS;
 
3784
}
 
3785
 
 
3786
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo0 *r)
 
3787
{
 
3788
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo0");
 
3789
        ndr->depth++;
 
3790
        ndr_print_ptr(ndr, "name", r->name);
 
3791
        ndr->depth++;
 
3792
        if (r->name) {
 
3793
                ndr_print_string(ndr, "name", r->name);
 
3794
        }
 
3795
        ndr->depth--;
 
3796
        ndr->depth--;
 
3797
}
 
3798
 
 
3799
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr0 *r)
 
3800
{
 
3801
        uint32_t cntr_array_1;
 
3802
        if (ndr_flags & NDR_SCALARS) {
 
3803
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3804
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3805
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
3806
        }
 
3807
        if (ndr_flags & NDR_BUFFERS) {
 
3808
                if (r->array) {
 
3809
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3810
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3811
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3812
                        }
 
3813
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3814
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3815
                        }
 
3816
                }
 
3817
        }
 
3818
        return NDR_ERR_SUCCESS;
 
3819
}
 
3820
 
 
3821
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr0 *r)
 
3822
{
 
3823
        uint32_t _ptr_array;
 
3824
        uint32_t cntr_array_1;
 
3825
        TALLOC_CTX *_mem_save_array_0;
 
3826
        TALLOC_CTX *_mem_save_array_1;
 
3827
        if (ndr_flags & NDR_SCALARS) {
 
3828
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3829
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
3830
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
3831
                if (_ptr_array) {
 
3832
                        NDR_PULL_ALLOC(ndr, r->array);
 
3833
                } else {
 
3834
                        r->array = NULL;
 
3835
                }
 
3836
        }
 
3837
        if (ndr_flags & NDR_BUFFERS) {
 
3838
                if (r->array) {
 
3839
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3840
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
3841
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
3842
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
3843
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
3844
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
3845
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3846
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3847
                        }
 
3848
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3849
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3850
                        }
 
3851
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
3852
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
3853
                }
 
3854
                if (r->array) {
 
3855
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
3856
                }
 
3857
        }
 
3858
        return NDR_ERR_SUCCESS;
 
3859
}
 
3860
 
 
3861
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr0 *r)
 
3862
{
 
3863
        uint32_t cntr_array_1;
 
3864
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr0");
 
3865
        ndr->depth++;
 
3866
        ndr_print_uint32(ndr, "count", r->count);
 
3867
        ndr_print_ptr(ndr, "array", r->array);
 
3868
        ndr->depth++;
 
3869
        if (r->array) {
 
3870
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
3871
                ndr->depth++;
 
3872
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
3873
                        char *idx_1=NULL;
 
3874
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
3875
                                ndr_print_srvsvc_NetShareInfo0(ndr, "array", &r->array[cntr_array_1]);
 
3876
                                free(idx_1);
 
3877
                        }
 
3878
                }
 
3879
                ndr->depth--;
 
3880
        }
 
3881
        ndr->depth--;
 
3882
        ndr->depth--;
 
3883
}
 
3884
 
 
3885
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo1 *r)
 
3886
{
 
3887
        if (ndr_flags & NDR_SCALARS) {
 
3888
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3889
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
3890
                NDR_CHECK(ndr_push_srvsvc_ShareType(ndr, NDR_SCALARS, r->type));
 
3891
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
3892
        }
 
3893
        if (ndr_flags & NDR_BUFFERS) {
 
3894
                if (r->name) {
 
3895
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
3896
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3897
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
3898
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3899
                }
 
3900
                if (r->comment) {
 
3901
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
3902
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
3903
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
3904
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
3905
                }
 
3906
        }
 
3907
        return NDR_ERR_SUCCESS;
 
3908
}
 
3909
 
 
3910
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo1 *r)
 
3911
{
 
3912
        uint32_t _ptr_name;
 
3913
        TALLOC_CTX *_mem_save_name_0;
 
3914
        uint32_t _ptr_comment;
 
3915
        TALLOC_CTX *_mem_save_comment_0;
 
3916
        if (ndr_flags & NDR_SCALARS) {
 
3917
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
3918
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
3919
                if (_ptr_name) {
 
3920
                        NDR_PULL_ALLOC(ndr, r->name);
 
3921
                } else {
 
3922
                        r->name = NULL;
 
3923
                }
 
3924
                NDR_CHECK(ndr_pull_srvsvc_ShareType(ndr, NDR_SCALARS, &r->type));
 
3925
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
3926
                if (_ptr_comment) {
 
3927
                        NDR_PULL_ALLOC(ndr, r->comment);
 
3928
                } else {
 
3929
                        r->comment = NULL;
 
3930
                }
 
3931
        }
 
3932
        if (ndr_flags & NDR_BUFFERS) {
 
3933
                if (r->name) {
 
3934
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3935
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
3936
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
3937
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
3938
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
3939
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
3940
                        }
 
3941
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
3942
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
3943
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
3944
                }
 
3945
                if (r->comment) {
 
3946
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
3947
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
3948
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
3949
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
3950
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
3951
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
3952
                        }
 
3953
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
3954
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
3955
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
3956
                }
 
3957
        }
 
3958
        return NDR_ERR_SUCCESS;
 
3959
}
 
3960
 
 
3961
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo1 *r)
 
3962
{
 
3963
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo1");
 
3964
        ndr->depth++;
 
3965
        ndr_print_ptr(ndr, "name", r->name);
 
3966
        ndr->depth++;
 
3967
        if (r->name) {
 
3968
                ndr_print_string(ndr, "name", r->name);
 
3969
        }
 
3970
        ndr->depth--;
 
3971
        ndr_print_srvsvc_ShareType(ndr, "type", r->type);
 
3972
        ndr_print_ptr(ndr, "comment", r->comment);
 
3973
        ndr->depth++;
 
3974
        if (r->comment) {
 
3975
                ndr_print_string(ndr, "comment", r->comment);
 
3976
        }
 
3977
        ndr->depth--;
 
3978
        ndr->depth--;
 
3979
}
 
3980
 
 
3981
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr1 *r)
 
3982
{
 
3983
        uint32_t cntr_array_1;
 
3984
        if (ndr_flags & NDR_SCALARS) {
 
3985
                NDR_CHECK(ndr_push_align(ndr, 4));
 
3986
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3987
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
3988
        }
 
3989
        if (ndr_flags & NDR_BUFFERS) {
 
3990
                if (r->array) {
 
3991
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
3992
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3993
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
3994
                        }
 
3995
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
3996
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
3997
                        }
 
3998
                }
 
3999
        }
 
4000
        return NDR_ERR_SUCCESS;
 
4001
}
 
4002
 
 
4003
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr1 *r)
 
4004
{
 
4005
        uint32_t _ptr_array;
 
4006
        uint32_t cntr_array_1;
 
4007
        TALLOC_CTX *_mem_save_array_0;
 
4008
        TALLOC_CTX *_mem_save_array_1;
 
4009
        if (ndr_flags & NDR_SCALARS) {
 
4010
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4011
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
4012
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
4013
                if (_ptr_array) {
 
4014
                        NDR_PULL_ALLOC(ndr, r->array);
 
4015
                } else {
 
4016
                        r->array = NULL;
 
4017
                }
 
4018
        }
 
4019
        if (ndr_flags & NDR_BUFFERS) {
 
4020
                if (r->array) {
 
4021
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4022
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4023
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
4024
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
4025
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
4026
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4027
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4028
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4029
                        }
 
4030
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4031
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4032
                        }
 
4033
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
4034
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
4035
                }
 
4036
                if (r->array) {
 
4037
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
4038
                }
 
4039
        }
 
4040
        return NDR_ERR_SUCCESS;
 
4041
}
 
4042
 
 
4043
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr1 *r)
 
4044
{
 
4045
        uint32_t cntr_array_1;
 
4046
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr1");
 
4047
        ndr->depth++;
 
4048
        ndr_print_uint32(ndr, "count", r->count);
 
4049
        ndr_print_ptr(ndr, "array", r->array);
 
4050
        ndr->depth++;
 
4051
        if (r->array) {
 
4052
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
4053
                ndr->depth++;
 
4054
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
4055
                        char *idx_1=NULL;
 
4056
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
4057
                                ndr_print_srvsvc_NetShareInfo1(ndr, "array", &r->array[cntr_array_1]);
 
4058
                                free(idx_1);
 
4059
                        }
 
4060
                }
 
4061
                ndr->depth--;
 
4062
        }
 
4063
        ndr->depth--;
 
4064
        ndr->depth--;
 
4065
}
 
4066
 
 
4067
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo2 *r)
 
4068
{
 
4069
        if (ndr_flags & NDR_SCALARS) {
 
4070
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4071
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
4072
                NDR_CHECK(ndr_push_srvsvc_ShareType(ndr, NDR_SCALARS, r->type));
 
4073
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
4074
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->permissions));
 
4075
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_users));
 
4076
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->current_users));
 
4077
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
 
4078
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
 
4079
        }
 
4080
        if (ndr_flags & NDR_BUFFERS) {
 
4081
                if (r->name) {
 
4082
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
4083
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4084
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
4085
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4086
                }
 
4087
                if (r->comment) {
 
4088
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4089
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4090
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4091
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4092
                }
 
4093
                if (r->path) {
 
4094
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
 
4095
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4096
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
 
4097
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4098
                }
 
4099
                if (r->password) {
 
4100
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
 
4101
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4102
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
 
4103
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->password, ndr_charset_length(r->password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4104
                }
 
4105
        }
 
4106
        return NDR_ERR_SUCCESS;
 
4107
}
 
4108
 
 
4109
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo2 *r)
 
4110
{
 
4111
        uint32_t _ptr_name;
 
4112
        TALLOC_CTX *_mem_save_name_0;
 
4113
        uint32_t _ptr_comment;
 
4114
        TALLOC_CTX *_mem_save_comment_0;
 
4115
        uint32_t _ptr_path;
 
4116
        TALLOC_CTX *_mem_save_path_0;
 
4117
        uint32_t _ptr_password;
 
4118
        TALLOC_CTX *_mem_save_password_0;
 
4119
        if (ndr_flags & NDR_SCALARS) {
 
4120
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4121
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
4122
                if (_ptr_name) {
 
4123
                        NDR_PULL_ALLOC(ndr, r->name);
 
4124
                } else {
 
4125
                        r->name = NULL;
 
4126
                }
 
4127
                NDR_CHECK(ndr_pull_srvsvc_ShareType(ndr, NDR_SCALARS, &r->type));
 
4128
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
4129
                if (_ptr_comment) {
 
4130
                        NDR_PULL_ALLOC(ndr, r->comment);
 
4131
                } else {
 
4132
                        r->comment = NULL;
 
4133
                }
 
4134
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->permissions));
 
4135
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_users));
 
4136
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->current_users));
 
4137
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
 
4138
                if (_ptr_path) {
 
4139
                        NDR_PULL_ALLOC(ndr, r->path);
 
4140
                } else {
 
4141
                        r->path = NULL;
 
4142
                }
 
4143
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
 
4144
                if (_ptr_password) {
 
4145
                        NDR_PULL_ALLOC(ndr, r->password);
 
4146
                } else {
 
4147
                        r->password = NULL;
 
4148
                }
 
4149
        }
 
4150
        if (ndr_flags & NDR_BUFFERS) {
 
4151
                if (r->name) {
 
4152
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4153
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
4154
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
4155
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
4156
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
4157
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
4158
                        }
 
4159
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
4160
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
4161
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
4162
                }
 
4163
                if (r->comment) {
 
4164
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4165
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
4166
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
4167
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
4168
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
4169
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
4170
                        }
 
4171
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
4172
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
4173
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
4174
                }
 
4175
                if (r->path) {
 
4176
                        _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4177
                        NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
 
4178
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
 
4179
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
 
4180
                        if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
 
4181
                                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));
 
4182
                        }
 
4183
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
 
4184
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
 
4185
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
 
4186
                }
 
4187
                if (r->password) {
 
4188
                        _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4189
                        NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
 
4190
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->password));
 
4191
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->password));
 
4192
                        if (ndr_get_array_length(ndr, &r->password) > ndr_get_array_size(ndr, &r->password)) {
 
4193
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->password), ndr_get_array_length(ndr, &r->password));
 
4194
                        }
 
4195
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t)));
 
4196
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->password, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t), CH_UTF16));
 
4197
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
 
4198
                }
 
4199
        }
 
4200
        return NDR_ERR_SUCCESS;
 
4201
}
 
4202
 
 
4203
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo2 *r)
 
4204
{
 
4205
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo2");
 
4206
        ndr->depth++;
 
4207
        ndr_print_ptr(ndr, "name", r->name);
 
4208
        ndr->depth++;
 
4209
        if (r->name) {
 
4210
                ndr_print_string(ndr, "name", r->name);
 
4211
        }
 
4212
        ndr->depth--;
 
4213
        ndr_print_srvsvc_ShareType(ndr, "type", r->type);
 
4214
        ndr_print_ptr(ndr, "comment", r->comment);
 
4215
        ndr->depth++;
 
4216
        if (r->comment) {
 
4217
                ndr_print_string(ndr, "comment", r->comment);
 
4218
        }
 
4219
        ndr->depth--;
 
4220
        ndr_print_uint32(ndr, "permissions", r->permissions);
 
4221
        ndr_print_uint32(ndr, "max_users", r->max_users);
 
4222
        ndr_print_uint32(ndr, "current_users", r->current_users);
 
4223
        ndr_print_ptr(ndr, "path", r->path);
 
4224
        ndr->depth++;
 
4225
        if (r->path) {
 
4226
                ndr_print_string(ndr, "path", r->path);
 
4227
        }
 
4228
        ndr->depth--;
 
4229
        ndr_print_ptr(ndr, "password", r->password);
 
4230
        ndr->depth++;
 
4231
        if (r->password) {
 
4232
                ndr_print_string(ndr, "password", r->password);
 
4233
        }
 
4234
        ndr->depth--;
 
4235
        ndr->depth--;
 
4236
}
 
4237
 
 
4238
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr2 *r)
 
4239
{
 
4240
        uint32_t cntr_array_1;
 
4241
        if (ndr_flags & NDR_SCALARS) {
 
4242
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4243
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4244
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
4245
        }
 
4246
        if (ndr_flags & NDR_BUFFERS) {
 
4247
                if (r->array) {
 
4248
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4249
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4250
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4251
                        }
 
4252
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4253
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4254
                        }
 
4255
                }
 
4256
        }
 
4257
        return NDR_ERR_SUCCESS;
 
4258
}
 
4259
 
 
4260
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr2 *r)
 
4261
{
 
4262
        uint32_t _ptr_array;
 
4263
        uint32_t cntr_array_1;
 
4264
        TALLOC_CTX *_mem_save_array_0;
 
4265
        TALLOC_CTX *_mem_save_array_1;
 
4266
        if (ndr_flags & NDR_SCALARS) {
 
4267
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4268
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
4269
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
4270
                if (_ptr_array) {
 
4271
                        NDR_PULL_ALLOC(ndr, r->array);
 
4272
                } else {
 
4273
                        r->array = NULL;
 
4274
                }
 
4275
        }
 
4276
        if (ndr_flags & NDR_BUFFERS) {
 
4277
                if (r->array) {
 
4278
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4279
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4280
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
4281
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
4282
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
4283
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4284
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4285
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4286
                        }
 
4287
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4288
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4289
                        }
 
4290
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
4291
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
4292
                }
 
4293
                if (r->array) {
 
4294
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
4295
                }
 
4296
        }
 
4297
        return NDR_ERR_SUCCESS;
 
4298
}
 
4299
 
 
4300
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr2 *r)
 
4301
{
 
4302
        uint32_t cntr_array_1;
 
4303
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr2");
 
4304
        ndr->depth++;
 
4305
        ndr_print_uint32(ndr, "count", r->count);
 
4306
        ndr_print_ptr(ndr, "array", r->array);
 
4307
        ndr->depth++;
 
4308
        if (r->array) {
 
4309
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
4310
                ndr->depth++;
 
4311
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
4312
                        char *idx_1=NULL;
 
4313
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
4314
                                ndr_print_srvsvc_NetShareInfo2(ndr, "array", &r->array[cntr_array_1]);
 
4315
                                free(idx_1);
 
4316
                        }
 
4317
                }
 
4318
                ndr->depth--;
 
4319
        }
 
4320
        ndr->depth--;
 
4321
        ndr->depth--;
 
4322
}
 
4323
 
 
4324
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo501(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo501 *r)
 
4325
{
 
4326
        if (ndr_flags & NDR_SCALARS) {
 
4327
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4328
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
4329
                NDR_CHECK(ndr_push_srvsvc_ShareType(ndr, NDR_SCALARS, r->type));
 
4330
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
4331
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->csc_policy));
 
4332
        }
 
4333
        if (ndr_flags & NDR_BUFFERS) {
 
4334
                if (r->name) {
 
4335
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
4336
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4337
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
4338
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4339
                }
 
4340
                if (r->comment) {
 
4341
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4342
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4343
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4344
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4345
                }
 
4346
        }
 
4347
        return NDR_ERR_SUCCESS;
 
4348
}
 
4349
 
 
4350
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo501(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo501 *r)
 
4351
{
 
4352
        uint32_t _ptr_name;
 
4353
        TALLOC_CTX *_mem_save_name_0;
 
4354
        uint32_t _ptr_comment;
 
4355
        TALLOC_CTX *_mem_save_comment_0;
 
4356
        if (ndr_flags & NDR_SCALARS) {
 
4357
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4358
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
4359
                if (_ptr_name) {
 
4360
                        NDR_PULL_ALLOC(ndr, r->name);
 
4361
                } else {
 
4362
                        r->name = NULL;
 
4363
                }
 
4364
                NDR_CHECK(ndr_pull_srvsvc_ShareType(ndr, NDR_SCALARS, &r->type));
 
4365
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
4366
                if (_ptr_comment) {
 
4367
                        NDR_PULL_ALLOC(ndr, r->comment);
 
4368
                } else {
 
4369
                        r->comment = NULL;
 
4370
                }
 
4371
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->csc_policy));
 
4372
        }
 
4373
        if (ndr_flags & NDR_BUFFERS) {
 
4374
                if (r->name) {
 
4375
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4376
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
4377
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
4378
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
4379
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
4380
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
4381
                        }
 
4382
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
4383
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
4384
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
4385
                }
 
4386
                if (r->comment) {
 
4387
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4388
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
4389
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
4390
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
4391
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
4392
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
4393
                        }
 
4394
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
4395
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
4396
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
4397
                }
 
4398
        }
 
4399
        return NDR_ERR_SUCCESS;
 
4400
}
 
4401
 
 
4402
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo501(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo501 *r)
 
4403
{
 
4404
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo501");
 
4405
        ndr->depth++;
 
4406
        ndr_print_ptr(ndr, "name", r->name);
 
4407
        ndr->depth++;
 
4408
        if (r->name) {
 
4409
                ndr_print_string(ndr, "name", r->name);
 
4410
        }
 
4411
        ndr->depth--;
 
4412
        ndr_print_srvsvc_ShareType(ndr, "type", r->type);
 
4413
        ndr_print_ptr(ndr, "comment", r->comment);
 
4414
        ndr->depth++;
 
4415
        if (r->comment) {
 
4416
                ndr_print_string(ndr, "comment", r->comment);
 
4417
        }
 
4418
        ndr->depth--;
 
4419
        ndr_print_uint32(ndr, "csc_policy", r->csc_policy);
 
4420
        ndr->depth--;
 
4421
}
 
4422
 
 
4423
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr501(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr501 *r)
 
4424
{
 
4425
        uint32_t cntr_array_1;
 
4426
        if (ndr_flags & NDR_SCALARS) {
 
4427
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4428
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4429
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
4430
        }
 
4431
        if (ndr_flags & NDR_BUFFERS) {
 
4432
                if (r->array) {
 
4433
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4434
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4435
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo501(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4436
                        }
 
4437
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4438
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo501(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4439
                        }
 
4440
                }
 
4441
        }
 
4442
        return NDR_ERR_SUCCESS;
 
4443
}
 
4444
 
 
4445
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr501(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr501 *r)
 
4446
{
 
4447
        uint32_t _ptr_array;
 
4448
        uint32_t cntr_array_1;
 
4449
        TALLOC_CTX *_mem_save_array_0;
 
4450
        TALLOC_CTX *_mem_save_array_1;
 
4451
        if (ndr_flags & NDR_SCALARS) {
 
4452
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4453
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
4454
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
4455
                if (_ptr_array) {
 
4456
                        NDR_PULL_ALLOC(ndr, r->array);
 
4457
                } else {
 
4458
                        r->array = NULL;
 
4459
                }
 
4460
        }
 
4461
        if (ndr_flags & NDR_BUFFERS) {
 
4462
                if (r->array) {
 
4463
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4464
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4465
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
4466
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
4467
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
4468
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4469
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4470
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo501(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4471
                        }
 
4472
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4473
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo501(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4474
                        }
 
4475
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
4476
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
4477
                }
 
4478
                if (r->array) {
 
4479
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
4480
                }
 
4481
        }
 
4482
        return NDR_ERR_SUCCESS;
 
4483
}
 
4484
 
 
4485
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr501(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr501 *r)
 
4486
{
 
4487
        uint32_t cntr_array_1;
 
4488
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr501");
 
4489
        ndr->depth++;
 
4490
        ndr_print_uint32(ndr, "count", r->count);
 
4491
        ndr_print_ptr(ndr, "array", r->array);
 
4492
        ndr->depth++;
 
4493
        if (r->array) {
 
4494
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
4495
                ndr->depth++;
 
4496
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
4497
                        char *idx_1=NULL;
 
4498
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
4499
                                ndr_print_srvsvc_NetShareInfo501(ndr, "array", &r->array[cntr_array_1]);
 
4500
                                free(idx_1);
 
4501
                        }
 
4502
                }
 
4503
                ndr->depth--;
 
4504
        }
 
4505
        ndr->depth--;
 
4506
        ndr->depth--;
 
4507
}
 
4508
 
 
4509
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo502(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo502 *r)
 
4510
{
 
4511
        if (ndr_flags & NDR_SCALARS) {
 
4512
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4513
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
4514
                NDR_CHECK(ndr_push_srvsvc_ShareType(ndr, NDR_SCALARS, r->type));
 
4515
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
4516
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->permissions));
 
4517
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_users));
 
4518
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->current_users));
 
4519
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
 
4520
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
 
4521
                NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS, &r->sd_buf));
 
4522
        }
 
4523
        if (ndr_flags & NDR_BUFFERS) {
 
4524
                if (r->name) {
 
4525
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
4526
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4527
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
4528
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4529
                }
 
4530
                if (r->comment) {
 
4531
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4532
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4533
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4534
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4535
                }
 
4536
                if (r->path) {
 
4537
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
 
4538
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4539
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
 
4540
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4541
                }
 
4542
                if (r->password) {
 
4543
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
 
4544
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4545
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->password, CH_UTF16)));
 
4546
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->password, ndr_charset_length(r->password, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4547
                }
 
4548
                NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_BUFFERS, &r->sd_buf));
 
4549
        }
 
4550
        return NDR_ERR_SUCCESS;
 
4551
}
 
4552
 
 
4553
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo502(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo502 *r)
 
4554
{
 
4555
        uint32_t _ptr_name;
 
4556
        TALLOC_CTX *_mem_save_name_0;
 
4557
        uint32_t _ptr_comment;
 
4558
        TALLOC_CTX *_mem_save_comment_0;
 
4559
        uint32_t _ptr_path;
 
4560
        TALLOC_CTX *_mem_save_path_0;
 
4561
        uint32_t _ptr_password;
 
4562
        TALLOC_CTX *_mem_save_password_0;
 
4563
        if (ndr_flags & NDR_SCALARS) {
 
4564
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4565
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
4566
                if (_ptr_name) {
 
4567
                        NDR_PULL_ALLOC(ndr, r->name);
 
4568
                } else {
 
4569
                        r->name = NULL;
 
4570
                }
 
4571
                NDR_CHECK(ndr_pull_srvsvc_ShareType(ndr, NDR_SCALARS, &r->type));
 
4572
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
4573
                if (_ptr_comment) {
 
4574
                        NDR_PULL_ALLOC(ndr, r->comment);
 
4575
                } else {
 
4576
                        r->comment = NULL;
 
4577
                }
 
4578
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->permissions));
 
4579
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_users));
 
4580
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->current_users));
 
4581
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
 
4582
                if (_ptr_path) {
 
4583
                        NDR_PULL_ALLOC(ndr, r->path);
 
4584
                } else {
 
4585
                        r->path = NULL;
 
4586
                }
 
4587
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
 
4588
                if (_ptr_password) {
 
4589
                        NDR_PULL_ALLOC(ndr, r->password);
 
4590
                } else {
 
4591
                        r->password = NULL;
 
4592
                }
 
4593
                NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS, &r->sd_buf));
 
4594
        }
 
4595
        if (ndr_flags & NDR_BUFFERS) {
 
4596
                if (r->name) {
 
4597
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4598
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
4599
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
4600
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
4601
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
4602
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
4603
                        }
 
4604
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
4605
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
4606
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
4607
                }
 
4608
                if (r->comment) {
 
4609
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4610
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
4611
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
4612
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
4613
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
4614
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
4615
                        }
 
4616
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
4617
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
4618
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
4619
                }
 
4620
                if (r->path) {
 
4621
                        _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4622
                        NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
 
4623
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
 
4624
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
 
4625
                        if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
 
4626
                                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));
 
4627
                        }
 
4628
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
 
4629
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
 
4630
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
 
4631
                }
 
4632
                if (r->password) {
 
4633
                        _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4634
                        NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
 
4635
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->password));
 
4636
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->password));
 
4637
                        if (ndr_get_array_length(ndr, &r->password) > ndr_get_array_size(ndr, &r->password)) {
 
4638
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->password), ndr_get_array_length(ndr, &r->password));
 
4639
                        }
 
4640
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t)));
 
4641
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->password, ndr_get_array_length(ndr, &r->password), sizeof(uint16_t), CH_UTF16));
 
4642
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
 
4643
                }
 
4644
                NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_BUFFERS, &r->sd_buf));
 
4645
        }
 
4646
        return NDR_ERR_SUCCESS;
 
4647
}
 
4648
 
 
4649
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo502(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo502 *r)
 
4650
{
 
4651
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo502");
 
4652
        ndr->depth++;
 
4653
        ndr_print_ptr(ndr, "name", r->name);
 
4654
        ndr->depth++;
 
4655
        if (r->name) {
 
4656
                ndr_print_string(ndr, "name", r->name);
 
4657
        }
 
4658
        ndr->depth--;
 
4659
        ndr_print_srvsvc_ShareType(ndr, "type", r->type);
 
4660
        ndr_print_ptr(ndr, "comment", r->comment);
 
4661
        ndr->depth++;
 
4662
        if (r->comment) {
 
4663
                ndr_print_string(ndr, "comment", r->comment);
 
4664
        }
 
4665
        ndr->depth--;
 
4666
        ndr_print_uint32(ndr, "permissions", r->permissions);
 
4667
        ndr_print_uint32(ndr, "max_users", r->max_users);
 
4668
        ndr_print_uint32(ndr, "current_users", r->current_users);
 
4669
        ndr_print_ptr(ndr, "path", r->path);
 
4670
        ndr->depth++;
 
4671
        if (r->path) {
 
4672
                ndr_print_string(ndr, "path", r->path);
 
4673
        }
 
4674
        ndr->depth--;
 
4675
        ndr_print_ptr(ndr, "password", r->password);
 
4676
        ndr->depth++;
 
4677
        if (r->password) {
 
4678
                ndr_print_string(ndr, "password", r->password);
 
4679
        }
 
4680
        ndr->depth--;
 
4681
        ndr_print_sec_desc_buf(ndr, "sd_buf", &r->sd_buf);
 
4682
        ndr->depth--;
 
4683
}
 
4684
 
 
4685
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr502(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr502 *r)
 
4686
{
 
4687
        uint32_t cntr_array_1;
 
4688
        if (ndr_flags & NDR_SCALARS) {
 
4689
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4690
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4691
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
4692
        }
 
4693
        if (ndr_flags & NDR_BUFFERS) {
 
4694
                if (r->array) {
 
4695
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4696
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4697
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo502(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4698
                        }
 
4699
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4700
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo502(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4701
                        }
 
4702
                }
 
4703
        }
 
4704
        return NDR_ERR_SUCCESS;
 
4705
}
 
4706
 
 
4707
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr502(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr502 *r)
 
4708
{
 
4709
        uint32_t _ptr_array;
 
4710
        uint32_t cntr_array_1;
 
4711
        TALLOC_CTX *_mem_save_array_0;
 
4712
        TALLOC_CTX *_mem_save_array_1;
 
4713
        if (ndr_flags & NDR_SCALARS) {
 
4714
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4715
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
4716
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
4717
                if (_ptr_array) {
 
4718
                        NDR_PULL_ALLOC(ndr, r->array);
 
4719
                } else {
 
4720
                        r->array = NULL;
 
4721
                }
 
4722
        }
 
4723
        if (ndr_flags & NDR_BUFFERS) {
 
4724
                if (r->array) {
 
4725
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4726
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4727
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
4728
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
4729
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
4730
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4731
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4732
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo502(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4733
                        }
 
4734
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4735
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo502(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4736
                        }
 
4737
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
4738
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
4739
                }
 
4740
                if (r->array) {
 
4741
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
4742
                }
 
4743
        }
 
4744
        return NDR_ERR_SUCCESS;
 
4745
}
 
4746
 
 
4747
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr502(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr502 *r)
 
4748
{
 
4749
        uint32_t cntr_array_1;
 
4750
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr502");
 
4751
        ndr->depth++;
 
4752
        ndr_print_uint32(ndr, "count", r->count);
 
4753
        ndr_print_ptr(ndr, "array", r->array);
 
4754
        ndr->depth++;
 
4755
        if (r->array) {
 
4756
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
4757
                ndr->depth++;
 
4758
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
4759
                        char *idx_1=NULL;
 
4760
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
4761
                                ndr_print_srvsvc_NetShareInfo502(ndr, "array", &r->array[cntr_array_1]);
 
4762
                                free(idx_1);
 
4763
                        }
 
4764
                }
 
4765
                ndr->depth--;
 
4766
        }
 
4767
        ndr->depth--;
 
4768
        ndr->depth--;
 
4769
}
 
4770
 
 
4771
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo1004(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo1004 *r)
 
4772
{
 
4773
        if (ndr_flags & NDR_SCALARS) {
 
4774
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4775
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
4776
        }
 
4777
        if (ndr_flags & NDR_BUFFERS) {
 
4778
                if (r->comment) {
 
4779
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4780
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
4781
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
4782
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
4783
                }
 
4784
        }
 
4785
        return NDR_ERR_SUCCESS;
 
4786
}
 
4787
 
 
4788
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo1004(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo1004 *r)
 
4789
{
 
4790
        uint32_t _ptr_comment;
 
4791
        TALLOC_CTX *_mem_save_comment_0;
 
4792
        if (ndr_flags & NDR_SCALARS) {
 
4793
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4794
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
4795
                if (_ptr_comment) {
 
4796
                        NDR_PULL_ALLOC(ndr, r->comment);
 
4797
                } else {
 
4798
                        r->comment = NULL;
 
4799
                }
 
4800
        }
 
4801
        if (ndr_flags & NDR_BUFFERS) {
 
4802
                if (r->comment) {
 
4803
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4804
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
4805
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
4806
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
4807
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
4808
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
4809
                        }
 
4810
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
4811
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
4812
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
4813
                }
 
4814
        }
 
4815
        return NDR_ERR_SUCCESS;
 
4816
}
 
4817
 
 
4818
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo1004(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo1004 *r)
 
4819
{
 
4820
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo1004");
 
4821
        ndr->depth++;
 
4822
        ndr_print_ptr(ndr, "comment", r->comment);
 
4823
        ndr->depth++;
 
4824
        if (r->comment) {
 
4825
                ndr_print_string(ndr, "comment", r->comment);
 
4826
        }
 
4827
        ndr->depth--;
 
4828
        ndr->depth--;
 
4829
}
 
4830
 
 
4831
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr1004(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr1004 *r)
 
4832
{
 
4833
        uint32_t cntr_array_1;
 
4834
        if (ndr_flags & NDR_SCALARS) {
 
4835
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4836
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4837
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
4838
        }
 
4839
        if (ndr_flags & NDR_BUFFERS) {
 
4840
                if (r->array) {
 
4841
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4842
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4843
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1004(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4844
                        }
 
4845
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4846
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1004(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4847
                        }
 
4848
                }
 
4849
        }
 
4850
        return NDR_ERR_SUCCESS;
 
4851
}
 
4852
 
 
4853
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr1004(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr1004 *r)
 
4854
{
 
4855
        uint32_t _ptr_array;
 
4856
        uint32_t cntr_array_1;
 
4857
        TALLOC_CTX *_mem_save_array_0;
 
4858
        TALLOC_CTX *_mem_save_array_1;
 
4859
        if (ndr_flags & NDR_SCALARS) {
 
4860
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4861
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
4862
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
4863
                if (_ptr_array) {
 
4864
                        NDR_PULL_ALLOC(ndr, r->array);
 
4865
                } else {
 
4866
                        r->array = NULL;
 
4867
                }
 
4868
        }
 
4869
        if (ndr_flags & NDR_BUFFERS) {
 
4870
                if (r->array) {
 
4871
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
4872
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4873
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
4874
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
4875
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
4876
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
4877
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4878
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1004(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4879
                        }
 
4880
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4881
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1004(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
4882
                        }
 
4883
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
4884
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
4885
                }
 
4886
                if (r->array) {
 
4887
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
4888
                }
 
4889
        }
 
4890
        return NDR_ERR_SUCCESS;
 
4891
}
 
4892
 
 
4893
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr1004(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr1004 *r)
 
4894
{
 
4895
        uint32_t cntr_array_1;
 
4896
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr1004");
 
4897
        ndr->depth++;
 
4898
        ndr_print_uint32(ndr, "count", r->count);
 
4899
        ndr_print_ptr(ndr, "array", r->array);
 
4900
        ndr->depth++;
 
4901
        if (r->array) {
 
4902
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
4903
                ndr->depth++;
 
4904
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
4905
                        char *idx_1=NULL;
 
4906
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
4907
                                ndr_print_srvsvc_NetShareInfo1004(ndr, "array", &r->array[cntr_array_1]);
 
4908
                                free(idx_1);
 
4909
                        }
 
4910
                }
 
4911
                ndr->depth--;
 
4912
        }
 
4913
        ndr->depth--;
 
4914
        ndr->depth--;
 
4915
}
 
4916
 
 
4917
static enum ndr_err_code ndr_push_NetShareInfo1005Flags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
 
4918
{
 
4919
        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
 
4920
        return NDR_ERR_SUCCESS;
 
4921
}
 
4922
 
 
4923
static enum ndr_err_code ndr_pull_NetShareInfo1005Flags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
 
4924
{
 
4925
        uint32_t v;
 
4926
        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
 
4927
        *r = v;
 
4928
        return NDR_ERR_SUCCESS;
 
4929
}
 
4930
 
 
4931
_PUBLIC_ void ndr_print_NetShareInfo1005Flags(struct ndr_print *ndr, const char *name, uint32_t r)
 
4932
{
 
4933
        ndr_print_uint32(ndr, name, r);
 
4934
        ndr->depth++;
 
4935
        ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SHARE_1005_IN_DFS", SHARE_1005_IN_DFS, r);
 
4936
        ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "SHARE_1005_DFS_ROOT", SHARE_1005_DFS_ROOT, r);
 
4937
        ndr->depth--;
 
4938
}
 
4939
 
 
4940
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo1005(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo1005 *r)
 
4941
{
 
4942
        if (ndr_flags & NDR_SCALARS) {
 
4943
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4944
                NDR_CHECK(ndr_push_NetShareInfo1005Flags(ndr, NDR_SCALARS, r->dfs_flags));
 
4945
        }
 
4946
        if (ndr_flags & NDR_BUFFERS) {
 
4947
        }
 
4948
        return NDR_ERR_SUCCESS;
 
4949
}
 
4950
 
 
4951
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo1005(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo1005 *r)
 
4952
{
 
4953
        if (ndr_flags & NDR_SCALARS) {
 
4954
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4955
                NDR_CHECK(ndr_pull_NetShareInfo1005Flags(ndr, NDR_SCALARS, &r->dfs_flags));
 
4956
        }
 
4957
        if (ndr_flags & NDR_BUFFERS) {
 
4958
        }
 
4959
        return NDR_ERR_SUCCESS;
 
4960
}
 
4961
 
 
4962
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo1005(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo1005 *r)
 
4963
{
 
4964
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo1005");
 
4965
        ndr->depth++;
 
4966
        ndr_print_NetShareInfo1005Flags(ndr, "dfs_flags", r->dfs_flags);
 
4967
        ndr->depth--;
 
4968
}
 
4969
 
 
4970
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr1005(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr1005 *r)
 
4971
{
 
4972
        uint32_t cntr_array_1;
 
4973
        if (ndr_flags & NDR_SCALARS) {
 
4974
                NDR_CHECK(ndr_push_align(ndr, 4));
 
4975
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4976
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
4977
        }
 
4978
        if (ndr_flags & NDR_BUFFERS) {
 
4979
                if (r->array) {
 
4980
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
4981
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
4982
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1005(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
4983
                        }
 
4984
                }
 
4985
        }
 
4986
        return NDR_ERR_SUCCESS;
 
4987
}
 
4988
 
 
4989
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr1005(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr1005 *r)
 
4990
{
 
4991
        uint32_t _ptr_array;
 
4992
        uint32_t cntr_array_1;
 
4993
        TALLOC_CTX *_mem_save_array_0;
 
4994
        TALLOC_CTX *_mem_save_array_1;
 
4995
        if (ndr_flags & NDR_SCALARS) {
 
4996
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
4997
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
4998
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
4999
                if (_ptr_array) {
 
5000
                        NDR_PULL_ALLOC(ndr, r->array);
 
5001
                } else {
 
5002
                        r->array = NULL;
 
5003
                }
 
5004
        }
 
5005
        if (ndr_flags & NDR_BUFFERS) {
 
5006
                if (r->array) {
 
5007
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5008
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5009
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
5010
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
5011
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
5012
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5013
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5014
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1005(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5015
                        }
 
5016
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
5017
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
5018
                }
 
5019
                if (r->array) {
 
5020
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
5021
                }
 
5022
        }
 
5023
        return NDR_ERR_SUCCESS;
 
5024
}
 
5025
 
 
5026
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr1005(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr1005 *r)
 
5027
{
 
5028
        uint32_t cntr_array_1;
 
5029
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr1005");
 
5030
        ndr->depth++;
 
5031
        ndr_print_uint32(ndr, "count", r->count);
 
5032
        ndr_print_ptr(ndr, "array", r->array);
 
5033
        ndr->depth++;
 
5034
        if (r->array) {
 
5035
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
5036
                ndr->depth++;
 
5037
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
5038
                        char *idx_1=NULL;
 
5039
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
5040
                                ndr_print_srvsvc_NetShareInfo1005(ndr, "array", &r->array[cntr_array_1]);
 
5041
                                free(idx_1);
 
5042
                        }
 
5043
                }
 
5044
                ndr->depth--;
 
5045
        }
 
5046
        ndr->depth--;
 
5047
        ndr->depth--;
 
5048
}
 
5049
 
 
5050
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo1006(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo1006 *r)
 
5051
{
 
5052
        if (ndr_flags & NDR_SCALARS) {
 
5053
                NDR_CHECK(ndr_push_align(ndr, 4));
 
5054
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_users));
 
5055
        }
 
5056
        if (ndr_flags & NDR_BUFFERS) {
 
5057
        }
 
5058
        return NDR_ERR_SUCCESS;
 
5059
}
 
5060
 
 
5061
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo1006(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo1006 *r)
 
5062
{
 
5063
        if (ndr_flags & NDR_SCALARS) {
 
5064
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
5065
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_users));
 
5066
        }
 
5067
        if (ndr_flags & NDR_BUFFERS) {
 
5068
        }
 
5069
        return NDR_ERR_SUCCESS;
 
5070
}
 
5071
 
 
5072
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo1006(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo1006 *r)
 
5073
{
 
5074
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo1006");
 
5075
        ndr->depth++;
 
5076
        ndr_print_uint32(ndr, "max_users", r->max_users);
 
5077
        ndr->depth--;
 
5078
}
 
5079
 
 
5080
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr1006(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr1006 *r)
 
5081
{
 
5082
        uint32_t cntr_array_1;
 
5083
        if (ndr_flags & NDR_SCALARS) {
 
5084
                NDR_CHECK(ndr_push_align(ndr, 4));
 
5085
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
5086
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
5087
        }
 
5088
        if (ndr_flags & NDR_BUFFERS) {
 
5089
                if (r->array) {
 
5090
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
5091
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5092
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1006(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5093
                        }
 
5094
                }
 
5095
        }
 
5096
        return NDR_ERR_SUCCESS;
 
5097
}
 
5098
 
 
5099
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr1006(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr1006 *r)
 
5100
{
 
5101
        uint32_t _ptr_array;
 
5102
        uint32_t cntr_array_1;
 
5103
        TALLOC_CTX *_mem_save_array_0;
 
5104
        TALLOC_CTX *_mem_save_array_1;
 
5105
        if (ndr_flags & NDR_SCALARS) {
 
5106
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
5107
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
5108
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
5109
                if (_ptr_array) {
 
5110
                        NDR_PULL_ALLOC(ndr, r->array);
 
5111
                } else {
 
5112
                        r->array = NULL;
 
5113
                }
 
5114
        }
 
5115
        if (ndr_flags & NDR_BUFFERS) {
 
5116
                if (r->array) {
 
5117
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5118
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5119
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
5120
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
5121
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
5122
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5123
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5124
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1006(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5125
                        }
 
5126
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
5127
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
5128
                }
 
5129
                if (r->array) {
 
5130
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
5131
                }
 
5132
        }
 
5133
        return NDR_ERR_SUCCESS;
 
5134
}
 
5135
 
 
5136
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr1006(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr1006 *r)
 
5137
{
 
5138
        uint32_t cntr_array_1;
 
5139
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr1006");
 
5140
        ndr->depth++;
 
5141
        ndr_print_uint32(ndr, "count", r->count);
 
5142
        ndr_print_ptr(ndr, "array", r->array);
 
5143
        ndr->depth++;
 
5144
        if (r->array) {
 
5145
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
5146
                ndr->depth++;
 
5147
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
5148
                        char *idx_1=NULL;
 
5149
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
5150
                                ndr_print_srvsvc_NetShareInfo1006(ndr, "array", &r->array[cntr_array_1]);
 
5151
                                free(idx_1);
 
5152
                        }
 
5153
                }
 
5154
                ndr->depth--;
 
5155
        }
 
5156
        ndr->depth--;
 
5157
        ndr->depth--;
 
5158
}
 
5159
 
 
5160
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo1007(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfo1007 *r)
 
5161
{
 
5162
        if (ndr_flags & NDR_SCALARS) {
 
5163
                NDR_CHECK(ndr_push_align(ndr, 4));
 
5164
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->flags));
 
5165
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->alternate_directory_name));
 
5166
        }
 
5167
        if (ndr_flags & NDR_BUFFERS) {
 
5168
                if (r->alternate_directory_name) {
 
5169
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->alternate_directory_name, CH_UTF16)));
 
5170
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
5171
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->alternate_directory_name, CH_UTF16)));
 
5172
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->alternate_directory_name, ndr_charset_length(r->alternate_directory_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
5173
                }
 
5174
        }
 
5175
        return NDR_ERR_SUCCESS;
 
5176
}
 
5177
 
 
5178
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo1007(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfo1007 *r)
 
5179
{
 
5180
        uint32_t _ptr_alternate_directory_name;
 
5181
        TALLOC_CTX *_mem_save_alternate_directory_name_0;
 
5182
        if (ndr_flags & NDR_SCALARS) {
 
5183
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
5184
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->flags));
 
5185
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_alternate_directory_name));
 
5186
                if (_ptr_alternate_directory_name) {
 
5187
                        NDR_PULL_ALLOC(ndr, r->alternate_directory_name);
 
5188
                } else {
 
5189
                        r->alternate_directory_name = NULL;
 
5190
                }
 
5191
        }
 
5192
        if (ndr_flags & NDR_BUFFERS) {
 
5193
                if (r->alternate_directory_name) {
 
5194
                        _mem_save_alternate_directory_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5195
                        NDR_PULL_SET_MEM_CTX(ndr, r->alternate_directory_name, 0);
 
5196
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->alternate_directory_name));
 
5197
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->alternate_directory_name));
 
5198
                        if (ndr_get_array_length(ndr, &r->alternate_directory_name) > ndr_get_array_size(ndr, &r->alternate_directory_name)) {
 
5199
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->alternate_directory_name), ndr_get_array_length(ndr, &r->alternate_directory_name));
 
5200
                        }
 
5201
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->alternate_directory_name), sizeof(uint16_t)));
 
5202
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->alternate_directory_name, ndr_get_array_length(ndr, &r->alternate_directory_name), sizeof(uint16_t), CH_UTF16));
 
5203
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alternate_directory_name_0, 0);
 
5204
                }
 
5205
        }
 
5206
        return NDR_ERR_SUCCESS;
 
5207
}
 
5208
 
 
5209
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo1007(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfo1007 *r)
 
5210
{
 
5211
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfo1007");
 
5212
        ndr->depth++;
 
5213
        ndr_print_uint32(ndr, "flags", r->flags);
 
5214
        ndr_print_ptr(ndr, "alternate_directory_name", r->alternate_directory_name);
 
5215
        ndr->depth++;
 
5216
        if (r->alternate_directory_name) {
 
5217
                ndr_print_string(ndr, "alternate_directory_name", r->alternate_directory_name);
 
5218
        }
 
5219
        ndr->depth--;
 
5220
        ndr->depth--;
 
5221
}
 
5222
 
 
5223
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr1007(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr1007 *r)
 
5224
{
 
5225
        uint32_t cntr_array_1;
 
5226
        if (ndr_flags & NDR_SCALARS) {
 
5227
                NDR_CHECK(ndr_push_align(ndr, 4));
 
5228
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
5229
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
5230
        }
 
5231
        if (ndr_flags & NDR_BUFFERS) {
 
5232
                if (r->array) {
 
5233
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
5234
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5235
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1007(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5236
                        }
 
5237
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5238
                                NDR_CHECK(ndr_push_srvsvc_NetShareInfo1007(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
5239
                        }
 
5240
                }
 
5241
        }
 
5242
        return NDR_ERR_SUCCESS;
 
5243
}
 
5244
 
 
5245
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr1007(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr1007 *r)
 
5246
{
 
5247
        uint32_t _ptr_array;
 
5248
        uint32_t cntr_array_1;
 
5249
        TALLOC_CTX *_mem_save_array_0;
 
5250
        TALLOC_CTX *_mem_save_array_1;
 
5251
        if (ndr_flags & NDR_SCALARS) {
 
5252
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
5253
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
5254
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
5255
                if (_ptr_array) {
 
5256
                        NDR_PULL_ALLOC(ndr, r->array);
 
5257
                } else {
 
5258
                        r->array = NULL;
 
5259
                }
 
5260
        }
 
5261
        if (ndr_flags & NDR_BUFFERS) {
 
5262
                if (r->array) {
 
5263
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5264
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5265
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
5266
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
5267
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
5268
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5269
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5270
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1007(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5271
                        }
 
5272
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5273
                                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1007(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
5274
                        }
 
5275
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
5276
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
5277
                }
 
5278
                if (r->array) {
 
5279
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
5280
                }
 
5281
        }
 
5282
        return NDR_ERR_SUCCESS;
 
5283
}
 
5284
 
 
5285
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr1007(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr1007 *r)
 
5286
{
 
5287
        uint32_t cntr_array_1;
 
5288
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr1007");
 
5289
        ndr->depth++;
 
5290
        ndr_print_uint32(ndr, "count", r->count);
 
5291
        ndr_print_ptr(ndr, "array", r->array);
 
5292
        ndr->depth++;
 
5293
        if (r->array) {
 
5294
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
5295
                ndr->depth++;
 
5296
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
5297
                        char *idx_1=NULL;
 
5298
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
5299
                                ndr_print_srvsvc_NetShareInfo1007(ndr, "array", &r->array[cntr_array_1]);
 
5300
                                free(idx_1);
 
5301
                        }
 
5302
                }
 
5303
                ndr->depth--;
 
5304
        }
 
5305
        ndr->depth--;
 
5306
        ndr->depth--;
 
5307
}
 
5308
 
 
5309
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr1501(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareCtr1501 *r)
 
5310
{
 
5311
        uint32_t cntr_array_1;
 
5312
        if (ndr_flags & NDR_SCALARS) {
 
5313
                NDR_CHECK(ndr_push_align(ndr, 4));
 
5314
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
5315
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
5316
        }
 
5317
        if (ndr_flags & NDR_BUFFERS) {
 
5318
                if (r->array) {
 
5319
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
5320
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5321
                                NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5322
                        }
 
5323
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5324
                                NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
5325
                        }
 
5326
                }
 
5327
        }
 
5328
        return NDR_ERR_SUCCESS;
 
5329
}
 
5330
 
 
5331
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr1501(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareCtr1501 *r)
 
5332
{
 
5333
        uint32_t _ptr_array;
 
5334
        uint32_t cntr_array_1;
 
5335
        TALLOC_CTX *_mem_save_array_0;
 
5336
        TALLOC_CTX *_mem_save_array_1;
 
5337
        if (ndr_flags & NDR_SCALARS) {
 
5338
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
5339
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
5340
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
5341
                if (_ptr_array) {
 
5342
                        NDR_PULL_ALLOC(ndr, r->array);
 
5343
                } else {
 
5344
                        r->array = NULL;
 
5345
                }
 
5346
        }
 
5347
        if (ndr_flags & NDR_BUFFERS) {
 
5348
                if (r->array) {
 
5349
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5350
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5351
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
5352
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
5353
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
5354
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
5355
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5356
                                NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
5357
                        }
 
5358
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
5359
                                NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
5360
                        }
 
5361
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
5362
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
5363
                }
 
5364
                if (r->array) {
 
5365
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
5366
                }
 
5367
        }
 
5368
        return NDR_ERR_SUCCESS;
 
5369
}
 
5370
 
 
5371
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr1501(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareCtr1501 *r)
 
5372
{
 
5373
        uint32_t cntr_array_1;
 
5374
        ndr_print_struct(ndr, name, "srvsvc_NetShareCtr1501");
 
5375
        ndr->depth++;
 
5376
        ndr_print_uint32(ndr, "count", r->count);
 
5377
        ndr_print_ptr(ndr, "array", r->array);
 
5378
        ndr->depth++;
 
5379
        if (r->array) {
 
5380
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
5381
                ndr->depth++;
 
5382
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
5383
                        char *idx_1=NULL;
 
5384
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
5385
                                ndr_print_sec_desc_buf(ndr, "array", &r->array[cntr_array_1]);
 
5386
                                free(idx_1);
 
5387
                        }
 
5388
                }
 
5389
                ndr->depth--;
 
5390
        }
 
5391
        ndr->depth--;
 
5392
        ndr->depth--;
 
5393
}
 
5394
 
 
5395
static enum ndr_err_code ndr_push_srvsvc_NetShareInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetShareInfo *r)
 
5396
{
 
5397
        if (ndr_flags & NDR_SCALARS) {
 
5398
                int level = ndr_push_get_switch_value(ndr, r);
 
5399
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
 
5400
                switch (level) {
 
5401
                        case 0: {
 
5402
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
 
5403
                        break; }
 
5404
 
 
5405
                        case 1: {
 
5406
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
 
5407
                        break; }
 
5408
 
 
5409
                        case 2: {
 
5410
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
 
5411
                        break; }
 
5412
 
 
5413
                        case 501: {
 
5414
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info501));
 
5415
                        break; }
 
5416
 
 
5417
                        case 502: {
 
5418
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info502));
 
5419
                        break; }
 
5420
 
 
5421
                        case 1004: {
 
5422
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1004));
 
5423
                        break; }
 
5424
 
 
5425
                        case 1005: {
 
5426
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1005));
 
5427
                        break; }
 
5428
 
 
5429
                        case 1006: {
 
5430
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1006));
 
5431
                        break; }
 
5432
 
 
5433
                        case 1007: {
 
5434
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1007));
 
5435
                        break; }
 
5436
 
 
5437
                        case 1501: {
 
5438
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1501));
 
5439
                        break; }
 
5440
 
 
5441
                        default: {
 
5442
                        break; }
 
5443
 
 
5444
                }
 
5445
        }
 
5446
        if (ndr_flags & NDR_BUFFERS) {
 
5447
                int level = ndr_push_get_switch_value(ndr, r);
 
5448
                switch (level) {
 
5449
                        case 0:
 
5450
                                if (r->info0) {
 
5451
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
 
5452
                                }
 
5453
                        break;
 
5454
 
 
5455
                        case 1:
 
5456
                                if (r->info1) {
 
5457
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
 
5458
                                }
 
5459
                        break;
 
5460
 
 
5461
                        case 2:
 
5462
                                if (r->info2) {
 
5463
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
 
5464
                                }
 
5465
                        break;
 
5466
 
 
5467
                        case 501:
 
5468
                                if (r->info501) {
 
5469
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo501(ndr, NDR_SCALARS|NDR_BUFFERS, r->info501));
 
5470
                                }
 
5471
                        break;
 
5472
 
 
5473
                        case 502:
 
5474
                                if (r->info502) {
 
5475
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo502(ndr, NDR_SCALARS|NDR_BUFFERS, r->info502));
 
5476
                                }
 
5477
                        break;
 
5478
 
 
5479
                        case 1004:
 
5480
                                if (r->info1004) {
 
5481
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo1004(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1004));
 
5482
                                }
 
5483
                        break;
 
5484
 
 
5485
                        case 1005:
 
5486
                                if (r->info1005) {
 
5487
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo1005(ndr, NDR_SCALARS, r->info1005));
 
5488
                                }
 
5489
                        break;
 
5490
 
 
5491
                        case 1006:
 
5492
                                if (r->info1006) {
 
5493
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo1006(ndr, NDR_SCALARS, r->info1006));
 
5494
                                }
 
5495
                        break;
 
5496
 
 
5497
                        case 1007:
 
5498
                                if (r->info1007) {
 
5499
                                        NDR_CHECK(ndr_push_srvsvc_NetShareInfo1007(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1007));
 
5500
                                }
 
5501
                        break;
 
5502
 
 
5503
                        case 1501:
 
5504
                                if (r->info1501) {
 
5505
                                        NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1501));
 
5506
                                }
 
5507
                        break;
 
5508
 
 
5509
                        default:
 
5510
                        break;
 
5511
 
 
5512
                }
 
5513
        }
 
5514
        return NDR_ERR_SUCCESS;
 
5515
}
 
5516
 
 
5517
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetShareInfo *r)
 
5518
{
 
5519
        int level;
 
5520
        uint32_t _level;
 
5521
        TALLOC_CTX *_mem_save_info0_0;
 
5522
        TALLOC_CTX *_mem_save_info1_0;
 
5523
        TALLOC_CTX *_mem_save_info2_0;
 
5524
        TALLOC_CTX *_mem_save_info501_0;
 
5525
        TALLOC_CTX *_mem_save_info502_0;
 
5526
        TALLOC_CTX *_mem_save_info1004_0;
 
5527
        TALLOC_CTX *_mem_save_info1005_0;
 
5528
        TALLOC_CTX *_mem_save_info1006_0;
 
5529
        TALLOC_CTX *_mem_save_info1007_0;
 
5530
        TALLOC_CTX *_mem_save_info1501_0;
 
5531
        level = ndr_pull_get_switch_value(ndr, r);
 
5532
        if (ndr_flags & NDR_SCALARS) {
 
5533
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
 
5534
                if (_level != level) {
 
5535
                        return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
 
5536
                }
 
5537
                switch (level) {
 
5538
                        case 0: {
 
5539
                                uint32_t _ptr_info0;
 
5540
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
 
5541
                                if (_ptr_info0) {
 
5542
                                        NDR_PULL_ALLOC(ndr, r->info0);
 
5543
                                } else {
 
5544
                                        r->info0 = NULL;
 
5545
                                }
 
5546
                        break; }
 
5547
 
 
5548
                        case 1: {
 
5549
                                uint32_t _ptr_info1;
 
5550
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
 
5551
                                if (_ptr_info1) {
 
5552
                                        NDR_PULL_ALLOC(ndr, r->info1);
 
5553
                                } else {
 
5554
                                        r->info1 = NULL;
 
5555
                                }
 
5556
                        break; }
 
5557
 
 
5558
                        case 2: {
 
5559
                                uint32_t _ptr_info2;
 
5560
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
 
5561
                                if (_ptr_info2) {
 
5562
                                        NDR_PULL_ALLOC(ndr, r->info2);
 
5563
                                } else {
 
5564
                                        r->info2 = NULL;
 
5565
                                }
 
5566
                        break; }
 
5567
 
 
5568
                        case 501: {
 
5569
                                uint32_t _ptr_info501;
 
5570
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info501));
 
5571
                                if (_ptr_info501) {
 
5572
                                        NDR_PULL_ALLOC(ndr, r->info501);
 
5573
                                } else {
 
5574
                                        r->info501 = NULL;
 
5575
                                }
 
5576
                        break; }
 
5577
 
 
5578
                        case 502: {
 
5579
                                uint32_t _ptr_info502;
 
5580
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info502));
 
5581
                                if (_ptr_info502) {
 
5582
                                        NDR_PULL_ALLOC(ndr, r->info502);
 
5583
                                } else {
 
5584
                                        r->info502 = NULL;
 
5585
                                }
 
5586
                        break; }
 
5587
 
 
5588
                        case 1004: {
 
5589
                                uint32_t _ptr_info1004;
 
5590
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1004));
 
5591
                                if (_ptr_info1004) {
 
5592
                                        NDR_PULL_ALLOC(ndr, r->info1004);
 
5593
                                } else {
 
5594
                                        r->info1004 = NULL;
 
5595
                                }
 
5596
                        break; }
 
5597
 
 
5598
                        case 1005: {
 
5599
                                uint32_t _ptr_info1005;
 
5600
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1005));
 
5601
                                if (_ptr_info1005) {
 
5602
                                        NDR_PULL_ALLOC(ndr, r->info1005);
 
5603
                                } else {
 
5604
                                        r->info1005 = NULL;
 
5605
                                }
 
5606
                        break; }
 
5607
 
 
5608
                        case 1006: {
 
5609
                                uint32_t _ptr_info1006;
 
5610
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1006));
 
5611
                                if (_ptr_info1006) {
 
5612
                                        NDR_PULL_ALLOC(ndr, r->info1006);
 
5613
                                } else {
 
5614
                                        r->info1006 = NULL;
 
5615
                                }
 
5616
                        break; }
 
5617
 
 
5618
                        case 1007: {
 
5619
                                uint32_t _ptr_info1007;
 
5620
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1007));
 
5621
                                if (_ptr_info1007) {
 
5622
                                        NDR_PULL_ALLOC(ndr, r->info1007);
 
5623
                                } else {
 
5624
                                        r->info1007 = NULL;
 
5625
                                }
 
5626
                        break; }
 
5627
 
 
5628
                        case 1501: {
 
5629
                                uint32_t _ptr_info1501;
 
5630
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1501));
 
5631
                                if (_ptr_info1501) {
 
5632
                                        NDR_PULL_ALLOC(ndr, r->info1501);
 
5633
                                } else {
 
5634
                                        r->info1501 = NULL;
 
5635
                                }
 
5636
                        break; }
 
5637
 
 
5638
                        default: {
 
5639
                        break; }
 
5640
 
 
5641
                }
 
5642
        }
 
5643
        if (ndr_flags & NDR_BUFFERS) {
 
5644
                switch (level) {
 
5645
                        case 0:
 
5646
                                if (r->info0) {
 
5647
                                        _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5648
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
 
5649
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->info0));
 
5650
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
 
5651
                                }
 
5652
                        break;
 
5653
 
 
5654
                        case 1:
 
5655
                                if (r->info1) {
 
5656
                                        _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5657
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
 
5658
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
 
5659
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
 
5660
                                }
 
5661
                        break;
 
5662
 
 
5663
                        case 2:
 
5664
                                if (r->info2) {
 
5665
                                        _mem_save_info2_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5666
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info2, 0);
 
5667
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
 
5668
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info2_0, 0);
 
5669
                                }
 
5670
                        break;
 
5671
 
 
5672
                        case 501:
 
5673
                                if (r->info501) {
 
5674
                                        _mem_save_info501_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5675
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info501, 0);
 
5676
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo501(ndr, NDR_SCALARS|NDR_BUFFERS, r->info501));
 
5677
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info501_0, 0);
 
5678
                                }
 
5679
                        break;
 
5680
 
 
5681
                        case 502:
 
5682
                                if (r->info502) {
 
5683
                                        _mem_save_info502_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5684
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info502, 0);
 
5685
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo502(ndr, NDR_SCALARS|NDR_BUFFERS, r->info502));
 
5686
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info502_0, 0);
 
5687
                                }
 
5688
                        break;
 
5689
 
 
5690
                        case 1004:
 
5691
                                if (r->info1004) {
 
5692
                                        _mem_save_info1004_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5693
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1004, 0);
 
5694
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1004(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1004));
 
5695
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1004_0, 0);
 
5696
                                }
 
5697
                        break;
 
5698
 
 
5699
                        case 1005:
 
5700
                                if (r->info1005) {
 
5701
                                        _mem_save_info1005_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5702
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1005, 0);
 
5703
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1005(ndr, NDR_SCALARS, r->info1005));
 
5704
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1005_0, 0);
 
5705
                                }
 
5706
                        break;
 
5707
 
 
5708
                        case 1006:
 
5709
                                if (r->info1006) {
 
5710
                                        _mem_save_info1006_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5711
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1006, 0);
 
5712
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1006(ndr, NDR_SCALARS, r->info1006));
 
5713
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1006_0, 0);
 
5714
                                }
 
5715
                        break;
 
5716
 
 
5717
                        case 1007:
 
5718
                                if (r->info1007) {
 
5719
                                        _mem_save_info1007_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5720
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1007, 0);
 
5721
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareInfo1007(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1007));
 
5722
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1007_0, 0);
 
5723
                                }
 
5724
                        break;
 
5725
 
 
5726
                        case 1501:
 
5727
                                if (r->info1501) {
 
5728
                                        _mem_save_info1501_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
5729
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1501, 0);
 
5730
                                        NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1501));
 
5731
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1501_0, 0);
 
5732
                                }
 
5733
                        break;
 
5734
 
 
5735
                        default:
 
5736
                        break;
 
5737
 
 
5738
                }
 
5739
        }
 
5740
        return NDR_ERR_SUCCESS;
 
5741
}
 
5742
 
 
5743
_PUBLIC_ void ndr_print_srvsvc_NetShareInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetShareInfo *r)
 
5744
{
 
5745
        int level;
 
5746
        level = ndr_print_get_switch_value(ndr, r);
 
5747
        ndr_print_union(ndr, name, level, "srvsvc_NetShareInfo");
 
5748
        switch (level) {
 
5749
                case 0:
 
5750
                        ndr_print_ptr(ndr, "info0", r->info0);
 
5751
                        ndr->depth++;
 
5752
                        if (r->info0) {
 
5753
                                ndr_print_srvsvc_NetShareInfo0(ndr, "info0", r->info0);
 
5754
                        }
 
5755
                        ndr->depth--;
 
5756
                break;
 
5757
 
 
5758
                case 1:
 
5759
                        ndr_print_ptr(ndr, "info1", r->info1);
 
5760
                        ndr->depth++;
 
5761
                        if (r->info1) {
 
5762
                                ndr_print_srvsvc_NetShareInfo1(ndr, "info1", r->info1);
 
5763
                        }
 
5764
                        ndr->depth--;
 
5765
                break;
 
5766
 
 
5767
                case 2:
 
5768
                        ndr_print_ptr(ndr, "info2", r->info2);
 
5769
                        ndr->depth++;
 
5770
                        if (r->info2) {
 
5771
                                ndr_print_srvsvc_NetShareInfo2(ndr, "info2", r->info2);
 
5772
                        }
 
5773
                        ndr->depth--;
 
5774
                break;
 
5775
 
 
5776
                case 501:
 
5777
                        ndr_print_ptr(ndr, "info501", r->info501);
 
5778
                        ndr->depth++;
 
5779
                        if (r->info501) {
 
5780
                                ndr_print_srvsvc_NetShareInfo501(ndr, "info501", r->info501);
 
5781
                        }
 
5782
                        ndr->depth--;
 
5783
                break;
 
5784
 
 
5785
                case 502:
 
5786
                        ndr_print_ptr(ndr, "info502", r->info502);
 
5787
                        ndr->depth++;
 
5788
                        if (r->info502) {
 
5789
                                ndr_print_srvsvc_NetShareInfo502(ndr, "info502", r->info502);
 
5790
                        }
 
5791
                        ndr->depth--;
 
5792
                break;
 
5793
 
 
5794
                case 1004:
 
5795
                        ndr_print_ptr(ndr, "info1004", r->info1004);
 
5796
                        ndr->depth++;
 
5797
                        if (r->info1004) {
 
5798
                                ndr_print_srvsvc_NetShareInfo1004(ndr, "info1004", r->info1004);
 
5799
                        }
 
5800
                        ndr->depth--;
 
5801
                break;
 
5802
 
 
5803
                case 1005:
 
5804
                        ndr_print_ptr(ndr, "info1005", r->info1005);
 
5805
                        ndr->depth++;
 
5806
                        if (r->info1005) {
 
5807
                                ndr_print_srvsvc_NetShareInfo1005(ndr, "info1005", r->info1005);
 
5808
                        }
 
5809
                        ndr->depth--;
 
5810
                break;
 
5811
 
 
5812
                case 1006:
 
5813
                        ndr_print_ptr(ndr, "info1006", r->info1006);
 
5814
                        ndr->depth++;
 
5815
                        if (r->info1006) {
 
5816
                                ndr_print_srvsvc_NetShareInfo1006(ndr, "info1006", r->info1006);
 
5817
                        }
 
5818
                        ndr->depth--;
 
5819
                break;
 
5820
 
 
5821
                case 1007:
 
5822
                        ndr_print_ptr(ndr, "info1007", r->info1007);
 
5823
                        ndr->depth++;
 
5824
                        if (r->info1007) {
 
5825
                                ndr_print_srvsvc_NetShareInfo1007(ndr, "info1007", r->info1007);
 
5826
                        }
 
5827
                        ndr->depth--;
 
5828
                break;
 
5829
 
 
5830
                case 1501:
 
5831
                        ndr_print_ptr(ndr, "info1501", r->info1501);
 
5832
                        ndr->depth++;
 
5833
                        if (r->info1501) {
 
5834
                                ndr_print_sec_desc_buf(ndr, "info1501", r->info1501);
 
5835
                        }
 
5836
                        ndr->depth--;
 
5837
                break;
 
5838
 
 
5839
                default:
 
5840
                break;
 
5841
 
 
5842
        }
 
5843
}
 
5844
 
 
5845
static enum ndr_err_code ndr_push_srvsvc_NetShareCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetShareCtr *r)
 
5846
{
 
5847
        if (ndr_flags & NDR_SCALARS) {
 
5848
                int level = ndr_push_get_switch_value(ndr, r);
 
5849
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
 
5850
                switch (level) {
 
5851
                        case 0: {
 
5852
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
 
5853
                        break; }
 
5854
 
 
5855
                        case 1: {
 
5856
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
 
5857
                        break; }
 
5858
 
 
5859
                        case 2: {
 
5860
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
 
5861
                        break; }
 
5862
 
 
5863
                        case 501: {
 
5864
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr501));
 
5865
                        break; }
 
5866
 
 
5867
                        case 502: {
 
5868
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr502));
 
5869
                        break; }
 
5870
 
 
5871
                        case 1004: {
 
5872
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1004));
 
5873
                        break; }
 
5874
 
 
5875
                        case 1005: {
 
5876
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1005));
 
5877
                        break; }
 
5878
 
 
5879
                        case 1006: {
 
5880
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1006));
 
5881
                        break; }
 
5882
 
 
5883
                        case 1007: {
 
5884
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1007));
 
5885
                        break; }
 
5886
 
 
5887
                        case 1501: {
 
5888
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1501));
 
5889
                        break; }
 
5890
 
 
5891
                        default: {
 
5892
                        break; }
 
5893
 
 
5894
                }
 
5895
        }
 
5896
        if (ndr_flags & NDR_BUFFERS) {
 
5897
                int level = ndr_push_get_switch_value(ndr, r);
 
5898
                switch (level) {
 
5899
                        case 0:
 
5900
                                if (r->ctr0) {
 
5901
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
5902
                                }
 
5903
                        break;
 
5904
 
 
5905
                        case 1:
 
5906
                                if (r->ctr1) {
 
5907
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
5908
                                }
 
5909
                        break;
 
5910
 
 
5911
                        case 2:
 
5912
                                if (r->ctr2) {
 
5913
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
5914
                                }
 
5915
                        break;
 
5916
 
 
5917
                        case 501:
 
5918
                                if (r->ctr501) {
 
5919
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr501(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr501));
 
5920
                                }
 
5921
                        break;
 
5922
 
 
5923
                        case 502:
 
5924
                                if (r->ctr502) {
 
5925
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr502(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr502));
 
5926
                                }
 
5927
                        break;
 
5928
 
 
5929
                        case 1004:
 
5930
                                if (r->ctr1004) {
 
5931
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr1004(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1004));
 
5932
                                }
 
5933
                        break;
 
5934
 
 
5935
                        case 1005:
 
5936
                                if (r->ctr1005) {
 
5937
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr1005(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1005));
 
5938
                                }
 
5939
                        break;
 
5940
 
 
5941
                        case 1006:
 
5942
                                if (r->ctr1006) {
 
5943
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr1006(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1006));
 
5944
                                }
 
5945
                        break;
 
5946
 
 
5947
                        case 1007:
 
5948
                                if (r->ctr1007) {
 
5949
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr1007(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1007));
 
5950
                                }
 
5951
                        break;
 
5952
 
 
5953
                        case 1501:
 
5954
                                if (r->ctr1501) {
 
5955
                                        NDR_CHECK(ndr_push_srvsvc_NetShareCtr1501(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1501));
 
5956
                                }
 
5957
                        break;
 
5958
 
 
5959
                        default:
 
5960
                        break;
 
5961
 
 
5962
                }
 
5963
        }
 
5964
        return NDR_ERR_SUCCESS;
 
5965
}
 
5966
 
 
5967
static enum ndr_err_code ndr_pull_srvsvc_NetShareCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetShareCtr *r)
 
5968
{
 
5969
        int level;
 
5970
        uint32_t _level;
 
5971
        TALLOC_CTX *_mem_save_ctr0_0;
 
5972
        TALLOC_CTX *_mem_save_ctr1_0;
 
5973
        TALLOC_CTX *_mem_save_ctr2_0;
 
5974
        TALLOC_CTX *_mem_save_ctr501_0;
 
5975
        TALLOC_CTX *_mem_save_ctr502_0;
 
5976
        TALLOC_CTX *_mem_save_ctr1004_0;
 
5977
        TALLOC_CTX *_mem_save_ctr1005_0;
 
5978
        TALLOC_CTX *_mem_save_ctr1006_0;
 
5979
        TALLOC_CTX *_mem_save_ctr1007_0;
 
5980
        TALLOC_CTX *_mem_save_ctr1501_0;
 
5981
        level = ndr_pull_get_switch_value(ndr, r);
 
5982
        if (ndr_flags & NDR_SCALARS) {
 
5983
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
 
5984
                if (_level != level) {
 
5985
                        return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
 
5986
                }
 
5987
                switch (level) {
 
5988
                        case 0: {
 
5989
                                uint32_t _ptr_ctr0;
 
5990
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
 
5991
                                if (_ptr_ctr0) {
 
5992
                                        NDR_PULL_ALLOC(ndr, r->ctr0);
 
5993
                                } else {
 
5994
                                        r->ctr0 = NULL;
 
5995
                                }
 
5996
                        break; }
 
5997
 
 
5998
                        case 1: {
 
5999
                                uint32_t _ptr_ctr1;
 
6000
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
 
6001
                                if (_ptr_ctr1) {
 
6002
                                        NDR_PULL_ALLOC(ndr, r->ctr1);
 
6003
                                } else {
 
6004
                                        r->ctr1 = NULL;
 
6005
                                }
 
6006
                        break; }
 
6007
 
 
6008
                        case 2: {
 
6009
                                uint32_t _ptr_ctr2;
 
6010
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
 
6011
                                if (_ptr_ctr2) {
 
6012
                                        NDR_PULL_ALLOC(ndr, r->ctr2);
 
6013
                                } else {
 
6014
                                        r->ctr2 = NULL;
 
6015
                                }
 
6016
                        break; }
 
6017
 
 
6018
                        case 501: {
 
6019
                                uint32_t _ptr_ctr501;
 
6020
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr501));
 
6021
                                if (_ptr_ctr501) {
 
6022
                                        NDR_PULL_ALLOC(ndr, r->ctr501);
 
6023
                                } else {
 
6024
                                        r->ctr501 = NULL;
 
6025
                                }
 
6026
                        break; }
 
6027
 
 
6028
                        case 502: {
 
6029
                                uint32_t _ptr_ctr502;
 
6030
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr502));
 
6031
                                if (_ptr_ctr502) {
 
6032
                                        NDR_PULL_ALLOC(ndr, r->ctr502);
 
6033
                                } else {
 
6034
                                        r->ctr502 = NULL;
 
6035
                                }
 
6036
                        break; }
 
6037
 
 
6038
                        case 1004: {
 
6039
                                uint32_t _ptr_ctr1004;
 
6040
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1004));
 
6041
                                if (_ptr_ctr1004) {
 
6042
                                        NDR_PULL_ALLOC(ndr, r->ctr1004);
 
6043
                                } else {
 
6044
                                        r->ctr1004 = NULL;
 
6045
                                }
 
6046
                        break; }
 
6047
 
 
6048
                        case 1005: {
 
6049
                                uint32_t _ptr_ctr1005;
 
6050
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1005));
 
6051
                                if (_ptr_ctr1005) {
 
6052
                                        NDR_PULL_ALLOC(ndr, r->ctr1005);
 
6053
                                } else {
 
6054
                                        r->ctr1005 = NULL;
 
6055
                                }
 
6056
                        break; }
 
6057
 
 
6058
                        case 1006: {
 
6059
                                uint32_t _ptr_ctr1006;
 
6060
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1006));
 
6061
                                if (_ptr_ctr1006) {
 
6062
                                        NDR_PULL_ALLOC(ndr, r->ctr1006);
 
6063
                                } else {
 
6064
                                        r->ctr1006 = NULL;
 
6065
                                }
 
6066
                        break; }
 
6067
 
 
6068
                        case 1007: {
 
6069
                                uint32_t _ptr_ctr1007;
 
6070
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1007));
 
6071
                                if (_ptr_ctr1007) {
 
6072
                                        NDR_PULL_ALLOC(ndr, r->ctr1007);
 
6073
                                } else {
 
6074
                                        r->ctr1007 = NULL;
 
6075
                                }
 
6076
                        break; }
 
6077
 
 
6078
                        case 1501: {
 
6079
                                uint32_t _ptr_ctr1501;
 
6080
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1501));
 
6081
                                if (_ptr_ctr1501) {
 
6082
                                        NDR_PULL_ALLOC(ndr, r->ctr1501);
 
6083
                                } else {
 
6084
                                        r->ctr1501 = NULL;
 
6085
                                }
 
6086
                        break; }
 
6087
 
 
6088
                        default: {
 
6089
                        break; }
 
6090
 
 
6091
                }
 
6092
        }
 
6093
        if (ndr_flags & NDR_BUFFERS) {
 
6094
                switch (level) {
 
6095
                        case 0:
 
6096
                                if (r->ctr0) {
 
6097
                                        _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6098
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
 
6099
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
6100
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
 
6101
                                }
 
6102
                        break;
 
6103
 
 
6104
                        case 1:
 
6105
                                if (r->ctr1) {
 
6106
                                        _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6107
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
 
6108
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
6109
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
 
6110
                                }
 
6111
                        break;
 
6112
 
 
6113
                        case 2:
 
6114
                                if (r->ctr2) {
 
6115
                                        _mem_save_ctr2_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6116
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr2, 0);
 
6117
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
6118
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr2_0, 0);
 
6119
                                }
 
6120
                        break;
 
6121
 
 
6122
                        case 501:
 
6123
                                if (r->ctr501) {
 
6124
                                        _mem_save_ctr501_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6125
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr501, 0);
 
6126
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr501(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr501));
 
6127
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr501_0, 0);
 
6128
                                }
 
6129
                        break;
 
6130
 
 
6131
                        case 502:
 
6132
                                if (r->ctr502) {
 
6133
                                        _mem_save_ctr502_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6134
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr502, 0);
 
6135
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr502(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr502));
 
6136
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr502_0, 0);
 
6137
                                }
 
6138
                        break;
 
6139
 
 
6140
                        case 1004:
 
6141
                                if (r->ctr1004) {
 
6142
                                        _mem_save_ctr1004_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6143
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1004, 0);
 
6144
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr1004(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1004));
 
6145
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1004_0, 0);
 
6146
                                }
 
6147
                        break;
 
6148
 
 
6149
                        case 1005:
 
6150
                                if (r->ctr1005) {
 
6151
                                        _mem_save_ctr1005_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6152
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1005, 0);
 
6153
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr1005(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1005));
 
6154
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1005_0, 0);
 
6155
                                }
 
6156
                        break;
 
6157
 
 
6158
                        case 1006:
 
6159
                                if (r->ctr1006) {
 
6160
                                        _mem_save_ctr1006_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6161
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1006, 0);
 
6162
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr1006(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1006));
 
6163
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1006_0, 0);
 
6164
                                }
 
6165
                        break;
 
6166
 
 
6167
                        case 1007:
 
6168
                                if (r->ctr1007) {
 
6169
                                        _mem_save_ctr1007_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6170
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1007, 0);
 
6171
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr1007(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1007));
 
6172
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1007_0, 0);
 
6173
                                }
 
6174
                        break;
 
6175
 
 
6176
                        case 1501:
 
6177
                                if (r->ctr1501) {
 
6178
                                        _mem_save_ctr1501_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6179
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1501, 0);
 
6180
                                        NDR_CHECK(ndr_pull_srvsvc_NetShareCtr1501(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1501));
 
6181
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1501_0, 0);
 
6182
                                }
 
6183
                        break;
 
6184
 
 
6185
                        default:
 
6186
                        break;
 
6187
 
 
6188
                }
 
6189
        }
 
6190
        return NDR_ERR_SUCCESS;
 
6191
}
 
6192
 
 
6193
_PUBLIC_ void ndr_print_srvsvc_NetShareCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetShareCtr *r)
 
6194
{
 
6195
        int level;
 
6196
        level = ndr_print_get_switch_value(ndr, r);
 
6197
        ndr_print_union(ndr, name, level, "srvsvc_NetShareCtr");
 
6198
        switch (level) {
 
6199
                case 0:
 
6200
                        ndr_print_ptr(ndr, "ctr0", r->ctr0);
 
6201
                        ndr->depth++;
 
6202
                        if (r->ctr0) {
 
6203
                                ndr_print_srvsvc_NetShareCtr0(ndr, "ctr0", r->ctr0);
 
6204
                        }
 
6205
                        ndr->depth--;
 
6206
                break;
 
6207
 
 
6208
                case 1:
 
6209
                        ndr_print_ptr(ndr, "ctr1", r->ctr1);
 
6210
                        ndr->depth++;
 
6211
                        if (r->ctr1) {
 
6212
                                ndr_print_srvsvc_NetShareCtr1(ndr, "ctr1", r->ctr1);
 
6213
                        }
 
6214
                        ndr->depth--;
 
6215
                break;
 
6216
 
 
6217
                case 2:
 
6218
                        ndr_print_ptr(ndr, "ctr2", r->ctr2);
 
6219
                        ndr->depth++;
 
6220
                        if (r->ctr2) {
 
6221
                                ndr_print_srvsvc_NetShareCtr2(ndr, "ctr2", r->ctr2);
 
6222
                        }
 
6223
                        ndr->depth--;
 
6224
                break;
 
6225
 
 
6226
                case 501:
 
6227
                        ndr_print_ptr(ndr, "ctr501", r->ctr501);
 
6228
                        ndr->depth++;
 
6229
                        if (r->ctr501) {
 
6230
                                ndr_print_srvsvc_NetShareCtr501(ndr, "ctr501", r->ctr501);
 
6231
                        }
 
6232
                        ndr->depth--;
 
6233
                break;
 
6234
 
 
6235
                case 502:
 
6236
                        ndr_print_ptr(ndr, "ctr502", r->ctr502);
 
6237
                        ndr->depth++;
 
6238
                        if (r->ctr502) {
 
6239
                                ndr_print_srvsvc_NetShareCtr502(ndr, "ctr502", r->ctr502);
 
6240
                        }
 
6241
                        ndr->depth--;
 
6242
                break;
 
6243
 
 
6244
                case 1004:
 
6245
                        ndr_print_ptr(ndr, "ctr1004", r->ctr1004);
 
6246
                        ndr->depth++;
 
6247
                        if (r->ctr1004) {
 
6248
                                ndr_print_srvsvc_NetShareCtr1004(ndr, "ctr1004", r->ctr1004);
 
6249
                        }
 
6250
                        ndr->depth--;
 
6251
                break;
 
6252
 
 
6253
                case 1005:
 
6254
                        ndr_print_ptr(ndr, "ctr1005", r->ctr1005);
 
6255
                        ndr->depth++;
 
6256
                        if (r->ctr1005) {
 
6257
                                ndr_print_srvsvc_NetShareCtr1005(ndr, "ctr1005", r->ctr1005);
 
6258
                        }
 
6259
                        ndr->depth--;
 
6260
                break;
 
6261
 
 
6262
                case 1006:
 
6263
                        ndr_print_ptr(ndr, "ctr1006", r->ctr1006);
 
6264
                        ndr->depth++;
 
6265
                        if (r->ctr1006) {
 
6266
                                ndr_print_srvsvc_NetShareCtr1006(ndr, "ctr1006", r->ctr1006);
 
6267
                        }
 
6268
                        ndr->depth--;
 
6269
                break;
 
6270
 
 
6271
                case 1007:
 
6272
                        ndr_print_ptr(ndr, "ctr1007", r->ctr1007);
 
6273
                        ndr->depth++;
 
6274
                        if (r->ctr1007) {
 
6275
                                ndr_print_srvsvc_NetShareCtr1007(ndr, "ctr1007", r->ctr1007);
 
6276
                        }
 
6277
                        ndr->depth--;
 
6278
                break;
 
6279
 
 
6280
                case 1501:
 
6281
                        ndr_print_ptr(ndr, "ctr1501", r->ctr1501);
 
6282
                        ndr->depth++;
 
6283
                        if (r->ctr1501) {
 
6284
                                ndr_print_srvsvc_NetShareCtr1501(ndr, "ctr1501", r->ctr1501);
 
6285
                        }
 
6286
                        ndr->depth--;
 
6287
                break;
 
6288
 
 
6289
                default:
 
6290
                break;
 
6291
 
 
6292
        }
 
6293
}
 
6294
 
 
6295
static enum ndr_err_code ndr_push_srvsvc_NetShareInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetShareInfoCtr *r)
 
6296
{
 
6297
        if (ndr_flags & NDR_SCALARS) {
 
6298
                NDR_CHECK(ndr_push_align(ndr, 4));
 
6299
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
 
6300
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
 
6301
                NDR_CHECK(ndr_push_srvsvc_NetShareCtr(ndr, NDR_SCALARS, &r->ctr));
 
6302
        }
 
6303
        if (ndr_flags & NDR_BUFFERS) {
 
6304
                NDR_CHECK(ndr_push_srvsvc_NetShareCtr(ndr, NDR_BUFFERS, &r->ctr));
 
6305
        }
 
6306
        return NDR_ERR_SUCCESS;
 
6307
}
 
6308
 
 
6309
static enum ndr_err_code ndr_pull_srvsvc_NetShareInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetShareInfoCtr *r)
 
6310
{
 
6311
        if (ndr_flags & NDR_SCALARS) {
 
6312
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
6313
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
 
6314
                NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
 
6315
                NDR_CHECK(ndr_pull_srvsvc_NetShareCtr(ndr, NDR_SCALARS, &r->ctr));
 
6316
        }
 
6317
        if (ndr_flags & NDR_BUFFERS) {
 
6318
                NDR_CHECK(ndr_pull_srvsvc_NetShareCtr(ndr, NDR_BUFFERS, &r->ctr));
 
6319
        }
 
6320
        return NDR_ERR_SUCCESS;
 
6321
}
 
6322
 
 
6323
_PUBLIC_ void ndr_print_srvsvc_NetShareInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetShareInfoCtr *r)
 
6324
{
 
6325
        ndr_print_struct(ndr, name, "srvsvc_NetShareInfoCtr");
 
6326
        ndr->depth++;
 
6327
        ndr_print_uint32(ndr, "level", r->level);
 
6328
        ndr_print_set_switch_value(ndr, &r->ctr, r->level);
 
6329
        ndr_print_srvsvc_NetShareCtr(ndr, "ctr", &r->ctr);
 
6330
        ndr->depth--;
 
6331
}
 
6332
 
 
6333
_PUBLIC_ enum ndr_err_code ndr_push_srvsvc_PlatformId(struct ndr_push *ndr, int ndr_flags, enum srvsvc_PlatformId r)
 
6334
{
 
6335
        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
 
6336
        return NDR_ERR_SUCCESS;
 
6337
}
 
6338
 
 
6339
_PUBLIC_ enum ndr_err_code ndr_pull_srvsvc_PlatformId(struct ndr_pull *ndr, int ndr_flags, enum srvsvc_PlatformId *r)
 
6340
{
 
6341
        uint32_t v;
 
6342
        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
 
6343
        *r = v;
 
6344
        return NDR_ERR_SUCCESS;
 
6345
}
 
6346
 
 
6347
_PUBLIC_ void ndr_print_srvsvc_PlatformId(struct ndr_print *ndr, const char *name, enum srvsvc_PlatformId r)
 
6348
{
 
6349
        const char *val = NULL;
 
6350
 
 
6351
        switch (r) {
 
6352
                case PLATFORM_ID_DOS: val = "PLATFORM_ID_DOS"; break;
 
6353
                case PLATFORM_ID_OS2: val = "PLATFORM_ID_OS2"; break;
 
6354
                case PLATFORM_ID_NT: val = "PLATFORM_ID_NT"; break;
 
6355
                case PLATFORM_ID_OSF: val = "PLATFORM_ID_OSF"; break;
 
6356
                case PLATFORM_ID_VMS: val = "PLATFORM_ID_VMS"; break;
 
6357
        }
 
6358
        ndr_print_enum(ndr, name, "ENUM", val, r);
 
6359
}
 
6360
 
 
6361
_PUBLIC_ enum ndr_err_code ndr_push_srvsvc_NetSrvInfo100(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo100 *r)
 
6362
{
 
6363
        if (ndr_flags & NDR_SCALARS) {
 
6364
                NDR_CHECK(ndr_push_align(ndr, 4));
 
6365
                NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
 
6366
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
 
6367
        }
 
6368
        if (ndr_flags & NDR_BUFFERS) {
 
6369
                if (r->server_name) {
 
6370
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
 
6371
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6372
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
 
6373
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server_name, ndr_charset_length(r->server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6374
                }
 
6375
        }
 
6376
        return NDR_ERR_SUCCESS;
 
6377
}
 
6378
 
 
6379
_PUBLIC_ enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo100(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo100 *r)
 
6380
{
 
6381
        uint32_t _ptr_server_name;
 
6382
        TALLOC_CTX *_mem_save_server_name_0;
 
6383
        if (ndr_flags & NDR_SCALARS) {
 
6384
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
6385
                NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
 
6386
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
 
6387
                if (_ptr_server_name) {
 
6388
                        NDR_PULL_ALLOC(ndr, r->server_name);
 
6389
                } else {
 
6390
                        r->server_name = NULL;
 
6391
                }
 
6392
        }
 
6393
        if (ndr_flags & NDR_BUFFERS) {
 
6394
                if (r->server_name) {
 
6395
                        _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6396
                        NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
 
6397
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->server_name));
 
6398
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->server_name));
 
6399
                        if (ndr_get_array_length(ndr, &r->server_name) > ndr_get_array_size(ndr, &r->server_name)) {
 
6400
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->server_name), ndr_get_array_length(ndr, &r->server_name));
 
6401
                        }
 
6402
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->server_name), sizeof(uint16_t)));
 
6403
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server_name, ndr_get_array_length(ndr, &r->server_name), sizeof(uint16_t), CH_UTF16));
 
6404
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
 
6405
                }
 
6406
        }
 
6407
        return NDR_ERR_SUCCESS;
 
6408
}
 
6409
 
 
6410
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo100(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo100 *r)
 
6411
{
 
6412
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo100");
 
6413
        ndr->depth++;
 
6414
        ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
 
6415
        ndr_print_ptr(ndr, "server_name", r->server_name);
 
6416
        ndr->depth++;
 
6417
        if (r->server_name) {
 
6418
                ndr_print_string(ndr, "server_name", r->server_name);
 
6419
        }
 
6420
        ndr->depth--;
 
6421
        ndr->depth--;
 
6422
}
 
6423
 
 
6424
_PUBLIC_ enum ndr_err_code ndr_push_srvsvc_NetSrvInfo101(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo101 *r)
 
6425
{
 
6426
        if (ndr_flags & NDR_SCALARS) {
 
6427
                NDR_CHECK(ndr_push_align(ndr, 4));
 
6428
                NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
 
6429
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
 
6430
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
 
6431
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_minor));
 
6432
                NDR_CHECK(ndr_push_svcctl_ServerType(ndr, NDR_SCALARS, r->server_type));
 
6433
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
6434
        }
 
6435
        if (ndr_flags & NDR_BUFFERS) {
 
6436
                if (r->server_name) {
 
6437
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
 
6438
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6439
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
 
6440
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server_name, ndr_charset_length(r->server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6441
                }
 
6442
                if (r->comment) {
 
6443
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
6444
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6445
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
6446
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6447
                }
 
6448
        }
 
6449
        return NDR_ERR_SUCCESS;
 
6450
}
 
6451
 
 
6452
_PUBLIC_ enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo101(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo101 *r)
 
6453
{
 
6454
        uint32_t _ptr_server_name;
 
6455
        TALLOC_CTX *_mem_save_server_name_0;
 
6456
        uint32_t _ptr_comment;
 
6457
        TALLOC_CTX *_mem_save_comment_0;
 
6458
        if (ndr_flags & NDR_SCALARS) {
 
6459
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
6460
                NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
 
6461
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
 
6462
                if (_ptr_server_name) {
 
6463
                        NDR_PULL_ALLOC(ndr, r->server_name);
 
6464
                } else {
 
6465
                        r->server_name = NULL;
 
6466
                }
 
6467
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_major));
 
6468
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_minor));
 
6469
                NDR_CHECK(ndr_pull_svcctl_ServerType(ndr, NDR_SCALARS, &r->server_type));
 
6470
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
6471
                if (_ptr_comment) {
 
6472
                        NDR_PULL_ALLOC(ndr, r->comment);
 
6473
                } else {
 
6474
                        r->comment = NULL;
 
6475
                }
 
6476
        }
 
6477
        if (ndr_flags & NDR_BUFFERS) {
 
6478
                if (r->server_name) {
 
6479
                        _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6480
                        NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
 
6481
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->server_name));
 
6482
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->server_name));
 
6483
                        if (ndr_get_array_length(ndr, &r->server_name) > ndr_get_array_size(ndr, &r->server_name)) {
 
6484
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->server_name), ndr_get_array_length(ndr, &r->server_name));
 
6485
                        }
 
6486
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->server_name), sizeof(uint16_t)));
 
6487
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server_name, ndr_get_array_length(ndr, &r->server_name), sizeof(uint16_t), CH_UTF16));
 
6488
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
 
6489
                }
 
6490
                if (r->comment) {
 
6491
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6492
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
6493
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
6494
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
6495
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
6496
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
6497
                        }
 
6498
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
6499
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
6500
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
6501
                }
 
6502
        }
 
6503
        return NDR_ERR_SUCCESS;
 
6504
}
 
6505
 
 
6506
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo101(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo101 *r)
 
6507
{
 
6508
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo101");
 
6509
        ndr->depth++;
 
6510
        ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
 
6511
        ndr_print_ptr(ndr, "server_name", r->server_name);
 
6512
        ndr->depth++;
 
6513
        if (r->server_name) {
 
6514
                ndr_print_string(ndr, "server_name", r->server_name);
 
6515
        }
 
6516
        ndr->depth--;
 
6517
        ndr_print_uint32(ndr, "version_major", r->version_major);
 
6518
        ndr_print_uint32(ndr, "version_minor", r->version_minor);
 
6519
        ndr_print_svcctl_ServerType(ndr, "server_type", r->server_type);
 
6520
        ndr_print_ptr(ndr, "comment", r->comment);
 
6521
        ndr->depth++;
 
6522
        if (r->comment) {
 
6523
                ndr_print_string(ndr, "comment", r->comment);
 
6524
        }
 
6525
        ndr->depth--;
 
6526
        ndr->depth--;
 
6527
}
 
6528
 
 
6529
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo102(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo102 *r)
 
6530
{
 
6531
        if (ndr_flags & NDR_SCALARS) {
 
6532
                NDR_CHECK(ndr_push_align(ndr, 4));
 
6533
                NDR_CHECK(ndr_push_srvsvc_PlatformId(ndr, NDR_SCALARS, r->platform_id));
 
6534
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->server_name));
 
6535
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_major));
 
6536
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version_minor));
 
6537
                NDR_CHECK(ndr_push_svcctl_ServerType(ndr, NDR_SCALARS, r->server_type));
 
6538
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
6539
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->users));
 
6540
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->disc));
 
6541
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->hidden));
 
6542
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->announce));
 
6543
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->anndelta));
 
6544
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->licenses));
 
6545
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->userpath));
 
6546
        }
 
6547
        if (ndr_flags & NDR_BUFFERS) {
 
6548
                if (r->server_name) {
 
6549
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
 
6550
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6551
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server_name, CH_UTF16)));
 
6552
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server_name, ndr_charset_length(r->server_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6553
                }
 
6554
                if (r->comment) {
 
6555
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
6556
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6557
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
6558
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6559
                }
 
6560
                if (r->userpath) {
 
6561
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->userpath, CH_UTF16)));
 
6562
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6563
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->userpath, CH_UTF16)));
 
6564
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->userpath, ndr_charset_length(r->userpath, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6565
                }
 
6566
        }
 
6567
        return NDR_ERR_SUCCESS;
 
6568
}
 
6569
 
 
6570
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo102(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo102 *r)
 
6571
{
 
6572
        uint32_t _ptr_server_name;
 
6573
        TALLOC_CTX *_mem_save_server_name_0;
 
6574
        uint32_t _ptr_comment;
 
6575
        TALLOC_CTX *_mem_save_comment_0;
 
6576
        uint32_t _ptr_userpath;
 
6577
        TALLOC_CTX *_mem_save_userpath_0;
 
6578
        if (ndr_flags & NDR_SCALARS) {
 
6579
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
6580
                NDR_CHECK(ndr_pull_srvsvc_PlatformId(ndr, NDR_SCALARS, &r->platform_id));
 
6581
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_name));
 
6582
                if (_ptr_server_name) {
 
6583
                        NDR_PULL_ALLOC(ndr, r->server_name);
 
6584
                } else {
 
6585
                        r->server_name = NULL;
 
6586
                }
 
6587
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_major));
 
6588
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version_minor));
 
6589
                NDR_CHECK(ndr_pull_svcctl_ServerType(ndr, NDR_SCALARS, &r->server_type));
 
6590
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
6591
                if (_ptr_comment) {
 
6592
                        NDR_PULL_ALLOC(ndr, r->comment);
 
6593
                } else {
 
6594
                        r->comment = NULL;
 
6595
                }
 
6596
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->users));
 
6597
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->disc));
 
6598
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->hidden));
 
6599
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->announce));
 
6600
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->anndelta));
 
6601
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->licenses));
 
6602
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_userpath));
 
6603
                if (_ptr_userpath) {
 
6604
                        NDR_PULL_ALLOC(ndr, r->userpath);
 
6605
                } else {
 
6606
                        r->userpath = NULL;
 
6607
                }
 
6608
        }
 
6609
        if (ndr_flags & NDR_BUFFERS) {
 
6610
                if (r->server_name) {
 
6611
                        _mem_save_server_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6612
                        NDR_PULL_SET_MEM_CTX(ndr, r->server_name, 0);
 
6613
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->server_name));
 
6614
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->server_name));
 
6615
                        if (ndr_get_array_length(ndr, &r->server_name) > ndr_get_array_size(ndr, &r->server_name)) {
 
6616
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->server_name), ndr_get_array_length(ndr, &r->server_name));
 
6617
                        }
 
6618
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->server_name), sizeof(uint16_t)));
 
6619
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server_name, ndr_get_array_length(ndr, &r->server_name), sizeof(uint16_t), CH_UTF16));
 
6620
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_name_0, 0);
 
6621
                }
 
6622
                if (r->comment) {
 
6623
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6624
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
6625
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
6626
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
6627
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
6628
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
6629
                        }
 
6630
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
6631
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
6632
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
6633
                }
 
6634
                if (r->userpath) {
 
6635
                        _mem_save_userpath_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6636
                        NDR_PULL_SET_MEM_CTX(ndr, r->userpath, 0);
 
6637
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->userpath));
 
6638
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->userpath));
 
6639
                        if (ndr_get_array_length(ndr, &r->userpath) > ndr_get_array_size(ndr, &r->userpath)) {
 
6640
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->userpath), ndr_get_array_length(ndr, &r->userpath));
 
6641
                        }
 
6642
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->userpath), sizeof(uint16_t)));
 
6643
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->userpath, ndr_get_array_length(ndr, &r->userpath), sizeof(uint16_t), CH_UTF16));
 
6644
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_userpath_0, 0);
 
6645
                }
 
6646
        }
 
6647
        return NDR_ERR_SUCCESS;
 
6648
}
 
6649
 
 
6650
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo102(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo102 *r)
 
6651
{
 
6652
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo102");
 
6653
        ndr->depth++;
 
6654
        ndr_print_srvsvc_PlatformId(ndr, "platform_id", r->platform_id);
 
6655
        ndr_print_ptr(ndr, "server_name", r->server_name);
 
6656
        ndr->depth++;
 
6657
        if (r->server_name) {
 
6658
                ndr_print_string(ndr, "server_name", r->server_name);
 
6659
        }
 
6660
        ndr->depth--;
 
6661
        ndr_print_uint32(ndr, "version_major", r->version_major);
 
6662
        ndr_print_uint32(ndr, "version_minor", r->version_minor);
 
6663
        ndr_print_svcctl_ServerType(ndr, "server_type", r->server_type);
 
6664
        ndr_print_ptr(ndr, "comment", r->comment);
 
6665
        ndr->depth++;
 
6666
        if (r->comment) {
 
6667
                ndr_print_string(ndr, "comment", r->comment);
 
6668
        }
 
6669
        ndr->depth--;
 
6670
        ndr_print_uint32(ndr, "users", r->users);
 
6671
        ndr_print_uint32(ndr, "disc", r->disc);
 
6672
        ndr_print_uint32(ndr, "hidden", r->hidden);
 
6673
        ndr_print_uint32(ndr, "announce", r->announce);
 
6674
        ndr_print_uint32(ndr, "anndelta", r->anndelta);
 
6675
        ndr_print_uint32(ndr, "licenses", r->licenses);
 
6676
        ndr_print_ptr(ndr, "userpath", r->userpath);
 
6677
        ndr->depth++;
 
6678
        if (r->userpath) {
 
6679
                ndr_print_string(ndr, "userpath", r->userpath);
 
6680
        }
 
6681
        ndr->depth--;
 
6682
        ndr->depth--;
 
6683
}
 
6684
 
 
6685
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo402(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo402 *r)
 
6686
{
 
6687
        if (ndr_flags & NDR_SCALARS) {
 
6688
                NDR_CHECK(ndr_push_align(ndr, 4));
 
6689
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ulist_mtime));
 
6690
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->glist_mtime));
 
6691
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->alist_mtime));
 
6692
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->alerts));
 
6693
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->security));
 
6694
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numadmin));
 
6695
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lanmask));
 
6696
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->guestaccount));
 
6697
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->chdevs));
 
6698
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->chdevqs));
 
6699
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->chdevjobs));
 
6700
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->connections));
 
6701
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->shares));
 
6702
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->openfiles));
 
6703
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessopen));
 
6704
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sesssvc));
 
6705
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessreqs));
 
6706
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->opensearch));
 
6707
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->activelocks));
 
6708
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numreqbufs));
 
6709
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sizereqbufs));
 
6710
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numbigbufs));
 
6711
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numfiletasks));
 
6712
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->alertsched));
 
6713
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->erroralert));
 
6714
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->logonalert));
 
6715
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->accessalert));
 
6716
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->diskalert));
 
6717
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->netioalert));
 
6718
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxaudits));
 
6719
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->srvheuristics));
 
6720
        }
 
6721
        if (ndr_flags & NDR_BUFFERS) {
 
6722
                if (r->alerts) {
 
6723
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->alerts, CH_UTF16)));
 
6724
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6725
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->alerts, CH_UTF16)));
 
6726
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->alerts, ndr_charset_length(r->alerts, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6727
                }
 
6728
                if (r->guestaccount) {
 
6729
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->guestaccount, CH_UTF16)));
 
6730
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6731
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->guestaccount, CH_UTF16)));
 
6732
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->guestaccount, ndr_charset_length(r->guestaccount, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6733
                }
 
6734
                if (r->srvheuristics) {
 
6735
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->srvheuristics, CH_UTF16)));
 
6736
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6737
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->srvheuristics, CH_UTF16)));
 
6738
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->srvheuristics, ndr_charset_length(r->srvheuristics, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6739
                }
 
6740
        }
 
6741
        return NDR_ERR_SUCCESS;
 
6742
}
 
6743
 
 
6744
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo402(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo402 *r)
 
6745
{
 
6746
        uint32_t _ptr_alerts;
 
6747
        TALLOC_CTX *_mem_save_alerts_0;
 
6748
        uint32_t _ptr_guestaccount;
 
6749
        TALLOC_CTX *_mem_save_guestaccount_0;
 
6750
        uint32_t _ptr_srvheuristics;
 
6751
        TALLOC_CTX *_mem_save_srvheuristics_0;
 
6752
        if (ndr_flags & NDR_SCALARS) {
 
6753
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
6754
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ulist_mtime));
 
6755
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->glist_mtime));
 
6756
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->alist_mtime));
 
6757
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_alerts));
 
6758
                if (_ptr_alerts) {
 
6759
                        NDR_PULL_ALLOC(ndr, r->alerts);
 
6760
                } else {
 
6761
                        r->alerts = NULL;
 
6762
                }
 
6763
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->security));
 
6764
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numadmin));
 
6765
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lanmask));
 
6766
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_guestaccount));
 
6767
                if (_ptr_guestaccount) {
 
6768
                        NDR_PULL_ALLOC(ndr, r->guestaccount);
 
6769
                } else {
 
6770
                        r->guestaccount = NULL;
 
6771
                }
 
6772
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->chdevs));
 
6773
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->chdevqs));
 
6774
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->chdevjobs));
 
6775
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->connections));
 
6776
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->shares));
 
6777
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->openfiles));
 
6778
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessopen));
 
6779
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sesssvc));
 
6780
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessreqs));
 
6781
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->opensearch));
 
6782
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->activelocks));
 
6783
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numreqbufs));
 
6784
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sizereqbufs));
 
6785
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numbigbufs));
 
6786
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numfiletasks));
 
6787
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->alertsched));
 
6788
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->erroralert));
 
6789
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->logonalert));
 
6790
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->accessalert));
 
6791
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->diskalert));
 
6792
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->netioalert));
 
6793
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxaudits));
 
6794
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_srvheuristics));
 
6795
                if (_ptr_srvheuristics) {
 
6796
                        NDR_PULL_ALLOC(ndr, r->srvheuristics);
 
6797
                } else {
 
6798
                        r->srvheuristics = NULL;
 
6799
                }
 
6800
        }
 
6801
        if (ndr_flags & NDR_BUFFERS) {
 
6802
                if (r->alerts) {
 
6803
                        _mem_save_alerts_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6804
                        NDR_PULL_SET_MEM_CTX(ndr, r->alerts, 0);
 
6805
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->alerts));
 
6806
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->alerts));
 
6807
                        if (ndr_get_array_length(ndr, &r->alerts) > ndr_get_array_size(ndr, &r->alerts)) {
 
6808
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->alerts), ndr_get_array_length(ndr, &r->alerts));
 
6809
                        }
 
6810
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->alerts), sizeof(uint16_t)));
 
6811
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->alerts, ndr_get_array_length(ndr, &r->alerts), sizeof(uint16_t), CH_UTF16));
 
6812
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alerts_0, 0);
 
6813
                }
 
6814
                if (r->guestaccount) {
 
6815
                        _mem_save_guestaccount_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6816
                        NDR_PULL_SET_MEM_CTX(ndr, r->guestaccount, 0);
 
6817
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->guestaccount));
 
6818
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->guestaccount));
 
6819
                        if (ndr_get_array_length(ndr, &r->guestaccount) > ndr_get_array_size(ndr, &r->guestaccount)) {
 
6820
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->guestaccount), ndr_get_array_length(ndr, &r->guestaccount));
 
6821
                        }
 
6822
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->guestaccount), sizeof(uint16_t)));
 
6823
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->guestaccount, ndr_get_array_length(ndr, &r->guestaccount), sizeof(uint16_t), CH_UTF16));
 
6824
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_guestaccount_0, 0);
 
6825
                }
 
6826
                if (r->srvheuristics) {
 
6827
                        _mem_save_srvheuristics_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
6828
                        NDR_PULL_SET_MEM_CTX(ndr, r->srvheuristics, 0);
 
6829
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->srvheuristics));
 
6830
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->srvheuristics));
 
6831
                        if (ndr_get_array_length(ndr, &r->srvheuristics) > ndr_get_array_size(ndr, &r->srvheuristics)) {
 
6832
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->srvheuristics), ndr_get_array_length(ndr, &r->srvheuristics));
 
6833
                        }
 
6834
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->srvheuristics), sizeof(uint16_t)));
 
6835
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->srvheuristics, ndr_get_array_length(ndr, &r->srvheuristics), sizeof(uint16_t), CH_UTF16));
 
6836
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_srvheuristics_0, 0);
 
6837
                }
 
6838
        }
 
6839
        return NDR_ERR_SUCCESS;
 
6840
}
 
6841
 
 
6842
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo402(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo402 *r)
 
6843
{
 
6844
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo402");
 
6845
        ndr->depth++;
 
6846
        ndr_print_uint32(ndr, "ulist_mtime", r->ulist_mtime);
 
6847
        ndr_print_uint32(ndr, "glist_mtime", r->glist_mtime);
 
6848
        ndr_print_uint32(ndr, "alist_mtime", r->alist_mtime);
 
6849
        ndr_print_ptr(ndr, "alerts", r->alerts);
 
6850
        ndr->depth++;
 
6851
        if (r->alerts) {
 
6852
                ndr_print_string(ndr, "alerts", r->alerts);
 
6853
        }
 
6854
        ndr->depth--;
 
6855
        ndr_print_uint32(ndr, "security", r->security);
 
6856
        ndr_print_uint32(ndr, "numadmin", r->numadmin);
 
6857
        ndr_print_uint32(ndr, "lanmask", r->lanmask);
 
6858
        ndr_print_ptr(ndr, "guestaccount", r->guestaccount);
 
6859
        ndr->depth++;
 
6860
        if (r->guestaccount) {
 
6861
                ndr_print_string(ndr, "guestaccount", r->guestaccount);
 
6862
        }
 
6863
        ndr->depth--;
 
6864
        ndr_print_uint32(ndr, "chdevs", r->chdevs);
 
6865
        ndr_print_uint32(ndr, "chdevqs", r->chdevqs);
 
6866
        ndr_print_uint32(ndr, "chdevjobs", r->chdevjobs);
 
6867
        ndr_print_uint32(ndr, "connections", r->connections);
 
6868
        ndr_print_uint32(ndr, "shares", r->shares);
 
6869
        ndr_print_uint32(ndr, "openfiles", r->openfiles);
 
6870
        ndr_print_uint32(ndr, "sessopen", r->sessopen);
 
6871
        ndr_print_uint32(ndr, "sesssvc", r->sesssvc);
 
6872
        ndr_print_uint32(ndr, "sessreqs", r->sessreqs);
 
6873
        ndr_print_uint32(ndr, "opensearch", r->opensearch);
 
6874
        ndr_print_uint32(ndr, "activelocks", r->activelocks);
 
6875
        ndr_print_uint32(ndr, "numreqbufs", r->numreqbufs);
 
6876
        ndr_print_uint32(ndr, "sizereqbufs", r->sizereqbufs);
 
6877
        ndr_print_uint32(ndr, "numbigbufs", r->numbigbufs);
 
6878
        ndr_print_uint32(ndr, "numfiletasks", r->numfiletasks);
 
6879
        ndr_print_uint32(ndr, "alertsched", r->alertsched);
 
6880
        ndr_print_uint32(ndr, "erroralert", r->erroralert);
 
6881
        ndr_print_uint32(ndr, "logonalert", r->logonalert);
 
6882
        ndr_print_uint32(ndr, "accessalert", r->accessalert);
 
6883
        ndr_print_uint32(ndr, "diskalert", r->diskalert);
 
6884
        ndr_print_uint32(ndr, "netioalert", r->netioalert);
 
6885
        ndr_print_uint32(ndr, "maxaudits", r->maxaudits);
 
6886
        ndr_print_ptr(ndr, "srvheuristics", r->srvheuristics);
 
6887
        ndr->depth++;
 
6888
        if (r->srvheuristics) {
 
6889
                ndr_print_string(ndr, "srvheuristics", r->srvheuristics);
 
6890
        }
 
6891
        ndr->depth--;
 
6892
        ndr->depth--;
 
6893
}
 
6894
 
 
6895
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo403(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo403 *r)
 
6896
{
 
6897
        if (ndr_flags & NDR_SCALARS) {
 
6898
                NDR_CHECK(ndr_push_align(ndr, 4));
 
6899
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ulist_mtime));
 
6900
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->glist_mtime));
 
6901
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->alist_mtime));
 
6902
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->alerts));
 
6903
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->security));
 
6904
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numadmin));
 
6905
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lanmask));
 
6906
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->guestaccount));
 
6907
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->chdevs));
 
6908
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->chdevqs));
 
6909
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->chdevjobs));
 
6910
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->connections));
 
6911
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->shares));
 
6912
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->openfiles));
 
6913
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessopen));
 
6914
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sesssvc));
 
6915
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessreqs));
 
6916
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->opensearch));
 
6917
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->activelocks));
 
6918
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numreqbufs));
 
6919
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sizereqbufs));
 
6920
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numbigbufs));
 
6921
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numfiletasks));
 
6922
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->alertsched));
 
6923
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->erroralert));
 
6924
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->logonalert));
 
6925
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->accessalert));
 
6926
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->diskalert));
 
6927
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->netioalert));
 
6928
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxaudits));
 
6929
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->srvheuristics));
 
6930
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->auditedevents));
 
6931
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->auditprofile));
 
6932
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->autopath));
 
6933
        }
 
6934
        if (ndr_flags & NDR_BUFFERS) {
 
6935
                if (r->alerts) {
 
6936
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->alerts, CH_UTF16)));
 
6937
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6938
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->alerts, CH_UTF16)));
 
6939
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->alerts, ndr_charset_length(r->alerts, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6940
                }
 
6941
                if (r->guestaccount) {
 
6942
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->guestaccount, CH_UTF16)));
 
6943
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6944
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->guestaccount, CH_UTF16)));
 
6945
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->guestaccount, ndr_charset_length(r->guestaccount, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6946
                }
 
6947
                if (r->srvheuristics) {
 
6948
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->srvheuristics, CH_UTF16)));
 
6949
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6950
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->srvheuristics, CH_UTF16)));
 
6951
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->srvheuristics, ndr_charset_length(r->srvheuristics, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6952
                }
 
6953
                if (r->autopath) {
 
6954
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->autopath, CH_UTF16)));
 
6955
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
6956
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->autopath, CH_UTF16)));
 
6957
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->autopath, ndr_charset_length(r->autopath, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
6958
                }
 
6959
        }
 
6960
        return NDR_ERR_SUCCESS;
 
6961
}
 
6962
 
 
6963
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo403(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo403 *r)
 
6964
{
 
6965
        uint32_t _ptr_alerts;
 
6966
        TALLOC_CTX *_mem_save_alerts_0;
 
6967
        uint32_t _ptr_guestaccount;
 
6968
        TALLOC_CTX *_mem_save_guestaccount_0;
 
6969
        uint32_t _ptr_srvheuristics;
 
6970
        TALLOC_CTX *_mem_save_srvheuristics_0;
 
6971
        uint32_t _ptr_autopath;
 
6972
        TALLOC_CTX *_mem_save_autopath_0;
 
6973
        if (ndr_flags & NDR_SCALARS) {
 
6974
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
6975
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ulist_mtime));
 
6976
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->glist_mtime));
 
6977
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->alist_mtime));
 
6978
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_alerts));
 
6979
                if (_ptr_alerts) {
 
6980
                        NDR_PULL_ALLOC(ndr, r->alerts);
 
6981
                } else {
 
6982
                        r->alerts = NULL;
 
6983
                }
 
6984
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->security));
 
6985
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numadmin));
 
6986
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lanmask));
 
6987
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_guestaccount));
 
6988
                if (_ptr_guestaccount) {
 
6989
                        NDR_PULL_ALLOC(ndr, r->guestaccount);
 
6990
                } else {
 
6991
                        r->guestaccount = NULL;
 
6992
                }
 
6993
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->chdevs));
 
6994
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->chdevqs));
 
6995
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->chdevjobs));
 
6996
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->connections));
 
6997
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->shares));
 
6998
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->openfiles));
 
6999
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessopen));
 
7000
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sesssvc));
 
7001
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessreqs));
 
7002
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->opensearch));
 
7003
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->activelocks));
 
7004
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numreqbufs));
 
7005
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sizereqbufs));
 
7006
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numbigbufs));
 
7007
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numfiletasks));
 
7008
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->alertsched));
 
7009
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->erroralert));
 
7010
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->logonalert));
 
7011
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->accessalert));
 
7012
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->diskalert));
 
7013
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->netioalert));
 
7014
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxaudits));
 
7015
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_srvheuristics));
 
7016
                if (_ptr_srvheuristics) {
 
7017
                        NDR_PULL_ALLOC(ndr, r->srvheuristics);
 
7018
                } else {
 
7019
                        r->srvheuristics = NULL;
 
7020
                }
 
7021
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->auditedevents));
 
7022
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->auditprofile));
 
7023
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_autopath));
 
7024
                if (_ptr_autopath) {
 
7025
                        NDR_PULL_ALLOC(ndr, r->autopath);
 
7026
                } else {
 
7027
                        r->autopath = NULL;
 
7028
                }
 
7029
        }
 
7030
        if (ndr_flags & NDR_BUFFERS) {
 
7031
                if (r->alerts) {
 
7032
                        _mem_save_alerts_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7033
                        NDR_PULL_SET_MEM_CTX(ndr, r->alerts, 0);
 
7034
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->alerts));
 
7035
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->alerts));
 
7036
                        if (ndr_get_array_length(ndr, &r->alerts) > ndr_get_array_size(ndr, &r->alerts)) {
 
7037
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->alerts), ndr_get_array_length(ndr, &r->alerts));
 
7038
                        }
 
7039
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->alerts), sizeof(uint16_t)));
 
7040
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->alerts, ndr_get_array_length(ndr, &r->alerts), sizeof(uint16_t), CH_UTF16));
 
7041
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_alerts_0, 0);
 
7042
                }
 
7043
                if (r->guestaccount) {
 
7044
                        _mem_save_guestaccount_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7045
                        NDR_PULL_SET_MEM_CTX(ndr, r->guestaccount, 0);
 
7046
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->guestaccount));
 
7047
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->guestaccount));
 
7048
                        if (ndr_get_array_length(ndr, &r->guestaccount) > ndr_get_array_size(ndr, &r->guestaccount)) {
 
7049
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->guestaccount), ndr_get_array_length(ndr, &r->guestaccount));
 
7050
                        }
 
7051
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->guestaccount), sizeof(uint16_t)));
 
7052
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->guestaccount, ndr_get_array_length(ndr, &r->guestaccount), sizeof(uint16_t), CH_UTF16));
 
7053
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_guestaccount_0, 0);
 
7054
                }
 
7055
                if (r->srvheuristics) {
 
7056
                        _mem_save_srvheuristics_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7057
                        NDR_PULL_SET_MEM_CTX(ndr, r->srvheuristics, 0);
 
7058
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->srvheuristics));
 
7059
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->srvheuristics));
 
7060
                        if (ndr_get_array_length(ndr, &r->srvheuristics) > ndr_get_array_size(ndr, &r->srvheuristics)) {
 
7061
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->srvheuristics), ndr_get_array_length(ndr, &r->srvheuristics));
 
7062
                        }
 
7063
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->srvheuristics), sizeof(uint16_t)));
 
7064
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->srvheuristics, ndr_get_array_length(ndr, &r->srvheuristics), sizeof(uint16_t), CH_UTF16));
 
7065
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_srvheuristics_0, 0);
 
7066
                }
 
7067
                if (r->autopath) {
 
7068
                        _mem_save_autopath_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7069
                        NDR_PULL_SET_MEM_CTX(ndr, r->autopath, 0);
 
7070
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->autopath));
 
7071
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->autopath));
 
7072
                        if (ndr_get_array_length(ndr, &r->autopath) > ndr_get_array_size(ndr, &r->autopath)) {
 
7073
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->autopath), ndr_get_array_length(ndr, &r->autopath));
 
7074
                        }
 
7075
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->autopath), sizeof(uint16_t)));
 
7076
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->autopath, ndr_get_array_length(ndr, &r->autopath), sizeof(uint16_t), CH_UTF16));
 
7077
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_autopath_0, 0);
 
7078
                }
 
7079
        }
 
7080
        return NDR_ERR_SUCCESS;
 
7081
}
 
7082
 
 
7083
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo403(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo403 *r)
 
7084
{
 
7085
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo403");
 
7086
        ndr->depth++;
 
7087
        ndr_print_uint32(ndr, "ulist_mtime", r->ulist_mtime);
 
7088
        ndr_print_uint32(ndr, "glist_mtime", r->glist_mtime);
 
7089
        ndr_print_uint32(ndr, "alist_mtime", r->alist_mtime);
 
7090
        ndr_print_ptr(ndr, "alerts", r->alerts);
 
7091
        ndr->depth++;
 
7092
        if (r->alerts) {
 
7093
                ndr_print_string(ndr, "alerts", r->alerts);
 
7094
        }
 
7095
        ndr->depth--;
 
7096
        ndr_print_uint32(ndr, "security", r->security);
 
7097
        ndr_print_uint32(ndr, "numadmin", r->numadmin);
 
7098
        ndr_print_uint32(ndr, "lanmask", r->lanmask);
 
7099
        ndr_print_ptr(ndr, "guestaccount", r->guestaccount);
 
7100
        ndr->depth++;
 
7101
        if (r->guestaccount) {
 
7102
                ndr_print_string(ndr, "guestaccount", r->guestaccount);
 
7103
        }
 
7104
        ndr->depth--;
 
7105
        ndr_print_uint32(ndr, "chdevs", r->chdevs);
 
7106
        ndr_print_uint32(ndr, "chdevqs", r->chdevqs);
 
7107
        ndr_print_uint32(ndr, "chdevjobs", r->chdevjobs);
 
7108
        ndr_print_uint32(ndr, "connections", r->connections);
 
7109
        ndr_print_uint32(ndr, "shares", r->shares);
 
7110
        ndr_print_uint32(ndr, "openfiles", r->openfiles);
 
7111
        ndr_print_uint32(ndr, "sessopen", r->sessopen);
 
7112
        ndr_print_uint32(ndr, "sesssvc", r->sesssvc);
 
7113
        ndr_print_uint32(ndr, "sessreqs", r->sessreqs);
 
7114
        ndr_print_uint32(ndr, "opensearch", r->opensearch);
 
7115
        ndr_print_uint32(ndr, "activelocks", r->activelocks);
 
7116
        ndr_print_uint32(ndr, "numreqbufs", r->numreqbufs);
 
7117
        ndr_print_uint32(ndr, "sizereqbufs", r->sizereqbufs);
 
7118
        ndr_print_uint32(ndr, "numbigbufs", r->numbigbufs);
 
7119
        ndr_print_uint32(ndr, "numfiletasks", r->numfiletasks);
 
7120
        ndr_print_uint32(ndr, "alertsched", r->alertsched);
 
7121
        ndr_print_uint32(ndr, "erroralert", r->erroralert);
 
7122
        ndr_print_uint32(ndr, "logonalert", r->logonalert);
 
7123
        ndr_print_uint32(ndr, "accessalert", r->accessalert);
 
7124
        ndr_print_uint32(ndr, "diskalert", r->diskalert);
 
7125
        ndr_print_uint32(ndr, "netioalert", r->netioalert);
 
7126
        ndr_print_uint32(ndr, "maxaudits", r->maxaudits);
 
7127
        ndr_print_ptr(ndr, "srvheuristics", r->srvheuristics);
 
7128
        ndr->depth++;
 
7129
        if (r->srvheuristics) {
 
7130
                ndr_print_string(ndr, "srvheuristics", r->srvheuristics);
 
7131
        }
 
7132
        ndr->depth--;
 
7133
        ndr_print_uint32(ndr, "auditedevents", r->auditedevents);
 
7134
        ndr_print_uint32(ndr, "auditprofile", r->auditprofile);
 
7135
        ndr_print_ptr(ndr, "autopath", r->autopath);
 
7136
        ndr->depth++;
 
7137
        if (r->autopath) {
 
7138
                ndr_print_string(ndr, "autopath", r->autopath);
 
7139
        }
 
7140
        ndr->depth--;
 
7141
        ndr->depth--;
 
7142
}
 
7143
 
 
7144
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo502(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo502 *r)
 
7145
{
 
7146
        if (ndr_flags & NDR_SCALARS) {
 
7147
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7148
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessopen));
 
7149
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sesssvc));
 
7150
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->opensearch));
 
7151
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sizereqbufs));
 
7152
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initworkitems));
 
7153
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxworkitems));
 
7154
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rawworkitems));
 
7155
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->irpstacksize));
 
7156
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxrawbuflen));
 
7157
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessusers));
 
7158
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessconns));
 
7159
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxpagedmemoryusage));
 
7160
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxnonpagedmemoryusage));
 
7161
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesoftcompat));
 
7162
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableforcedlogoff));
 
7163
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timesource));
 
7164
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->acceptdownlevelapis));
 
7165
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lmannounce));
 
7166
        }
 
7167
        if (ndr_flags & NDR_BUFFERS) {
 
7168
        }
 
7169
        return NDR_ERR_SUCCESS;
 
7170
}
 
7171
 
 
7172
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo502(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo502 *r)
 
7173
{
 
7174
        if (ndr_flags & NDR_SCALARS) {
 
7175
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7176
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessopen));
 
7177
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sesssvc));
 
7178
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->opensearch));
 
7179
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sizereqbufs));
 
7180
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initworkitems));
 
7181
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxworkitems));
 
7182
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rawworkitems));
 
7183
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->irpstacksize));
 
7184
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxrawbuflen));
 
7185
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessusers));
 
7186
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessconns));
 
7187
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxpagedmemoryusage));
 
7188
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxnonpagedmemoryusage));
 
7189
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesoftcompat));
 
7190
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableforcedlogoff));
 
7191
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timesource));
 
7192
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->acceptdownlevelapis));
 
7193
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lmannounce));
 
7194
        }
 
7195
        if (ndr_flags & NDR_BUFFERS) {
 
7196
        }
 
7197
        return NDR_ERR_SUCCESS;
 
7198
}
 
7199
 
 
7200
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo502(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo502 *r)
 
7201
{
 
7202
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo502");
 
7203
        ndr->depth++;
 
7204
        ndr_print_uint32(ndr, "sessopen", r->sessopen);
 
7205
        ndr_print_uint32(ndr, "sesssvc", r->sesssvc);
 
7206
        ndr_print_uint32(ndr, "opensearch", r->opensearch);
 
7207
        ndr_print_uint32(ndr, "sizereqbufs", r->sizereqbufs);
 
7208
        ndr_print_uint32(ndr, "initworkitems", r->initworkitems);
 
7209
        ndr_print_uint32(ndr, "maxworkitems", r->maxworkitems);
 
7210
        ndr_print_uint32(ndr, "rawworkitems", r->rawworkitems);
 
7211
        ndr_print_uint32(ndr, "irpstacksize", r->irpstacksize);
 
7212
        ndr_print_uint32(ndr, "maxrawbuflen", r->maxrawbuflen);
 
7213
        ndr_print_uint32(ndr, "sessusers", r->sessusers);
 
7214
        ndr_print_uint32(ndr, "sessconns", r->sessconns);
 
7215
        ndr_print_uint32(ndr, "maxpagedmemoryusage", r->maxpagedmemoryusage);
 
7216
        ndr_print_uint32(ndr, "maxnonpagedmemoryusage", r->maxnonpagedmemoryusage);
 
7217
        ndr_print_uint32(ndr, "enablesoftcompat", r->enablesoftcompat);
 
7218
        ndr_print_uint32(ndr, "enableforcedlogoff", r->enableforcedlogoff);
 
7219
        ndr_print_uint32(ndr, "timesource", r->timesource);
 
7220
        ndr_print_uint32(ndr, "acceptdownlevelapis", r->acceptdownlevelapis);
 
7221
        ndr_print_uint32(ndr, "lmannounce", r->lmannounce);
 
7222
        ndr->depth--;
 
7223
}
 
7224
 
 
7225
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo503(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo503 *r)
 
7226
{
 
7227
        if (ndr_flags & NDR_SCALARS) {
 
7228
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7229
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessopen));
 
7230
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sesssvc));
 
7231
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->opensearch));
 
7232
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sizereqbufs));
 
7233
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initworkitems));
 
7234
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxworkitems));
 
7235
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rawworkitems));
 
7236
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->irpstacksize));
 
7237
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxrawbuflen));
 
7238
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessusers));
 
7239
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessconns));
 
7240
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxpagedmemoryusage));
 
7241
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxnonpagedmemoryusage));
 
7242
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesoftcompat));
 
7243
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableforcedlogoff));
 
7244
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timesource));
 
7245
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->acceptdownlevelapis));
 
7246
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lmannounce));
 
7247
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain));
 
7248
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxcopyreadlen));
 
7249
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxcopywritelen));
 
7250
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minkeepsearch));
 
7251
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxkeepsearch));
 
7252
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minkeepcomplsearch));
 
7253
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxkeepcomplsearch));
 
7254
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->threadcountadd));
 
7255
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numlockthreads));
 
7256
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->scavtimeout));
 
7257
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minrcvqueue));
 
7258
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minfreeworkitems));
 
7259
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->xactmemsize));
 
7260
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->threadpriority));
 
7261
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxmpxct));
 
7262
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->oplockbreakwait));
 
7263
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->oplockbreakresponsewait));
 
7264
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableoplocks));
 
7265
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableoplockforceclose));
 
7266
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablefcbopens));
 
7267
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableraw));
 
7268
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesharednetdrives));
 
7269
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minfreeconnections));
 
7270
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxfreeconnections));
 
7271
        }
 
7272
        if (ndr_flags & NDR_BUFFERS) {
 
7273
                if (r->domain) {
 
7274
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
7275
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
7276
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
7277
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain, ndr_charset_length(r->domain, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
7278
                }
 
7279
        }
 
7280
        return NDR_ERR_SUCCESS;
 
7281
}
 
7282
 
 
7283
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo503(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo503 *r)
 
7284
{
 
7285
        uint32_t _ptr_domain;
 
7286
        TALLOC_CTX *_mem_save_domain_0;
 
7287
        if (ndr_flags & NDR_SCALARS) {
 
7288
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7289
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessopen));
 
7290
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sesssvc));
 
7291
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->opensearch));
 
7292
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sizereqbufs));
 
7293
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initworkitems));
 
7294
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxworkitems));
 
7295
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rawworkitems));
 
7296
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->irpstacksize));
 
7297
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxrawbuflen));
 
7298
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessusers));
 
7299
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessconns));
 
7300
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxpagedmemoryusage));
 
7301
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxnonpagedmemoryusage));
 
7302
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesoftcompat));
 
7303
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableforcedlogoff));
 
7304
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timesource));
 
7305
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->acceptdownlevelapis));
 
7306
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lmannounce));
 
7307
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain));
 
7308
                if (_ptr_domain) {
 
7309
                        NDR_PULL_ALLOC(ndr, r->domain);
 
7310
                } else {
 
7311
                        r->domain = NULL;
 
7312
                }
 
7313
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxcopyreadlen));
 
7314
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxcopywritelen));
 
7315
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minkeepsearch));
 
7316
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxkeepsearch));
 
7317
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minkeepcomplsearch));
 
7318
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxkeepcomplsearch));
 
7319
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->threadcountadd));
 
7320
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numlockthreads));
 
7321
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->scavtimeout));
 
7322
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minrcvqueue));
 
7323
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minfreeworkitems));
 
7324
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->xactmemsize));
 
7325
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->threadpriority));
 
7326
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxmpxct));
 
7327
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->oplockbreakwait));
 
7328
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->oplockbreakresponsewait));
 
7329
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableoplocks));
 
7330
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableoplockforceclose));
 
7331
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablefcbopens));
 
7332
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableraw));
 
7333
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesharednetdrives));
 
7334
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minfreeconnections));
 
7335
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxfreeconnections));
 
7336
        }
 
7337
        if (ndr_flags & NDR_BUFFERS) {
 
7338
                if (r->domain) {
 
7339
                        _mem_save_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7340
                        NDR_PULL_SET_MEM_CTX(ndr, r->domain, 0);
 
7341
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->domain));
 
7342
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->domain));
 
7343
                        if (ndr_get_array_length(ndr, &r->domain) > ndr_get_array_size(ndr, &r->domain)) {
 
7344
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->domain), ndr_get_array_length(ndr, &r->domain));
 
7345
                        }
 
7346
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t)));
 
7347
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t), CH_UTF16));
 
7348
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_0, 0);
 
7349
                }
 
7350
        }
 
7351
        return NDR_ERR_SUCCESS;
 
7352
}
 
7353
 
 
7354
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo503(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo503 *r)
 
7355
{
 
7356
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo503");
 
7357
        ndr->depth++;
 
7358
        ndr_print_uint32(ndr, "sessopen", r->sessopen);
 
7359
        ndr_print_uint32(ndr, "sesssvc", r->sesssvc);
 
7360
        ndr_print_uint32(ndr, "opensearch", r->opensearch);
 
7361
        ndr_print_uint32(ndr, "sizereqbufs", r->sizereqbufs);
 
7362
        ndr_print_uint32(ndr, "initworkitems", r->initworkitems);
 
7363
        ndr_print_uint32(ndr, "maxworkitems", r->maxworkitems);
 
7364
        ndr_print_uint32(ndr, "rawworkitems", r->rawworkitems);
 
7365
        ndr_print_uint32(ndr, "irpstacksize", r->irpstacksize);
 
7366
        ndr_print_uint32(ndr, "maxrawbuflen", r->maxrawbuflen);
 
7367
        ndr_print_uint32(ndr, "sessusers", r->sessusers);
 
7368
        ndr_print_uint32(ndr, "sessconns", r->sessconns);
 
7369
        ndr_print_uint32(ndr, "maxpagedmemoryusage", r->maxpagedmemoryusage);
 
7370
        ndr_print_uint32(ndr, "maxnonpagedmemoryusage", r->maxnonpagedmemoryusage);
 
7371
        ndr_print_uint32(ndr, "enablesoftcompat", r->enablesoftcompat);
 
7372
        ndr_print_uint32(ndr, "enableforcedlogoff", r->enableforcedlogoff);
 
7373
        ndr_print_uint32(ndr, "timesource", r->timesource);
 
7374
        ndr_print_uint32(ndr, "acceptdownlevelapis", r->acceptdownlevelapis);
 
7375
        ndr_print_uint32(ndr, "lmannounce", r->lmannounce);
 
7376
        ndr_print_ptr(ndr, "domain", r->domain);
 
7377
        ndr->depth++;
 
7378
        if (r->domain) {
 
7379
                ndr_print_string(ndr, "domain", r->domain);
 
7380
        }
 
7381
        ndr->depth--;
 
7382
        ndr_print_uint32(ndr, "maxcopyreadlen", r->maxcopyreadlen);
 
7383
        ndr_print_uint32(ndr, "maxcopywritelen", r->maxcopywritelen);
 
7384
        ndr_print_uint32(ndr, "minkeepsearch", r->minkeepsearch);
 
7385
        ndr_print_uint32(ndr, "maxkeepsearch", r->maxkeepsearch);
 
7386
        ndr_print_uint32(ndr, "minkeepcomplsearch", r->minkeepcomplsearch);
 
7387
        ndr_print_uint32(ndr, "maxkeepcomplsearch", r->maxkeepcomplsearch);
 
7388
        ndr_print_uint32(ndr, "threadcountadd", r->threadcountadd);
 
7389
        ndr_print_uint32(ndr, "numlockthreads", r->numlockthreads);
 
7390
        ndr_print_uint32(ndr, "scavtimeout", r->scavtimeout);
 
7391
        ndr_print_uint32(ndr, "minrcvqueue", r->minrcvqueue);
 
7392
        ndr_print_uint32(ndr, "minfreeworkitems", r->minfreeworkitems);
 
7393
        ndr_print_uint32(ndr, "xactmemsize", r->xactmemsize);
 
7394
        ndr_print_uint32(ndr, "threadpriority", r->threadpriority);
 
7395
        ndr_print_uint32(ndr, "maxmpxct", r->maxmpxct);
 
7396
        ndr_print_uint32(ndr, "oplockbreakwait", r->oplockbreakwait);
 
7397
        ndr_print_uint32(ndr, "oplockbreakresponsewait", r->oplockbreakresponsewait);
 
7398
        ndr_print_uint32(ndr, "enableoplocks", r->enableoplocks);
 
7399
        ndr_print_uint32(ndr, "enableoplockforceclose", r->enableoplockforceclose);
 
7400
        ndr_print_uint32(ndr, "enablefcbopens", r->enablefcbopens);
 
7401
        ndr_print_uint32(ndr, "enableraw", r->enableraw);
 
7402
        ndr_print_uint32(ndr, "enablesharednetdrives", r->enablesharednetdrives);
 
7403
        ndr_print_uint32(ndr, "minfreeconnections", r->minfreeconnections);
 
7404
        ndr_print_uint32(ndr, "maxfreeconnections", r->maxfreeconnections);
 
7405
        ndr->depth--;
 
7406
}
 
7407
 
 
7408
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo599(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo599 *r)
 
7409
{
 
7410
        if (ndr_flags & NDR_SCALARS) {
 
7411
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7412
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessopen));
 
7413
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sesssvc));
 
7414
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->opensearch));
 
7415
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sizereqbufs));
 
7416
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initworkitems));
 
7417
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxworkitems));
 
7418
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rawworkitems));
 
7419
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->irpstacksize));
 
7420
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxrawbuflen));
 
7421
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessusers));
 
7422
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessconns));
 
7423
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxpagedmemoryusage));
 
7424
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxnonpagedmemoryusage));
 
7425
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesoftcompat));
 
7426
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableforcedlogoff));
 
7427
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timesource));
 
7428
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->acceptdownlevelapis));
 
7429
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lmannounce));
 
7430
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain));
 
7431
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxcopyreadlen));
 
7432
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxcopywritelen));
 
7433
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minkeepsearch));
 
7434
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minkeepcomplsearch));
 
7435
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxkeepcomplsearch));
 
7436
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->threadcountadd));
 
7437
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->numlockthreads));
 
7438
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->scavtimeout));
 
7439
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minrcvqueue));
 
7440
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minfreeworkitems));
 
7441
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->xactmemsize));
 
7442
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->threadpriority));
 
7443
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxmpxct));
 
7444
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->oplockbreakwait));
 
7445
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->oplockbreakresponsewait));
 
7446
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableoplocks));
 
7447
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableoplockforceclose));
 
7448
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablefcbopens));
 
7449
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableraw));
 
7450
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesharednetdrives));
 
7451
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minfreeconnections));
 
7452
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxfreeconnections));
 
7453
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initsesstable));
 
7454
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initconntable));
 
7455
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initfiletable));
 
7456
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initsearchtable));
 
7457
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->alertsched));
 
7458
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->errortreshold));
 
7459
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->networkerrortreshold));
 
7460
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->diskspacetreshold));
 
7461
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reserved));
 
7462
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxlinkdelay));
 
7463
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minlinkthroughput));
 
7464
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->linkinfovalidtime));
 
7465
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->scavqosinfoupdatetime));
 
7466
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxworkitemidletime));
 
7467
        }
 
7468
        if (ndr_flags & NDR_BUFFERS) {
 
7469
                if (r->domain) {
 
7470
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
7471
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
7472
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
7473
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain, ndr_charset_length(r->domain, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
7474
                }
 
7475
        }
 
7476
        return NDR_ERR_SUCCESS;
 
7477
}
 
7478
 
 
7479
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo599(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo599 *r)
 
7480
{
 
7481
        uint32_t _ptr_domain;
 
7482
        TALLOC_CTX *_mem_save_domain_0;
 
7483
        if (ndr_flags & NDR_SCALARS) {
 
7484
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7485
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessopen));
 
7486
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sesssvc));
 
7487
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->opensearch));
 
7488
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sizereqbufs));
 
7489
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initworkitems));
 
7490
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxworkitems));
 
7491
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rawworkitems));
 
7492
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->irpstacksize));
 
7493
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxrawbuflen));
 
7494
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessusers));
 
7495
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessconns));
 
7496
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxpagedmemoryusage));
 
7497
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxnonpagedmemoryusage));
 
7498
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesoftcompat));
 
7499
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableforcedlogoff));
 
7500
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timesource));
 
7501
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->acceptdownlevelapis));
 
7502
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lmannounce));
 
7503
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain));
 
7504
                if (_ptr_domain) {
 
7505
                        NDR_PULL_ALLOC(ndr, r->domain);
 
7506
                } else {
 
7507
                        r->domain = NULL;
 
7508
                }
 
7509
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxcopyreadlen));
 
7510
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxcopywritelen));
 
7511
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minkeepsearch));
 
7512
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minkeepcomplsearch));
 
7513
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxkeepcomplsearch));
 
7514
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->threadcountadd));
 
7515
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->numlockthreads));
 
7516
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->scavtimeout));
 
7517
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minrcvqueue));
 
7518
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minfreeworkitems));
 
7519
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->xactmemsize));
 
7520
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->threadpriority));
 
7521
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxmpxct));
 
7522
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->oplockbreakwait));
 
7523
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->oplockbreakresponsewait));
 
7524
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableoplocks));
 
7525
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableoplockforceclose));
 
7526
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablefcbopens));
 
7527
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableraw));
 
7528
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesharednetdrives));
 
7529
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minfreeconnections));
 
7530
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxfreeconnections));
 
7531
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initsesstable));
 
7532
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initconntable));
 
7533
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initfiletable));
 
7534
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initsearchtable));
 
7535
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->alertsched));
 
7536
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->errortreshold));
 
7537
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->networkerrortreshold));
 
7538
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->diskspacetreshold));
 
7539
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->reserved));
 
7540
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxlinkdelay));
 
7541
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minlinkthroughput));
 
7542
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->linkinfovalidtime));
 
7543
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->scavqosinfoupdatetime));
 
7544
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxworkitemidletime));
 
7545
        }
 
7546
        if (ndr_flags & NDR_BUFFERS) {
 
7547
                if (r->domain) {
 
7548
                        _mem_save_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7549
                        NDR_PULL_SET_MEM_CTX(ndr, r->domain, 0);
 
7550
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->domain));
 
7551
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->domain));
 
7552
                        if (ndr_get_array_length(ndr, &r->domain) > ndr_get_array_size(ndr, &r->domain)) {
 
7553
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->domain), ndr_get_array_length(ndr, &r->domain));
 
7554
                        }
 
7555
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t)));
 
7556
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t), CH_UTF16));
 
7557
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_0, 0);
 
7558
                }
 
7559
        }
 
7560
        return NDR_ERR_SUCCESS;
 
7561
}
 
7562
 
 
7563
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo599(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo599 *r)
 
7564
{
 
7565
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo599");
 
7566
        ndr->depth++;
 
7567
        ndr_print_uint32(ndr, "sessopen", r->sessopen);
 
7568
        ndr_print_uint32(ndr, "sesssvc", r->sesssvc);
 
7569
        ndr_print_uint32(ndr, "opensearch", r->opensearch);
 
7570
        ndr_print_uint32(ndr, "sizereqbufs", r->sizereqbufs);
 
7571
        ndr_print_uint32(ndr, "initworkitems", r->initworkitems);
 
7572
        ndr_print_uint32(ndr, "maxworkitems", r->maxworkitems);
 
7573
        ndr_print_uint32(ndr, "rawworkitems", r->rawworkitems);
 
7574
        ndr_print_uint32(ndr, "irpstacksize", r->irpstacksize);
 
7575
        ndr_print_uint32(ndr, "maxrawbuflen", r->maxrawbuflen);
 
7576
        ndr_print_uint32(ndr, "sessusers", r->sessusers);
 
7577
        ndr_print_uint32(ndr, "sessconns", r->sessconns);
 
7578
        ndr_print_uint32(ndr, "maxpagedmemoryusage", r->maxpagedmemoryusage);
 
7579
        ndr_print_uint32(ndr, "maxnonpagedmemoryusage", r->maxnonpagedmemoryusage);
 
7580
        ndr_print_uint32(ndr, "enablesoftcompat", r->enablesoftcompat);
 
7581
        ndr_print_uint32(ndr, "enableforcedlogoff", r->enableforcedlogoff);
 
7582
        ndr_print_uint32(ndr, "timesource", r->timesource);
 
7583
        ndr_print_uint32(ndr, "acceptdownlevelapis", r->acceptdownlevelapis);
 
7584
        ndr_print_uint32(ndr, "lmannounce", r->lmannounce);
 
7585
        ndr_print_ptr(ndr, "domain", r->domain);
 
7586
        ndr->depth++;
 
7587
        if (r->domain) {
 
7588
                ndr_print_string(ndr, "domain", r->domain);
 
7589
        }
 
7590
        ndr->depth--;
 
7591
        ndr_print_uint32(ndr, "maxcopyreadlen", r->maxcopyreadlen);
 
7592
        ndr_print_uint32(ndr, "maxcopywritelen", r->maxcopywritelen);
 
7593
        ndr_print_uint32(ndr, "minkeepsearch", r->minkeepsearch);
 
7594
        ndr_print_uint32(ndr, "minkeepcomplsearch", r->minkeepcomplsearch);
 
7595
        ndr_print_uint32(ndr, "maxkeepcomplsearch", r->maxkeepcomplsearch);
 
7596
        ndr_print_uint32(ndr, "threadcountadd", r->threadcountadd);
 
7597
        ndr_print_uint32(ndr, "numlockthreads", r->numlockthreads);
 
7598
        ndr_print_uint32(ndr, "scavtimeout", r->scavtimeout);
 
7599
        ndr_print_uint32(ndr, "minrcvqueue", r->minrcvqueue);
 
7600
        ndr_print_uint32(ndr, "minfreeworkitems", r->minfreeworkitems);
 
7601
        ndr_print_uint32(ndr, "xactmemsize", r->xactmemsize);
 
7602
        ndr_print_uint32(ndr, "threadpriority", r->threadpriority);
 
7603
        ndr_print_uint32(ndr, "maxmpxct", r->maxmpxct);
 
7604
        ndr_print_uint32(ndr, "oplockbreakwait", r->oplockbreakwait);
 
7605
        ndr_print_uint32(ndr, "oplockbreakresponsewait", r->oplockbreakresponsewait);
 
7606
        ndr_print_uint32(ndr, "enableoplocks", r->enableoplocks);
 
7607
        ndr_print_uint32(ndr, "enableoplockforceclose", r->enableoplockforceclose);
 
7608
        ndr_print_uint32(ndr, "enablefcbopens", r->enablefcbopens);
 
7609
        ndr_print_uint32(ndr, "enableraw", r->enableraw);
 
7610
        ndr_print_uint32(ndr, "enablesharednetdrives", r->enablesharednetdrives);
 
7611
        ndr_print_uint32(ndr, "minfreeconnections", r->minfreeconnections);
 
7612
        ndr_print_uint32(ndr, "maxfreeconnections", r->maxfreeconnections);
 
7613
        ndr_print_uint32(ndr, "initsesstable", r->initsesstable);
 
7614
        ndr_print_uint32(ndr, "initconntable", r->initconntable);
 
7615
        ndr_print_uint32(ndr, "initfiletable", r->initfiletable);
 
7616
        ndr_print_uint32(ndr, "initsearchtable", r->initsearchtable);
 
7617
        ndr_print_uint32(ndr, "alertsched", r->alertsched);
 
7618
        ndr_print_uint32(ndr, "errortreshold", r->errortreshold);
 
7619
        ndr_print_uint32(ndr, "networkerrortreshold", r->networkerrortreshold);
 
7620
        ndr_print_uint32(ndr, "diskspacetreshold", r->diskspacetreshold);
 
7621
        ndr_print_uint32(ndr, "reserved", r->reserved);
 
7622
        ndr_print_uint32(ndr, "maxlinkdelay", r->maxlinkdelay);
 
7623
        ndr_print_uint32(ndr, "minlinkthroughput", r->minlinkthroughput);
 
7624
        ndr_print_uint32(ndr, "linkinfovalidtime", r->linkinfovalidtime);
 
7625
        ndr_print_uint32(ndr, "scavqosinfoupdatetime", r->scavqosinfoupdatetime);
 
7626
        ndr_print_uint32(ndr, "maxworkitemidletime", r->maxworkitemidletime);
 
7627
        ndr->depth--;
 
7628
}
 
7629
 
 
7630
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1005(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1005 *r)
 
7631
{
 
7632
        if (ndr_flags & NDR_SCALARS) {
 
7633
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7634
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
 
7635
        }
 
7636
        if (ndr_flags & NDR_BUFFERS) {
 
7637
                if (r->comment) {
 
7638
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
7639
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
7640
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
 
7641
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
7642
                }
 
7643
        }
 
7644
        return NDR_ERR_SUCCESS;
 
7645
}
 
7646
 
 
7647
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1005(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1005 *r)
 
7648
{
 
7649
        uint32_t _ptr_comment;
 
7650
        TALLOC_CTX *_mem_save_comment_0;
 
7651
        if (ndr_flags & NDR_SCALARS) {
 
7652
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7653
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
 
7654
                if (_ptr_comment) {
 
7655
                        NDR_PULL_ALLOC(ndr, r->comment);
 
7656
                } else {
 
7657
                        r->comment = NULL;
 
7658
                }
 
7659
        }
 
7660
        if (ndr_flags & NDR_BUFFERS) {
 
7661
                if (r->comment) {
 
7662
                        _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
7663
                        NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
 
7664
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
 
7665
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
 
7666
                        if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
 
7667
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->comment), ndr_get_array_length(ndr, &r->comment));
 
7668
                        }
 
7669
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
 
7670
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
 
7671
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
 
7672
                }
 
7673
        }
 
7674
        return NDR_ERR_SUCCESS;
 
7675
}
 
7676
 
 
7677
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1005(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1005 *r)
 
7678
{
 
7679
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1005");
 
7680
        ndr->depth++;
 
7681
        ndr_print_ptr(ndr, "comment", r->comment);
 
7682
        ndr->depth++;
 
7683
        if (r->comment) {
 
7684
                ndr_print_string(ndr, "comment", r->comment);
 
7685
        }
 
7686
        ndr->depth--;
 
7687
        ndr->depth--;
 
7688
}
 
7689
 
 
7690
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1010(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1010 *r)
 
7691
{
 
7692
        if (ndr_flags & NDR_SCALARS) {
 
7693
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7694
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->disc));
 
7695
        }
 
7696
        if (ndr_flags & NDR_BUFFERS) {
 
7697
        }
 
7698
        return NDR_ERR_SUCCESS;
 
7699
}
 
7700
 
 
7701
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1010(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1010 *r)
 
7702
{
 
7703
        if (ndr_flags & NDR_SCALARS) {
 
7704
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7705
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->disc));
 
7706
        }
 
7707
        if (ndr_flags & NDR_BUFFERS) {
 
7708
        }
 
7709
        return NDR_ERR_SUCCESS;
 
7710
}
 
7711
 
 
7712
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1010(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1010 *r)
 
7713
{
 
7714
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1010");
 
7715
        ndr->depth++;
 
7716
        ndr_print_uint32(ndr, "disc", r->disc);
 
7717
        ndr->depth--;
 
7718
}
 
7719
 
 
7720
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1016(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1016 *r)
 
7721
{
 
7722
        if (ndr_flags & NDR_SCALARS) {
 
7723
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7724
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->hidden));
 
7725
        }
 
7726
        if (ndr_flags & NDR_BUFFERS) {
 
7727
        }
 
7728
        return NDR_ERR_SUCCESS;
 
7729
}
 
7730
 
 
7731
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1016(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1016 *r)
 
7732
{
 
7733
        if (ndr_flags & NDR_SCALARS) {
 
7734
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7735
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->hidden));
 
7736
        }
 
7737
        if (ndr_flags & NDR_BUFFERS) {
 
7738
        }
 
7739
        return NDR_ERR_SUCCESS;
 
7740
}
 
7741
 
 
7742
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1016(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1016 *r)
 
7743
{
 
7744
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1016");
 
7745
        ndr->depth++;
 
7746
        ndr_print_uint32(ndr, "hidden", r->hidden);
 
7747
        ndr->depth--;
 
7748
}
 
7749
 
 
7750
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1017(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1017 *r)
 
7751
{
 
7752
        if (ndr_flags & NDR_SCALARS) {
 
7753
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7754
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->announce));
 
7755
        }
 
7756
        if (ndr_flags & NDR_BUFFERS) {
 
7757
        }
 
7758
        return NDR_ERR_SUCCESS;
 
7759
}
 
7760
 
 
7761
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1017(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1017 *r)
 
7762
{
 
7763
        if (ndr_flags & NDR_SCALARS) {
 
7764
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7765
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->announce));
 
7766
        }
 
7767
        if (ndr_flags & NDR_BUFFERS) {
 
7768
        }
 
7769
        return NDR_ERR_SUCCESS;
 
7770
}
 
7771
 
 
7772
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1017(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1017 *r)
 
7773
{
 
7774
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1017");
 
7775
        ndr->depth++;
 
7776
        ndr_print_uint32(ndr, "announce", r->announce);
 
7777
        ndr->depth--;
 
7778
}
 
7779
 
 
7780
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1018(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1018 *r)
 
7781
{
 
7782
        if (ndr_flags & NDR_SCALARS) {
 
7783
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7784
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->anndelta));
 
7785
        }
 
7786
        if (ndr_flags & NDR_BUFFERS) {
 
7787
        }
 
7788
        return NDR_ERR_SUCCESS;
 
7789
}
 
7790
 
 
7791
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1018(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1018 *r)
 
7792
{
 
7793
        if (ndr_flags & NDR_SCALARS) {
 
7794
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7795
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->anndelta));
 
7796
        }
 
7797
        if (ndr_flags & NDR_BUFFERS) {
 
7798
        }
 
7799
        return NDR_ERR_SUCCESS;
 
7800
}
 
7801
 
 
7802
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1018(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1018 *r)
 
7803
{
 
7804
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1018");
 
7805
        ndr->depth++;
 
7806
        ndr_print_uint32(ndr, "anndelta", r->anndelta);
 
7807
        ndr->depth--;
 
7808
}
 
7809
 
 
7810
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1107(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1107 *r)
 
7811
{
 
7812
        if (ndr_flags & NDR_SCALARS) {
 
7813
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7814
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->users));
 
7815
        }
 
7816
        if (ndr_flags & NDR_BUFFERS) {
 
7817
        }
 
7818
        return NDR_ERR_SUCCESS;
 
7819
}
 
7820
 
 
7821
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1107(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1107 *r)
 
7822
{
 
7823
        if (ndr_flags & NDR_SCALARS) {
 
7824
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7825
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->users));
 
7826
        }
 
7827
        if (ndr_flags & NDR_BUFFERS) {
 
7828
        }
 
7829
        return NDR_ERR_SUCCESS;
 
7830
}
 
7831
 
 
7832
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1107(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1107 *r)
 
7833
{
 
7834
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1107");
 
7835
        ndr->depth++;
 
7836
        ndr_print_uint32(ndr, "users", r->users);
 
7837
        ndr->depth--;
 
7838
}
 
7839
 
 
7840
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1501(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1501 *r)
 
7841
{
 
7842
        if (ndr_flags & NDR_SCALARS) {
 
7843
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7844
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessopens));
 
7845
        }
 
7846
        if (ndr_flags & NDR_BUFFERS) {
 
7847
        }
 
7848
        return NDR_ERR_SUCCESS;
 
7849
}
 
7850
 
 
7851
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1501(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1501 *r)
 
7852
{
 
7853
        if (ndr_flags & NDR_SCALARS) {
 
7854
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7855
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessopens));
 
7856
        }
 
7857
        if (ndr_flags & NDR_BUFFERS) {
 
7858
        }
 
7859
        return NDR_ERR_SUCCESS;
 
7860
}
 
7861
 
 
7862
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1501(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1501 *r)
 
7863
{
 
7864
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1501");
 
7865
        ndr->depth++;
 
7866
        ndr_print_uint32(ndr, "sessopens", r->sessopens);
 
7867
        ndr->depth--;
 
7868
}
 
7869
 
 
7870
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1502(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1502 *r)
 
7871
{
 
7872
        if (ndr_flags & NDR_SCALARS) {
 
7873
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7874
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessvcs));
 
7875
        }
 
7876
        if (ndr_flags & NDR_BUFFERS) {
 
7877
        }
 
7878
        return NDR_ERR_SUCCESS;
 
7879
}
 
7880
 
 
7881
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1502(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1502 *r)
 
7882
{
 
7883
        if (ndr_flags & NDR_SCALARS) {
 
7884
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7885
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessvcs));
 
7886
        }
 
7887
        if (ndr_flags & NDR_BUFFERS) {
 
7888
        }
 
7889
        return NDR_ERR_SUCCESS;
 
7890
}
 
7891
 
 
7892
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1502(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1502 *r)
 
7893
{
 
7894
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1502");
 
7895
        ndr->depth++;
 
7896
        ndr_print_uint32(ndr, "sessvcs", r->sessvcs);
 
7897
        ndr->depth--;
 
7898
}
 
7899
 
 
7900
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1503(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1503 *r)
 
7901
{
 
7902
        if (ndr_flags & NDR_SCALARS) {
 
7903
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7904
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->opensearch));
 
7905
        }
 
7906
        if (ndr_flags & NDR_BUFFERS) {
 
7907
        }
 
7908
        return NDR_ERR_SUCCESS;
 
7909
}
 
7910
 
 
7911
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1503(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1503 *r)
 
7912
{
 
7913
        if (ndr_flags & NDR_SCALARS) {
 
7914
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7915
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->opensearch));
 
7916
        }
 
7917
        if (ndr_flags & NDR_BUFFERS) {
 
7918
        }
 
7919
        return NDR_ERR_SUCCESS;
 
7920
}
 
7921
 
 
7922
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1503(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1503 *r)
 
7923
{
 
7924
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1503");
 
7925
        ndr->depth++;
 
7926
        ndr_print_uint32(ndr, "opensearch", r->opensearch);
 
7927
        ndr->depth--;
 
7928
}
 
7929
 
 
7930
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1506(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1506 *r)
 
7931
{
 
7932
        if (ndr_flags & NDR_SCALARS) {
 
7933
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7934
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxworkitems));
 
7935
        }
 
7936
        if (ndr_flags & NDR_BUFFERS) {
 
7937
        }
 
7938
        return NDR_ERR_SUCCESS;
 
7939
}
 
7940
 
 
7941
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1506(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1506 *r)
 
7942
{
 
7943
        if (ndr_flags & NDR_SCALARS) {
 
7944
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7945
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxworkitems));
 
7946
        }
 
7947
        if (ndr_flags & NDR_BUFFERS) {
 
7948
        }
 
7949
        return NDR_ERR_SUCCESS;
 
7950
}
 
7951
 
 
7952
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1506(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1506 *r)
 
7953
{
 
7954
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1506");
 
7955
        ndr->depth++;
 
7956
        ndr_print_uint32(ndr, "maxworkitems", r->maxworkitems);
 
7957
        ndr->depth--;
 
7958
}
 
7959
 
 
7960
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1509(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1509 *r)
 
7961
{
 
7962
        if (ndr_flags & NDR_SCALARS) {
 
7963
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7964
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxrawbuflen));
 
7965
        }
 
7966
        if (ndr_flags & NDR_BUFFERS) {
 
7967
        }
 
7968
        return NDR_ERR_SUCCESS;
 
7969
}
 
7970
 
 
7971
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1509(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1509 *r)
 
7972
{
 
7973
        if (ndr_flags & NDR_SCALARS) {
 
7974
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
7975
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxrawbuflen));
 
7976
        }
 
7977
        if (ndr_flags & NDR_BUFFERS) {
 
7978
        }
 
7979
        return NDR_ERR_SUCCESS;
 
7980
}
 
7981
 
 
7982
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1509(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1509 *r)
 
7983
{
 
7984
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1509");
 
7985
        ndr->depth++;
 
7986
        ndr_print_uint32(ndr, "maxrawbuflen", r->maxrawbuflen);
 
7987
        ndr->depth--;
 
7988
}
 
7989
 
 
7990
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1510(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1510 *r)
 
7991
{
 
7992
        if (ndr_flags & NDR_SCALARS) {
 
7993
                NDR_CHECK(ndr_push_align(ndr, 4));
 
7994
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sessusers));
 
7995
        }
 
7996
        if (ndr_flags & NDR_BUFFERS) {
 
7997
        }
 
7998
        return NDR_ERR_SUCCESS;
 
7999
}
 
8000
 
 
8001
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1510(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1510 *r)
 
8002
{
 
8003
        if (ndr_flags & NDR_SCALARS) {
 
8004
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8005
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sessusers));
 
8006
        }
 
8007
        if (ndr_flags & NDR_BUFFERS) {
 
8008
        }
 
8009
        return NDR_ERR_SUCCESS;
 
8010
}
 
8011
 
 
8012
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1510(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1510 *r)
 
8013
{
 
8014
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1510");
 
8015
        ndr->depth++;
 
8016
        ndr_print_uint32(ndr, "sessusers", r->sessusers);
 
8017
        ndr->depth--;
 
8018
}
 
8019
 
 
8020
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1511(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1511 *r)
 
8021
{
 
8022
        if (ndr_flags & NDR_SCALARS) {
 
8023
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8024
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sesscons));
 
8025
        }
 
8026
        if (ndr_flags & NDR_BUFFERS) {
 
8027
        }
 
8028
        return NDR_ERR_SUCCESS;
 
8029
}
 
8030
 
 
8031
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1511(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1511 *r)
 
8032
{
 
8033
        if (ndr_flags & NDR_SCALARS) {
 
8034
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8035
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sesscons));
 
8036
        }
 
8037
        if (ndr_flags & NDR_BUFFERS) {
 
8038
        }
 
8039
        return NDR_ERR_SUCCESS;
 
8040
}
 
8041
 
 
8042
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1511(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1511 *r)
 
8043
{
 
8044
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1511");
 
8045
        ndr->depth++;
 
8046
        ndr_print_uint32(ndr, "sesscons", r->sesscons);
 
8047
        ndr->depth--;
 
8048
}
 
8049
 
 
8050
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1512(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1512 *r)
 
8051
{
 
8052
        if (ndr_flags & NDR_SCALARS) {
 
8053
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8054
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxnonpagedmemoryusage));
 
8055
        }
 
8056
        if (ndr_flags & NDR_BUFFERS) {
 
8057
        }
 
8058
        return NDR_ERR_SUCCESS;
 
8059
}
 
8060
 
 
8061
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1512(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1512 *r)
 
8062
{
 
8063
        if (ndr_flags & NDR_SCALARS) {
 
8064
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8065
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxnonpagedmemoryusage));
 
8066
        }
 
8067
        if (ndr_flags & NDR_BUFFERS) {
 
8068
        }
 
8069
        return NDR_ERR_SUCCESS;
 
8070
}
 
8071
 
 
8072
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1512(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1512 *r)
 
8073
{
 
8074
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1512");
 
8075
        ndr->depth++;
 
8076
        ndr_print_uint32(ndr, "maxnonpagedmemoryusage", r->maxnonpagedmemoryusage);
 
8077
        ndr->depth--;
 
8078
}
 
8079
 
 
8080
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1513(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1513 *r)
 
8081
{
 
8082
        if (ndr_flags & NDR_SCALARS) {
 
8083
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8084
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxpagedmemoryusage));
 
8085
        }
 
8086
        if (ndr_flags & NDR_BUFFERS) {
 
8087
        }
 
8088
        return NDR_ERR_SUCCESS;
 
8089
}
 
8090
 
 
8091
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1513(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1513 *r)
 
8092
{
 
8093
        if (ndr_flags & NDR_SCALARS) {
 
8094
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8095
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxpagedmemoryusage));
 
8096
        }
 
8097
        if (ndr_flags & NDR_BUFFERS) {
 
8098
        }
 
8099
        return NDR_ERR_SUCCESS;
 
8100
}
 
8101
 
 
8102
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1513(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1513 *r)
 
8103
{
 
8104
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1513");
 
8105
        ndr->depth++;
 
8106
        ndr_print_uint32(ndr, "maxpagedmemoryusage", r->maxpagedmemoryusage);
 
8107
        ndr->depth--;
 
8108
}
 
8109
 
 
8110
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1514(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1514 *r)
 
8111
{
 
8112
        if (ndr_flags & NDR_SCALARS) {
 
8113
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8114
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesoftcompat));
 
8115
        }
 
8116
        if (ndr_flags & NDR_BUFFERS) {
 
8117
        }
 
8118
        return NDR_ERR_SUCCESS;
 
8119
}
 
8120
 
 
8121
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1514(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1514 *r)
 
8122
{
 
8123
        if (ndr_flags & NDR_SCALARS) {
 
8124
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8125
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesoftcompat));
 
8126
        }
 
8127
        if (ndr_flags & NDR_BUFFERS) {
 
8128
        }
 
8129
        return NDR_ERR_SUCCESS;
 
8130
}
 
8131
 
 
8132
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1514(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1514 *r)
 
8133
{
 
8134
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1514");
 
8135
        ndr->depth++;
 
8136
        ndr_print_uint32(ndr, "enablesoftcompat", r->enablesoftcompat);
 
8137
        ndr->depth--;
 
8138
}
 
8139
 
 
8140
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1515(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1515 *r)
 
8141
{
 
8142
        if (ndr_flags & NDR_SCALARS) {
 
8143
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8144
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableforcedlogoff));
 
8145
        }
 
8146
        if (ndr_flags & NDR_BUFFERS) {
 
8147
        }
 
8148
        return NDR_ERR_SUCCESS;
 
8149
}
 
8150
 
 
8151
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1515(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1515 *r)
 
8152
{
 
8153
        if (ndr_flags & NDR_SCALARS) {
 
8154
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8155
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableforcedlogoff));
 
8156
        }
 
8157
        if (ndr_flags & NDR_BUFFERS) {
 
8158
        }
 
8159
        return NDR_ERR_SUCCESS;
 
8160
}
 
8161
 
 
8162
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1515(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1515 *r)
 
8163
{
 
8164
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1515");
 
8165
        ndr->depth++;
 
8166
        ndr_print_uint32(ndr, "enableforcedlogoff", r->enableforcedlogoff);
 
8167
        ndr->depth--;
 
8168
}
 
8169
 
 
8170
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1516(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1516 *r)
 
8171
{
 
8172
        if (ndr_flags & NDR_SCALARS) {
 
8173
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8174
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timesource));
 
8175
        }
 
8176
        if (ndr_flags & NDR_BUFFERS) {
 
8177
        }
 
8178
        return NDR_ERR_SUCCESS;
 
8179
}
 
8180
 
 
8181
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1516(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1516 *r)
 
8182
{
 
8183
        if (ndr_flags & NDR_SCALARS) {
 
8184
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8185
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timesource));
 
8186
        }
 
8187
        if (ndr_flags & NDR_BUFFERS) {
 
8188
        }
 
8189
        return NDR_ERR_SUCCESS;
 
8190
}
 
8191
 
 
8192
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1516(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1516 *r)
 
8193
{
 
8194
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1516");
 
8195
        ndr->depth++;
 
8196
        ndr_print_uint32(ndr, "timesource", r->timesource);
 
8197
        ndr->depth--;
 
8198
}
 
8199
 
 
8200
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1518(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1518 *r)
 
8201
{
 
8202
        if (ndr_flags & NDR_SCALARS) {
 
8203
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8204
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->lmannounce));
 
8205
        }
 
8206
        if (ndr_flags & NDR_BUFFERS) {
 
8207
        }
 
8208
        return NDR_ERR_SUCCESS;
 
8209
}
 
8210
 
 
8211
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1518(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1518 *r)
 
8212
{
 
8213
        if (ndr_flags & NDR_SCALARS) {
 
8214
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8215
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->lmannounce));
 
8216
        }
 
8217
        if (ndr_flags & NDR_BUFFERS) {
 
8218
        }
 
8219
        return NDR_ERR_SUCCESS;
 
8220
}
 
8221
 
 
8222
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1518(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1518 *r)
 
8223
{
 
8224
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1518");
 
8225
        ndr->depth++;
 
8226
        ndr_print_uint32(ndr, "lmannounce", r->lmannounce);
 
8227
        ndr->depth--;
 
8228
}
 
8229
 
 
8230
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1520(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1520 *r)
 
8231
{
 
8232
        if (ndr_flags & NDR_SCALARS) {
 
8233
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8234
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxcopyreadlen));
 
8235
        }
 
8236
        if (ndr_flags & NDR_BUFFERS) {
 
8237
        }
 
8238
        return NDR_ERR_SUCCESS;
 
8239
}
 
8240
 
 
8241
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1520(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1520 *r)
 
8242
{
 
8243
        if (ndr_flags & NDR_SCALARS) {
 
8244
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8245
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxcopyreadlen));
 
8246
        }
 
8247
        if (ndr_flags & NDR_BUFFERS) {
 
8248
        }
 
8249
        return NDR_ERR_SUCCESS;
 
8250
}
 
8251
 
 
8252
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1520(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1520 *r)
 
8253
{
 
8254
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1520");
 
8255
        ndr->depth++;
 
8256
        ndr_print_uint32(ndr, "maxcopyreadlen", r->maxcopyreadlen);
 
8257
        ndr->depth--;
 
8258
}
 
8259
 
 
8260
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1521(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1521 *r)
 
8261
{
 
8262
        if (ndr_flags & NDR_SCALARS) {
 
8263
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8264
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxcopywritelen));
 
8265
        }
 
8266
        if (ndr_flags & NDR_BUFFERS) {
 
8267
        }
 
8268
        return NDR_ERR_SUCCESS;
 
8269
}
 
8270
 
 
8271
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1521(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1521 *r)
 
8272
{
 
8273
        if (ndr_flags & NDR_SCALARS) {
 
8274
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8275
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxcopywritelen));
 
8276
        }
 
8277
        if (ndr_flags & NDR_BUFFERS) {
 
8278
        }
 
8279
        return NDR_ERR_SUCCESS;
 
8280
}
 
8281
 
 
8282
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1521(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1521 *r)
 
8283
{
 
8284
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1521");
 
8285
        ndr->depth++;
 
8286
        ndr_print_uint32(ndr, "maxcopywritelen", r->maxcopywritelen);
 
8287
        ndr->depth--;
 
8288
}
 
8289
 
 
8290
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1522(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1522 *r)
 
8291
{
 
8292
        if (ndr_flags & NDR_SCALARS) {
 
8293
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8294
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minkeepsearch));
 
8295
        }
 
8296
        if (ndr_flags & NDR_BUFFERS) {
 
8297
        }
 
8298
        return NDR_ERR_SUCCESS;
 
8299
}
 
8300
 
 
8301
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1522(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1522 *r)
 
8302
{
 
8303
        if (ndr_flags & NDR_SCALARS) {
 
8304
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8305
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minkeepsearch));
 
8306
        }
 
8307
        if (ndr_flags & NDR_BUFFERS) {
 
8308
        }
 
8309
        return NDR_ERR_SUCCESS;
 
8310
}
 
8311
 
 
8312
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1522(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1522 *r)
 
8313
{
 
8314
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1522");
 
8315
        ndr->depth++;
 
8316
        ndr_print_uint32(ndr, "minkeepsearch", r->minkeepsearch);
 
8317
        ndr->depth--;
 
8318
}
 
8319
 
 
8320
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1523(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1523 *r)
 
8321
{
 
8322
        if (ndr_flags & NDR_SCALARS) {
 
8323
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8324
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxkeepsearch));
 
8325
        }
 
8326
        if (ndr_flags & NDR_BUFFERS) {
 
8327
        }
 
8328
        return NDR_ERR_SUCCESS;
 
8329
}
 
8330
 
 
8331
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1523(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1523 *r)
 
8332
{
 
8333
        if (ndr_flags & NDR_SCALARS) {
 
8334
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8335
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxkeepsearch));
 
8336
        }
 
8337
        if (ndr_flags & NDR_BUFFERS) {
 
8338
        }
 
8339
        return NDR_ERR_SUCCESS;
 
8340
}
 
8341
 
 
8342
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1523(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1523 *r)
 
8343
{
 
8344
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1523");
 
8345
        ndr->depth++;
 
8346
        ndr_print_uint32(ndr, "maxkeepsearch", r->maxkeepsearch);
 
8347
        ndr->depth--;
 
8348
}
 
8349
 
 
8350
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1524(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1524 *r)
 
8351
{
 
8352
        if (ndr_flags & NDR_SCALARS) {
 
8353
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8354
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minkeepcomplsearch));
 
8355
        }
 
8356
        if (ndr_flags & NDR_BUFFERS) {
 
8357
        }
 
8358
        return NDR_ERR_SUCCESS;
 
8359
}
 
8360
 
 
8361
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1524(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1524 *r)
 
8362
{
 
8363
        if (ndr_flags & NDR_SCALARS) {
 
8364
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8365
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minkeepcomplsearch));
 
8366
        }
 
8367
        if (ndr_flags & NDR_BUFFERS) {
 
8368
        }
 
8369
        return NDR_ERR_SUCCESS;
 
8370
}
 
8371
 
 
8372
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1524(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1524 *r)
 
8373
{
 
8374
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1524");
 
8375
        ndr->depth++;
 
8376
        ndr_print_uint32(ndr, "minkeepcomplsearch", r->minkeepcomplsearch);
 
8377
        ndr->depth--;
 
8378
}
 
8379
 
 
8380
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1525(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1525 *r)
 
8381
{
 
8382
        if (ndr_flags & NDR_SCALARS) {
 
8383
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8384
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxkeepcomplsearch));
 
8385
        }
 
8386
        if (ndr_flags & NDR_BUFFERS) {
 
8387
        }
 
8388
        return NDR_ERR_SUCCESS;
 
8389
}
 
8390
 
 
8391
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1525(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1525 *r)
 
8392
{
 
8393
        if (ndr_flags & NDR_SCALARS) {
 
8394
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8395
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxkeepcomplsearch));
 
8396
        }
 
8397
        if (ndr_flags & NDR_BUFFERS) {
 
8398
        }
 
8399
        return NDR_ERR_SUCCESS;
 
8400
}
 
8401
 
 
8402
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1525(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1525 *r)
 
8403
{
 
8404
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1525");
 
8405
        ndr->depth++;
 
8406
        ndr_print_uint32(ndr, "maxkeepcomplsearch", r->maxkeepcomplsearch);
 
8407
        ndr->depth--;
 
8408
}
 
8409
 
 
8410
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1528(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1528 *r)
 
8411
{
 
8412
        if (ndr_flags & NDR_SCALARS) {
 
8413
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8414
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->scavtimeout));
 
8415
        }
 
8416
        if (ndr_flags & NDR_BUFFERS) {
 
8417
        }
 
8418
        return NDR_ERR_SUCCESS;
 
8419
}
 
8420
 
 
8421
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1528(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1528 *r)
 
8422
{
 
8423
        if (ndr_flags & NDR_SCALARS) {
 
8424
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8425
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->scavtimeout));
 
8426
        }
 
8427
        if (ndr_flags & NDR_BUFFERS) {
 
8428
        }
 
8429
        return NDR_ERR_SUCCESS;
 
8430
}
 
8431
 
 
8432
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1528(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1528 *r)
 
8433
{
 
8434
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1528");
 
8435
        ndr->depth++;
 
8436
        ndr_print_uint32(ndr, "scavtimeout", r->scavtimeout);
 
8437
        ndr->depth--;
 
8438
}
 
8439
 
 
8440
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1529(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1529 *r)
 
8441
{
 
8442
        if (ndr_flags & NDR_SCALARS) {
 
8443
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8444
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minrcvqueue));
 
8445
        }
 
8446
        if (ndr_flags & NDR_BUFFERS) {
 
8447
        }
 
8448
        return NDR_ERR_SUCCESS;
 
8449
}
 
8450
 
 
8451
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1529(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1529 *r)
 
8452
{
 
8453
        if (ndr_flags & NDR_SCALARS) {
 
8454
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8455
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minrcvqueue));
 
8456
        }
 
8457
        if (ndr_flags & NDR_BUFFERS) {
 
8458
        }
 
8459
        return NDR_ERR_SUCCESS;
 
8460
}
 
8461
 
 
8462
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1529(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1529 *r)
 
8463
{
 
8464
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1529");
 
8465
        ndr->depth++;
 
8466
        ndr_print_uint32(ndr, "minrcvqueue", r->minrcvqueue);
 
8467
        ndr->depth--;
 
8468
}
 
8469
 
 
8470
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1530(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1530 *r)
 
8471
{
 
8472
        if (ndr_flags & NDR_SCALARS) {
 
8473
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8474
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minfreeworkitems));
 
8475
        }
 
8476
        if (ndr_flags & NDR_BUFFERS) {
 
8477
        }
 
8478
        return NDR_ERR_SUCCESS;
 
8479
}
 
8480
 
 
8481
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1530(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1530 *r)
 
8482
{
 
8483
        if (ndr_flags & NDR_SCALARS) {
 
8484
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8485
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minfreeworkitems));
 
8486
        }
 
8487
        if (ndr_flags & NDR_BUFFERS) {
 
8488
        }
 
8489
        return NDR_ERR_SUCCESS;
 
8490
}
 
8491
 
 
8492
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1530(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1530 *r)
 
8493
{
 
8494
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1530");
 
8495
        ndr->depth++;
 
8496
        ndr_print_uint32(ndr, "minfreeworkitems", r->minfreeworkitems);
 
8497
        ndr->depth--;
 
8498
}
 
8499
 
 
8500
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1533(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1533 *r)
 
8501
{
 
8502
        if (ndr_flags & NDR_SCALARS) {
 
8503
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8504
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxmpxct));
 
8505
        }
 
8506
        if (ndr_flags & NDR_BUFFERS) {
 
8507
        }
 
8508
        return NDR_ERR_SUCCESS;
 
8509
}
 
8510
 
 
8511
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1533(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1533 *r)
 
8512
{
 
8513
        if (ndr_flags & NDR_SCALARS) {
 
8514
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8515
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxmpxct));
 
8516
        }
 
8517
        if (ndr_flags & NDR_BUFFERS) {
 
8518
        }
 
8519
        return NDR_ERR_SUCCESS;
 
8520
}
 
8521
 
 
8522
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1533(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1533 *r)
 
8523
{
 
8524
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1533");
 
8525
        ndr->depth++;
 
8526
        ndr_print_uint32(ndr, "maxmpxct", r->maxmpxct);
 
8527
        ndr->depth--;
 
8528
}
 
8529
 
 
8530
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1534(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1534 *r)
 
8531
{
 
8532
        if (ndr_flags & NDR_SCALARS) {
 
8533
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8534
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->oplockbreakwait));
 
8535
        }
 
8536
        if (ndr_flags & NDR_BUFFERS) {
 
8537
        }
 
8538
        return NDR_ERR_SUCCESS;
 
8539
}
 
8540
 
 
8541
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1534(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1534 *r)
 
8542
{
 
8543
        if (ndr_flags & NDR_SCALARS) {
 
8544
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8545
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->oplockbreakwait));
 
8546
        }
 
8547
        if (ndr_flags & NDR_BUFFERS) {
 
8548
        }
 
8549
        return NDR_ERR_SUCCESS;
 
8550
}
 
8551
 
 
8552
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1534(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1534 *r)
 
8553
{
 
8554
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1534");
 
8555
        ndr->depth++;
 
8556
        ndr_print_uint32(ndr, "oplockbreakwait", r->oplockbreakwait);
 
8557
        ndr->depth--;
 
8558
}
 
8559
 
 
8560
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1535(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1535 *r)
 
8561
{
 
8562
        if (ndr_flags & NDR_SCALARS) {
 
8563
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8564
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->oplockbreakresponsewait));
 
8565
        }
 
8566
        if (ndr_flags & NDR_BUFFERS) {
 
8567
        }
 
8568
        return NDR_ERR_SUCCESS;
 
8569
}
 
8570
 
 
8571
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1535(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1535 *r)
 
8572
{
 
8573
        if (ndr_flags & NDR_SCALARS) {
 
8574
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8575
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->oplockbreakresponsewait));
 
8576
        }
 
8577
        if (ndr_flags & NDR_BUFFERS) {
 
8578
        }
 
8579
        return NDR_ERR_SUCCESS;
 
8580
}
 
8581
 
 
8582
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1535(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1535 *r)
 
8583
{
 
8584
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1535");
 
8585
        ndr->depth++;
 
8586
        ndr_print_uint32(ndr, "oplockbreakresponsewait", r->oplockbreakresponsewait);
 
8587
        ndr->depth--;
 
8588
}
 
8589
 
 
8590
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1536(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1536 *r)
 
8591
{
 
8592
        if (ndr_flags & NDR_SCALARS) {
 
8593
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8594
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableoplocks));
 
8595
        }
 
8596
        if (ndr_flags & NDR_BUFFERS) {
 
8597
        }
 
8598
        return NDR_ERR_SUCCESS;
 
8599
}
 
8600
 
 
8601
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1536(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1536 *r)
 
8602
{
 
8603
        if (ndr_flags & NDR_SCALARS) {
 
8604
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8605
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableoplocks));
 
8606
        }
 
8607
        if (ndr_flags & NDR_BUFFERS) {
 
8608
        }
 
8609
        return NDR_ERR_SUCCESS;
 
8610
}
 
8611
 
 
8612
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1536(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1536 *r)
 
8613
{
 
8614
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1536");
 
8615
        ndr->depth++;
 
8616
        ndr_print_uint32(ndr, "enableoplocks", r->enableoplocks);
 
8617
        ndr->depth--;
 
8618
}
 
8619
 
 
8620
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1537(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1537 *r)
 
8621
{
 
8622
        if (ndr_flags & NDR_SCALARS) {
 
8623
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8624
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableoplockforceclose));
 
8625
        }
 
8626
        if (ndr_flags & NDR_BUFFERS) {
 
8627
        }
 
8628
        return NDR_ERR_SUCCESS;
 
8629
}
 
8630
 
 
8631
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1537(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1537 *r)
 
8632
{
 
8633
        if (ndr_flags & NDR_SCALARS) {
 
8634
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8635
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableoplockforceclose));
 
8636
        }
 
8637
        if (ndr_flags & NDR_BUFFERS) {
 
8638
        }
 
8639
        return NDR_ERR_SUCCESS;
 
8640
}
 
8641
 
 
8642
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1537(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1537 *r)
 
8643
{
 
8644
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1537");
 
8645
        ndr->depth++;
 
8646
        ndr_print_uint32(ndr, "enableoplockforceclose", r->enableoplockforceclose);
 
8647
        ndr->depth--;
 
8648
}
 
8649
 
 
8650
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1538(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1538 *r)
 
8651
{
 
8652
        if (ndr_flags & NDR_SCALARS) {
 
8653
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8654
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablefcbopens));
 
8655
        }
 
8656
        if (ndr_flags & NDR_BUFFERS) {
 
8657
        }
 
8658
        return NDR_ERR_SUCCESS;
 
8659
}
 
8660
 
 
8661
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1538(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1538 *r)
 
8662
{
 
8663
        if (ndr_flags & NDR_SCALARS) {
 
8664
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8665
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablefcbopens));
 
8666
        }
 
8667
        if (ndr_flags & NDR_BUFFERS) {
 
8668
        }
 
8669
        return NDR_ERR_SUCCESS;
 
8670
}
 
8671
 
 
8672
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1538(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1538 *r)
 
8673
{
 
8674
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1538");
 
8675
        ndr->depth++;
 
8676
        ndr_print_uint32(ndr, "enablefcbopens", r->enablefcbopens);
 
8677
        ndr->depth--;
 
8678
}
 
8679
 
 
8680
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1539(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1539 *r)
 
8681
{
 
8682
        if (ndr_flags & NDR_SCALARS) {
 
8683
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8684
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enableraw));
 
8685
        }
 
8686
        if (ndr_flags & NDR_BUFFERS) {
 
8687
        }
 
8688
        return NDR_ERR_SUCCESS;
 
8689
}
 
8690
 
 
8691
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1539(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1539 *r)
 
8692
{
 
8693
        if (ndr_flags & NDR_SCALARS) {
 
8694
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8695
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enableraw));
 
8696
        }
 
8697
        if (ndr_flags & NDR_BUFFERS) {
 
8698
        }
 
8699
        return NDR_ERR_SUCCESS;
 
8700
}
 
8701
 
 
8702
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1539(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1539 *r)
 
8703
{
 
8704
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1539");
 
8705
        ndr->depth++;
 
8706
        ndr_print_uint32(ndr, "enableraw", r->enableraw);
 
8707
        ndr->depth--;
 
8708
}
 
8709
 
 
8710
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1540(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1540 *r)
 
8711
{
 
8712
        if (ndr_flags & NDR_SCALARS) {
 
8713
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8714
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enablesharednetdrives));
 
8715
        }
 
8716
        if (ndr_flags & NDR_BUFFERS) {
 
8717
        }
 
8718
        return NDR_ERR_SUCCESS;
 
8719
}
 
8720
 
 
8721
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1540(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1540 *r)
 
8722
{
 
8723
        if (ndr_flags & NDR_SCALARS) {
 
8724
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8725
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enablesharednetdrives));
 
8726
        }
 
8727
        if (ndr_flags & NDR_BUFFERS) {
 
8728
        }
 
8729
        return NDR_ERR_SUCCESS;
 
8730
}
 
8731
 
 
8732
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1540(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1540 *r)
 
8733
{
 
8734
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1540");
 
8735
        ndr->depth++;
 
8736
        ndr_print_uint32(ndr, "enablesharednetdrives", r->enablesharednetdrives);
 
8737
        ndr->depth--;
 
8738
}
 
8739
 
 
8740
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1541(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1541 *r)
 
8741
{
 
8742
        if (ndr_flags & NDR_SCALARS) {
 
8743
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8744
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minfreeconnections));
 
8745
        }
 
8746
        if (ndr_flags & NDR_BUFFERS) {
 
8747
        }
 
8748
        return NDR_ERR_SUCCESS;
 
8749
}
 
8750
 
 
8751
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1541(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1541 *r)
 
8752
{
 
8753
        if (ndr_flags & NDR_SCALARS) {
 
8754
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8755
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minfreeconnections));
 
8756
        }
 
8757
        if (ndr_flags & NDR_BUFFERS) {
 
8758
        }
 
8759
        return NDR_ERR_SUCCESS;
 
8760
}
 
8761
 
 
8762
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1541(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1541 *r)
 
8763
{
 
8764
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1541");
 
8765
        ndr->depth++;
 
8766
        ndr_print_uint32(ndr, "minfreeconnections", r->minfreeconnections);
 
8767
        ndr->depth--;
 
8768
}
 
8769
 
 
8770
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1542(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1542 *r)
 
8771
{
 
8772
        if (ndr_flags & NDR_SCALARS) {
 
8773
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8774
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxfreeconnections));
 
8775
        }
 
8776
        if (ndr_flags & NDR_BUFFERS) {
 
8777
        }
 
8778
        return NDR_ERR_SUCCESS;
 
8779
}
 
8780
 
 
8781
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1542(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1542 *r)
 
8782
{
 
8783
        if (ndr_flags & NDR_SCALARS) {
 
8784
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8785
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxfreeconnections));
 
8786
        }
 
8787
        if (ndr_flags & NDR_BUFFERS) {
 
8788
        }
 
8789
        return NDR_ERR_SUCCESS;
 
8790
}
 
8791
 
 
8792
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1542(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1542 *r)
 
8793
{
 
8794
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1542");
 
8795
        ndr->depth++;
 
8796
        ndr_print_uint32(ndr, "maxfreeconnections", r->maxfreeconnections);
 
8797
        ndr->depth--;
 
8798
}
 
8799
 
 
8800
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1543(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1543 *r)
 
8801
{
 
8802
        if (ndr_flags & NDR_SCALARS) {
 
8803
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8804
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initsesstable));
 
8805
        }
 
8806
        if (ndr_flags & NDR_BUFFERS) {
 
8807
        }
 
8808
        return NDR_ERR_SUCCESS;
 
8809
}
 
8810
 
 
8811
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1543(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1543 *r)
 
8812
{
 
8813
        if (ndr_flags & NDR_SCALARS) {
 
8814
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8815
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initsesstable));
 
8816
        }
 
8817
        if (ndr_flags & NDR_BUFFERS) {
 
8818
        }
 
8819
        return NDR_ERR_SUCCESS;
 
8820
}
 
8821
 
 
8822
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1543(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1543 *r)
 
8823
{
 
8824
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1543");
 
8825
        ndr->depth++;
 
8826
        ndr_print_uint32(ndr, "initsesstable", r->initsesstable);
 
8827
        ndr->depth--;
 
8828
}
 
8829
 
 
8830
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1544(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1544 *r)
 
8831
{
 
8832
        if (ndr_flags & NDR_SCALARS) {
 
8833
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8834
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initconntable));
 
8835
        }
 
8836
        if (ndr_flags & NDR_BUFFERS) {
 
8837
        }
 
8838
        return NDR_ERR_SUCCESS;
 
8839
}
 
8840
 
 
8841
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1544(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1544 *r)
 
8842
{
 
8843
        if (ndr_flags & NDR_SCALARS) {
 
8844
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8845
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initconntable));
 
8846
        }
 
8847
        if (ndr_flags & NDR_BUFFERS) {
 
8848
        }
 
8849
        return NDR_ERR_SUCCESS;
 
8850
}
 
8851
 
 
8852
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1544(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1544 *r)
 
8853
{
 
8854
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1544");
 
8855
        ndr->depth++;
 
8856
        ndr_print_uint32(ndr, "initconntable", r->initconntable);
 
8857
        ndr->depth--;
 
8858
}
 
8859
 
 
8860
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1545(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1545 *r)
 
8861
{
 
8862
        if (ndr_flags & NDR_SCALARS) {
 
8863
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8864
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initfiletable));
 
8865
        }
 
8866
        if (ndr_flags & NDR_BUFFERS) {
 
8867
        }
 
8868
        return NDR_ERR_SUCCESS;
 
8869
}
 
8870
 
 
8871
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1545(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1545 *r)
 
8872
{
 
8873
        if (ndr_flags & NDR_SCALARS) {
 
8874
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8875
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initfiletable));
 
8876
        }
 
8877
        if (ndr_flags & NDR_BUFFERS) {
 
8878
        }
 
8879
        return NDR_ERR_SUCCESS;
 
8880
}
 
8881
 
 
8882
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1545(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1545 *r)
 
8883
{
 
8884
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1545");
 
8885
        ndr->depth++;
 
8886
        ndr_print_uint32(ndr, "initfiletable", r->initfiletable);
 
8887
        ndr->depth--;
 
8888
}
 
8889
 
 
8890
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1546(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1546 *r)
 
8891
{
 
8892
        if (ndr_flags & NDR_SCALARS) {
 
8893
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8894
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->initsearchtable));
 
8895
        }
 
8896
        if (ndr_flags & NDR_BUFFERS) {
 
8897
        }
 
8898
        return NDR_ERR_SUCCESS;
 
8899
}
 
8900
 
 
8901
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1546(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1546 *r)
 
8902
{
 
8903
        if (ndr_flags & NDR_SCALARS) {
 
8904
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8905
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->initsearchtable));
 
8906
        }
 
8907
        if (ndr_flags & NDR_BUFFERS) {
 
8908
        }
 
8909
        return NDR_ERR_SUCCESS;
 
8910
}
 
8911
 
 
8912
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1546(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1546 *r)
 
8913
{
 
8914
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1546");
 
8915
        ndr->depth++;
 
8916
        ndr_print_uint32(ndr, "initsearchtable", r->initsearchtable);
 
8917
        ndr->depth--;
 
8918
}
 
8919
 
 
8920
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1547(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1547 *r)
 
8921
{
 
8922
        if (ndr_flags & NDR_SCALARS) {
 
8923
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8924
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->alertsched));
 
8925
        }
 
8926
        if (ndr_flags & NDR_BUFFERS) {
 
8927
        }
 
8928
        return NDR_ERR_SUCCESS;
 
8929
}
 
8930
 
 
8931
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1547(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1547 *r)
 
8932
{
 
8933
        if (ndr_flags & NDR_SCALARS) {
 
8934
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8935
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->alertsched));
 
8936
        }
 
8937
        if (ndr_flags & NDR_BUFFERS) {
 
8938
        }
 
8939
        return NDR_ERR_SUCCESS;
 
8940
}
 
8941
 
 
8942
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1547(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1547 *r)
 
8943
{
 
8944
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1547");
 
8945
        ndr->depth++;
 
8946
        ndr_print_uint32(ndr, "alertsched", r->alertsched);
 
8947
        ndr->depth--;
 
8948
}
 
8949
 
 
8950
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1548(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1548 *r)
 
8951
{
 
8952
        if (ndr_flags & NDR_SCALARS) {
 
8953
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8954
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->errortreshold));
 
8955
        }
 
8956
        if (ndr_flags & NDR_BUFFERS) {
 
8957
        }
 
8958
        return NDR_ERR_SUCCESS;
 
8959
}
 
8960
 
 
8961
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1548(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1548 *r)
 
8962
{
 
8963
        if (ndr_flags & NDR_SCALARS) {
 
8964
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8965
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->errortreshold));
 
8966
        }
 
8967
        if (ndr_flags & NDR_BUFFERS) {
 
8968
        }
 
8969
        return NDR_ERR_SUCCESS;
 
8970
}
 
8971
 
 
8972
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1548(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1548 *r)
 
8973
{
 
8974
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1548");
 
8975
        ndr->depth++;
 
8976
        ndr_print_uint32(ndr, "errortreshold", r->errortreshold);
 
8977
        ndr->depth--;
 
8978
}
 
8979
 
 
8980
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1549(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1549 *r)
 
8981
{
 
8982
        if (ndr_flags & NDR_SCALARS) {
 
8983
                NDR_CHECK(ndr_push_align(ndr, 4));
 
8984
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->networkerrortreshold));
 
8985
        }
 
8986
        if (ndr_flags & NDR_BUFFERS) {
 
8987
        }
 
8988
        return NDR_ERR_SUCCESS;
 
8989
}
 
8990
 
 
8991
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1549(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1549 *r)
 
8992
{
 
8993
        if (ndr_flags & NDR_SCALARS) {
 
8994
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
8995
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->networkerrortreshold));
 
8996
        }
 
8997
        if (ndr_flags & NDR_BUFFERS) {
 
8998
        }
 
8999
        return NDR_ERR_SUCCESS;
 
9000
}
 
9001
 
 
9002
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1549(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1549 *r)
 
9003
{
 
9004
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1549");
 
9005
        ndr->depth++;
 
9006
        ndr_print_uint32(ndr, "networkerrortreshold", r->networkerrortreshold);
 
9007
        ndr->depth--;
 
9008
}
 
9009
 
 
9010
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1550(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1550 *r)
 
9011
{
 
9012
        if (ndr_flags & NDR_SCALARS) {
 
9013
                NDR_CHECK(ndr_push_align(ndr, 4));
 
9014
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->diskspacetreshold));
 
9015
        }
 
9016
        if (ndr_flags & NDR_BUFFERS) {
 
9017
        }
 
9018
        return NDR_ERR_SUCCESS;
 
9019
}
 
9020
 
 
9021
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1550(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1550 *r)
 
9022
{
 
9023
        if (ndr_flags & NDR_SCALARS) {
 
9024
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
9025
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->diskspacetreshold));
 
9026
        }
 
9027
        if (ndr_flags & NDR_BUFFERS) {
 
9028
        }
 
9029
        return NDR_ERR_SUCCESS;
 
9030
}
 
9031
 
 
9032
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1550(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1550 *r)
 
9033
{
 
9034
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1550");
 
9035
        ndr->depth++;
 
9036
        ndr_print_uint32(ndr, "diskspacetreshold", r->diskspacetreshold);
 
9037
        ndr->depth--;
 
9038
}
 
9039
 
 
9040
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1552(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1552 *r)
 
9041
{
 
9042
        if (ndr_flags & NDR_SCALARS) {
 
9043
                NDR_CHECK(ndr_push_align(ndr, 4));
 
9044
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxlinkdelay));
 
9045
        }
 
9046
        if (ndr_flags & NDR_BUFFERS) {
 
9047
        }
 
9048
        return NDR_ERR_SUCCESS;
 
9049
}
 
9050
 
 
9051
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1552(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1552 *r)
 
9052
{
 
9053
        if (ndr_flags & NDR_SCALARS) {
 
9054
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
9055
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxlinkdelay));
 
9056
        }
 
9057
        if (ndr_flags & NDR_BUFFERS) {
 
9058
        }
 
9059
        return NDR_ERR_SUCCESS;
 
9060
}
 
9061
 
 
9062
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1552(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1552 *r)
 
9063
{
 
9064
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1552");
 
9065
        ndr->depth++;
 
9066
        ndr_print_uint32(ndr, "maxlinkdelay", r->maxlinkdelay);
 
9067
        ndr->depth--;
 
9068
}
 
9069
 
 
9070
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1553(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1553 *r)
 
9071
{
 
9072
        if (ndr_flags & NDR_SCALARS) {
 
9073
                NDR_CHECK(ndr_push_align(ndr, 4));
 
9074
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->minlinkthroughput));
 
9075
        }
 
9076
        if (ndr_flags & NDR_BUFFERS) {
 
9077
        }
 
9078
        return NDR_ERR_SUCCESS;
 
9079
}
 
9080
 
 
9081
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1553(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1553 *r)
 
9082
{
 
9083
        if (ndr_flags & NDR_SCALARS) {
 
9084
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
9085
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->minlinkthroughput));
 
9086
        }
 
9087
        if (ndr_flags & NDR_BUFFERS) {
 
9088
        }
 
9089
        return NDR_ERR_SUCCESS;
 
9090
}
 
9091
 
 
9092
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1553(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1553 *r)
 
9093
{
 
9094
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1553");
 
9095
        ndr->depth++;
 
9096
        ndr_print_uint32(ndr, "minlinkthroughput", r->minlinkthroughput);
 
9097
        ndr->depth--;
 
9098
}
 
9099
 
 
9100
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1554(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1554 *r)
 
9101
{
 
9102
        if (ndr_flags & NDR_SCALARS) {
 
9103
                NDR_CHECK(ndr_push_align(ndr, 4));
 
9104
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->linkinfovalidtime));
 
9105
        }
 
9106
        if (ndr_flags & NDR_BUFFERS) {
 
9107
        }
 
9108
        return NDR_ERR_SUCCESS;
 
9109
}
 
9110
 
 
9111
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1554(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1554 *r)
 
9112
{
 
9113
        if (ndr_flags & NDR_SCALARS) {
 
9114
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
9115
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->linkinfovalidtime));
 
9116
        }
 
9117
        if (ndr_flags & NDR_BUFFERS) {
 
9118
        }
 
9119
        return NDR_ERR_SUCCESS;
 
9120
}
 
9121
 
 
9122
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1554(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1554 *r)
 
9123
{
 
9124
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1554");
 
9125
        ndr->depth++;
 
9126
        ndr_print_uint32(ndr, "linkinfovalidtime", r->linkinfovalidtime);
 
9127
        ndr->depth--;
 
9128
}
 
9129
 
 
9130
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1555(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1555 *r)
 
9131
{
 
9132
        if (ndr_flags & NDR_SCALARS) {
 
9133
                NDR_CHECK(ndr_push_align(ndr, 4));
 
9134
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->scavqosinfoupdatetime));
 
9135
        }
 
9136
        if (ndr_flags & NDR_BUFFERS) {
 
9137
        }
 
9138
        return NDR_ERR_SUCCESS;
 
9139
}
 
9140
 
 
9141
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1555(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1555 *r)
 
9142
{
 
9143
        if (ndr_flags & NDR_SCALARS) {
 
9144
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
9145
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->scavqosinfoupdatetime));
 
9146
        }
 
9147
        if (ndr_flags & NDR_BUFFERS) {
 
9148
        }
 
9149
        return NDR_ERR_SUCCESS;
 
9150
}
 
9151
 
 
9152
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1555(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1555 *r)
 
9153
{
 
9154
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1555");
 
9155
        ndr->depth++;
 
9156
        ndr_print_uint32(ndr, "scavqosinfoupdatetime", r->scavqosinfoupdatetime);
 
9157
        ndr->depth--;
 
9158
}
 
9159
 
 
9160
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo1556(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetSrvInfo1556 *r)
 
9161
{
 
9162
        if (ndr_flags & NDR_SCALARS) {
 
9163
                NDR_CHECK(ndr_push_align(ndr, 4));
 
9164
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->maxworkitemidletime));
 
9165
        }
 
9166
        if (ndr_flags & NDR_BUFFERS) {
 
9167
        }
 
9168
        return NDR_ERR_SUCCESS;
 
9169
}
 
9170
 
 
9171
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo1556(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetSrvInfo1556 *r)
 
9172
{
 
9173
        if (ndr_flags & NDR_SCALARS) {
 
9174
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
9175
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->maxworkitemidletime));
 
9176
        }
 
9177
        if (ndr_flags & NDR_BUFFERS) {
 
9178
        }
 
9179
        return NDR_ERR_SUCCESS;
 
9180
}
 
9181
 
 
9182
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo1556(struct ndr_print *ndr, const char *name, const struct srvsvc_NetSrvInfo1556 *r)
 
9183
{
 
9184
        ndr_print_struct(ndr, name, "srvsvc_NetSrvInfo1556");
 
9185
        ndr->depth++;
 
9186
        ndr_print_uint32(ndr, "maxworkitemidletime", r->maxworkitemidletime);
 
9187
        ndr->depth--;
 
9188
}
 
9189
 
 
9190
static enum ndr_err_code ndr_push_srvsvc_NetSrvInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetSrvInfo *r)
 
9191
{
 
9192
        if (ndr_flags & NDR_SCALARS) {
 
9193
                int level = ndr_push_get_switch_value(ndr, r);
 
9194
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
 
9195
                switch (level) {
 
9196
                        case 100: {
 
9197
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info100));
 
9198
                        break; }
 
9199
 
 
9200
                        case 101: {
 
9201
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info101));
 
9202
                        break; }
 
9203
 
 
9204
                        case 102: {
 
9205
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info102));
 
9206
                        break; }
 
9207
 
 
9208
                        case 402: {
 
9209
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info402));
 
9210
                        break; }
 
9211
 
 
9212
                        case 403: {
 
9213
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info403));
 
9214
                        break; }
 
9215
 
 
9216
                        case 502: {
 
9217
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info502));
 
9218
                        break; }
 
9219
 
 
9220
                        case 503: {
 
9221
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info503));
 
9222
                        break; }
 
9223
 
 
9224
                        case 599: {
 
9225
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info599));
 
9226
                        break; }
 
9227
 
 
9228
                        case 1005: {
 
9229
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1005));
 
9230
                        break; }
 
9231
 
 
9232
                        case 1010: {
 
9233
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1010));
 
9234
                        break; }
 
9235
 
 
9236
                        case 1016: {
 
9237
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1016));
 
9238
                        break; }
 
9239
 
 
9240
                        case 1017: {
 
9241
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1017));
 
9242
                        break; }
 
9243
 
 
9244
                        case 1018: {
 
9245
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1018));
 
9246
                        break; }
 
9247
 
 
9248
                        case 1107: {
 
9249
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1107));
 
9250
                        break; }
 
9251
 
 
9252
                        case 1501: {
 
9253
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1501));
 
9254
                        break; }
 
9255
 
 
9256
                        case 1502: {
 
9257
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1502));
 
9258
                        break; }
 
9259
 
 
9260
                        case 1503: {
 
9261
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1503));
 
9262
                        break; }
 
9263
 
 
9264
                        case 1506: {
 
9265
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1506));
 
9266
                        break; }
 
9267
 
 
9268
                        case 1509: {
 
9269
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1509));
 
9270
                        break; }
 
9271
 
 
9272
                        case 1510: {
 
9273
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1510));
 
9274
                        break; }
 
9275
 
 
9276
                        case 1511: {
 
9277
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1511));
 
9278
                        break; }
 
9279
 
 
9280
                        case 1512: {
 
9281
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1512));
 
9282
                        break; }
 
9283
 
 
9284
                        case 1513: {
 
9285
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1513));
 
9286
                        break; }
 
9287
 
 
9288
                        case 1514: {
 
9289
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1514));
 
9290
                        break; }
 
9291
 
 
9292
                        case 1515: {
 
9293
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1515));
 
9294
                        break; }
 
9295
 
 
9296
                        case 1516: {
 
9297
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1516));
 
9298
                        break; }
 
9299
 
 
9300
                        case 1518: {
 
9301
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1518));
 
9302
                        break; }
 
9303
 
 
9304
                        case 1520: {
 
9305
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1520));
 
9306
                        break; }
 
9307
 
 
9308
                        case 1521: {
 
9309
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1521));
 
9310
                        break; }
 
9311
 
 
9312
                        case 1522: {
 
9313
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1522));
 
9314
                        break; }
 
9315
 
 
9316
                        case 1523: {
 
9317
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1523));
 
9318
                        break; }
 
9319
 
 
9320
                        case 1524: {
 
9321
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1524));
 
9322
                        break; }
 
9323
 
 
9324
                        case 1525: {
 
9325
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1525));
 
9326
                        break; }
 
9327
 
 
9328
                        case 1528: {
 
9329
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1528));
 
9330
                        break; }
 
9331
 
 
9332
                        case 1529: {
 
9333
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1529));
 
9334
                        break; }
 
9335
 
 
9336
                        case 1530: {
 
9337
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1530));
 
9338
                        break; }
 
9339
 
 
9340
                        case 1533: {
 
9341
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1533));
 
9342
                        break; }
 
9343
 
 
9344
                        case 1534: {
 
9345
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1534));
 
9346
                        break; }
 
9347
 
 
9348
                        case 1535: {
 
9349
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1535));
 
9350
                        break; }
 
9351
 
 
9352
                        case 1536: {
 
9353
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1536));
 
9354
                        break; }
 
9355
 
 
9356
                        case 1537: {
 
9357
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1537));
 
9358
                        break; }
 
9359
 
 
9360
                        case 1538: {
 
9361
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1538));
 
9362
                        break; }
 
9363
 
 
9364
                        case 1539: {
 
9365
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1539));
 
9366
                        break; }
 
9367
 
 
9368
                        case 1540: {
 
9369
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1540));
 
9370
                        break; }
 
9371
 
 
9372
                        case 1541: {
 
9373
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1541));
 
9374
                        break; }
 
9375
 
 
9376
                        case 1542: {
 
9377
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1542));
 
9378
                        break; }
 
9379
 
 
9380
                        case 1543: {
 
9381
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1543));
 
9382
                        break; }
 
9383
 
 
9384
                        case 1544: {
 
9385
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1544));
 
9386
                        break; }
 
9387
 
 
9388
                        case 1545: {
 
9389
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1545));
 
9390
                        break; }
 
9391
 
 
9392
                        case 1546: {
 
9393
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1546));
 
9394
                        break; }
 
9395
 
 
9396
                        case 1547: {
 
9397
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1547));
 
9398
                        break; }
 
9399
 
 
9400
                        case 1548: {
 
9401
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1548));
 
9402
                        break; }
 
9403
 
 
9404
                        case 1549: {
 
9405
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1549));
 
9406
                        break; }
 
9407
 
 
9408
                        case 1550: {
 
9409
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1550));
 
9410
                        break; }
 
9411
 
 
9412
                        case 1552: {
 
9413
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1552));
 
9414
                        break; }
 
9415
 
 
9416
                        case 1553: {
 
9417
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1553));
 
9418
                        break; }
 
9419
 
 
9420
                        case 1554: {
 
9421
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1554));
 
9422
                        break; }
 
9423
 
 
9424
                        case 1555: {
 
9425
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1555));
 
9426
                        break; }
 
9427
 
 
9428
                        case 1556: {
 
9429
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1556));
 
9430
                        break; }
 
9431
 
 
9432
                        default: {
 
9433
                        break; }
 
9434
 
 
9435
                }
 
9436
        }
 
9437
        if (ndr_flags & NDR_BUFFERS) {
 
9438
                int level = ndr_push_get_switch_value(ndr, r);
 
9439
                switch (level) {
 
9440
                        case 100:
 
9441
                                if (r->info100) {
 
9442
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo100(ndr, NDR_SCALARS|NDR_BUFFERS, r->info100));
 
9443
                                }
 
9444
                        break;
 
9445
 
 
9446
                        case 101:
 
9447
                                if (r->info101) {
 
9448
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info101));
 
9449
                                }
 
9450
                        break;
 
9451
 
 
9452
                        case 102:
 
9453
                                if (r->info102) {
 
9454
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo102(ndr, NDR_SCALARS|NDR_BUFFERS, r->info102));
 
9455
                                }
 
9456
                        break;
 
9457
 
 
9458
                        case 402:
 
9459
                                if (r->info402) {
 
9460
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo402(ndr, NDR_SCALARS|NDR_BUFFERS, r->info402));
 
9461
                                }
 
9462
                        break;
 
9463
 
 
9464
                        case 403:
 
9465
                                if (r->info403) {
 
9466
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo403(ndr, NDR_SCALARS|NDR_BUFFERS, r->info403));
 
9467
                                }
 
9468
                        break;
 
9469
 
 
9470
                        case 502:
 
9471
                                if (r->info502) {
 
9472
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo502(ndr, NDR_SCALARS, r->info502));
 
9473
                                }
 
9474
                        break;
 
9475
 
 
9476
                        case 503:
 
9477
                                if (r->info503) {
 
9478
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo503(ndr, NDR_SCALARS|NDR_BUFFERS, r->info503));
 
9479
                                }
 
9480
                        break;
 
9481
 
 
9482
                        case 599:
 
9483
                                if (r->info599) {
 
9484
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo599(ndr, NDR_SCALARS|NDR_BUFFERS, r->info599));
 
9485
                                }
 
9486
                        break;
 
9487
 
 
9488
                        case 1005:
 
9489
                                if (r->info1005) {
 
9490
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1005(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1005));
 
9491
                                }
 
9492
                        break;
 
9493
 
 
9494
                        case 1010:
 
9495
                                if (r->info1010) {
 
9496
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1010(ndr, NDR_SCALARS, r->info1010));
 
9497
                                }
 
9498
                        break;
 
9499
 
 
9500
                        case 1016:
 
9501
                                if (r->info1016) {
 
9502
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1016(ndr, NDR_SCALARS, r->info1016));
 
9503
                                }
 
9504
                        break;
 
9505
 
 
9506
                        case 1017:
 
9507
                                if (r->info1017) {
 
9508
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1017(ndr, NDR_SCALARS, r->info1017));
 
9509
                                }
 
9510
                        break;
 
9511
 
 
9512
                        case 1018:
 
9513
                                if (r->info1018) {
 
9514
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1018(ndr, NDR_SCALARS, r->info1018));
 
9515
                                }
 
9516
                        break;
 
9517
 
 
9518
                        case 1107:
 
9519
                                if (r->info1107) {
 
9520
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1107(ndr, NDR_SCALARS, r->info1107));
 
9521
                                }
 
9522
                        break;
 
9523
 
 
9524
                        case 1501:
 
9525
                                if (r->info1501) {
 
9526
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1501(ndr, NDR_SCALARS, r->info1501));
 
9527
                                }
 
9528
                        break;
 
9529
 
 
9530
                        case 1502:
 
9531
                                if (r->info1502) {
 
9532
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1502(ndr, NDR_SCALARS, r->info1502));
 
9533
                                }
 
9534
                        break;
 
9535
 
 
9536
                        case 1503:
 
9537
                                if (r->info1503) {
 
9538
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1503(ndr, NDR_SCALARS, r->info1503));
 
9539
                                }
 
9540
                        break;
 
9541
 
 
9542
                        case 1506:
 
9543
                                if (r->info1506) {
 
9544
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1506(ndr, NDR_SCALARS, r->info1506));
 
9545
                                }
 
9546
                        break;
 
9547
 
 
9548
                        case 1509:
 
9549
                                if (r->info1509) {
 
9550
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1509(ndr, NDR_SCALARS, r->info1509));
 
9551
                                }
 
9552
                        break;
 
9553
 
 
9554
                        case 1510:
 
9555
                                if (r->info1510) {
 
9556
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1510(ndr, NDR_SCALARS, r->info1510));
 
9557
                                }
 
9558
                        break;
 
9559
 
 
9560
                        case 1511:
 
9561
                                if (r->info1511) {
 
9562
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1511(ndr, NDR_SCALARS, r->info1511));
 
9563
                                }
 
9564
                        break;
 
9565
 
 
9566
                        case 1512:
 
9567
                                if (r->info1512) {
 
9568
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1512(ndr, NDR_SCALARS, r->info1512));
 
9569
                                }
 
9570
                        break;
 
9571
 
 
9572
                        case 1513:
 
9573
                                if (r->info1513) {
 
9574
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1513(ndr, NDR_SCALARS, r->info1513));
 
9575
                                }
 
9576
                        break;
 
9577
 
 
9578
                        case 1514:
 
9579
                                if (r->info1514) {
 
9580
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1514(ndr, NDR_SCALARS, r->info1514));
 
9581
                                }
 
9582
                        break;
 
9583
 
 
9584
                        case 1515:
 
9585
                                if (r->info1515) {
 
9586
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1515(ndr, NDR_SCALARS, r->info1515));
 
9587
                                }
 
9588
                        break;
 
9589
 
 
9590
                        case 1516:
 
9591
                                if (r->info1516) {
 
9592
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1516(ndr, NDR_SCALARS, r->info1516));
 
9593
                                }
 
9594
                        break;
 
9595
 
 
9596
                        case 1518:
 
9597
                                if (r->info1518) {
 
9598
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1518(ndr, NDR_SCALARS, r->info1518));
 
9599
                                }
 
9600
                        break;
 
9601
 
 
9602
                        case 1520:
 
9603
                                if (r->info1520) {
 
9604
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1520(ndr, NDR_SCALARS, r->info1520));
 
9605
                                }
 
9606
                        break;
 
9607
 
 
9608
                        case 1521:
 
9609
                                if (r->info1521) {
 
9610
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1521(ndr, NDR_SCALARS, r->info1521));
 
9611
                                }
 
9612
                        break;
 
9613
 
 
9614
                        case 1522:
 
9615
                                if (r->info1522) {
 
9616
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1522(ndr, NDR_SCALARS, r->info1522));
 
9617
                                }
 
9618
                        break;
 
9619
 
 
9620
                        case 1523:
 
9621
                                if (r->info1523) {
 
9622
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1523(ndr, NDR_SCALARS, r->info1523));
 
9623
                                }
 
9624
                        break;
 
9625
 
 
9626
                        case 1524:
 
9627
                                if (r->info1524) {
 
9628
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1524(ndr, NDR_SCALARS, r->info1524));
 
9629
                                }
 
9630
                        break;
 
9631
 
 
9632
                        case 1525:
 
9633
                                if (r->info1525) {
 
9634
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1525(ndr, NDR_SCALARS, r->info1525));
 
9635
                                }
 
9636
                        break;
 
9637
 
 
9638
                        case 1528:
 
9639
                                if (r->info1528) {
 
9640
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1528(ndr, NDR_SCALARS, r->info1528));
 
9641
                                }
 
9642
                        break;
 
9643
 
 
9644
                        case 1529:
 
9645
                                if (r->info1529) {
 
9646
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1529(ndr, NDR_SCALARS, r->info1529));
 
9647
                                }
 
9648
                        break;
 
9649
 
 
9650
                        case 1530:
 
9651
                                if (r->info1530) {
 
9652
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1530(ndr, NDR_SCALARS, r->info1530));
 
9653
                                }
 
9654
                        break;
 
9655
 
 
9656
                        case 1533:
 
9657
                                if (r->info1533) {
 
9658
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1533(ndr, NDR_SCALARS, r->info1533));
 
9659
                                }
 
9660
                        break;
 
9661
 
 
9662
                        case 1534:
 
9663
                                if (r->info1534) {
 
9664
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1534(ndr, NDR_SCALARS, r->info1534));
 
9665
                                }
 
9666
                        break;
 
9667
 
 
9668
                        case 1535:
 
9669
                                if (r->info1535) {
 
9670
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1535(ndr, NDR_SCALARS, r->info1535));
 
9671
                                }
 
9672
                        break;
 
9673
 
 
9674
                        case 1536:
 
9675
                                if (r->info1536) {
 
9676
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1536(ndr, NDR_SCALARS, r->info1536));
 
9677
                                }
 
9678
                        break;
 
9679
 
 
9680
                        case 1537:
 
9681
                                if (r->info1537) {
 
9682
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1537(ndr, NDR_SCALARS, r->info1537));
 
9683
                                }
 
9684
                        break;
 
9685
 
 
9686
                        case 1538:
 
9687
                                if (r->info1538) {
 
9688
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1538(ndr, NDR_SCALARS, r->info1538));
 
9689
                                }
 
9690
                        break;
 
9691
 
 
9692
                        case 1539:
 
9693
                                if (r->info1539) {
 
9694
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1539(ndr, NDR_SCALARS, r->info1539));
 
9695
                                }
 
9696
                        break;
 
9697
 
 
9698
                        case 1540:
 
9699
                                if (r->info1540) {
 
9700
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1540(ndr, NDR_SCALARS, r->info1540));
 
9701
                                }
 
9702
                        break;
 
9703
 
 
9704
                        case 1541:
 
9705
                                if (r->info1541) {
 
9706
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1541(ndr, NDR_SCALARS, r->info1541));
 
9707
                                }
 
9708
                        break;
 
9709
 
 
9710
                        case 1542:
 
9711
                                if (r->info1542) {
 
9712
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1542(ndr, NDR_SCALARS, r->info1542));
 
9713
                                }
 
9714
                        break;
 
9715
 
 
9716
                        case 1543:
 
9717
                                if (r->info1543) {
 
9718
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1543(ndr, NDR_SCALARS, r->info1543));
 
9719
                                }
 
9720
                        break;
 
9721
 
 
9722
                        case 1544:
 
9723
                                if (r->info1544) {
 
9724
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1544(ndr, NDR_SCALARS, r->info1544));
 
9725
                                }
 
9726
                        break;
 
9727
 
 
9728
                        case 1545:
 
9729
                                if (r->info1545) {
 
9730
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1545(ndr, NDR_SCALARS, r->info1545));
 
9731
                                }
 
9732
                        break;
 
9733
 
 
9734
                        case 1546:
 
9735
                                if (r->info1546) {
 
9736
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1546(ndr, NDR_SCALARS, r->info1546));
 
9737
                                }
 
9738
                        break;
 
9739
 
 
9740
                        case 1547:
 
9741
                                if (r->info1547) {
 
9742
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1547(ndr, NDR_SCALARS, r->info1547));
 
9743
                                }
 
9744
                        break;
 
9745
 
 
9746
                        case 1548:
 
9747
                                if (r->info1548) {
 
9748
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1548(ndr, NDR_SCALARS, r->info1548));
 
9749
                                }
 
9750
                        break;
 
9751
 
 
9752
                        case 1549:
 
9753
                                if (r->info1549) {
 
9754
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1549(ndr, NDR_SCALARS, r->info1549));
 
9755
                                }
 
9756
                        break;
 
9757
 
 
9758
                        case 1550:
 
9759
                                if (r->info1550) {
 
9760
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1550(ndr, NDR_SCALARS, r->info1550));
 
9761
                                }
 
9762
                        break;
 
9763
 
 
9764
                        case 1552:
 
9765
                                if (r->info1552) {
 
9766
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1552(ndr, NDR_SCALARS, r->info1552));
 
9767
                                }
 
9768
                        break;
 
9769
 
 
9770
                        case 1553:
 
9771
                                if (r->info1553) {
 
9772
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1553(ndr, NDR_SCALARS, r->info1553));
 
9773
                                }
 
9774
                        break;
 
9775
 
 
9776
                        case 1554:
 
9777
                                if (r->info1554) {
 
9778
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1554(ndr, NDR_SCALARS, r->info1554));
 
9779
                                }
 
9780
                        break;
 
9781
 
 
9782
                        case 1555:
 
9783
                                if (r->info1555) {
 
9784
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1555(ndr, NDR_SCALARS, r->info1555));
 
9785
                                }
 
9786
                        break;
 
9787
 
 
9788
                        case 1556:
 
9789
                                if (r->info1556) {
 
9790
                                        NDR_CHECK(ndr_push_srvsvc_NetSrvInfo1556(ndr, NDR_SCALARS, r->info1556));
 
9791
                                }
 
9792
                        break;
 
9793
 
 
9794
                        default:
 
9795
                        break;
 
9796
 
 
9797
                }
 
9798
        }
 
9799
        return NDR_ERR_SUCCESS;
 
9800
}
 
9801
 
 
9802
static enum ndr_err_code ndr_pull_srvsvc_NetSrvInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetSrvInfo *r)
 
9803
{
 
9804
        int level;
 
9805
        uint32_t _level;
 
9806
        TALLOC_CTX *_mem_save_info100_0;
 
9807
        TALLOC_CTX *_mem_save_info101_0;
 
9808
        TALLOC_CTX *_mem_save_info102_0;
 
9809
        TALLOC_CTX *_mem_save_info402_0;
 
9810
        TALLOC_CTX *_mem_save_info403_0;
 
9811
        TALLOC_CTX *_mem_save_info502_0;
 
9812
        TALLOC_CTX *_mem_save_info503_0;
 
9813
        TALLOC_CTX *_mem_save_info599_0;
 
9814
        TALLOC_CTX *_mem_save_info1005_0;
 
9815
        TALLOC_CTX *_mem_save_info1010_0;
 
9816
        TALLOC_CTX *_mem_save_info1016_0;
 
9817
        TALLOC_CTX *_mem_save_info1017_0;
 
9818
        TALLOC_CTX *_mem_save_info1018_0;
 
9819
        TALLOC_CTX *_mem_save_info1107_0;
 
9820
        TALLOC_CTX *_mem_save_info1501_0;
 
9821
        TALLOC_CTX *_mem_save_info1502_0;
 
9822
        TALLOC_CTX *_mem_save_info1503_0;
 
9823
        TALLOC_CTX *_mem_save_info1506_0;
 
9824
        TALLOC_CTX *_mem_save_info1509_0;
 
9825
        TALLOC_CTX *_mem_save_info1510_0;
 
9826
        TALLOC_CTX *_mem_save_info1511_0;
 
9827
        TALLOC_CTX *_mem_save_info1512_0;
 
9828
        TALLOC_CTX *_mem_save_info1513_0;
 
9829
        TALLOC_CTX *_mem_save_info1514_0;
 
9830
        TALLOC_CTX *_mem_save_info1515_0;
 
9831
        TALLOC_CTX *_mem_save_info1516_0;
 
9832
        TALLOC_CTX *_mem_save_info1518_0;
 
9833
        TALLOC_CTX *_mem_save_info1520_0;
 
9834
        TALLOC_CTX *_mem_save_info1521_0;
 
9835
        TALLOC_CTX *_mem_save_info1522_0;
 
9836
        TALLOC_CTX *_mem_save_info1523_0;
 
9837
        TALLOC_CTX *_mem_save_info1524_0;
 
9838
        TALLOC_CTX *_mem_save_info1525_0;
 
9839
        TALLOC_CTX *_mem_save_info1528_0;
 
9840
        TALLOC_CTX *_mem_save_info1529_0;
 
9841
        TALLOC_CTX *_mem_save_info1530_0;
 
9842
        TALLOC_CTX *_mem_save_info1533_0;
 
9843
        TALLOC_CTX *_mem_save_info1534_0;
 
9844
        TALLOC_CTX *_mem_save_info1535_0;
 
9845
        TALLOC_CTX *_mem_save_info1536_0;
 
9846
        TALLOC_CTX *_mem_save_info1537_0;
 
9847
        TALLOC_CTX *_mem_save_info1538_0;
 
9848
        TALLOC_CTX *_mem_save_info1539_0;
 
9849
        TALLOC_CTX *_mem_save_info1540_0;
 
9850
        TALLOC_CTX *_mem_save_info1541_0;
 
9851
        TALLOC_CTX *_mem_save_info1542_0;
 
9852
        TALLOC_CTX *_mem_save_info1543_0;
 
9853
        TALLOC_CTX *_mem_save_info1544_0;
 
9854
        TALLOC_CTX *_mem_save_info1545_0;
 
9855
        TALLOC_CTX *_mem_save_info1546_0;
 
9856
        TALLOC_CTX *_mem_save_info1547_0;
 
9857
        TALLOC_CTX *_mem_save_info1548_0;
 
9858
        TALLOC_CTX *_mem_save_info1549_0;
 
9859
        TALLOC_CTX *_mem_save_info1550_0;
 
9860
        TALLOC_CTX *_mem_save_info1552_0;
 
9861
        TALLOC_CTX *_mem_save_info1553_0;
 
9862
        TALLOC_CTX *_mem_save_info1554_0;
 
9863
        TALLOC_CTX *_mem_save_info1555_0;
 
9864
        TALLOC_CTX *_mem_save_info1556_0;
 
9865
        level = ndr_pull_get_switch_value(ndr, r);
 
9866
        if (ndr_flags & NDR_SCALARS) {
 
9867
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
 
9868
                if (_level != level) {
 
9869
                        return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
 
9870
                }
 
9871
                switch (level) {
 
9872
                        case 100: {
 
9873
                                uint32_t _ptr_info100;
 
9874
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info100));
 
9875
                                if (_ptr_info100) {
 
9876
                                        NDR_PULL_ALLOC(ndr, r->info100);
 
9877
                                } else {
 
9878
                                        r->info100 = NULL;
 
9879
                                }
 
9880
                        break; }
 
9881
 
 
9882
                        case 101: {
 
9883
                                uint32_t _ptr_info101;
 
9884
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info101));
 
9885
                                if (_ptr_info101) {
 
9886
                                        NDR_PULL_ALLOC(ndr, r->info101);
 
9887
                                } else {
 
9888
                                        r->info101 = NULL;
 
9889
                                }
 
9890
                        break; }
 
9891
 
 
9892
                        case 102: {
 
9893
                                uint32_t _ptr_info102;
 
9894
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info102));
 
9895
                                if (_ptr_info102) {
 
9896
                                        NDR_PULL_ALLOC(ndr, r->info102);
 
9897
                                } else {
 
9898
                                        r->info102 = NULL;
 
9899
                                }
 
9900
                        break; }
 
9901
 
 
9902
                        case 402: {
 
9903
                                uint32_t _ptr_info402;
 
9904
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info402));
 
9905
                                if (_ptr_info402) {
 
9906
                                        NDR_PULL_ALLOC(ndr, r->info402);
 
9907
                                } else {
 
9908
                                        r->info402 = NULL;
 
9909
                                }
 
9910
                        break; }
 
9911
 
 
9912
                        case 403: {
 
9913
                                uint32_t _ptr_info403;
 
9914
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info403));
 
9915
                                if (_ptr_info403) {
 
9916
                                        NDR_PULL_ALLOC(ndr, r->info403);
 
9917
                                } else {
 
9918
                                        r->info403 = NULL;
 
9919
                                }
 
9920
                        break; }
 
9921
 
 
9922
                        case 502: {
 
9923
                                uint32_t _ptr_info502;
 
9924
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info502));
 
9925
                                if (_ptr_info502) {
 
9926
                                        NDR_PULL_ALLOC(ndr, r->info502);
 
9927
                                } else {
 
9928
                                        r->info502 = NULL;
 
9929
                                }
 
9930
                        break; }
 
9931
 
 
9932
                        case 503: {
 
9933
                                uint32_t _ptr_info503;
 
9934
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info503));
 
9935
                                if (_ptr_info503) {
 
9936
                                        NDR_PULL_ALLOC(ndr, r->info503);
 
9937
                                } else {
 
9938
                                        r->info503 = NULL;
 
9939
                                }
 
9940
                        break; }
 
9941
 
 
9942
                        case 599: {
 
9943
                                uint32_t _ptr_info599;
 
9944
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info599));
 
9945
                                if (_ptr_info599) {
 
9946
                                        NDR_PULL_ALLOC(ndr, r->info599);
 
9947
                                } else {
 
9948
                                        r->info599 = NULL;
 
9949
                                }
 
9950
                        break; }
 
9951
 
 
9952
                        case 1005: {
 
9953
                                uint32_t _ptr_info1005;
 
9954
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1005));
 
9955
                                if (_ptr_info1005) {
 
9956
                                        NDR_PULL_ALLOC(ndr, r->info1005);
 
9957
                                } else {
 
9958
                                        r->info1005 = NULL;
 
9959
                                }
 
9960
                        break; }
 
9961
 
 
9962
                        case 1010: {
 
9963
                                uint32_t _ptr_info1010;
 
9964
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1010));
 
9965
                                if (_ptr_info1010) {
 
9966
                                        NDR_PULL_ALLOC(ndr, r->info1010);
 
9967
                                } else {
 
9968
                                        r->info1010 = NULL;
 
9969
                                }
 
9970
                        break; }
 
9971
 
 
9972
                        case 1016: {
 
9973
                                uint32_t _ptr_info1016;
 
9974
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1016));
 
9975
                                if (_ptr_info1016) {
 
9976
                                        NDR_PULL_ALLOC(ndr, r->info1016);
 
9977
                                } else {
 
9978
                                        r->info1016 = NULL;
 
9979
                                }
 
9980
                        break; }
 
9981
 
 
9982
                        case 1017: {
 
9983
                                uint32_t _ptr_info1017;
 
9984
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1017));
 
9985
                                if (_ptr_info1017) {
 
9986
                                        NDR_PULL_ALLOC(ndr, r->info1017);
 
9987
                                } else {
 
9988
                                        r->info1017 = NULL;
 
9989
                                }
 
9990
                        break; }
 
9991
 
 
9992
                        case 1018: {
 
9993
                                uint32_t _ptr_info1018;
 
9994
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1018));
 
9995
                                if (_ptr_info1018) {
 
9996
                                        NDR_PULL_ALLOC(ndr, r->info1018);
 
9997
                                } else {
 
9998
                                        r->info1018 = NULL;
 
9999
                                }
 
10000
                        break; }
 
10001
 
 
10002
                        case 1107: {
 
10003
                                uint32_t _ptr_info1107;
 
10004
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1107));
 
10005
                                if (_ptr_info1107) {
 
10006
                                        NDR_PULL_ALLOC(ndr, r->info1107);
 
10007
                                } else {
 
10008
                                        r->info1107 = NULL;
 
10009
                                }
 
10010
                        break; }
 
10011
 
 
10012
                        case 1501: {
 
10013
                                uint32_t _ptr_info1501;
 
10014
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1501));
 
10015
                                if (_ptr_info1501) {
 
10016
                                        NDR_PULL_ALLOC(ndr, r->info1501);
 
10017
                                } else {
 
10018
                                        r->info1501 = NULL;
 
10019
                                }
 
10020
                        break; }
 
10021
 
 
10022
                        case 1502: {
 
10023
                                uint32_t _ptr_info1502;
 
10024
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1502));
 
10025
                                if (_ptr_info1502) {
 
10026
                                        NDR_PULL_ALLOC(ndr, r->info1502);
 
10027
                                } else {
 
10028
                                        r->info1502 = NULL;
 
10029
                                }
 
10030
                        break; }
 
10031
 
 
10032
                        case 1503: {
 
10033
                                uint32_t _ptr_info1503;
 
10034
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1503));
 
10035
                                if (_ptr_info1503) {
 
10036
                                        NDR_PULL_ALLOC(ndr, r->info1503);
 
10037
                                } else {
 
10038
                                        r->info1503 = NULL;
 
10039
                                }
 
10040
                        break; }
 
10041
 
 
10042
                        case 1506: {
 
10043
                                uint32_t _ptr_info1506;
 
10044
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1506));
 
10045
                                if (_ptr_info1506) {
 
10046
                                        NDR_PULL_ALLOC(ndr, r->info1506);
 
10047
                                } else {
 
10048
                                        r->info1506 = NULL;
 
10049
                                }
 
10050
                        break; }
 
10051
 
 
10052
                        case 1509: {
 
10053
                                uint32_t _ptr_info1509;
 
10054
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1509));
 
10055
                                if (_ptr_info1509) {
 
10056
                                        NDR_PULL_ALLOC(ndr, r->info1509);
 
10057
                                } else {
 
10058
                                        r->info1509 = NULL;
 
10059
                                }
 
10060
                        break; }
 
10061
 
 
10062
                        case 1510: {
 
10063
                                uint32_t _ptr_info1510;
 
10064
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1510));
 
10065
                                if (_ptr_info1510) {
 
10066
                                        NDR_PULL_ALLOC(ndr, r->info1510);
 
10067
                                } else {
 
10068
                                        r->info1510 = NULL;
 
10069
                                }
 
10070
                        break; }
 
10071
 
 
10072
                        case 1511: {
 
10073
                                uint32_t _ptr_info1511;
 
10074
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1511));
 
10075
                                if (_ptr_info1511) {
 
10076
                                        NDR_PULL_ALLOC(ndr, r->info1511);
 
10077
                                } else {
 
10078
                                        r->info1511 = NULL;
 
10079
                                }
 
10080
                        break; }
 
10081
 
 
10082
                        case 1512: {
 
10083
                                uint32_t _ptr_info1512;
 
10084
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1512));
 
10085
                                if (_ptr_info1512) {
 
10086
                                        NDR_PULL_ALLOC(ndr, r->info1512);
 
10087
                                } else {
 
10088
                                        r->info1512 = NULL;
 
10089
                                }
 
10090
                        break; }
 
10091
 
 
10092
                        case 1513: {
 
10093
                                uint32_t _ptr_info1513;
 
10094
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1513));
 
10095
                                if (_ptr_info1513) {
 
10096
                                        NDR_PULL_ALLOC(ndr, r->info1513);
 
10097
                                } else {
 
10098
                                        r->info1513 = NULL;
 
10099
                                }
 
10100
                        break; }
 
10101
 
 
10102
                        case 1514: {
 
10103
                                uint32_t _ptr_info1514;
 
10104
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1514));
 
10105
                                if (_ptr_info1514) {
 
10106
                                        NDR_PULL_ALLOC(ndr, r->info1514);
 
10107
                                } else {
 
10108
                                        r->info1514 = NULL;
 
10109
                                }
 
10110
                        break; }
 
10111
 
 
10112
                        case 1515: {
 
10113
                                uint32_t _ptr_info1515;
 
10114
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1515));
 
10115
                                if (_ptr_info1515) {
 
10116
                                        NDR_PULL_ALLOC(ndr, r->info1515);
 
10117
                                } else {
 
10118
                                        r->info1515 = NULL;
 
10119
                                }
 
10120
                        break; }
 
10121
 
 
10122
                        case 1516: {
 
10123
                                uint32_t _ptr_info1516;
 
10124
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1516));
 
10125
                                if (_ptr_info1516) {
 
10126
                                        NDR_PULL_ALLOC(ndr, r->info1516);
 
10127
                                } else {
 
10128
                                        r->info1516 = NULL;
 
10129
                                }
 
10130
                        break; }
 
10131
 
 
10132
                        case 1518: {
 
10133
                                uint32_t _ptr_info1518;
 
10134
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1518));
 
10135
                                if (_ptr_info1518) {
 
10136
                                        NDR_PULL_ALLOC(ndr, r->info1518);
 
10137
                                } else {
 
10138
                                        r->info1518 = NULL;
 
10139
                                }
 
10140
                        break; }
 
10141
 
 
10142
                        case 1520: {
 
10143
                                uint32_t _ptr_info1520;
 
10144
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1520));
 
10145
                                if (_ptr_info1520) {
 
10146
                                        NDR_PULL_ALLOC(ndr, r->info1520);
 
10147
                                } else {
 
10148
                                        r->info1520 = NULL;
 
10149
                                }
 
10150
                        break; }
 
10151
 
 
10152
                        case 1521: {
 
10153
                                uint32_t _ptr_info1521;
 
10154
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1521));
 
10155
                                if (_ptr_info1521) {
 
10156
                                        NDR_PULL_ALLOC(ndr, r->info1521);
 
10157
                                } else {
 
10158
                                        r->info1521 = NULL;
 
10159
                                }
 
10160
                        break; }
 
10161
 
 
10162
                        case 1522: {
 
10163
                                uint32_t _ptr_info1522;
 
10164
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1522));
 
10165
                                if (_ptr_info1522) {
 
10166
                                        NDR_PULL_ALLOC(ndr, r->info1522);
 
10167
                                } else {
 
10168
                                        r->info1522 = NULL;
 
10169
                                }
 
10170
                        break; }
 
10171
 
 
10172
                        case 1523: {
 
10173
                                uint32_t _ptr_info1523;
 
10174
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1523));
 
10175
                                if (_ptr_info1523) {
 
10176
                                        NDR_PULL_ALLOC(ndr, r->info1523);
 
10177
                                } else {
 
10178
                                        r->info1523 = NULL;
 
10179
                                }
 
10180
                        break; }
 
10181
 
 
10182
                        case 1524: {
 
10183
                                uint32_t _ptr_info1524;
 
10184
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1524));
 
10185
                                if (_ptr_info1524) {
 
10186
                                        NDR_PULL_ALLOC(ndr, r->info1524);
 
10187
                                } else {
 
10188
                                        r->info1524 = NULL;
 
10189
                                }
 
10190
                        break; }
 
10191
 
 
10192
                        case 1525: {
 
10193
                                uint32_t _ptr_info1525;
 
10194
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1525));
 
10195
                                if (_ptr_info1525) {
 
10196
                                        NDR_PULL_ALLOC(ndr, r->info1525);
 
10197
                                } else {
 
10198
                                        r->info1525 = NULL;
 
10199
                                }
 
10200
                        break; }
 
10201
 
 
10202
                        case 1528: {
 
10203
                                uint32_t _ptr_info1528;
 
10204
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1528));
 
10205
                                if (_ptr_info1528) {
 
10206
                                        NDR_PULL_ALLOC(ndr, r->info1528);
 
10207
                                } else {
 
10208
                                        r->info1528 = NULL;
 
10209
                                }
 
10210
                        break; }
 
10211
 
 
10212
                        case 1529: {
 
10213
                                uint32_t _ptr_info1529;
 
10214
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1529));
 
10215
                                if (_ptr_info1529) {
 
10216
                                        NDR_PULL_ALLOC(ndr, r->info1529);
 
10217
                                } else {
 
10218
                                        r->info1529 = NULL;
 
10219
                                }
 
10220
                        break; }
 
10221
 
 
10222
                        case 1530: {
 
10223
                                uint32_t _ptr_info1530;
 
10224
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1530));
 
10225
                                if (_ptr_info1530) {
 
10226
                                        NDR_PULL_ALLOC(ndr, r->info1530);
 
10227
                                } else {
 
10228
                                        r->info1530 = NULL;
 
10229
                                }
 
10230
                        break; }
 
10231
 
 
10232
                        case 1533: {
 
10233
                                uint32_t _ptr_info1533;
 
10234
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1533));
 
10235
                                if (_ptr_info1533) {
 
10236
                                        NDR_PULL_ALLOC(ndr, r->info1533);
 
10237
                                } else {
 
10238
                                        r->info1533 = NULL;
 
10239
                                }
 
10240
                        break; }
 
10241
 
 
10242
                        case 1534: {
 
10243
                                uint32_t _ptr_info1534;
 
10244
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1534));
 
10245
                                if (_ptr_info1534) {
 
10246
                                        NDR_PULL_ALLOC(ndr, r->info1534);
 
10247
                                } else {
 
10248
                                        r->info1534 = NULL;
 
10249
                                }
 
10250
                        break; }
 
10251
 
 
10252
                        case 1535: {
 
10253
                                uint32_t _ptr_info1535;
 
10254
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1535));
 
10255
                                if (_ptr_info1535) {
 
10256
                                        NDR_PULL_ALLOC(ndr, r->info1535);
 
10257
                                } else {
 
10258
                                        r->info1535 = NULL;
 
10259
                                }
 
10260
                        break; }
 
10261
 
 
10262
                        case 1536: {
 
10263
                                uint32_t _ptr_info1536;
 
10264
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1536));
 
10265
                                if (_ptr_info1536) {
 
10266
                                        NDR_PULL_ALLOC(ndr, r->info1536);
 
10267
                                } else {
 
10268
                                        r->info1536 = NULL;
 
10269
                                }
 
10270
                        break; }
 
10271
 
 
10272
                        case 1537: {
 
10273
                                uint32_t _ptr_info1537;
 
10274
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1537));
 
10275
                                if (_ptr_info1537) {
 
10276
                                        NDR_PULL_ALLOC(ndr, r->info1537);
 
10277
                                } else {
 
10278
                                        r->info1537 = NULL;
 
10279
                                }
 
10280
                        break; }
 
10281
 
 
10282
                        case 1538: {
 
10283
                                uint32_t _ptr_info1538;
 
10284
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1538));
 
10285
                                if (_ptr_info1538) {
 
10286
                                        NDR_PULL_ALLOC(ndr, r->info1538);
 
10287
                                } else {
 
10288
                                        r->info1538 = NULL;
 
10289
                                }
 
10290
                        break; }
 
10291
 
 
10292
                        case 1539: {
 
10293
                                uint32_t _ptr_info1539;
 
10294
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1539));
 
10295
                                if (_ptr_info1539) {
 
10296
                                        NDR_PULL_ALLOC(ndr, r->info1539);
 
10297
                                } else {
 
10298
                                        r->info1539 = NULL;
 
10299
                                }
 
10300
                        break; }
 
10301
 
 
10302
                        case 1540: {
 
10303
                                uint32_t _ptr_info1540;
 
10304
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1540));
 
10305
                                if (_ptr_info1540) {
 
10306
                                        NDR_PULL_ALLOC(ndr, r->info1540);
 
10307
                                } else {
 
10308
                                        r->info1540 = NULL;
 
10309
                                }
 
10310
                        break; }
 
10311
 
 
10312
                        case 1541: {
 
10313
                                uint32_t _ptr_info1541;
 
10314
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1541));
 
10315
                                if (_ptr_info1541) {
 
10316
                                        NDR_PULL_ALLOC(ndr, r->info1541);
 
10317
                                } else {
 
10318
                                        r->info1541 = NULL;
 
10319
                                }
 
10320
                        break; }
 
10321
 
 
10322
                        case 1542: {
 
10323
                                uint32_t _ptr_info1542;
 
10324
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1542));
 
10325
                                if (_ptr_info1542) {
 
10326
                                        NDR_PULL_ALLOC(ndr, r->info1542);
 
10327
                                } else {
 
10328
                                        r->info1542 = NULL;
 
10329
                                }
 
10330
                        break; }
 
10331
 
 
10332
                        case 1543: {
 
10333
                                uint32_t _ptr_info1543;
 
10334
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1543));
 
10335
                                if (_ptr_info1543) {
 
10336
                                        NDR_PULL_ALLOC(ndr, r->info1543);
 
10337
                                } else {
 
10338
                                        r->info1543 = NULL;
 
10339
                                }
 
10340
                        break; }
 
10341
 
 
10342
                        case 1544: {
 
10343
                                uint32_t _ptr_info1544;
 
10344
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1544));
 
10345
                                if (_ptr_info1544) {
 
10346
                                        NDR_PULL_ALLOC(ndr, r->info1544);
 
10347
                                } else {
 
10348
                                        r->info1544 = NULL;
 
10349
                                }
 
10350
                        break; }
 
10351
 
 
10352
                        case 1545: {
 
10353
                                uint32_t _ptr_info1545;
 
10354
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1545));
 
10355
                                if (_ptr_info1545) {
 
10356
                                        NDR_PULL_ALLOC(ndr, r->info1545);
 
10357
                                } else {
 
10358
                                        r->info1545 = NULL;
 
10359
                                }
 
10360
                        break; }
 
10361
 
 
10362
                        case 1546: {
 
10363
                                uint32_t _ptr_info1546;
 
10364
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1546));
 
10365
                                if (_ptr_info1546) {
 
10366
                                        NDR_PULL_ALLOC(ndr, r->info1546);
 
10367
                                } else {
 
10368
                                        r->info1546 = NULL;
 
10369
                                }
 
10370
                        break; }
 
10371
 
 
10372
                        case 1547: {
 
10373
                                uint32_t _ptr_info1547;
 
10374
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1547));
 
10375
                                if (_ptr_info1547) {
 
10376
                                        NDR_PULL_ALLOC(ndr, r->info1547);
 
10377
                                } else {
 
10378
                                        r->info1547 = NULL;
 
10379
                                }
 
10380
                        break; }
 
10381
 
 
10382
                        case 1548: {
 
10383
                                uint32_t _ptr_info1548;
 
10384
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1548));
 
10385
                                if (_ptr_info1548) {
 
10386
                                        NDR_PULL_ALLOC(ndr, r->info1548);
 
10387
                                } else {
 
10388
                                        r->info1548 = NULL;
 
10389
                                }
 
10390
                        break; }
 
10391
 
 
10392
                        case 1549: {
 
10393
                                uint32_t _ptr_info1549;
 
10394
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1549));
 
10395
                                if (_ptr_info1549) {
 
10396
                                        NDR_PULL_ALLOC(ndr, r->info1549);
 
10397
                                } else {
 
10398
                                        r->info1549 = NULL;
 
10399
                                }
 
10400
                        break; }
 
10401
 
 
10402
                        case 1550: {
 
10403
                                uint32_t _ptr_info1550;
 
10404
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1550));
 
10405
                                if (_ptr_info1550) {
 
10406
                                        NDR_PULL_ALLOC(ndr, r->info1550);
 
10407
                                } else {
 
10408
                                        r->info1550 = NULL;
 
10409
                                }
 
10410
                        break; }
 
10411
 
 
10412
                        case 1552: {
 
10413
                                uint32_t _ptr_info1552;
 
10414
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1552));
 
10415
                                if (_ptr_info1552) {
 
10416
                                        NDR_PULL_ALLOC(ndr, r->info1552);
 
10417
                                } else {
 
10418
                                        r->info1552 = NULL;
 
10419
                                }
 
10420
                        break; }
 
10421
 
 
10422
                        case 1553: {
 
10423
                                uint32_t _ptr_info1553;
 
10424
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1553));
 
10425
                                if (_ptr_info1553) {
 
10426
                                        NDR_PULL_ALLOC(ndr, r->info1553);
 
10427
                                } else {
 
10428
                                        r->info1553 = NULL;
 
10429
                                }
 
10430
                        break; }
 
10431
 
 
10432
                        case 1554: {
 
10433
                                uint32_t _ptr_info1554;
 
10434
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1554));
 
10435
                                if (_ptr_info1554) {
 
10436
                                        NDR_PULL_ALLOC(ndr, r->info1554);
 
10437
                                } else {
 
10438
                                        r->info1554 = NULL;
 
10439
                                }
 
10440
                        break; }
 
10441
 
 
10442
                        case 1555: {
 
10443
                                uint32_t _ptr_info1555;
 
10444
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1555));
 
10445
                                if (_ptr_info1555) {
 
10446
                                        NDR_PULL_ALLOC(ndr, r->info1555);
 
10447
                                } else {
 
10448
                                        r->info1555 = NULL;
 
10449
                                }
 
10450
                        break; }
 
10451
 
 
10452
                        case 1556: {
 
10453
                                uint32_t _ptr_info1556;
 
10454
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1556));
 
10455
                                if (_ptr_info1556) {
 
10456
                                        NDR_PULL_ALLOC(ndr, r->info1556);
 
10457
                                } else {
 
10458
                                        r->info1556 = NULL;
 
10459
                                }
 
10460
                        break; }
 
10461
 
 
10462
                        default: {
 
10463
                        break; }
 
10464
 
 
10465
                }
 
10466
        }
 
10467
        if (ndr_flags & NDR_BUFFERS) {
 
10468
                switch (level) {
 
10469
                        case 100:
 
10470
                                if (r->info100) {
 
10471
                                        _mem_save_info100_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10472
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info100, 0);
 
10473
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo100(ndr, NDR_SCALARS|NDR_BUFFERS, r->info100));
 
10474
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info100_0, 0);
 
10475
                                }
 
10476
                        break;
 
10477
 
 
10478
                        case 101:
 
10479
                                if (r->info101) {
 
10480
                                        _mem_save_info101_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10481
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info101, 0);
 
10482
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo101(ndr, NDR_SCALARS|NDR_BUFFERS, r->info101));
 
10483
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info101_0, 0);
 
10484
                                }
 
10485
                        break;
 
10486
 
 
10487
                        case 102:
 
10488
                                if (r->info102) {
 
10489
                                        _mem_save_info102_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10490
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info102, 0);
 
10491
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo102(ndr, NDR_SCALARS|NDR_BUFFERS, r->info102));
 
10492
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info102_0, 0);
 
10493
                                }
 
10494
                        break;
 
10495
 
 
10496
                        case 402:
 
10497
                                if (r->info402) {
 
10498
                                        _mem_save_info402_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10499
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info402, 0);
 
10500
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo402(ndr, NDR_SCALARS|NDR_BUFFERS, r->info402));
 
10501
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info402_0, 0);
 
10502
                                }
 
10503
                        break;
 
10504
 
 
10505
                        case 403:
 
10506
                                if (r->info403) {
 
10507
                                        _mem_save_info403_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10508
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info403, 0);
 
10509
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo403(ndr, NDR_SCALARS|NDR_BUFFERS, r->info403));
 
10510
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info403_0, 0);
 
10511
                                }
 
10512
                        break;
 
10513
 
 
10514
                        case 502:
 
10515
                                if (r->info502) {
 
10516
                                        _mem_save_info502_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10517
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info502, 0);
 
10518
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo502(ndr, NDR_SCALARS, r->info502));
 
10519
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info502_0, 0);
 
10520
                                }
 
10521
                        break;
 
10522
 
 
10523
                        case 503:
 
10524
                                if (r->info503) {
 
10525
                                        _mem_save_info503_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10526
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info503, 0);
 
10527
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo503(ndr, NDR_SCALARS|NDR_BUFFERS, r->info503));
 
10528
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info503_0, 0);
 
10529
                                }
 
10530
                        break;
 
10531
 
 
10532
                        case 599:
 
10533
                                if (r->info599) {
 
10534
                                        _mem_save_info599_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10535
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info599, 0);
 
10536
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo599(ndr, NDR_SCALARS|NDR_BUFFERS, r->info599));
 
10537
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info599_0, 0);
 
10538
                                }
 
10539
                        break;
 
10540
 
 
10541
                        case 1005:
 
10542
                                if (r->info1005) {
 
10543
                                        _mem_save_info1005_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10544
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1005, 0);
 
10545
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1005(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1005));
 
10546
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1005_0, 0);
 
10547
                                }
 
10548
                        break;
 
10549
 
 
10550
                        case 1010:
 
10551
                                if (r->info1010) {
 
10552
                                        _mem_save_info1010_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10553
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1010, 0);
 
10554
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1010(ndr, NDR_SCALARS, r->info1010));
 
10555
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1010_0, 0);
 
10556
                                }
 
10557
                        break;
 
10558
 
 
10559
                        case 1016:
 
10560
                                if (r->info1016) {
 
10561
                                        _mem_save_info1016_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10562
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1016, 0);
 
10563
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1016(ndr, NDR_SCALARS, r->info1016));
 
10564
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1016_0, 0);
 
10565
                                }
 
10566
                        break;
 
10567
 
 
10568
                        case 1017:
 
10569
                                if (r->info1017) {
 
10570
                                        _mem_save_info1017_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10571
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1017, 0);
 
10572
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1017(ndr, NDR_SCALARS, r->info1017));
 
10573
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1017_0, 0);
 
10574
                                }
 
10575
                        break;
 
10576
 
 
10577
                        case 1018:
 
10578
                                if (r->info1018) {
 
10579
                                        _mem_save_info1018_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10580
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1018, 0);
 
10581
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1018(ndr, NDR_SCALARS, r->info1018));
 
10582
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1018_0, 0);
 
10583
                                }
 
10584
                        break;
 
10585
 
 
10586
                        case 1107:
 
10587
                                if (r->info1107) {
 
10588
                                        _mem_save_info1107_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10589
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1107, 0);
 
10590
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1107(ndr, NDR_SCALARS, r->info1107));
 
10591
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1107_0, 0);
 
10592
                                }
 
10593
                        break;
 
10594
 
 
10595
                        case 1501:
 
10596
                                if (r->info1501) {
 
10597
                                        _mem_save_info1501_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10598
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1501, 0);
 
10599
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1501(ndr, NDR_SCALARS, r->info1501));
 
10600
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1501_0, 0);
 
10601
                                }
 
10602
                        break;
 
10603
 
 
10604
                        case 1502:
 
10605
                                if (r->info1502) {
 
10606
                                        _mem_save_info1502_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10607
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1502, 0);
 
10608
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1502(ndr, NDR_SCALARS, r->info1502));
 
10609
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1502_0, 0);
 
10610
                                }
 
10611
                        break;
 
10612
 
 
10613
                        case 1503:
 
10614
                                if (r->info1503) {
 
10615
                                        _mem_save_info1503_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10616
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1503, 0);
 
10617
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1503(ndr, NDR_SCALARS, r->info1503));
 
10618
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1503_0, 0);
 
10619
                                }
 
10620
                        break;
 
10621
 
 
10622
                        case 1506:
 
10623
                                if (r->info1506) {
 
10624
                                        _mem_save_info1506_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10625
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1506, 0);
 
10626
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1506(ndr, NDR_SCALARS, r->info1506));
 
10627
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1506_0, 0);
 
10628
                                }
 
10629
                        break;
 
10630
 
 
10631
                        case 1509:
 
10632
                                if (r->info1509) {
 
10633
                                        _mem_save_info1509_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10634
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1509, 0);
 
10635
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1509(ndr, NDR_SCALARS, r->info1509));
 
10636
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1509_0, 0);
 
10637
                                }
 
10638
                        break;
 
10639
 
 
10640
                        case 1510:
 
10641
                                if (r->info1510) {
 
10642
                                        _mem_save_info1510_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10643
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1510, 0);
 
10644
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1510(ndr, NDR_SCALARS, r->info1510));
 
10645
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1510_0, 0);
 
10646
                                }
 
10647
                        break;
 
10648
 
 
10649
                        case 1511:
 
10650
                                if (r->info1511) {
 
10651
                                        _mem_save_info1511_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10652
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1511, 0);
 
10653
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1511(ndr, NDR_SCALARS, r->info1511));
 
10654
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1511_0, 0);
 
10655
                                }
 
10656
                        break;
 
10657
 
 
10658
                        case 1512:
 
10659
                                if (r->info1512) {
 
10660
                                        _mem_save_info1512_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10661
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1512, 0);
 
10662
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1512(ndr, NDR_SCALARS, r->info1512));
 
10663
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1512_0, 0);
 
10664
                                }
 
10665
                        break;
 
10666
 
 
10667
                        case 1513:
 
10668
                                if (r->info1513) {
 
10669
                                        _mem_save_info1513_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10670
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1513, 0);
 
10671
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1513(ndr, NDR_SCALARS, r->info1513));
 
10672
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1513_0, 0);
 
10673
                                }
 
10674
                        break;
 
10675
 
 
10676
                        case 1514:
 
10677
                                if (r->info1514) {
 
10678
                                        _mem_save_info1514_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10679
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1514, 0);
 
10680
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1514(ndr, NDR_SCALARS, r->info1514));
 
10681
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1514_0, 0);
 
10682
                                }
 
10683
                        break;
 
10684
 
 
10685
                        case 1515:
 
10686
                                if (r->info1515) {
 
10687
                                        _mem_save_info1515_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10688
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1515, 0);
 
10689
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1515(ndr, NDR_SCALARS, r->info1515));
 
10690
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1515_0, 0);
 
10691
                                }
 
10692
                        break;
 
10693
 
 
10694
                        case 1516:
 
10695
                                if (r->info1516) {
 
10696
                                        _mem_save_info1516_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10697
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1516, 0);
 
10698
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1516(ndr, NDR_SCALARS, r->info1516));
 
10699
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1516_0, 0);
 
10700
                                }
 
10701
                        break;
 
10702
 
 
10703
                        case 1518:
 
10704
                                if (r->info1518) {
 
10705
                                        _mem_save_info1518_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10706
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1518, 0);
 
10707
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1518(ndr, NDR_SCALARS, r->info1518));
 
10708
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1518_0, 0);
 
10709
                                }
 
10710
                        break;
 
10711
 
 
10712
                        case 1520:
 
10713
                                if (r->info1520) {
 
10714
                                        _mem_save_info1520_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10715
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1520, 0);
 
10716
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1520(ndr, NDR_SCALARS, r->info1520));
 
10717
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1520_0, 0);
 
10718
                                }
 
10719
                        break;
 
10720
 
 
10721
                        case 1521:
 
10722
                                if (r->info1521) {
 
10723
                                        _mem_save_info1521_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10724
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1521, 0);
 
10725
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1521(ndr, NDR_SCALARS, r->info1521));
 
10726
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1521_0, 0);
 
10727
                                }
 
10728
                        break;
 
10729
 
 
10730
                        case 1522:
 
10731
                                if (r->info1522) {
 
10732
                                        _mem_save_info1522_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10733
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1522, 0);
 
10734
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1522(ndr, NDR_SCALARS, r->info1522));
 
10735
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1522_0, 0);
 
10736
                                }
 
10737
                        break;
 
10738
 
 
10739
                        case 1523:
 
10740
                                if (r->info1523) {
 
10741
                                        _mem_save_info1523_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10742
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1523, 0);
 
10743
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1523(ndr, NDR_SCALARS, r->info1523));
 
10744
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1523_0, 0);
 
10745
                                }
 
10746
                        break;
 
10747
 
 
10748
                        case 1524:
 
10749
                                if (r->info1524) {
 
10750
                                        _mem_save_info1524_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10751
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1524, 0);
 
10752
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1524(ndr, NDR_SCALARS, r->info1524));
 
10753
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1524_0, 0);
 
10754
                                }
 
10755
                        break;
 
10756
 
 
10757
                        case 1525:
 
10758
                                if (r->info1525) {
 
10759
                                        _mem_save_info1525_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10760
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1525, 0);
 
10761
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1525(ndr, NDR_SCALARS, r->info1525));
 
10762
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1525_0, 0);
 
10763
                                }
 
10764
                        break;
 
10765
 
 
10766
                        case 1528:
 
10767
                                if (r->info1528) {
 
10768
                                        _mem_save_info1528_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10769
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1528, 0);
 
10770
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1528(ndr, NDR_SCALARS, r->info1528));
 
10771
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1528_0, 0);
 
10772
                                }
 
10773
                        break;
 
10774
 
 
10775
                        case 1529:
 
10776
                                if (r->info1529) {
 
10777
                                        _mem_save_info1529_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10778
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1529, 0);
 
10779
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1529(ndr, NDR_SCALARS, r->info1529));
 
10780
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1529_0, 0);
 
10781
                                }
 
10782
                        break;
 
10783
 
 
10784
                        case 1530:
 
10785
                                if (r->info1530) {
 
10786
                                        _mem_save_info1530_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10787
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1530, 0);
 
10788
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1530(ndr, NDR_SCALARS, r->info1530));
 
10789
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1530_0, 0);
 
10790
                                }
 
10791
                        break;
 
10792
 
 
10793
                        case 1533:
 
10794
                                if (r->info1533) {
 
10795
                                        _mem_save_info1533_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10796
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1533, 0);
 
10797
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1533(ndr, NDR_SCALARS, r->info1533));
 
10798
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1533_0, 0);
 
10799
                                }
 
10800
                        break;
 
10801
 
 
10802
                        case 1534:
 
10803
                                if (r->info1534) {
 
10804
                                        _mem_save_info1534_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10805
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1534, 0);
 
10806
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1534(ndr, NDR_SCALARS, r->info1534));
 
10807
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1534_0, 0);
 
10808
                                }
 
10809
                        break;
 
10810
 
 
10811
                        case 1535:
 
10812
                                if (r->info1535) {
 
10813
                                        _mem_save_info1535_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10814
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1535, 0);
 
10815
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1535(ndr, NDR_SCALARS, r->info1535));
 
10816
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1535_0, 0);
 
10817
                                }
 
10818
                        break;
 
10819
 
 
10820
                        case 1536:
 
10821
                                if (r->info1536) {
 
10822
                                        _mem_save_info1536_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10823
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1536, 0);
 
10824
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1536(ndr, NDR_SCALARS, r->info1536));
 
10825
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1536_0, 0);
 
10826
                                }
 
10827
                        break;
 
10828
 
 
10829
                        case 1537:
 
10830
                                if (r->info1537) {
 
10831
                                        _mem_save_info1537_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10832
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1537, 0);
 
10833
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1537(ndr, NDR_SCALARS, r->info1537));
 
10834
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1537_0, 0);
 
10835
                                }
 
10836
                        break;
 
10837
 
 
10838
                        case 1538:
 
10839
                                if (r->info1538) {
 
10840
                                        _mem_save_info1538_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10841
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1538, 0);
 
10842
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1538(ndr, NDR_SCALARS, r->info1538));
 
10843
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1538_0, 0);
 
10844
                                }
 
10845
                        break;
 
10846
 
 
10847
                        case 1539:
 
10848
                                if (r->info1539) {
 
10849
                                        _mem_save_info1539_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10850
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1539, 0);
 
10851
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1539(ndr, NDR_SCALARS, r->info1539));
 
10852
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1539_0, 0);
 
10853
                                }
 
10854
                        break;
 
10855
 
 
10856
                        case 1540:
 
10857
                                if (r->info1540) {
 
10858
                                        _mem_save_info1540_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10859
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1540, 0);
 
10860
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1540(ndr, NDR_SCALARS, r->info1540));
 
10861
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1540_0, 0);
 
10862
                                }
 
10863
                        break;
 
10864
 
 
10865
                        case 1541:
 
10866
                                if (r->info1541) {
 
10867
                                        _mem_save_info1541_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10868
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1541, 0);
 
10869
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1541(ndr, NDR_SCALARS, r->info1541));
 
10870
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1541_0, 0);
 
10871
                                }
 
10872
                        break;
 
10873
 
 
10874
                        case 1542:
 
10875
                                if (r->info1542) {
 
10876
                                        _mem_save_info1542_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10877
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1542, 0);
 
10878
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1542(ndr, NDR_SCALARS, r->info1542));
 
10879
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1542_0, 0);
 
10880
                                }
 
10881
                        break;
 
10882
 
 
10883
                        case 1543:
 
10884
                                if (r->info1543) {
 
10885
                                        _mem_save_info1543_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10886
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1543, 0);
 
10887
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1543(ndr, NDR_SCALARS, r->info1543));
 
10888
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1543_0, 0);
 
10889
                                }
 
10890
                        break;
 
10891
 
 
10892
                        case 1544:
 
10893
                                if (r->info1544) {
 
10894
                                        _mem_save_info1544_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10895
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1544, 0);
 
10896
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1544(ndr, NDR_SCALARS, r->info1544));
 
10897
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1544_0, 0);
 
10898
                                }
 
10899
                        break;
 
10900
 
 
10901
                        case 1545:
 
10902
                                if (r->info1545) {
 
10903
                                        _mem_save_info1545_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10904
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1545, 0);
 
10905
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1545(ndr, NDR_SCALARS, r->info1545));
 
10906
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1545_0, 0);
 
10907
                                }
 
10908
                        break;
 
10909
 
 
10910
                        case 1546:
 
10911
                                if (r->info1546) {
 
10912
                                        _mem_save_info1546_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10913
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1546, 0);
 
10914
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1546(ndr, NDR_SCALARS, r->info1546));
 
10915
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1546_0, 0);
 
10916
                                }
 
10917
                        break;
 
10918
 
 
10919
                        case 1547:
 
10920
                                if (r->info1547) {
 
10921
                                        _mem_save_info1547_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10922
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1547, 0);
 
10923
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1547(ndr, NDR_SCALARS, r->info1547));
 
10924
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1547_0, 0);
 
10925
                                }
 
10926
                        break;
 
10927
 
 
10928
                        case 1548:
 
10929
                                if (r->info1548) {
 
10930
                                        _mem_save_info1548_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10931
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1548, 0);
 
10932
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1548(ndr, NDR_SCALARS, r->info1548));
 
10933
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1548_0, 0);
 
10934
                                }
 
10935
                        break;
 
10936
 
 
10937
                        case 1549:
 
10938
                                if (r->info1549) {
 
10939
                                        _mem_save_info1549_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10940
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1549, 0);
 
10941
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1549(ndr, NDR_SCALARS, r->info1549));
 
10942
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1549_0, 0);
 
10943
                                }
 
10944
                        break;
 
10945
 
 
10946
                        case 1550:
 
10947
                                if (r->info1550) {
 
10948
                                        _mem_save_info1550_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10949
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1550, 0);
 
10950
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1550(ndr, NDR_SCALARS, r->info1550));
 
10951
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1550_0, 0);
 
10952
                                }
 
10953
                        break;
 
10954
 
 
10955
                        case 1552:
 
10956
                                if (r->info1552) {
 
10957
                                        _mem_save_info1552_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10958
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1552, 0);
 
10959
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1552(ndr, NDR_SCALARS, r->info1552));
 
10960
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1552_0, 0);
 
10961
                                }
 
10962
                        break;
 
10963
 
 
10964
                        case 1553:
 
10965
                                if (r->info1553) {
 
10966
                                        _mem_save_info1553_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10967
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1553, 0);
 
10968
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1553(ndr, NDR_SCALARS, r->info1553));
 
10969
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1553_0, 0);
 
10970
                                }
 
10971
                        break;
 
10972
 
 
10973
                        case 1554:
 
10974
                                if (r->info1554) {
 
10975
                                        _mem_save_info1554_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10976
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1554, 0);
 
10977
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1554(ndr, NDR_SCALARS, r->info1554));
 
10978
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1554_0, 0);
 
10979
                                }
 
10980
                        break;
 
10981
 
 
10982
                        case 1555:
 
10983
                                if (r->info1555) {
 
10984
                                        _mem_save_info1555_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10985
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1555, 0);
 
10986
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1555(ndr, NDR_SCALARS, r->info1555));
 
10987
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1555_0, 0);
 
10988
                                }
 
10989
                        break;
 
10990
 
 
10991
                        case 1556:
 
10992
                                if (r->info1556) {
 
10993
                                        _mem_save_info1556_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
10994
                                        NDR_PULL_SET_MEM_CTX(ndr, r->info1556, 0);
 
10995
                                        NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo1556(ndr, NDR_SCALARS, r->info1556));
 
10996
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1556_0, 0);
 
10997
                                }
 
10998
                        break;
 
10999
 
 
11000
                        default:
 
11001
                        break;
 
11002
 
 
11003
                }
 
11004
        }
 
11005
        return NDR_ERR_SUCCESS;
 
11006
}
 
11007
 
 
11008
_PUBLIC_ void ndr_print_srvsvc_NetSrvInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetSrvInfo *r)
 
11009
{
 
11010
        int level;
 
11011
        level = ndr_print_get_switch_value(ndr, r);
 
11012
        ndr_print_union(ndr, name, level, "srvsvc_NetSrvInfo");
 
11013
        switch (level) {
 
11014
                case 100:
 
11015
                        ndr_print_ptr(ndr, "info100", r->info100);
 
11016
                        ndr->depth++;
 
11017
                        if (r->info100) {
 
11018
                                ndr_print_srvsvc_NetSrvInfo100(ndr, "info100", r->info100);
 
11019
                        }
 
11020
                        ndr->depth--;
 
11021
                break;
 
11022
 
 
11023
                case 101:
 
11024
                        ndr_print_ptr(ndr, "info101", r->info101);
 
11025
                        ndr->depth++;
 
11026
                        if (r->info101) {
 
11027
                                ndr_print_srvsvc_NetSrvInfo101(ndr, "info101", r->info101);
 
11028
                        }
 
11029
                        ndr->depth--;
 
11030
                break;
 
11031
 
 
11032
                case 102:
 
11033
                        ndr_print_ptr(ndr, "info102", r->info102);
 
11034
                        ndr->depth++;
 
11035
                        if (r->info102) {
 
11036
                                ndr_print_srvsvc_NetSrvInfo102(ndr, "info102", r->info102);
 
11037
                        }
 
11038
                        ndr->depth--;
 
11039
                break;
 
11040
 
 
11041
                case 402:
 
11042
                        ndr_print_ptr(ndr, "info402", r->info402);
 
11043
                        ndr->depth++;
 
11044
                        if (r->info402) {
 
11045
                                ndr_print_srvsvc_NetSrvInfo402(ndr, "info402", r->info402);
 
11046
                        }
 
11047
                        ndr->depth--;
 
11048
                break;
 
11049
 
 
11050
                case 403:
 
11051
                        ndr_print_ptr(ndr, "info403", r->info403);
 
11052
                        ndr->depth++;
 
11053
                        if (r->info403) {
 
11054
                                ndr_print_srvsvc_NetSrvInfo403(ndr, "info403", r->info403);
 
11055
                        }
 
11056
                        ndr->depth--;
 
11057
                break;
 
11058
 
 
11059
                case 502:
 
11060
                        ndr_print_ptr(ndr, "info502", r->info502);
 
11061
                        ndr->depth++;
 
11062
                        if (r->info502) {
 
11063
                                ndr_print_srvsvc_NetSrvInfo502(ndr, "info502", r->info502);
 
11064
                        }
 
11065
                        ndr->depth--;
 
11066
                break;
 
11067
 
 
11068
                case 503:
 
11069
                        ndr_print_ptr(ndr, "info503", r->info503);
 
11070
                        ndr->depth++;
 
11071
                        if (r->info503) {
 
11072
                                ndr_print_srvsvc_NetSrvInfo503(ndr, "info503", r->info503);
 
11073
                        }
 
11074
                        ndr->depth--;
 
11075
                break;
 
11076
 
 
11077
                case 599:
 
11078
                        ndr_print_ptr(ndr, "info599", r->info599);
 
11079
                        ndr->depth++;
 
11080
                        if (r->info599) {
 
11081
                                ndr_print_srvsvc_NetSrvInfo599(ndr, "info599", r->info599);
 
11082
                        }
 
11083
                        ndr->depth--;
 
11084
                break;
 
11085
 
 
11086
                case 1005:
 
11087
                        ndr_print_ptr(ndr, "info1005", r->info1005);
 
11088
                        ndr->depth++;
 
11089
                        if (r->info1005) {
 
11090
                                ndr_print_srvsvc_NetSrvInfo1005(ndr, "info1005", r->info1005);
 
11091
                        }
 
11092
                        ndr->depth--;
 
11093
                break;
 
11094
 
 
11095
                case 1010:
 
11096
                        ndr_print_ptr(ndr, "info1010", r->info1010);
 
11097
                        ndr->depth++;
 
11098
                        if (r->info1010) {
 
11099
                                ndr_print_srvsvc_NetSrvInfo1010(ndr, "info1010", r->info1010);
 
11100
                        }
 
11101
                        ndr->depth--;
 
11102
                break;
 
11103
 
 
11104
                case 1016:
 
11105
                        ndr_print_ptr(ndr, "info1016", r->info1016);
 
11106
                        ndr->depth++;
 
11107
                        if (r->info1016) {
 
11108
                                ndr_print_srvsvc_NetSrvInfo1016(ndr, "info1016", r->info1016);
 
11109
                        }
 
11110
                        ndr->depth--;
 
11111
                break;
 
11112
 
 
11113
                case 1017:
 
11114
                        ndr_print_ptr(ndr, "info1017", r->info1017);
 
11115
                        ndr->depth++;
 
11116
                        if (r->info1017) {
 
11117
                                ndr_print_srvsvc_NetSrvInfo1017(ndr, "info1017", r->info1017);
 
11118
                        }
 
11119
                        ndr->depth--;
 
11120
                break;
 
11121
 
 
11122
                case 1018:
 
11123
                        ndr_print_ptr(ndr, "info1018", r->info1018);
 
11124
                        ndr->depth++;
 
11125
                        if (r->info1018) {
 
11126
                                ndr_print_srvsvc_NetSrvInfo1018(ndr, "info1018", r->info1018);
 
11127
                        }
 
11128
                        ndr->depth--;
 
11129
                break;
 
11130
 
 
11131
                case 1107:
 
11132
                        ndr_print_ptr(ndr, "info1107", r->info1107);
 
11133
                        ndr->depth++;
 
11134
                        if (r->info1107) {
 
11135
                                ndr_print_srvsvc_NetSrvInfo1107(ndr, "info1107", r->info1107);
 
11136
                        }
 
11137
                        ndr->depth--;
 
11138
                break;
 
11139
 
 
11140
                case 1501:
 
11141
                        ndr_print_ptr(ndr, "info1501", r->info1501);
 
11142
                        ndr->depth++;
 
11143
                        if (r->info1501) {
 
11144
                                ndr_print_srvsvc_NetSrvInfo1501(ndr, "info1501", r->info1501);
 
11145
                        }
 
11146
                        ndr->depth--;
 
11147
                break;
 
11148
 
 
11149
                case 1502:
 
11150
                        ndr_print_ptr(ndr, "info1502", r->info1502);
 
11151
                        ndr->depth++;
 
11152
                        if (r->info1502) {
 
11153
                                ndr_print_srvsvc_NetSrvInfo1502(ndr, "info1502", r->info1502);
 
11154
                        }
 
11155
                        ndr->depth--;
 
11156
                break;
 
11157
 
 
11158
                case 1503:
 
11159
                        ndr_print_ptr(ndr, "info1503", r->info1503);
 
11160
                        ndr->depth++;
 
11161
                        if (r->info1503) {
 
11162
                                ndr_print_srvsvc_NetSrvInfo1503(ndr, "info1503", r->info1503);
 
11163
                        }
 
11164
                        ndr->depth--;
 
11165
                break;
 
11166
 
 
11167
                case 1506:
 
11168
                        ndr_print_ptr(ndr, "info1506", r->info1506);
 
11169
                        ndr->depth++;
 
11170
                        if (r->info1506) {
 
11171
                                ndr_print_srvsvc_NetSrvInfo1506(ndr, "info1506", r->info1506);
 
11172
                        }
 
11173
                        ndr->depth--;
 
11174
                break;
 
11175
 
 
11176
                case 1509:
 
11177
                        ndr_print_ptr(ndr, "info1509", r->info1509);
 
11178
                        ndr->depth++;
 
11179
                        if (r->info1509) {
 
11180
                                ndr_print_srvsvc_NetSrvInfo1509(ndr, "info1509", r->info1509);
 
11181
                        }
 
11182
                        ndr->depth--;
 
11183
                break;
 
11184
 
 
11185
                case 1510:
 
11186
                        ndr_print_ptr(ndr, "info1510", r->info1510);
 
11187
                        ndr->depth++;
 
11188
                        if (r->info1510) {
 
11189
                                ndr_print_srvsvc_NetSrvInfo1510(ndr, "info1510", r->info1510);
 
11190
                        }
 
11191
                        ndr->depth--;
 
11192
                break;
 
11193
 
 
11194
                case 1511:
 
11195
                        ndr_print_ptr(ndr, "info1511", r->info1511);
 
11196
                        ndr->depth++;
 
11197
                        if (r->info1511) {
 
11198
                                ndr_print_srvsvc_NetSrvInfo1511(ndr, "info1511", r->info1511);
 
11199
                        }
 
11200
                        ndr->depth--;
 
11201
                break;
 
11202
 
 
11203
                case 1512:
 
11204
                        ndr_print_ptr(ndr, "info1512", r->info1512);
 
11205
                        ndr->depth++;
 
11206
                        if (r->info1512) {
 
11207
                                ndr_print_srvsvc_NetSrvInfo1512(ndr, "info1512", r->info1512);
 
11208
                        }
 
11209
                        ndr->depth--;
 
11210
                break;
 
11211
 
 
11212
                case 1513:
 
11213
                        ndr_print_ptr(ndr, "info1513", r->info1513);
 
11214
                        ndr->depth++;
 
11215
                        if (r->info1513) {
 
11216
                                ndr_print_srvsvc_NetSrvInfo1513(ndr, "info1513", r->info1513);
 
11217
                        }
 
11218
                        ndr->depth--;
 
11219
                break;
 
11220
 
 
11221
                case 1514:
 
11222
                        ndr_print_ptr(ndr, "info1514", r->info1514);
 
11223
                        ndr->depth++;
 
11224
                        if (r->info1514) {
 
11225
                                ndr_print_srvsvc_NetSrvInfo1514(ndr, "info1514", r->info1514);
 
11226
                        }
 
11227
                        ndr->depth--;
 
11228
                break;
 
11229
 
 
11230
                case 1515:
 
11231
                        ndr_print_ptr(ndr, "info1515", r->info1515);
 
11232
                        ndr->depth++;
 
11233
                        if (r->info1515) {
 
11234
                                ndr_print_srvsvc_NetSrvInfo1515(ndr, "info1515", r->info1515);
 
11235
                        }
 
11236
                        ndr->depth--;
 
11237
                break;
 
11238
 
 
11239
                case 1516:
 
11240
                        ndr_print_ptr(ndr, "info1516", r->info1516);
 
11241
                        ndr->depth++;
 
11242
                        if (r->info1516) {
 
11243
                                ndr_print_srvsvc_NetSrvInfo1516(ndr, "info1516", r->info1516);
 
11244
                        }
 
11245
                        ndr->depth--;
 
11246
                break;
 
11247
 
 
11248
                case 1518:
 
11249
                        ndr_print_ptr(ndr, "info1518", r->info1518);
 
11250
                        ndr->depth++;
 
11251
                        if (r->info1518) {
 
11252
                                ndr_print_srvsvc_NetSrvInfo1518(ndr, "info1518", r->info1518);
 
11253
                        }
 
11254
                        ndr->depth--;
 
11255
                break;
 
11256
 
 
11257
                case 1520:
 
11258
                        ndr_print_ptr(ndr, "info1520", r->info1520);
 
11259
                        ndr->depth++;
 
11260
                        if (r->info1520) {
 
11261
                                ndr_print_srvsvc_NetSrvInfo1520(ndr, "info1520", r->info1520);
 
11262
                        }
 
11263
                        ndr->depth--;
 
11264
                break;
 
11265
 
 
11266
                case 1521:
 
11267
                        ndr_print_ptr(ndr, "info1521", r->info1521);
 
11268
                        ndr->depth++;
 
11269
                        if (r->info1521) {
 
11270
                                ndr_print_srvsvc_NetSrvInfo1521(ndr, "info1521", r->info1521);
 
11271
                        }
 
11272
                        ndr->depth--;
 
11273
                break;
 
11274
 
 
11275
                case 1522:
 
11276
                        ndr_print_ptr(ndr, "info1522", r->info1522);
 
11277
                        ndr->depth++;
 
11278
                        if (r->info1522) {
 
11279
                                ndr_print_srvsvc_NetSrvInfo1522(ndr, "info1522", r->info1522);
 
11280
                        }
 
11281
                        ndr->depth--;
 
11282
                break;
 
11283
 
 
11284
                case 1523:
 
11285
                        ndr_print_ptr(ndr, "info1523", r->info1523);
 
11286
                        ndr->depth++;
 
11287
                        if (r->info1523) {
 
11288
                                ndr_print_srvsvc_NetSrvInfo1523(ndr, "info1523", r->info1523);
 
11289
                        }
 
11290
                        ndr->depth--;
 
11291
                break;
 
11292
 
 
11293
                case 1524:
 
11294
                        ndr_print_ptr(ndr, "info1524", r->info1524);
 
11295
                        ndr->depth++;
 
11296
                        if (r->info1524) {
 
11297
                                ndr_print_srvsvc_NetSrvInfo1524(ndr, "info1524", r->info1524);
 
11298
                        }
 
11299
                        ndr->depth--;
 
11300
                break;
 
11301
 
 
11302
                case 1525:
 
11303
                        ndr_print_ptr(ndr, "info1525", r->info1525);
 
11304
                        ndr->depth++;
 
11305
                        if (r->info1525) {
 
11306
                                ndr_print_srvsvc_NetSrvInfo1525(ndr, "info1525", r->info1525);
 
11307
                        }
 
11308
                        ndr->depth--;
 
11309
                break;
 
11310
 
 
11311
                case 1528:
 
11312
                        ndr_print_ptr(ndr, "info1528", r->info1528);
 
11313
                        ndr->depth++;
 
11314
                        if (r->info1528) {
 
11315
                                ndr_print_srvsvc_NetSrvInfo1528(ndr, "info1528", r->info1528);
 
11316
                        }
 
11317
                        ndr->depth--;
 
11318
                break;
 
11319
 
 
11320
                case 1529:
 
11321
                        ndr_print_ptr(ndr, "info1529", r->info1529);
 
11322
                        ndr->depth++;
 
11323
                        if (r->info1529) {
 
11324
                                ndr_print_srvsvc_NetSrvInfo1529(ndr, "info1529", r->info1529);
 
11325
                        }
 
11326
                        ndr->depth--;
 
11327
                break;
 
11328
 
 
11329
                case 1530:
 
11330
                        ndr_print_ptr(ndr, "info1530", r->info1530);
 
11331
                        ndr->depth++;
 
11332
                        if (r->info1530) {
 
11333
                                ndr_print_srvsvc_NetSrvInfo1530(ndr, "info1530", r->info1530);
 
11334
                        }
 
11335
                        ndr->depth--;
 
11336
                break;
 
11337
 
 
11338
                case 1533:
 
11339
                        ndr_print_ptr(ndr, "info1533", r->info1533);
 
11340
                        ndr->depth++;
 
11341
                        if (r->info1533) {
 
11342
                                ndr_print_srvsvc_NetSrvInfo1533(ndr, "info1533", r->info1533);
 
11343
                        }
 
11344
                        ndr->depth--;
 
11345
                break;
 
11346
 
 
11347
                case 1534:
 
11348
                        ndr_print_ptr(ndr, "info1534", r->info1534);
 
11349
                        ndr->depth++;
 
11350
                        if (r->info1534) {
 
11351
                                ndr_print_srvsvc_NetSrvInfo1534(ndr, "info1534", r->info1534);
 
11352
                        }
 
11353
                        ndr->depth--;
 
11354
                break;
 
11355
 
 
11356
                case 1535:
 
11357
                        ndr_print_ptr(ndr, "info1535", r->info1535);
 
11358
                        ndr->depth++;
 
11359
                        if (r->info1535) {
 
11360
                                ndr_print_srvsvc_NetSrvInfo1535(ndr, "info1535", r->info1535);
 
11361
                        }
 
11362
                        ndr->depth--;
 
11363
                break;
 
11364
 
 
11365
                case 1536:
 
11366
                        ndr_print_ptr(ndr, "info1536", r->info1536);
 
11367
                        ndr->depth++;
 
11368
                        if (r->info1536) {
 
11369
                                ndr_print_srvsvc_NetSrvInfo1536(ndr, "info1536", r->info1536);
 
11370
                        }
 
11371
                        ndr->depth--;
 
11372
                break;
 
11373
 
 
11374
                case 1537:
 
11375
                        ndr_print_ptr(ndr, "info1537", r->info1537);
 
11376
                        ndr->depth++;
 
11377
                        if (r->info1537) {
 
11378
                                ndr_print_srvsvc_NetSrvInfo1537(ndr, "info1537", r->info1537);
 
11379
                        }
 
11380
                        ndr->depth--;
 
11381
                break;
 
11382
 
 
11383
                case 1538:
 
11384
                        ndr_print_ptr(ndr, "info1538", r->info1538);
 
11385
                        ndr->depth++;
 
11386
                        if (r->info1538) {
 
11387
                                ndr_print_srvsvc_NetSrvInfo1538(ndr, "info1538", r->info1538);
 
11388
                        }
 
11389
                        ndr->depth--;
 
11390
                break;
 
11391
 
 
11392
                case 1539:
 
11393
                        ndr_print_ptr(ndr, "info1539", r->info1539);
 
11394
                        ndr->depth++;
 
11395
                        if (r->info1539) {
 
11396
                                ndr_print_srvsvc_NetSrvInfo1539(ndr, "info1539", r->info1539);
 
11397
                        }
 
11398
                        ndr->depth--;
 
11399
                break;
 
11400
 
 
11401
                case 1540:
 
11402
                        ndr_print_ptr(ndr, "info1540", r->info1540);
 
11403
                        ndr->depth++;
 
11404
                        if (r->info1540) {
 
11405
                                ndr_print_srvsvc_NetSrvInfo1540(ndr, "info1540", r->info1540);
 
11406
                        }
 
11407
                        ndr->depth--;
 
11408
                break;
 
11409
 
 
11410
                case 1541:
 
11411
                        ndr_print_ptr(ndr, "info1541", r->info1541);
 
11412
                        ndr->depth++;
 
11413
                        if (r->info1541) {
 
11414
                                ndr_print_srvsvc_NetSrvInfo1541(ndr, "info1541", r->info1541);
 
11415
                        }
 
11416
                        ndr->depth--;
 
11417
                break;
 
11418
 
 
11419
                case 1542:
 
11420
                        ndr_print_ptr(ndr, "info1542", r->info1542);
 
11421
                        ndr->depth++;
 
11422
                        if (r->info1542) {
 
11423
                                ndr_print_srvsvc_NetSrvInfo1542(ndr, "info1542", r->info1542);
 
11424
                        }
 
11425
                        ndr->depth--;
 
11426
                break;
 
11427
 
 
11428
                case 1543:
 
11429
                        ndr_print_ptr(ndr, "info1543", r->info1543);
 
11430
                        ndr->depth++;
 
11431
                        if (r->info1543) {
 
11432
                                ndr_print_srvsvc_NetSrvInfo1543(ndr, "info1543", r->info1543);
 
11433
                        }
 
11434
                        ndr->depth--;
 
11435
                break;
 
11436
 
 
11437
                case 1544:
 
11438
                        ndr_print_ptr(ndr, "info1544", r->info1544);
 
11439
                        ndr->depth++;
 
11440
                        if (r->info1544) {
 
11441
                                ndr_print_srvsvc_NetSrvInfo1544(ndr, "info1544", r->info1544);
 
11442
                        }
 
11443
                        ndr->depth--;
 
11444
                break;
 
11445
 
 
11446
                case 1545:
 
11447
                        ndr_print_ptr(ndr, "info1545", r->info1545);
 
11448
                        ndr->depth++;
 
11449
                        if (r->info1545) {
 
11450
                                ndr_print_srvsvc_NetSrvInfo1545(ndr, "info1545", r->info1545);
 
11451
                        }
 
11452
                        ndr->depth--;
 
11453
                break;
 
11454
 
 
11455
                case 1546:
 
11456
                        ndr_print_ptr(ndr, "info1546", r->info1546);
 
11457
                        ndr->depth++;
 
11458
                        if (r->info1546) {
 
11459
                                ndr_print_srvsvc_NetSrvInfo1546(ndr, "info1546", r->info1546);
 
11460
                        }
 
11461
                        ndr->depth--;
 
11462
                break;
 
11463
 
 
11464
                case 1547:
 
11465
                        ndr_print_ptr(ndr, "info1547", r->info1547);
 
11466
                        ndr->depth++;
 
11467
                        if (r->info1547) {
 
11468
                                ndr_print_srvsvc_NetSrvInfo1547(ndr, "info1547", r->info1547);
 
11469
                        }
 
11470
                        ndr->depth--;
 
11471
                break;
 
11472
 
 
11473
                case 1548:
 
11474
                        ndr_print_ptr(ndr, "info1548", r->info1548);
 
11475
                        ndr->depth++;
 
11476
                        if (r->info1548) {
 
11477
                                ndr_print_srvsvc_NetSrvInfo1548(ndr, "info1548", r->info1548);
 
11478
                        }
 
11479
                        ndr->depth--;
 
11480
                break;
 
11481
 
 
11482
                case 1549:
 
11483
                        ndr_print_ptr(ndr, "info1549", r->info1549);
 
11484
                        ndr->depth++;
 
11485
                        if (r->info1549) {
 
11486
                                ndr_print_srvsvc_NetSrvInfo1549(ndr, "info1549", r->info1549);
 
11487
                        }
 
11488
                        ndr->depth--;
 
11489
                break;
 
11490
 
 
11491
                case 1550:
 
11492
                        ndr_print_ptr(ndr, "info1550", r->info1550);
 
11493
                        ndr->depth++;
 
11494
                        if (r->info1550) {
 
11495
                                ndr_print_srvsvc_NetSrvInfo1550(ndr, "info1550", r->info1550);
 
11496
                        }
 
11497
                        ndr->depth--;
 
11498
                break;
 
11499
 
 
11500
                case 1552:
 
11501
                        ndr_print_ptr(ndr, "info1552", r->info1552);
 
11502
                        ndr->depth++;
 
11503
                        if (r->info1552) {
 
11504
                                ndr_print_srvsvc_NetSrvInfo1552(ndr, "info1552", r->info1552);
 
11505
                        }
 
11506
                        ndr->depth--;
 
11507
                break;
 
11508
 
 
11509
                case 1553:
 
11510
                        ndr_print_ptr(ndr, "info1553", r->info1553);
 
11511
                        ndr->depth++;
 
11512
                        if (r->info1553) {
 
11513
                                ndr_print_srvsvc_NetSrvInfo1553(ndr, "info1553", r->info1553);
 
11514
                        }
 
11515
                        ndr->depth--;
 
11516
                break;
 
11517
 
 
11518
                case 1554:
 
11519
                        ndr_print_ptr(ndr, "info1554", r->info1554);
 
11520
                        ndr->depth++;
 
11521
                        if (r->info1554) {
 
11522
                                ndr_print_srvsvc_NetSrvInfo1554(ndr, "info1554", r->info1554);
 
11523
                        }
 
11524
                        ndr->depth--;
 
11525
                break;
 
11526
 
 
11527
                case 1555:
 
11528
                        ndr_print_ptr(ndr, "info1555", r->info1555);
 
11529
                        ndr->depth++;
 
11530
                        if (r->info1555) {
 
11531
                                ndr_print_srvsvc_NetSrvInfo1555(ndr, "info1555", r->info1555);
 
11532
                        }
 
11533
                        ndr->depth--;
 
11534
                break;
 
11535
 
 
11536
                case 1556:
 
11537
                        ndr_print_ptr(ndr, "info1556", r->info1556);
 
11538
                        ndr->depth++;
 
11539
                        if (r->info1556) {
 
11540
                                ndr_print_srvsvc_NetSrvInfo1556(ndr, "info1556", r->info1556);
 
11541
                        }
 
11542
                        ndr->depth--;
 
11543
                break;
 
11544
 
 
11545
                default:
 
11546
                break;
 
11547
 
 
11548
        }
 
11549
}
 
11550
 
 
11551
static enum ndr_err_code ndr_push_srvsvc_NetDiskInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetDiskInfo0 *r)
 
11552
{
 
11553
        if (ndr_flags & NDR_SCALARS) {
 
11554
                NDR_CHECK(ndr_push_align(ndr, 4));
 
11555
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
11556
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen(r->disk) + 1));
 
11557
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->disk, strlen(r->disk) + 1, sizeof(uint16_t), CH_UTF16));
 
11558
        }
 
11559
        if (ndr_flags & NDR_BUFFERS) {
 
11560
        }
 
11561
        return NDR_ERR_SUCCESS;
 
11562
}
 
11563
 
 
11564
static enum ndr_err_code ndr_pull_srvsvc_NetDiskInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetDiskInfo0 *r)
 
11565
{
 
11566
        if (ndr_flags & NDR_SCALARS) {
 
11567
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
11568
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__disk_offset));
 
11569
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->__disk_length));
 
11570
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->disk, r->__disk_length, sizeof(uint16_t), CH_UTF16));
 
11571
        }
 
11572
        if (ndr_flags & NDR_BUFFERS) {
 
11573
        }
 
11574
        return NDR_ERR_SUCCESS;
 
11575
}
 
11576
 
 
11577
_PUBLIC_ void ndr_print_srvsvc_NetDiskInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetDiskInfo0 *r)
 
11578
{
 
11579
        ndr_print_struct(ndr, name, "srvsvc_NetDiskInfo0");
 
11580
        ndr->depth++;
 
11581
        ndr_print_uint32(ndr, "__disk_offset", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->__disk_offset);
 
11582
        ndr_print_uint32(ndr, "__disk_length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen(r->disk) + 1:r->__disk_length);
 
11583
        ndr_print_string(ndr, "disk", r->disk);
 
11584
        ndr->depth--;
 
11585
}
 
11586
 
 
11587
static enum ndr_err_code ndr_push_srvsvc_NetDiskInfo(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetDiskInfo *r)
 
11588
{
 
11589
        uint32_t cntr_disks_1;
 
11590
        if (ndr_flags & NDR_SCALARS) {
 
11591
                NDR_CHECK(ndr_push_align(ndr, 4));
 
11592
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
11593
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->disks));
 
11594
        }
 
11595
        if (ndr_flags & NDR_BUFFERS) {
 
11596
                if (r->disks) {
 
11597
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
11598
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
11599
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
11600
                        for (cntr_disks_1 = 0; cntr_disks_1 < r->count; cntr_disks_1++) {
 
11601
                                NDR_CHECK(ndr_push_srvsvc_NetDiskInfo0(ndr, NDR_SCALARS, &r->disks[cntr_disks_1]));
 
11602
                        }
 
11603
                }
 
11604
        }
 
11605
        return NDR_ERR_SUCCESS;
 
11606
}
 
11607
 
 
11608
static enum ndr_err_code ndr_pull_srvsvc_NetDiskInfo(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetDiskInfo *r)
 
11609
{
 
11610
        uint32_t _ptr_disks;
 
11611
        uint32_t cntr_disks_1;
 
11612
        TALLOC_CTX *_mem_save_disks_0;
 
11613
        TALLOC_CTX *_mem_save_disks_1;
 
11614
        if (ndr_flags & NDR_SCALARS) {
 
11615
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
11616
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
11617
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_disks));
 
11618
                if (_ptr_disks) {
 
11619
                        NDR_PULL_ALLOC(ndr, r->disks);
 
11620
                } else {
 
11621
                        r->disks = NULL;
 
11622
                }
 
11623
        }
 
11624
        if (ndr_flags & NDR_BUFFERS) {
 
11625
                if (r->disks) {
 
11626
                        _mem_save_disks_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
11627
                        NDR_PULL_SET_MEM_CTX(ndr, r->disks, 0);
 
11628
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->disks));
 
11629
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->disks));
 
11630
                        if (ndr_get_array_length(ndr, &r->disks) > ndr_get_array_size(ndr, &r->disks)) {
 
11631
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->disks), ndr_get_array_length(ndr, &r->disks));
 
11632
                        }
 
11633
                        NDR_PULL_ALLOC_N(ndr, r->disks, ndr_get_array_size(ndr, &r->disks));
 
11634
                        _mem_save_disks_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
11635
                        NDR_PULL_SET_MEM_CTX(ndr, r->disks, 0);
 
11636
                        for (cntr_disks_1 = 0; cntr_disks_1 < r->count; cntr_disks_1++) {
 
11637
                                NDR_CHECK(ndr_pull_srvsvc_NetDiskInfo0(ndr, NDR_SCALARS, &r->disks[cntr_disks_1]));
 
11638
                        }
 
11639
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disks_1, 0);
 
11640
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disks_0, 0);
 
11641
                }
 
11642
                if (r->disks) {
 
11643
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->disks, r->count));
 
11644
                }
 
11645
                if (r->disks) {
 
11646
                        NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->disks, r->count));
 
11647
                }
 
11648
        }
 
11649
        return NDR_ERR_SUCCESS;
 
11650
}
 
11651
 
 
11652
_PUBLIC_ void ndr_print_srvsvc_NetDiskInfo(struct ndr_print *ndr, const char *name, const struct srvsvc_NetDiskInfo *r)
 
11653
{
 
11654
        uint32_t cntr_disks_1;
 
11655
        ndr_print_struct(ndr, name, "srvsvc_NetDiskInfo");
 
11656
        ndr->depth++;
 
11657
        ndr_print_uint32(ndr, "count", r->count);
 
11658
        ndr_print_ptr(ndr, "disks", r->disks);
 
11659
        ndr->depth++;
 
11660
        if (r->disks) {
 
11661
                ndr->print(ndr, "%s: ARRAY(%d)", "disks", (int)r->count);
 
11662
                ndr->depth++;
 
11663
                for (cntr_disks_1=0;cntr_disks_1<r->count;cntr_disks_1++) {
 
11664
                        char *idx_1=NULL;
 
11665
                        if (asprintf(&idx_1, "[%d]", cntr_disks_1) != -1) {
 
11666
                                ndr_print_srvsvc_NetDiskInfo0(ndr, "disks", &r->disks[cntr_disks_1]);
 
11667
                                free(idx_1);
 
11668
                        }
 
11669
                }
 
11670
                ndr->depth--;
 
11671
        }
 
11672
        ndr->depth--;
 
11673
        ndr->depth--;
 
11674
}
 
11675
 
 
11676
static enum ndr_err_code ndr_push_srvsvc_Statistics(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_Statistics *r)
 
11677
{
 
11678
        if (ndr_flags & NDR_SCALARS) {
 
11679
                NDR_CHECK(ndr_push_align(ndr, 4));
 
11680
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->start));
 
11681
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->fopens));
 
11682
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->devopens));
 
11683
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->jobsqueued));
 
11684
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sopens));
 
11685
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->stimeouts));
 
11686
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->serrorout));
 
11687
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pwerrors));
 
11688
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->permerrors));
 
11689
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->syserrors));
 
11690
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bytessent_low));
 
11691
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bytessent_high));
 
11692
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bytesrcvd_low));
 
11693
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bytesrcvd_high));
 
11694
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->avresponse));
 
11695
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->reqbufneed));
 
11696
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->bigbufneed));
 
11697
        }
 
11698
        if (ndr_flags & NDR_BUFFERS) {
 
11699
        }
 
11700
        return NDR_ERR_SUCCESS;
 
11701
}
 
11702
 
 
11703
static enum ndr_err_code ndr_pull_srvsvc_Statistics(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_Statistics *r)
 
11704
{
 
11705
        if (ndr_flags & NDR_SCALARS) {
 
11706
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
11707
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->start));
 
11708
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->fopens));
 
11709
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->devopens));
 
11710
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->jobsqueued));
 
11711
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sopens));
 
11712
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->stimeouts));
 
11713
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->serrorout));
 
11714
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pwerrors));
 
11715
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->permerrors));
 
11716
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->syserrors));
 
11717
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bytessent_low));
 
11718
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bytessent_high));
 
11719
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bytesrcvd_low));
 
11720
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bytesrcvd_high));
 
11721
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->avresponse));
 
11722
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->reqbufneed));
 
11723
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->bigbufneed));
 
11724
        }
 
11725
        if (ndr_flags & NDR_BUFFERS) {
 
11726
        }
 
11727
        return NDR_ERR_SUCCESS;
 
11728
}
 
11729
 
 
11730
_PUBLIC_ void ndr_print_srvsvc_Statistics(struct ndr_print *ndr, const char *name, const struct srvsvc_Statistics *r)
 
11731
{
 
11732
        ndr_print_struct(ndr, name, "srvsvc_Statistics");
 
11733
        ndr->depth++;
 
11734
        ndr_print_uint32(ndr, "start", r->start);
 
11735
        ndr_print_uint32(ndr, "fopens", r->fopens);
 
11736
        ndr_print_uint32(ndr, "devopens", r->devopens);
 
11737
        ndr_print_uint32(ndr, "jobsqueued", r->jobsqueued);
 
11738
        ndr_print_uint32(ndr, "sopens", r->sopens);
 
11739
        ndr_print_uint32(ndr, "stimeouts", r->stimeouts);
 
11740
        ndr_print_uint32(ndr, "serrorout", r->serrorout);
 
11741
        ndr_print_uint32(ndr, "pwerrors", r->pwerrors);
 
11742
        ndr_print_uint32(ndr, "permerrors", r->permerrors);
 
11743
        ndr_print_uint32(ndr, "syserrors", r->syserrors);
 
11744
        ndr_print_uint32(ndr, "bytessent_low", r->bytessent_low);
 
11745
        ndr_print_uint32(ndr, "bytessent_high", r->bytessent_high);
 
11746
        ndr_print_uint32(ndr, "bytesrcvd_low", r->bytesrcvd_low);
 
11747
        ndr_print_uint32(ndr, "bytesrcvd_high", r->bytesrcvd_high);
 
11748
        ndr_print_uint32(ndr, "avresponse", r->avresponse);
 
11749
        ndr_print_uint32(ndr, "reqbufneed", r->reqbufneed);
 
11750
        ndr_print_uint32(ndr, "bigbufneed", r->bigbufneed);
 
11751
        ndr->depth--;
 
11752
}
 
11753
 
 
11754
static enum ndr_err_code ndr_push_srvsvc_NetTransportInfo0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportInfo0 *r)
 
11755
{
 
11756
        if (ndr_flags & NDR_SCALARS) {
 
11757
                NDR_CHECK(ndr_push_align(ndr, 4));
 
11758
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->vcs));
 
11759
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
11760
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->addr));
 
11761
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
11762
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->net_addr));
 
11763
        }
 
11764
        if (ndr_flags & NDR_BUFFERS) {
 
11765
                if (r->name) {
 
11766
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
11767
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
11768
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
11769
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
11770
                }
 
11771
                if (r->addr) {
 
11772
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
11773
                        NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->addr, r->addr_len));
 
11774
                }
 
11775
                if (r->net_addr) {
 
11776
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
11777
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
11778
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
11779
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->net_addr, ndr_charset_length(r->net_addr, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
11780
                }
 
11781
        }
 
11782
        return NDR_ERR_SUCCESS;
 
11783
}
 
11784
 
 
11785
static enum ndr_err_code ndr_pull_srvsvc_NetTransportInfo0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportInfo0 *r)
 
11786
{
 
11787
        uint32_t _ptr_name;
 
11788
        TALLOC_CTX *_mem_save_name_0;
 
11789
        uint32_t _ptr_addr;
 
11790
        TALLOC_CTX *_mem_save_addr_0;
 
11791
        uint32_t _ptr_net_addr;
 
11792
        TALLOC_CTX *_mem_save_net_addr_0;
 
11793
        if (ndr_flags & NDR_SCALARS) {
 
11794
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
11795
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->vcs));
 
11796
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
11797
                if (_ptr_name) {
 
11798
                        NDR_PULL_ALLOC(ndr, r->name);
 
11799
                } else {
 
11800
                        r->name = NULL;
 
11801
                }
 
11802
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_addr));
 
11803
                if (_ptr_addr) {
 
11804
                        NDR_PULL_ALLOC(ndr, r->addr);
 
11805
                } else {
 
11806
                        r->addr = NULL;
 
11807
                }
 
11808
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->addr_len));
 
11809
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_net_addr));
 
11810
                if (_ptr_net_addr) {
 
11811
                        NDR_PULL_ALLOC(ndr, r->net_addr);
 
11812
                } else {
 
11813
                        r->net_addr = NULL;
 
11814
                }
 
11815
        }
 
11816
        if (ndr_flags & NDR_BUFFERS) {
 
11817
                if (r->name) {
 
11818
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
11819
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
11820
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
11821
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
11822
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
11823
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
11824
                        }
 
11825
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
11826
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
11827
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
11828
                }
 
11829
                if (r->addr) {
 
11830
                        _mem_save_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
11831
                        NDR_PULL_SET_MEM_CTX(ndr, r->addr, 0);
 
11832
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->addr));
 
11833
                        NDR_PULL_ALLOC_N(ndr, r->addr, ndr_get_array_size(ndr, &r->addr));
 
11834
                        NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->addr, ndr_get_array_size(ndr, &r->addr)));
 
11835
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_addr_0, 0);
 
11836
                }
 
11837
                if (r->net_addr) {
 
11838
                        _mem_save_net_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
11839
                        NDR_PULL_SET_MEM_CTX(ndr, r->net_addr, 0);
 
11840
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->net_addr));
 
11841
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->net_addr));
 
11842
                        if (ndr_get_array_length(ndr, &r->net_addr) > ndr_get_array_size(ndr, &r->net_addr)) {
 
11843
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->net_addr), ndr_get_array_length(ndr, &r->net_addr));
 
11844
                        }
 
11845
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t)));
 
11846
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->net_addr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t), CH_UTF16));
 
11847
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_net_addr_0, 0);
 
11848
                }
 
11849
                if (r->addr) {
 
11850
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->addr, r->addr_len));
 
11851
                }
 
11852
        }
 
11853
        return NDR_ERR_SUCCESS;
 
11854
}
 
11855
 
 
11856
_PUBLIC_ void ndr_print_srvsvc_NetTransportInfo0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportInfo0 *r)
 
11857
{
 
11858
        ndr_print_struct(ndr, name, "srvsvc_NetTransportInfo0");
 
11859
        ndr->depth++;
 
11860
        ndr_print_uint32(ndr, "vcs", r->vcs);
 
11861
        ndr_print_ptr(ndr, "name", r->name);
 
11862
        ndr->depth++;
 
11863
        if (r->name) {
 
11864
                ndr_print_string(ndr, "name", r->name);
 
11865
        }
 
11866
        ndr->depth--;
 
11867
        ndr_print_ptr(ndr, "addr", r->addr);
 
11868
        ndr->depth++;
 
11869
        if (r->addr) {
 
11870
                ndr_print_array_uint8(ndr, "addr", r->addr, r->addr_len);
 
11871
        }
 
11872
        ndr->depth--;
 
11873
        ndr_print_uint32(ndr, "addr_len", r->addr_len);
 
11874
        ndr_print_ptr(ndr, "net_addr", r->net_addr);
 
11875
        ndr->depth++;
 
11876
        if (r->net_addr) {
 
11877
                ndr_print_string(ndr, "net_addr", r->net_addr);
 
11878
        }
 
11879
        ndr->depth--;
 
11880
        ndr->depth--;
 
11881
}
 
11882
 
 
11883
static enum ndr_err_code ndr_push_srvsvc_NetTransportCtr0(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportCtr0 *r)
 
11884
{
 
11885
        uint32_t cntr_array_1;
 
11886
        if (ndr_flags & NDR_SCALARS) {
 
11887
                NDR_CHECK(ndr_push_align(ndr, 4));
 
11888
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
11889
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
11890
        }
 
11891
        if (ndr_flags & NDR_BUFFERS) {
 
11892
                if (r->array) {
 
11893
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
11894
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
11895
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
11896
                        }
 
11897
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
11898
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
11899
                        }
 
11900
                }
 
11901
        }
 
11902
        return NDR_ERR_SUCCESS;
 
11903
}
 
11904
 
 
11905
static enum ndr_err_code ndr_pull_srvsvc_NetTransportCtr0(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportCtr0 *r)
 
11906
{
 
11907
        uint32_t _ptr_array;
 
11908
        uint32_t cntr_array_1;
 
11909
        TALLOC_CTX *_mem_save_array_0;
 
11910
        TALLOC_CTX *_mem_save_array_1;
 
11911
        if (ndr_flags & NDR_SCALARS) {
 
11912
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
11913
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
11914
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
11915
                if (_ptr_array) {
 
11916
                        NDR_PULL_ALLOC(ndr, r->array);
 
11917
                } else {
 
11918
                        r->array = NULL;
 
11919
                }
 
11920
        }
 
11921
        if (ndr_flags & NDR_BUFFERS) {
 
11922
                if (r->array) {
 
11923
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
11924
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
11925
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
11926
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
11927
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
11928
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
11929
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
11930
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo0(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
11931
                        }
 
11932
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
11933
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo0(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
11934
                        }
 
11935
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
11936
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
11937
                }
 
11938
                if (r->array) {
 
11939
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
11940
                }
 
11941
        }
 
11942
        return NDR_ERR_SUCCESS;
 
11943
}
 
11944
 
 
11945
_PUBLIC_ void ndr_print_srvsvc_NetTransportCtr0(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportCtr0 *r)
 
11946
{
 
11947
        uint32_t cntr_array_1;
 
11948
        ndr_print_struct(ndr, name, "srvsvc_NetTransportCtr0");
 
11949
        ndr->depth++;
 
11950
        ndr_print_uint32(ndr, "count", r->count);
 
11951
        ndr_print_ptr(ndr, "array", r->array);
 
11952
        ndr->depth++;
 
11953
        if (r->array) {
 
11954
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
11955
                ndr->depth++;
 
11956
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
11957
                        char *idx_1=NULL;
 
11958
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
11959
                                ndr_print_srvsvc_NetTransportInfo0(ndr, "array", &r->array[cntr_array_1]);
 
11960
                                free(idx_1);
 
11961
                        }
 
11962
                }
 
11963
                ndr->depth--;
 
11964
        }
 
11965
        ndr->depth--;
 
11966
        ndr->depth--;
 
11967
}
 
11968
 
 
11969
static enum ndr_err_code ndr_push_srvsvc_NetTransportInfo1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportInfo1 *r)
 
11970
{
 
11971
        if (ndr_flags & NDR_SCALARS) {
 
11972
                NDR_CHECK(ndr_push_align(ndr, 4));
 
11973
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->vcs));
 
11974
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
11975
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->addr));
 
11976
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
11977
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->net_addr));
 
11978
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain));
 
11979
        }
 
11980
        if (ndr_flags & NDR_BUFFERS) {
 
11981
                if (r->name) {
 
11982
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
11983
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
11984
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
11985
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
11986
                }
 
11987
                if (r->addr) {
 
11988
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
11989
                        NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->addr, r->addr_len));
 
11990
                }
 
11991
                if (r->net_addr) {
 
11992
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
11993
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
11994
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
11995
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->net_addr, ndr_charset_length(r->net_addr, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
11996
                }
 
11997
                if (r->domain) {
 
11998
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
11999
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12000
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
12001
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain, ndr_charset_length(r->domain, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12002
                }
 
12003
        }
 
12004
        return NDR_ERR_SUCCESS;
 
12005
}
 
12006
 
 
12007
static enum ndr_err_code ndr_pull_srvsvc_NetTransportInfo1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportInfo1 *r)
 
12008
{
 
12009
        uint32_t _ptr_name;
 
12010
        TALLOC_CTX *_mem_save_name_0;
 
12011
        uint32_t _ptr_addr;
 
12012
        TALLOC_CTX *_mem_save_addr_0;
 
12013
        uint32_t _ptr_net_addr;
 
12014
        TALLOC_CTX *_mem_save_net_addr_0;
 
12015
        uint32_t _ptr_domain;
 
12016
        TALLOC_CTX *_mem_save_domain_0;
 
12017
        if (ndr_flags & NDR_SCALARS) {
 
12018
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12019
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->vcs));
 
12020
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
12021
                if (_ptr_name) {
 
12022
                        NDR_PULL_ALLOC(ndr, r->name);
 
12023
                } else {
 
12024
                        r->name = NULL;
 
12025
                }
 
12026
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_addr));
 
12027
                if (_ptr_addr) {
 
12028
                        NDR_PULL_ALLOC(ndr, r->addr);
 
12029
                } else {
 
12030
                        r->addr = NULL;
 
12031
                }
 
12032
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->addr_len));
 
12033
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_net_addr));
 
12034
                if (_ptr_net_addr) {
 
12035
                        NDR_PULL_ALLOC(ndr, r->net_addr);
 
12036
                } else {
 
12037
                        r->net_addr = NULL;
 
12038
                }
 
12039
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain));
 
12040
                if (_ptr_domain) {
 
12041
                        NDR_PULL_ALLOC(ndr, r->domain);
 
12042
                } else {
 
12043
                        r->domain = NULL;
 
12044
                }
 
12045
        }
 
12046
        if (ndr_flags & NDR_BUFFERS) {
 
12047
                if (r->name) {
 
12048
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12049
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
12050
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
12051
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
12052
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
12053
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
12054
                        }
 
12055
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
12056
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
12057
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
12058
                }
 
12059
                if (r->addr) {
 
12060
                        _mem_save_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12061
                        NDR_PULL_SET_MEM_CTX(ndr, r->addr, 0);
 
12062
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->addr));
 
12063
                        NDR_PULL_ALLOC_N(ndr, r->addr, ndr_get_array_size(ndr, &r->addr));
 
12064
                        NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->addr, ndr_get_array_size(ndr, &r->addr)));
 
12065
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_addr_0, 0);
 
12066
                }
 
12067
                if (r->net_addr) {
 
12068
                        _mem_save_net_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12069
                        NDR_PULL_SET_MEM_CTX(ndr, r->net_addr, 0);
 
12070
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->net_addr));
 
12071
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->net_addr));
 
12072
                        if (ndr_get_array_length(ndr, &r->net_addr) > ndr_get_array_size(ndr, &r->net_addr)) {
 
12073
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->net_addr), ndr_get_array_length(ndr, &r->net_addr));
 
12074
                        }
 
12075
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t)));
 
12076
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->net_addr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t), CH_UTF16));
 
12077
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_net_addr_0, 0);
 
12078
                }
 
12079
                if (r->domain) {
 
12080
                        _mem_save_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12081
                        NDR_PULL_SET_MEM_CTX(ndr, r->domain, 0);
 
12082
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->domain));
 
12083
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->domain));
 
12084
                        if (ndr_get_array_length(ndr, &r->domain) > ndr_get_array_size(ndr, &r->domain)) {
 
12085
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->domain), ndr_get_array_length(ndr, &r->domain));
 
12086
                        }
 
12087
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t)));
 
12088
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t), CH_UTF16));
 
12089
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_0, 0);
 
12090
                }
 
12091
                if (r->addr) {
 
12092
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->addr, r->addr_len));
 
12093
                }
 
12094
        }
 
12095
        return NDR_ERR_SUCCESS;
 
12096
}
 
12097
 
 
12098
_PUBLIC_ void ndr_print_srvsvc_NetTransportInfo1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportInfo1 *r)
 
12099
{
 
12100
        ndr_print_struct(ndr, name, "srvsvc_NetTransportInfo1");
 
12101
        ndr->depth++;
 
12102
        ndr_print_uint32(ndr, "vcs", r->vcs);
 
12103
        ndr_print_ptr(ndr, "name", r->name);
 
12104
        ndr->depth++;
 
12105
        if (r->name) {
 
12106
                ndr_print_string(ndr, "name", r->name);
 
12107
        }
 
12108
        ndr->depth--;
 
12109
        ndr_print_ptr(ndr, "addr", r->addr);
 
12110
        ndr->depth++;
 
12111
        if (r->addr) {
 
12112
                ndr_print_array_uint8(ndr, "addr", r->addr, r->addr_len);
 
12113
        }
 
12114
        ndr->depth--;
 
12115
        ndr_print_uint32(ndr, "addr_len", r->addr_len);
 
12116
        ndr_print_ptr(ndr, "net_addr", r->net_addr);
 
12117
        ndr->depth++;
 
12118
        if (r->net_addr) {
 
12119
                ndr_print_string(ndr, "net_addr", r->net_addr);
 
12120
        }
 
12121
        ndr->depth--;
 
12122
        ndr_print_ptr(ndr, "domain", r->domain);
 
12123
        ndr->depth++;
 
12124
        if (r->domain) {
 
12125
                ndr_print_string(ndr, "domain", r->domain);
 
12126
        }
 
12127
        ndr->depth--;
 
12128
        ndr->depth--;
 
12129
}
 
12130
 
 
12131
static enum ndr_err_code ndr_push_srvsvc_NetTransportCtr1(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportCtr1 *r)
 
12132
{
 
12133
        uint32_t cntr_array_1;
 
12134
        if (ndr_flags & NDR_SCALARS) {
 
12135
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12136
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
12137
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
12138
        }
 
12139
        if (ndr_flags & NDR_BUFFERS) {
 
12140
                if (r->array) {
 
12141
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
12142
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12143
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
12144
                        }
 
12145
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12146
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
12147
                        }
 
12148
                }
 
12149
        }
 
12150
        return NDR_ERR_SUCCESS;
 
12151
}
 
12152
 
 
12153
static enum ndr_err_code ndr_pull_srvsvc_NetTransportCtr1(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportCtr1 *r)
 
12154
{
 
12155
        uint32_t _ptr_array;
 
12156
        uint32_t cntr_array_1;
 
12157
        TALLOC_CTX *_mem_save_array_0;
 
12158
        TALLOC_CTX *_mem_save_array_1;
 
12159
        if (ndr_flags & NDR_SCALARS) {
 
12160
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12161
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
12162
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
12163
                if (_ptr_array) {
 
12164
                        NDR_PULL_ALLOC(ndr, r->array);
 
12165
                } else {
 
12166
                        r->array = NULL;
 
12167
                }
 
12168
        }
 
12169
        if (ndr_flags & NDR_BUFFERS) {
 
12170
                if (r->array) {
 
12171
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12172
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
12173
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
12174
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
12175
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
12176
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
12177
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12178
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo1(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
12179
                        }
 
12180
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12181
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo1(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
12182
                        }
 
12183
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
12184
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
12185
                }
 
12186
                if (r->array) {
 
12187
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
12188
                }
 
12189
        }
 
12190
        return NDR_ERR_SUCCESS;
 
12191
}
 
12192
 
 
12193
_PUBLIC_ void ndr_print_srvsvc_NetTransportCtr1(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportCtr1 *r)
 
12194
{
 
12195
        uint32_t cntr_array_1;
 
12196
        ndr_print_struct(ndr, name, "srvsvc_NetTransportCtr1");
 
12197
        ndr->depth++;
 
12198
        ndr_print_uint32(ndr, "count", r->count);
 
12199
        ndr_print_ptr(ndr, "array", r->array);
 
12200
        ndr->depth++;
 
12201
        if (r->array) {
 
12202
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
12203
                ndr->depth++;
 
12204
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
12205
                        char *idx_1=NULL;
 
12206
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
12207
                                ndr_print_srvsvc_NetTransportInfo1(ndr, "array", &r->array[cntr_array_1]);
 
12208
                                free(idx_1);
 
12209
                        }
 
12210
                }
 
12211
                ndr->depth--;
 
12212
        }
 
12213
        ndr->depth--;
 
12214
        ndr->depth--;
 
12215
}
 
12216
 
 
12217
static enum ndr_err_code ndr_push_srvsvc_NetTransportInfo2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportInfo2 *r)
 
12218
{
 
12219
        if (ndr_flags & NDR_SCALARS) {
 
12220
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12221
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->vcs));
 
12222
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
12223
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->addr));
 
12224
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
12225
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->net_addr));
 
12226
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain));
 
12227
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
 
12228
        }
 
12229
        if (ndr_flags & NDR_BUFFERS) {
 
12230
                if (r->name) {
 
12231
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
12232
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12233
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
12234
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12235
                }
 
12236
                if (r->addr) {
 
12237
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
12238
                        NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->addr, r->addr_len));
 
12239
                }
 
12240
                if (r->net_addr) {
 
12241
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
12242
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12243
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
12244
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->net_addr, ndr_charset_length(r->net_addr, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12245
                }
 
12246
                if (r->domain) {
 
12247
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
12248
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12249
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
12250
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain, ndr_charset_length(r->domain, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12251
                }
 
12252
        }
 
12253
        return NDR_ERR_SUCCESS;
 
12254
}
 
12255
 
 
12256
static enum ndr_err_code ndr_pull_srvsvc_NetTransportInfo2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportInfo2 *r)
 
12257
{
 
12258
        uint32_t _ptr_name;
 
12259
        TALLOC_CTX *_mem_save_name_0;
 
12260
        uint32_t _ptr_addr;
 
12261
        TALLOC_CTX *_mem_save_addr_0;
 
12262
        uint32_t _ptr_net_addr;
 
12263
        TALLOC_CTX *_mem_save_net_addr_0;
 
12264
        uint32_t _ptr_domain;
 
12265
        TALLOC_CTX *_mem_save_domain_0;
 
12266
        if (ndr_flags & NDR_SCALARS) {
 
12267
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12268
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->vcs));
 
12269
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
12270
                if (_ptr_name) {
 
12271
                        NDR_PULL_ALLOC(ndr, r->name);
 
12272
                } else {
 
12273
                        r->name = NULL;
 
12274
                }
 
12275
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_addr));
 
12276
                if (_ptr_addr) {
 
12277
                        NDR_PULL_ALLOC(ndr, r->addr);
 
12278
                } else {
 
12279
                        r->addr = NULL;
 
12280
                }
 
12281
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->addr_len));
 
12282
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_net_addr));
 
12283
                if (_ptr_net_addr) {
 
12284
                        NDR_PULL_ALLOC(ndr, r->net_addr);
 
12285
                } else {
 
12286
                        r->net_addr = NULL;
 
12287
                }
 
12288
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain));
 
12289
                if (_ptr_domain) {
 
12290
                        NDR_PULL_ALLOC(ndr, r->domain);
 
12291
                } else {
 
12292
                        r->domain = NULL;
 
12293
                }
 
12294
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
 
12295
        }
 
12296
        if (ndr_flags & NDR_BUFFERS) {
 
12297
                if (r->name) {
 
12298
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12299
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
12300
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
12301
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
12302
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
12303
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
12304
                        }
 
12305
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
12306
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
12307
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
12308
                }
 
12309
                if (r->addr) {
 
12310
                        _mem_save_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12311
                        NDR_PULL_SET_MEM_CTX(ndr, r->addr, 0);
 
12312
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->addr));
 
12313
                        NDR_PULL_ALLOC_N(ndr, r->addr, ndr_get_array_size(ndr, &r->addr));
 
12314
                        NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->addr, ndr_get_array_size(ndr, &r->addr)));
 
12315
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_addr_0, 0);
 
12316
                }
 
12317
                if (r->net_addr) {
 
12318
                        _mem_save_net_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12319
                        NDR_PULL_SET_MEM_CTX(ndr, r->net_addr, 0);
 
12320
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->net_addr));
 
12321
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->net_addr));
 
12322
                        if (ndr_get_array_length(ndr, &r->net_addr) > ndr_get_array_size(ndr, &r->net_addr)) {
 
12323
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->net_addr), ndr_get_array_length(ndr, &r->net_addr));
 
12324
                        }
 
12325
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t)));
 
12326
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->net_addr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t), CH_UTF16));
 
12327
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_net_addr_0, 0);
 
12328
                }
 
12329
                if (r->domain) {
 
12330
                        _mem_save_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12331
                        NDR_PULL_SET_MEM_CTX(ndr, r->domain, 0);
 
12332
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->domain));
 
12333
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->domain));
 
12334
                        if (ndr_get_array_length(ndr, &r->domain) > ndr_get_array_size(ndr, &r->domain)) {
 
12335
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->domain), ndr_get_array_length(ndr, &r->domain));
 
12336
                        }
 
12337
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t)));
 
12338
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t), CH_UTF16));
 
12339
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_0, 0);
 
12340
                }
 
12341
                if (r->addr) {
 
12342
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->addr, r->addr_len));
 
12343
                }
 
12344
        }
 
12345
        return NDR_ERR_SUCCESS;
 
12346
}
 
12347
 
 
12348
_PUBLIC_ void ndr_print_srvsvc_NetTransportInfo2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportInfo2 *r)
 
12349
{
 
12350
        ndr_print_struct(ndr, name, "srvsvc_NetTransportInfo2");
 
12351
        ndr->depth++;
 
12352
        ndr_print_uint32(ndr, "vcs", r->vcs);
 
12353
        ndr_print_ptr(ndr, "name", r->name);
 
12354
        ndr->depth++;
 
12355
        if (r->name) {
 
12356
                ndr_print_string(ndr, "name", r->name);
 
12357
        }
 
12358
        ndr->depth--;
 
12359
        ndr_print_ptr(ndr, "addr", r->addr);
 
12360
        ndr->depth++;
 
12361
        if (r->addr) {
 
12362
                ndr_print_array_uint8(ndr, "addr", r->addr, r->addr_len);
 
12363
        }
 
12364
        ndr->depth--;
 
12365
        ndr_print_uint32(ndr, "addr_len", r->addr_len);
 
12366
        ndr_print_ptr(ndr, "net_addr", r->net_addr);
 
12367
        ndr->depth++;
 
12368
        if (r->net_addr) {
 
12369
                ndr_print_string(ndr, "net_addr", r->net_addr);
 
12370
        }
 
12371
        ndr->depth--;
 
12372
        ndr_print_ptr(ndr, "domain", r->domain);
 
12373
        ndr->depth++;
 
12374
        if (r->domain) {
 
12375
                ndr_print_string(ndr, "domain", r->domain);
 
12376
        }
 
12377
        ndr->depth--;
 
12378
        ndr_print_uint32(ndr, "unknown", r->unknown);
 
12379
        ndr->depth--;
 
12380
}
 
12381
 
 
12382
static enum ndr_err_code ndr_push_srvsvc_NetTransportCtr2(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportCtr2 *r)
 
12383
{
 
12384
        uint32_t cntr_array_1;
 
12385
        if (ndr_flags & NDR_SCALARS) {
 
12386
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12387
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
12388
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
12389
        }
 
12390
        if (ndr_flags & NDR_BUFFERS) {
 
12391
                if (r->array) {
 
12392
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
12393
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12394
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
12395
                        }
 
12396
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12397
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
12398
                        }
 
12399
                }
 
12400
        }
 
12401
        return NDR_ERR_SUCCESS;
 
12402
}
 
12403
 
 
12404
static enum ndr_err_code ndr_pull_srvsvc_NetTransportCtr2(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportCtr2 *r)
 
12405
{
 
12406
        uint32_t _ptr_array;
 
12407
        uint32_t cntr_array_1;
 
12408
        TALLOC_CTX *_mem_save_array_0;
 
12409
        TALLOC_CTX *_mem_save_array_1;
 
12410
        if (ndr_flags & NDR_SCALARS) {
 
12411
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12412
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
12413
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
12414
                if (_ptr_array) {
 
12415
                        NDR_PULL_ALLOC(ndr, r->array);
 
12416
                } else {
 
12417
                        r->array = NULL;
 
12418
                }
 
12419
        }
 
12420
        if (ndr_flags & NDR_BUFFERS) {
 
12421
                if (r->array) {
 
12422
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12423
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
12424
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
12425
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
12426
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
12427
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
12428
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12429
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo2(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
12430
                        }
 
12431
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12432
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo2(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
12433
                        }
 
12434
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
12435
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
12436
                }
 
12437
                if (r->array) {
 
12438
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
12439
                }
 
12440
        }
 
12441
        return NDR_ERR_SUCCESS;
 
12442
}
 
12443
 
 
12444
_PUBLIC_ void ndr_print_srvsvc_NetTransportCtr2(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportCtr2 *r)
 
12445
{
 
12446
        uint32_t cntr_array_1;
 
12447
        ndr_print_struct(ndr, name, "srvsvc_NetTransportCtr2");
 
12448
        ndr->depth++;
 
12449
        ndr_print_uint32(ndr, "count", r->count);
 
12450
        ndr_print_ptr(ndr, "array", r->array);
 
12451
        ndr->depth++;
 
12452
        if (r->array) {
 
12453
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
12454
                ndr->depth++;
 
12455
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
12456
                        char *idx_1=NULL;
 
12457
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
12458
                                ndr_print_srvsvc_NetTransportInfo2(ndr, "array", &r->array[cntr_array_1]);
 
12459
                                free(idx_1);
 
12460
                        }
 
12461
                }
 
12462
                ndr->depth--;
 
12463
        }
 
12464
        ndr->depth--;
 
12465
        ndr->depth--;
 
12466
}
 
12467
 
 
12468
static enum ndr_err_code ndr_push_srvsvc_NetTransportInfo3(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportInfo3 *r)
 
12469
{
 
12470
        if (ndr_flags & NDR_SCALARS) {
 
12471
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12472
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->vcs));
 
12473
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->name));
 
12474
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->addr));
 
12475
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
12476
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->net_addr));
 
12477
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain));
 
12478
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown1));
 
12479
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown2));
 
12480
                NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->unknown3, 256));
 
12481
        }
 
12482
        if (ndr_flags & NDR_BUFFERS) {
 
12483
                if (r->name) {
 
12484
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
12485
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12486
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->name, CH_UTF16)));
 
12487
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->name, ndr_charset_length(r->name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12488
                }
 
12489
                if (r->addr) {
 
12490
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->addr_len));
 
12491
                        NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->addr, r->addr_len));
 
12492
                }
 
12493
                if (r->net_addr) {
 
12494
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
12495
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12496
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->net_addr, CH_UTF16)));
 
12497
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->net_addr, ndr_charset_length(r->net_addr, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12498
                }
 
12499
                if (r->domain) {
 
12500
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
12501
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
12502
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->domain, CH_UTF16)));
 
12503
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain, ndr_charset_length(r->domain, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
12504
                }
 
12505
        }
 
12506
        return NDR_ERR_SUCCESS;
 
12507
}
 
12508
 
 
12509
static enum ndr_err_code ndr_pull_srvsvc_NetTransportInfo3(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportInfo3 *r)
 
12510
{
 
12511
        uint32_t _ptr_name;
 
12512
        TALLOC_CTX *_mem_save_name_0;
 
12513
        uint32_t _ptr_addr;
 
12514
        TALLOC_CTX *_mem_save_addr_0;
 
12515
        uint32_t _ptr_net_addr;
 
12516
        TALLOC_CTX *_mem_save_net_addr_0;
 
12517
        uint32_t _ptr_domain;
 
12518
        TALLOC_CTX *_mem_save_domain_0;
 
12519
        if (ndr_flags & NDR_SCALARS) {
 
12520
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12521
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->vcs));
 
12522
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
 
12523
                if (_ptr_name) {
 
12524
                        NDR_PULL_ALLOC(ndr, r->name);
 
12525
                } else {
 
12526
                        r->name = NULL;
 
12527
                }
 
12528
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_addr));
 
12529
                if (_ptr_addr) {
 
12530
                        NDR_PULL_ALLOC(ndr, r->addr);
 
12531
                } else {
 
12532
                        r->addr = NULL;
 
12533
                }
 
12534
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->addr_len));
 
12535
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_net_addr));
 
12536
                if (_ptr_net_addr) {
 
12537
                        NDR_PULL_ALLOC(ndr, r->net_addr);
 
12538
                } else {
 
12539
                        r->net_addr = NULL;
 
12540
                }
 
12541
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain));
 
12542
                if (_ptr_domain) {
 
12543
                        NDR_PULL_ALLOC(ndr, r->domain);
 
12544
                } else {
 
12545
                        r->domain = NULL;
 
12546
                }
 
12547
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
 
12548
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2));
 
12549
                NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->unknown3, 256));
 
12550
        }
 
12551
        if (ndr_flags & NDR_BUFFERS) {
 
12552
                if (r->name) {
 
12553
                        _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12554
                        NDR_PULL_SET_MEM_CTX(ndr, r->name, 0);
 
12555
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->name));
 
12556
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->name));
 
12557
                        if (ndr_get_array_length(ndr, &r->name) > ndr_get_array_size(ndr, &r->name)) {
 
12558
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->name), ndr_get_array_length(ndr, &r->name));
 
12559
                        }
 
12560
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t)));
 
12561
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->name, ndr_get_array_length(ndr, &r->name), sizeof(uint16_t), CH_UTF16));
 
12562
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
 
12563
                }
 
12564
                if (r->addr) {
 
12565
                        _mem_save_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12566
                        NDR_PULL_SET_MEM_CTX(ndr, r->addr, 0);
 
12567
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->addr));
 
12568
                        NDR_PULL_ALLOC_N(ndr, r->addr, ndr_get_array_size(ndr, &r->addr));
 
12569
                        NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->addr, ndr_get_array_size(ndr, &r->addr)));
 
12570
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_addr_0, 0);
 
12571
                }
 
12572
                if (r->net_addr) {
 
12573
                        _mem_save_net_addr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12574
                        NDR_PULL_SET_MEM_CTX(ndr, r->net_addr, 0);
 
12575
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->net_addr));
 
12576
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->net_addr));
 
12577
                        if (ndr_get_array_length(ndr, &r->net_addr) > ndr_get_array_size(ndr, &r->net_addr)) {
 
12578
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->net_addr), ndr_get_array_length(ndr, &r->net_addr));
 
12579
                        }
 
12580
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t)));
 
12581
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->net_addr, ndr_get_array_length(ndr, &r->net_addr), sizeof(uint16_t), CH_UTF16));
 
12582
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_net_addr_0, 0);
 
12583
                }
 
12584
                if (r->domain) {
 
12585
                        _mem_save_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12586
                        NDR_PULL_SET_MEM_CTX(ndr, r->domain, 0);
 
12587
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->domain));
 
12588
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->domain));
 
12589
                        if (ndr_get_array_length(ndr, &r->domain) > ndr_get_array_size(ndr, &r->domain)) {
 
12590
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->domain), ndr_get_array_length(ndr, &r->domain));
 
12591
                        }
 
12592
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t)));
 
12593
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain, ndr_get_array_length(ndr, &r->domain), sizeof(uint16_t), CH_UTF16));
 
12594
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_0, 0);
 
12595
                }
 
12596
                if (r->addr) {
 
12597
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->addr, r->addr_len));
 
12598
                }
 
12599
        }
 
12600
        return NDR_ERR_SUCCESS;
 
12601
}
 
12602
 
 
12603
_PUBLIC_ void ndr_print_srvsvc_NetTransportInfo3(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportInfo3 *r)
 
12604
{
 
12605
        ndr_print_struct(ndr, name, "srvsvc_NetTransportInfo3");
 
12606
        ndr->depth++;
 
12607
        ndr_print_uint32(ndr, "vcs", r->vcs);
 
12608
        ndr_print_ptr(ndr, "name", r->name);
 
12609
        ndr->depth++;
 
12610
        if (r->name) {
 
12611
                ndr_print_string(ndr, "name", r->name);
 
12612
        }
 
12613
        ndr->depth--;
 
12614
        ndr_print_ptr(ndr, "addr", r->addr);
 
12615
        ndr->depth++;
 
12616
        if (r->addr) {
 
12617
                ndr_print_array_uint8(ndr, "addr", r->addr, r->addr_len);
 
12618
        }
 
12619
        ndr->depth--;
 
12620
        ndr_print_uint32(ndr, "addr_len", r->addr_len);
 
12621
        ndr_print_ptr(ndr, "net_addr", r->net_addr);
 
12622
        ndr->depth++;
 
12623
        if (r->net_addr) {
 
12624
                ndr_print_string(ndr, "net_addr", r->net_addr);
 
12625
        }
 
12626
        ndr->depth--;
 
12627
        ndr_print_ptr(ndr, "domain", r->domain);
 
12628
        ndr->depth++;
 
12629
        if (r->domain) {
 
12630
                ndr_print_string(ndr, "domain", r->domain);
 
12631
        }
 
12632
        ndr->depth--;
 
12633
        ndr_print_uint32(ndr, "unknown1", r->unknown1);
 
12634
        ndr_print_uint32(ndr, "unknown2", r->unknown2);
 
12635
        ndr_print_array_uint8(ndr, "unknown3", r->unknown3, 256);
 
12636
        ndr->depth--;
 
12637
}
 
12638
 
 
12639
static enum ndr_err_code ndr_push_srvsvc_NetTransportCtr3(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportCtr3 *r)
 
12640
{
 
12641
        uint32_t cntr_array_1;
 
12642
        if (ndr_flags & NDR_SCALARS) {
 
12643
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12644
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
12645
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->array));
 
12646
        }
 
12647
        if (ndr_flags & NDR_BUFFERS) {
 
12648
                if (r->array) {
 
12649
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
 
12650
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12651
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo3(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
12652
                        }
 
12653
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12654
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo3(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
12655
                        }
 
12656
                }
 
12657
        }
 
12658
        return NDR_ERR_SUCCESS;
 
12659
}
 
12660
 
 
12661
static enum ndr_err_code ndr_pull_srvsvc_NetTransportCtr3(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportCtr3 *r)
 
12662
{
 
12663
        uint32_t _ptr_array;
 
12664
        uint32_t cntr_array_1;
 
12665
        TALLOC_CTX *_mem_save_array_0;
 
12666
        TALLOC_CTX *_mem_save_array_1;
 
12667
        if (ndr_flags & NDR_SCALARS) {
 
12668
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12669
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
 
12670
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_array));
 
12671
                if (_ptr_array) {
 
12672
                        NDR_PULL_ALLOC(ndr, r->array);
 
12673
                } else {
 
12674
                        r->array = NULL;
 
12675
                }
 
12676
        }
 
12677
        if (ndr_flags & NDR_BUFFERS) {
 
12678
                if (r->array) {
 
12679
                        _mem_save_array_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12680
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
12681
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->array));
 
12682
                        NDR_PULL_ALLOC_N(ndr, r->array, ndr_get_array_size(ndr, &r->array));
 
12683
                        _mem_save_array_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
12684
                        NDR_PULL_SET_MEM_CTX(ndr, r->array, 0);
 
12685
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12686
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo3(ndr, NDR_SCALARS, &r->array[cntr_array_1]));
 
12687
                        }
 
12688
                        for (cntr_array_1 = 0; cntr_array_1 < r->count; cntr_array_1++) {
 
12689
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo3(ndr, NDR_BUFFERS, &r->array[cntr_array_1]));
 
12690
                        }
 
12691
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_1, 0);
 
12692
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_array_0, 0);
 
12693
                }
 
12694
                if (r->array) {
 
12695
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->array, r->count));
 
12696
                }
 
12697
        }
 
12698
        return NDR_ERR_SUCCESS;
 
12699
}
 
12700
 
 
12701
_PUBLIC_ void ndr_print_srvsvc_NetTransportCtr3(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportCtr3 *r)
 
12702
{
 
12703
        uint32_t cntr_array_1;
 
12704
        ndr_print_struct(ndr, name, "srvsvc_NetTransportCtr3");
 
12705
        ndr->depth++;
 
12706
        ndr_print_uint32(ndr, "count", r->count);
 
12707
        ndr_print_ptr(ndr, "array", r->array);
 
12708
        ndr->depth++;
 
12709
        if (r->array) {
 
12710
                ndr->print(ndr, "%s: ARRAY(%d)", "array", (int)r->count);
 
12711
                ndr->depth++;
 
12712
                for (cntr_array_1=0;cntr_array_1<r->count;cntr_array_1++) {
 
12713
                        char *idx_1=NULL;
 
12714
                        if (asprintf(&idx_1, "[%d]", cntr_array_1) != -1) {
 
12715
                                ndr_print_srvsvc_NetTransportInfo3(ndr, "array", &r->array[cntr_array_1]);
 
12716
                                free(idx_1);
 
12717
                        }
 
12718
                }
 
12719
                ndr->depth--;
 
12720
        }
 
12721
        ndr->depth--;
 
12722
        ndr->depth--;
 
12723
}
 
12724
 
 
12725
static enum ndr_err_code ndr_push_srvsvc_NetTransportCtr(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetTransportCtr *r)
 
12726
{
 
12727
        if (ndr_flags & NDR_SCALARS) {
 
12728
                int level = ndr_push_get_switch_value(ndr, r);
 
12729
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
 
12730
                switch (level) {
 
12731
                        case 0: {
 
12732
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr0));
 
12733
                        break; }
 
12734
 
 
12735
                        case 1: {
 
12736
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr1));
 
12737
                        break; }
 
12738
 
 
12739
                        case 2: {
 
12740
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr2));
 
12741
                        break; }
 
12742
 
 
12743
                        case 3: {
 
12744
                                NDR_CHECK(ndr_push_unique_ptr(ndr, r->ctr3));
 
12745
                        break; }
 
12746
 
 
12747
                        default: {
 
12748
                        break; }
 
12749
 
 
12750
                }
 
12751
        }
 
12752
        if (ndr_flags & NDR_BUFFERS) {
 
12753
                int level = ndr_push_get_switch_value(ndr, r);
 
12754
                switch (level) {
 
12755
                        case 0:
 
12756
                                if (r->ctr0) {
 
12757
                                        NDR_CHECK(ndr_push_srvsvc_NetTransportCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
12758
                                }
 
12759
                        break;
 
12760
 
 
12761
                        case 1:
 
12762
                                if (r->ctr1) {
 
12763
                                        NDR_CHECK(ndr_push_srvsvc_NetTransportCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
12764
                                }
 
12765
                        break;
 
12766
 
 
12767
                        case 2:
 
12768
                                if (r->ctr2) {
 
12769
                                        NDR_CHECK(ndr_push_srvsvc_NetTransportCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
12770
                                }
 
12771
                        break;
 
12772
 
 
12773
                        case 3:
 
12774
                                if (r->ctr3) {
 
12775
                                        NDR_CHECK(ndr_push_srvsvc_NetTransportCtr3(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr3));
 
12776
                                }
 
12777
                        break;
 
12778
 
 
12779
                        default:
 
12780
                        break;
 
12781
 
 
12782
                }
 
12783
        }
 
12784
        return NDR_ERR_SUCCESS;
 
12785
}
 
12786
 
 
12787
static enum ndr_err_code ndr_pull_srvsvc_NetTransportCtr(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetTransportCtr *r)
 
12788
{
 
12789
        int level;
 
12790
        uint32_t _level;
 
12791
        TALLOC_CTX *_mem_save_ctr0_0;
 
12792
        TALLOC_CTX *_mem_save_ctr1_0;
 
12793
        TALLOC_CTX *_mem_save_ctr2_0;
 
12794
        TALLOC_CTX *_mem_save_ctr3_0;
 
12795
        level = ndr_pull_get_switch_value(ndr, r);
 
12796
        if (ndr_flags & NDR_SCALARS) {
 
12797
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
 
12798
                if (_level != level) {
 
12799
                        return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
 
12800
                }
 
12801
                switch (level) {
 
12802
                        case 0: {
 
12803
                                uint32_t _ptr_ctr0;
 
12804
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr0));
 
12805
                                if (_ptr_ctr0) {
 
12806
                                        NDR_PULL_ALLOC(ndr, r->ctr0);
 
12807
                                } else {
 
12808
                                        r->ctr0 = NULL;
 
12809
                                }
 
12810
                        break; }
 
12811
 
 
12812
                        case 1: {
 
12813
                                uint32_t _ptr_ctr1;
 
12814
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr1));
 
12815
                                if (_ptr_ctr1) {
 
12816
                                        NDR_PULL_ALLOC(ndr, r->ctr1);
 
12817
                                } else {
 
12818
                                        r->ctr1 = NULL;
 
12819
                                }
 
12820
                        break; }
 
12821
 
 
12822
                        case 2: {
 
12823
                                uint32_t _ptr_ctr2;
 
12824
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr2));
 
12825
                                if (_ptr_ctr2) {
 
12826
                                        NDR_PULL_ALLOC(ndr, r->ctr2);
 
12827
                                } else {
 
12828
                                        r->ctr2 = NULL;
 
12829
                                }
 
12830
                        break; }
 
12831
 
 
12832
                        case 3: {
 
12833
                                uint32_t _ptr_ctr3;
 
12834
                                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_ctr3));
 
12835
                                if (_ptr_ctr3) {
 
12836
                                        NDR_PULL_ALLOC(ndr, r->ctr3);
 
12837
                                } else {
 
12838
                                        r->ctr3 = NULL;
 
12839
                                }
 
12840
                        break; }
 
12841
 
 
12842
                        default: {
 
12843
                        break; }
 
12844
 
 
12845
                }
 
12846
        }
 
12847
        if (ndr_flags & NDR_BUFFERS) {
 
12848
                switch (level) {
 
12849
                        case 0:
 
12850
                                if (r->ctr0) {
 
12851
                                        _mem_save_ctr0_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12852
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr0, 0);
 
12853
                                        NDR_CHECK(ndr_pull_srvsvc_NetTransportCtr0(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr0));
 
12854
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr0_0, 0);
 
12855
                                }
 
12856
                        break;
 
12857
 
 
12858
                        case 1:
 
12859
                                if (r->ctr1) {
 
12860
                                        _mem_save_ctr1_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12861
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr1, 0);
 
12862
                                        NDR_CHECK(ndr_pull_srvsvc_NetTransportCtr1(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr1));
 
12863
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr1_0, 0);
 
12864
                                }
 
12865
                        break;
 
12866
 
 
12867
                        case 2:
 
12868
                                if (r->ctr2) {
 
12869
                                        _mem_save_ctr2_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12870
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr2, 0);
 
12871
                                        NDR_CHECK(ndr_pull_srvsvc_NetTransportCtr2(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr2));
 
12872
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr2_0, 0);
 
12873
                                }
 
12874
                        break;
 
12875
 
 
12876
                        case 3:
 
12877
                                if (r->ctr3) {
 
12878
                                        _mem_save_ctr3_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
12879
                                        NDR_PULL_SET_MEM_CTX(ndr, r->ctr3, 0);
 
12880
                                        NDR_CHECK(ndr_pull_srvsvc_NetTransportCtr3(ndr, NDR_SCALARS|NDR_BUFFERS, r->ctr3));
 
12881
                                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_ctr3_0, 0);
 
12882
                                }
 
12883
                        break;
 
12884
 
 
12885
                        default:
 
12886
                        break;
 
12887
 
 
12888
                }
 
12889
        }
 
12890
        return NDR_ERR_SUCCESS;
 
12891
}
 
12892
 
 
12893
_PUBLIC_ void ndr_print_srvsvc_NetTransportCtr(struct ndr_print *ndr, const char *name, const union srvsvc_NetTransportCtr *r)
 
12894
{
 
12895
        int level;
 
12896
        level = ndr_print_get_switch_value(ndr, r);
 
12897
        ndr_print_union(ndr, name, level, "srvsvc_NetTransportCtr");
 
12898
        switch (level) {
 
12899
                case 0:
 
12900
                        ndr_print_ptr(ndr, "ctr0", r->ctr0);
 
12901
                        ndr->depth++;
 
12902
                        if (r->ctr0) {
 
12903
                                ndr_print_srvsvc_NetTransportCtr0(ndr, "ctr0", r->ctr0);
 
12904
                        }
 
12905
                        ndr->depth--;
 
12906
                break;
 
12907
 
 
12908
                case 1:
 
12909
                        ndr_print_ptr(ndr, "ctr1", r->ctr1);
 
12910
                        ndr->depth++;
 
12911
                        if (r->ctr1) {
 
12912
                                ndr_print_srvsvc_NetTransportCtr1(ndr, "ctr1", r->ctr1);
 
12913
                        }
 
12914
                        ndr->depth--;
 
12915
                break;
 
12916
 
 
12917
                case 2:
 
12918
                        ndr_print_ptr(ndr, "ctr2", r->ctr2);
 
12919
                        ndr->depth++;
 
12920
                        if (r->ctr2) {
 
12921
                                ndr_print_srvsvc_NetTransportCtr2(ndr, "ctr2", r->ctr2);
 
12922
                        }
 
12923
                        ndr->depth--;
 
12924
                break;
 
12925
 
 
12926
                case 3:
 
12927
                        ndr_print_ptr(ndr, "ctr3", r->ctr3);
 
12928
                        ndr->depth++;
 
12929
                        if (r->ctr3) {
 
12930
                                ndr_print_srvsvc_NetTransportCtr3(ndr, "ctr3", r->ctr3);
 
12931
                        }
 
12932
                        ndr->depth--;
 
12933
                break;
 
12934
 
 
12935
                default:
 
12936
                break;
 
12937
 
 
12938
        }
 
12939
}
 
12940
 
 
12941
static enum ndr_err_code ndr_push_srvsvc_NetTransportInfoCtr(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetTransportInfoCtr *r)
 
12942
{
 
12943
        if (ndr_flags & NDR_SCALARS) {
 
12944
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12945
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
 
12946
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->ctr, r->level));
 
12947
                NDR_CHECK(ndr_push_srvsvc_NetTransportCtr(ndr, NDR_SCALARS, &r->ctr));
 
12948
        }
 
12949
        if (ndr_flags & NDR_BUFFERS) {
 
12950
                NDR_CHECK(ndr_push_srvsvc_NetTransportCtr(ndr, NDR_BUFFERS, &r->ctr));
 
12951
        }
 
12952
        return NDR_ERR_SUCCESS;
 
12953
}
 
12954
 
 
12955
static enum ndr_err_code ndr_pull_srvsvc_NetTransportInfoCtr(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetTransportInfoCtr *r)
 
12956
{
 
12957
        if (ndr_flags & NDR_SCALARS) {
 
12958
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
12959
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
 
12960
                NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->ctr, r->level));
 
12961
                NDR_CHECK(ndr_pull_srvsvc_NetTransportCtr(ndr, NDR_SCALARS, &r->ctr));
 
12962
        }
 
12963
        if (ndr_flags & NDR_BUFFERS) {
 
12964
                NDR_CHECK(ndr_pull_srvsvc_NetTransportCtr(ndr, NDR_BUFFERS, &r->ctr));
 
12965
        }
 
12966
        return NDR_ERR_SUCCESS;
 
12967
}
 
12968
 
 
12969
_PUBLIC_ void ndr_print_srvsvc_NetTransportInfoCtr(struct ndr_print *ndr, const char *name, const struct srvsvc_NetTransportInfoCtr *r)
 
12970
{
 
12971
        ndr_print_struct(ndr, name, "srvsvc_NetTransportInfoCtr");
 
12972
        ndr->depth++;
 
12973
        ndr_print_uint32(ndr, "level", r->level);
 
12974
        ndr_print_set_switch_value(ndr, &r->ctr, r->level);
 
12975
        ndr_print_srvsvc_NetTransportCtr(ndr, "ctr", &r->ctr);
 
12976
        ndr->depth--;
 
12977
}
 
12978
 
 
12979
static enum ndr_err_code ndr_push_srvsvc_NetRemoteTODInfo(struct ndr_push *ndr, int ndr_flags, const struct srvsvc_NetRemoteTODInfo *r)
 
12980
{
 
12981
        if (ndr_flags & NDR_SCALARS) {
 
12982
                NDR_CHECK(ndr_push_align(ndr, 4));
 
12983
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->elapsed));
 
12984
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->msecs));
 
12985
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->hours));
 
12986
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->mins));
 
12987
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->secs));
 
12988
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->hunds));
 
12989
                NDR_CHECK(ndr_push_int32(ndr, NDR_SCALARS, r->timezone));
 
12990
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->tinterval));
 
12991
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->day));
 
12992
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->month));
 
12993
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->year));
 
12994
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->weekday));
 
12995
        }
 
12996
        if (ndr_flags & NDR_BUFFERS) {
 
12997
        }
 
12998
        return NDR_ERR_SUCCESS;
 
12999
}
 
13000
 
 
13001
static enum ndr_err_code ndr_pull_srvsvc_NetRemoteTODInfo(struct ndr_pull *ndr, int ndr_flags, struct srvsvc_NetRemoteTODInfo *r)
 
13002
{
 
13003
        if (ndr_flags & NDR_SCALARS) {
 
13004
                NDR_CHECK(ndr_pull_align(ndr, 4));
 
13005
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->elapsed));
 
13006
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->msecs));
 
13007
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->hours));
 
13008
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->mins));
 
13009
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->secs));
 
13010
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->hunds));
 
13011
                NDR_CHECK(ndr_pull_int32(ndr, NDR_SCALARS, &r->timezone));
 
13012
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->tinterval));
 
13013
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->day));
 
13014
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->month));
 
13015
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->year));
 
13016
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->weekday));
 
13017
        }
 
13018
        if (ndr_flags & NDR_BUFFERS) {
 
13019
        }
 
13020
        return NDR_ERR_SUCCESS;
 
13021
}
 
13022
 
 
13023
_PUBLIC_ void ndr_print_srvsvc_NetRemoteTODInfo(struct ndr_print *ndr, const char *name, const struct srvsvc_NetRemoteTODInfo *r)
 
13024
{
 
13025
        ndr_print_struct(ndr, name, "srvsvc_NetRemoteTODInfo");
 
13026
        ndr->depth++;
 
13027
        ndr_print_uint32(ndr, "elapsed", r->elapsed);
 
13028
        ndr_print_uint32(ndr, "msecs", r->msecs);
 
13029
        ndr_print_uint32(ndr, "hours", r->hours);
 
13030
        ndr_print_uint32(ndr, "mins", r->mins);
 
13031
        ndr_print_uint32(ndr, "secs", r->secs);
 
13032
        ndr_print_uint32(ndr, "hunds", r->hunds);
 
13033
        ndr_print_int32(ndr, "timezone", r->timezone);
 
13034
        ndr_print_uint32(ndr, "tinterval", r->tinterval);
 
13035
        ndr_print_uint32(ndr, "day", r->day);
 
13036
        ndr_print_uint32(ndr, "month", r->month);
 
13037
        ndr_print_uint32(ndr, "year", r->year);
 
13038
        ndr_print_uint32(ndr, "weekday", r->weekday);
 
13039
        ndr->depth--;
 
13040
}
 
13041
 
 
13042
static enum ndr_err_code ndr_push_srvsvc_NetTransportInfo(struct ndr_push *ndr, int ndr_flags, const union srvsvc_NetTransportInfo *r)
 
13043
{
 
13044
        if (ndr_flags & NDR_SCALARS) {
 
13045
                int level = ndr_push_get_switch_value(ndr, r);
 
13046
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
 
13047
                switch (level) {
 
13048
                        case 0: {
 
13049
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo0(ndr, NDR_SCALARS, &r->info0));
 
13050
                        break; }
 
13051
 
 
13052
                        case 1: {
 
13053
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo1(ndr, NDR_SCALARS, &r->info1));
 
13054
                        break; }
 
13055
 
 
13056
                        case 2: {
 
13057
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo2(ndr, NDR_SCALARS, &r->info2));
 
13058
                        break; }
 
13059
 
 
13060
                        case 3: {
 
13061
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo3(ndr, NDR_SCALARS, &r->info3));
 
13062
                        break; }
 
13063
 
 
13064
                        default:
 
13065
                                return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
 
13066
                }
 
13067
        }
 
13068
        if (ndr_flags & NDR_BUFFERS) {
 
13069
                int level = ndr_push_get_switch_value(ndr, r);
 
13070
                switch (level) {
 
13071
                        case 0:
 
13072
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo0(ndr, NDR_BUFFERS, &r->info0));
 
13073
                        break;
 
13074
 
 
13075
                        case 1:
 
13076
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo1(ndr, NDR_BUFFERS, &r->info1));
 
13077
                        break;
 
13078
 
 
13079
                        case 2:
 
13080
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo2(ndr, NDR_BUFFERS, &r->info2));
 
13081
                        break;
 
13082
 
 
13083
                        case 3:
 
13084
                                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo3(ndr, NDR_BUFFERS, &r->info3));
 
13085
                        break;
 
13086
 
 
13087
                        default:
 
13088
                                return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
 
13089
                }
 
13090
        }
 
13091
        return NDR_ERR_SUCCESS;
 
13092
}
 
13093
 
 
13094
static enum ndr_err_code ndr_pull_srvsvc_NetTransportInfo(struct ndr_pull *ndr, int ndr_flags, union srvsvc_NetTransportInfo *r)
 
13095
{
 
13096
        int level;
 
13097
        uint32_t _level;
 
13098
        level = ndr_pull_get_switch_value(ndr, r);
 
13099
        if (ndr_flags & NDR_SCALARS) {
 
13100
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
 
13101
                if (_level != level) {
 
13102
                        return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
 
13103
                }
 
13104
                switch (level) {
 
13105
                        case 0: {
 
13106
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo0(ndr, NDR_SCALARS, &r->info0));
 
13107
                        break; }
 
13108
 
 
13109
                        case 1: {
 
13110
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo1(ndr, NDR_SCALARS, &r->info1));
 
13111
                        break; }
 
13112
 
 
13113
                        case 2: {
 
13114
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo2(ndr, NDR_SCALARS, &r->info2));
 
13115
                        break; }
 
13116
 
 
13117
                        case 3: {
 
13118
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo3(ndr, NDR_SCALARS, &r->info3));
 
13119
                        break; }
 
13120
 
 
13121
                        default:
 
13122
                                return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
 
13123
                }
 
13124
        }
 
13125
        if (ndr_flags & NDR_BUFFERS) {
 
13126
                switch (level) {
 
13127
                        case 0:
 
13128
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo0(ndr, NDR_BUFFERS, &r->info0));
 
13129
                        break;
 
13130
 
 
13131
                        case 1:
 
13132
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo1(ndr, NDR_BUFFERS, &r->info1));
 
13133
                        break;
 
13134
 
 
13135
                        case 2:
 
13136
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo2(ndr, NDR_BUFFERS, &r->info2));
 
13137
                        break;
 
13138
 
 
13139
                        case 3:
 
13140
                                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo3(ndr, NDR_BUFFERS, &r->info3));
 
13141
                        break;
 
13142
 
 
13143
                        default:
 
13144
                                return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
 
13145
                }
 
13146
        }
 
13147
        return NDR_ERR_SUCCESS;
 
13148
}
 
13149
 
 
13150
_PUBLIC_ void ndr_print_srvsvc_NetTransportInfo(struct ndr_print *ndr, const char *name, const union srvsvc_NetTransportInfo *r)
 
13151
{
 
13152
        int level;
 
13153
        level = ndr_print_get_switch_value(ndr, r);
 
13154
        ndr_print_union(ndr, name, level, "srvsvc_NetTransportInfo");
 
13155
        switch (level) {
 
13156
                case 0:
 
13157
                        ndr_print_srvsvc_NetTransportInfo0(ndr, "info0", &r->info0);
 
13158
                break;
 
13159
 
 
13160
                case 1:
 
13161
                        ndr_print_srvsvc_NetTransportInfo1(ndr, "info1", &r->info1);
 
13162
                break;
 
13163
 
 
13164
                case 2:
 
13165
                        ndr_print_srvsvc_NetTransportInfo2(ndr, "info2", &r->info2);
 
13166
                break;
 
13167
 
 
13168
                case 3:
 
13169
                        ndr_print_srvsvc_NetTransportInfo3(ndr, "info3", &r->info3);
 
13170
                break;
 
13171
 
 
13172
                default:
 
13173
                        ndr_print_bad_level(ndr, name, level);
 
13174
        }
 
13175
}
 
13176
 
 
13177
static enum ndr_err_code ndr_push_srvsvc_NetCharDevEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevEnum *r)
 
13178
{
 
13179
        if (flags & NDR_IN) {
 
13180
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
13181
                if (r->in.server_unc) {
 
13182
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13183
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13184
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13185
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13186
                }
 
13187
                if (r->in.info_ctr == NULL) {
 
13188
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13189
                }
 
13190
                NDR_CHECK(ndr_push_srvsvc_NetCharDevInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
13191
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
13192
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
13193
                if (r->in.resume_handle) {
 
13194
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
13195
                }
 
13196
        }
 
13197
        if (flags & NDR_OUT) {
 
13198
                if (r->out.info_ctr == NULL) {
 
13199
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13200
                }
 
13201
                NDR_CHECK(ndr_push_srvsvc_NetCharDevInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
13202
                if (r->out.totalentries == NULL) {
 
13203
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13204
                }
 
13205
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
13206
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
13207
                if (r->out.resume_handle) {
 
13208
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
13209
                }
 
13210
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
13211
        }
 
13212
        return NDR_ERR_SUCCESS;
 
13213
}
 
13214
 
 
13215
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevEnum *r)
 
13216
{
 
13217
        uint32_t _ptr_server_unc;
 
13218
        uint32_t _ptr_resume_handle;
 
13219
        TALLOC_CTX *_mem_save_server_unc_0;
 
13220
        TALLOC_CTX *_mem_save_info_ctr_0;
 
13221
        TALLOC_CTX *_mem_save_totalentries_0;
 
13222
        TALLOC_CTX *_mem_save_resume_handle_0;
 
13223
        if (flags & NDR_IN) {
 
13224
                ZERO_STRUCT(r->out);
 
13225
 
 
13226
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
13227
                if (_ptr_server_unc) {
 
13228
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
13229
                } else {
 
13230
                        r->in.server_unc = NULL;
 
13231
                }
 
13232
                if (r->in.server_unc) {
 
13233
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13234
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
13235
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
13236
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
13237
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
13238
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
13239
                        }
 
13240
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
13241
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
13242
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
13243
                }
 
13244
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13245
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
13246
                }
 
13247
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13248
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
13249
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
13250
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
13251
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
13252
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
13253
                if (_ptr_resume_handle) {
 
13254
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
13255
                } else {
 
13256
                        r->in.resume_handle = NULL;
 
13257
                }
 
13258
                if (r->in.resume_handle) {
 
13259
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13260
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
13261
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
13262
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
13263
                }
 
13264
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
13265
                *r->out.info_ctr = *r->in.info_ctr;
 
13266
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
13267
                ZERO_STRUCTP(r->out.totalentries);
 
13268
        }
 
13269
        if (flags & NDR_OUT) {
 
13270
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13271
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
13272
                }
 
13273
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13274
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
13275
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
13276
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
13277
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13278
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
13279
                }
 
13280
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13281
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
13282
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
13283
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
13284
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
13285
                if (_ptr_resume_handle) {
 
13286
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
13287
                } else {
 
13288
                        r->out.resume_handle = NULL;
 
13289
                }
 
13290
                if (r->out.resume_handle) {
 
13291
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13292
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
13293
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
13294
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
13295
                }
 
13296
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
13297
        }
 
13298
        return NDR_ERR_SUCCESS;
 
13299
}
 
13300
 
 
13301
_PUBLIC_ void ndr_print_srvsvc_NetCharDevEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevEnum *r)
 
13302
{
 
13303
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevEnum");
 
13304
        ndr->depth++;
 
13305
        if (flags & NDR_SET_VALUES) {
 
13306
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
13307
        }
 
13308
        if (flags & NDR_IN) {
 
13309
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevEnum");
 
13310
                ndr->depth++;
 
13311
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
13312
                ndr->depth++;
 
13313
                if (r->in.server_unc) {
 
13314
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
13315
                }
 
13316
                ndr->depth--;
 
13317
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
13318
                ndr->depth++;
 
13319
                ndr_print_srvsvc_NetCharDevInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
13320
                ndr->depth--;
 
13321
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
13322
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
13323
                ndr->depth++;
 
13324
                if (r->in.resume_handle) {
 
13325
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
13326
                }
 
13327
                ndr->depth--;
 
13328
                ndr->depth--;
 
13329
        }
 
13330
        if (flags & NDR_OUT) {
 
13331
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevEnum");
 
13332
                ndr->depth++;
 
13333
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
13334
                ndr->depth++;
 
13335
                ndr_print_srvsvc_NetCharDevInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
13336
                ndr->depth--;
 
13337
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
13338
                ndr->depth++;
 
13339
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
13340
                ndr->depth--;
 
13341
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
13342
                ndr->depth++;
 
13343
                if (r->out.resume_handle) {
 
13344
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
13345
                }
 
13346
                ndr->depth--;
 
13347
                ndr_print_WERROR(ndr, "result", r->out.result);
 
13348
                ndr->depth--;
 
13349
        }
 
13350
        ndr->depth--;
 
13351
}
 
13352
 
 
13353
static enum ndr_err_code ndr_push_srvsvc_NetCharDevGetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevGetInfo *r)
 
13354
{
 
13355
        if (flags & NDR_IN) {
 
13356
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
13357
                if (r->in.server_unc) {
 
13358
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13359
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13360
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13361
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13362
                }
 
13363
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.device_name, CH_UTF16)));
 
13364
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13365
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.device_name, CH_UTF16)));
 
13366
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.device_name, ndr_charset_length(r->in.device_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13367
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
13368
        }
 
13369
        if (flags & NDR_OUT) {
 
13370
                if (r->out.info == NULL) {
 
13371
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13372
                }
 
13373
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
 
13374
                NDR_CHECK(ndr_push_srvsvc_NetCharDevInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
13375
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
13376
        }
 
13377
        return NDR_ERR_SUCCESS;
 
13378
}
 
13379
 
 
13380
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevGetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevGetInfo *r)
 
13381
{
 
13382
        uint32_t _ptr_server_unc;
 
13383
        TALLOC_CTX *_mem_save_server_unc_0;
 
13384
        TALLOC_CTX *_mem_save_info_0;
 
13385
        if (flags & NDR_IN) {
 
13386
                ZERO_STRUCT(r->out);
 
13387
 
 
13388
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
13389
                if (_ptr_server_unc) {
 
13390
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
13391
                } else {
 
13392
                        r->in.server_unc = NULL;
 
13393
                }
 
13394
                if (r->in.server_unc) {
 
13395
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13396
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
13397
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
13398
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
13399
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
13400
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
13401
                        }
 
13402
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
13403
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
13404
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
13405
                }
 
13406
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.device_name));
 
13407
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.device_name));
 
13408
                if (ndr_get_array_length(ndr, &r->in.device_name) > ndr_get_array_size(ndr, &r->in.device_name)) {
 
13409
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.device_name), ndr_get_array_length(ndr, &r->in.device_name));
 
13410
                }
 
13411
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.device_name), sizeof(uint16_t)));
 
13412
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.device_name, ndr_get_array_length(ndr, &r->in.device_name), sizeof(uint16_t), CH_UTF16));
 
13413
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
13414
                NDR_PULL_ALLOC(ndr, r->out.info);
 
13415
                ZERO_STRUCTP(r->out.info);
 
13416
        }
 
13417
        if (flags & NDR_OUT) {
 
13418
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13419
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
13420
                }
 
13421
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13422
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
13423
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
 
13424
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
13425
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
13426
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
13427
        }
 
13428
        return NDR_ERR_SUCCESS;
 
13429
}
 
13430
 
 
13431
_PUBLIC_ void ndr_print_srvsvc_NetCharDevGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevGetInfo *r)
 
13432
{
 
13433
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevGetInfo");
 
13434
        ndr->depth++;
 
13435
        if (flags & NDR_SET_VALUES) {
 
13436
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
13437
        }
 
13438
        if (flags & NDR_IN) {
 
13439
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevGetInfo");
 
13440
                ndr->depth++;
 
13441
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
13442
                ndr->depth++;
 
13443
                if (r->in.server_unc) {
 
13444
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
13445
                }
 
13446
                ndr->depth--;
 
13447
                ndr_print_string(ndr, "device_name", r->in.device_name);
 
13448
                ndr_print_uint32(ndr, "level", r->in.level);
 
13449
                ndr->depth--;
 
13450
        }
 
13451
        if (flags & NDR_OUT) {
 
13452
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevGetInfo");
 
13453
                ndr->depth++;
 
13454
                ndr_print_ptr(ndr, "info", r->out.info);
 
13455
                ndr->depth++;
 
13456
                ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
 
13457
                ndr_print_srvsvc_NetCharDevInfo(ndr, "info", r->out.info);
 
13458
                ndr->depth--;
 
13459
                ndr_print_WERROR(ndr, "result", r->out.result);
 
13460
                ndr->depth--;
 
13461
        }
 
13462
        ndr->depth--;
 
13463
}
 
13464
 
 
13465
static enum ndr_err_code ndr_push_srvsvc_NetCharDevControl(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevControl *r)
 
13466
{
 
13467
        if (flags & NDR_IN) {
 
13468
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
13469
                if (r->in.server_unc) {
 
13470
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13471
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13472
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13473
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13474
                }
 
13475
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.device_name, CH_UTF16)));
 
13476
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13477
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.device_name, CH_UTF16)));
 
13478
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.device_name, ndr_charset_length(r->in.device_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13479
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.opcode));
 
13480
        }
 
13481
        if (flags & NDR_OUT) {
 
13482
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
13483
        }
 
13484
        return NDR_ERR_SUCCESS;
 
13485
}
 
13486
 
 
13487
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevControl(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevControl *r)
 
13488
{
 
13489
        uint32_t _ptr_server_unc;
 
13490
        TALLOC_CTX *_mem_save_server_unc_0;
 
13491
        if (flags & NDR_IN) {
 
13492
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
13493
                if (_ptr_server_unc) {
 
13494
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
13495
                } else {
 
13496
                        r->in.server_unc = NULL;
 
13497
                }
 
13498
                if (r->in.server_unc) {
 
13499
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13500
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
13501
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
13502
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
13503
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
13504
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
13505
                        }
 
13506
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
13507
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
13508
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
13509
                }
 
13510
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.device_name));
 
13511
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.device_name));
 
13512
                if (ndr_get_array_length(ndr, &r->in.device_name) > ndr_get_array_size(ndr, &r->in.device_name)) {
 
13513
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.device_name), ndr_get_array_length(ndr, &r->in.device_name));
 
13514
                }
 
13515
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.device_name), sizeof(uint16_t)));
 
13516
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.device_name, ndr_get_array_length(ndr, &r->in.device_name), sizeof(uint16_t), CH_UTF16));
 
13517
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.opcode));
 
13518
        }
 
13519
        if (flags & NDR_OUT) {
 
13520
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
13521
        }
 
13522
        return NDR_ERR_SUCCESS;
 
13523
}
 
13524
 
 
13525
_PUBLIC_ void ndr_print_srvsvc_NetCharDevControl(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevControl *r)
 
13526
{
 
13527
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevControl");
 
13528
        ndr->depth++;
 
13529
        if (flags & NDR_SET_VALUES) {
 
13530
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
13531
        }
 
13532
        if (flags & NDR_IN) {
 
13533
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevControl");
 
13534
                ndr->depth++;
 
13535
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
13536
                ndr->depth++;
 
13537
                if (r->in.server_unc) {
 
13538
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
13539
                }
 
13540
                ndr->depth--;
 
13541
                ndr_print_string(ndr, "device_name", r->in.device_name);
 
13542
                ndr_print_uint32(ndr, "opcode", r->in.opcode);
 
13543
                ndr->depth--;
 
13544
        }
 
13545
        if (flags & NDR_OUT) {
 
13546
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevControl");
 
13547
                ndr->depth++;
 
13548
                ndr_print_WERROR(ndr, "result", r->out.result);
 
13549
                ndr->depth--;
 
13550
        }
 
13551
        ndr->depth--;
 
13552
}
 
13553
 
 
13554
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevQEnum *r)
 
13555
{
 
13556
        if (flags & NDR_IN) {
 
13557
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
13558
                if (r->in.server_unc) {
 
13559
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13560
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13561
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13562
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13563
                }
 
13564
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.user));
 
13565
                if (r->in.user) {
 
13566
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
13567
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13568
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
13569
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.user, ndr_charset_length(r->in.user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13570
                }
 
13571
                if (r->in.info_ctr == NULL) {
 
13572
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13573
                }
 
13574
                NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
13575
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
13576
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
13577
                if (r->in.resume_handle) {
 
13578
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
13579
                }
 
13580
        }
 
13581
        if (flags & NDR_OUT) {
 
13582
                if (r->out.info_ctr == NULL) {
 
13583
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13584
                }
 
13585
                NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
13586
                if (r->out.totalentries == NULL) {
 
13587
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13588
                }
 
13589
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
13590
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
13591
                if (r->out.resume_handle) {
 
13592
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
13593
                }
 
13594
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
13595
        }
 
13596
        return NDR_ERR_SUCCESS;
 
13597
}
 
13598
 
 
13599
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevQEnum *r)
 
13600
{
 
13601
        uint32_t _ptr_server_unc;
 
13602
        uint32_t _ptr_user;
 
13603
        uint32_t _ptr_resume_handle;
 
13604
        TALLOC_CTX *_mem_save_server_unc_0;
 
13605
        TALLOC_CTX *_mem_save_user_0;
 
13606
        TALLOC_CTX *_mem_save_info_ctr_0;
 
13607
        TALLOC_CTX *_mem_save_totalentries_0;
 
13608
        TALLOC_CTX *_mem_save_resume_handle_0;
 
13609
        if (flags & NDR_IN) {
 
13610
                ZERO_STRUCT(r->out);
 
13611
 
 
13612
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
13613
                if (_ptr_server_unc) {
 
13614
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
13615
                } else {
 
13616
                        r->in.server_unc = NULL;
 
13617
                }
 
13618
                if (r->in.server_unc) {
 
13619
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13620
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
13621
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
13622
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
13623
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
13624
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
13625
                        }
 
13626
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
13627
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
13628
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
13629
                }
 
13630
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
13631
                if (_ptr_user) {
 
13632
                        NDR_PULL_ALLOC(ndr, r->in.user);
 
13633
                } else {
 
13634
                        r->in.user = NULL;
 
13635
                }
 
13636
                if (r->in.user) {
 
13637
                        _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13638
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.user, 0);
 
13639
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.user));
 
13640
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.user));
 
13641
                        if (ndr_get_array_length(ndr, &r->in.user) > ndr_get_array_size(ndr, &r->in.user)) {
 
13642
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.user), ndr_get_array_length(ndr, &r->in.user));
 
13643
                        }
 
13644
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t)));
 
13645
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.user, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t), CH_UTF16));
 
13646
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
 
13647
                }
 
13648
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13649
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
13650
                }
 
13651
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13652
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
13653
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
13654
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
13655
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
13656
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
13657
                if (_ptr_resume_handle) {
 
13658
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
13659
                } else {
 
13660
                        r->in.resume_handle = NULL;
 
13661
                }
 
13662
                if (r->in.resume_handle) {
 
13663
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13664
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
13665
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
13666
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
13667
                }
 
13668
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
13669
                *r->out.info_ctr = *r->in.info_ctr;
 
13670
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
13671
                ZERO_STRUCTP(r->out.totalentries);
 
13672
        }
 
13673
        if (flags & NDR_OUT) {
 
13674
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13675
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
13676
                }
 
13677
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13678
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
13679
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
13680
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
13681
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13682
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
13683
                }
 
13684
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13685
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
13686
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
13687
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
13688
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
13689
                if (_ptr_resume_handle) {
 
13690
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
13691
                } else {
 
13692
                        r->out.resume_handle = NULL;
 
13693
                }
 
13694
                if (r->out.resume_handle) {
 
13695
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13696
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
13697
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
13698
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
13699
                }
 
13700
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
13701
        }
 
13702
        return NDR_ERR_SUCCESS;
 
13703
}
 
13704
 
 
13705
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevQEnum *r)
 
13706
{
 
13707
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQEnum");
 
13708
        ndr->depth++;
 
13709
        if (flags & NDR_SET_VALUES) {
 
13710
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
13711
        }
 
13712
        if (flags & NDR_IN) {
 
13713
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevQEnum");
 
13714
                ndr->depth++;
 
13715
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
13716
                ndr->depth++;
 
13717
                if (r->in.server_unc) {
 
13718
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
13719
                }
 
13720
                ndr->depth--;
 
13721
                ndr_print_ptr(ndr, "user", r->in.user);
 
13722
                ndr->depth++;
 
13723
                if (r->in.user) {
 
13724
                        ndr_print_string(ndr, "user", r->in.user);
 
13725
                }
 
13726
                ndr->depth--;
 
13727
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
13728
                ndr->depth++;
 
13729
                ndr_print_srvsvc_NetCharDevQInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
13730
                ndr->depth--;
 
13731
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
13732
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
13733
                ndr->depth++;
 
13734
                if (r->in.resume_handle) {
 
13735
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
13736
                }
 
13737
                ndr->depth--;
 
13738
                ndr->depth--;
 
13739
        }
 
13740
        if (flags & NDR_OUT) {
 
13741
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevQEnum");
 
13742
                ndr->depth++;
 
13743
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
13744
                ndr->depth++;
 
13745
                ndr_print_srvsvc_NetCharDevQInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
13746
                ndr->depth--;
 
13747
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
13748
                ndr->depth++;
 
13749
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
13750
                ndr->depth--;
 
13751
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
13752
                ndr->depth++;
 
13753
                if (r->out.resume_handle) {
 
13754
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
13755
                }
 
13756
                ndr->depth--;
 
13757
                ndr_print_WERROR(ndr, "result", r->out.result);
 
13758
                ndr->depth--;
 
13759
        }
 
13760
        ndr->depth--;
 
13761
}
 
13762
 
 
13763
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQGetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevQGetInfo *r)
 
13764
{
 
13765
        if (flags & NDR_IN) {
 
13766
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
13767
                if (r->in.server_unc) {
 
13768
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13769
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13770
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13771
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13772
                }
 
13773
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
13774
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13775
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
13776
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.queue_name, ndr_charset_length(r->in.queue_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13777
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
13778
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13779
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
13780
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.user, ndr_charset_length(r->in.user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13781
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
13782
        }
 
13783
        if (flags & NDR_OUT) {
 
13784
                if (r->out.info == NULL) {
 
13785
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
13786
                }
 
13787
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
 
13788
                NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
13789
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
13790
        }
 
13791
        return NDR_ERR_SUCCESS;
 
13792
}
 
13793
 
 
13794
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQGetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevQGetInfo *r)
 
13795
{
 
13796
        uint32_t _ptr_server_unc;
 
13797
        TALLOC_CTX *_mem_save_server_unc_0;
 
13798
        TALLOC_CTX *_mem_save_info_0;
 
13799
        if (flags & NDR_IN) {
 
13800
                ZERO_STRUCT(r->out);
 
13801
 
 
13802
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
13803
                if (_ptr_server_unc) {
 
13804
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
13805
                } else {
 
13806
                        r->in.server_unc = NULL;
 
13807
                }
 
13808
                if (r->in.server_unc) {
 
13809
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13810
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
13811
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
13812
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
13813
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
13814
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
13815
                        }
 
13816
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
13817
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
13818
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
13819
                }
 
13820
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.queue_name));
 
13821
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.queue_name));
 
13822
                if (ndr_get_array_length(ndr, &r->in.queue_name) > ndr_get_array_size(ndr, &r->in.queue_name)) {
 
13823
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.queue_name), ndr_get_array_length(ndr, &r->in.queue_name));
 
13824
                }
 
13825
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t)));
 
13826
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.queue_name, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t), CH_UTF16));
 
13827
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.user));
 
13828
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.user));
 
13829
                if (ndr_get_array_length(ndr, &r->in.user) > ndr_get_array_size(ndr, &r->in.user)) {
 
13830
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.user), ndr_get_array_length(ndr, &r->in.user));
 
13831
                }
 
13832
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t)));
 
13833
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.user, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t), CH_UTF16));
 
13834
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
13835
                NDR_PULL_ALLOC(ndr, r->out.info);
 
13836
                ZERO_STRUCTP(r->out.info);
 
13837
        }
 
13838
        if (flags & NDR_OUT) {
 
13839
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
13840
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
13841
                }
 
13842
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13843
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
13844
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
 
13845
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
13846
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
13847
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
13848
        }
 
13849
        return NDR_ERR_SUCCESS;
 
13850
}
 
13851
 
 
13852
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevQGetInfo *r)
 
13853
{
 
13854
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQGetInfo");
 
13855
        ndr->depth++;
 
13856
        if (flags & NDR_SET_VALUES) {
 
13857
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
13858
        }
 
13859
        if (flags & NDR_IN) {
 
13860
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevQGetInfo");
 
13861
                ndr->depth++;
 
13862
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
13863
                ndr->depth++;
 
13864
                if (r->in.server_unc) {
 
13865
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
13866
                }
 
13867
                ndr->depth--;
 
13868
                ndr_print_string(ndr, "queue_name", r->in.queue_name);
 
13869
                ndr_print_string(ndr, "user", r->in.user);
 
13870
                ndr_print_uint32(ndr, "level", r->in.level);
 
13871
                ndr->depth--;
 
13872
        }
 
13873
        if (flags & NDR_OUT) {
 
13874
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevQGetInfo");
 
13875
                ndr->depth++;
 
13876
                ndr_print_ptr(ndr, "info", r->out.info);
 
13877
                ndr->depth++;
 
13878
                ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
 
13879
                ndr_print_srvsvc_NetCharDevQInfo(ndr, "info", r->out.info);
 
13880
                ndr->depth--;
 
13881
                ndr_print_WERROR(ndr, "result", r->out.result);
 
13882
                ndr->depth--;
 
13883
        }
 
13884
        ndr->depth--;
 
13885
}
 
13886
 
 
13887
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQSetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevQSetInfo *r)
 
13888
{
 
13889
        if (flags & NDR_IN) {
 
13890
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
13891
                if (r->in.server_unc) {
 
13892
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13893
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13894
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
13895
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13896
                }
 
13897
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
13898
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
13899
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
13900
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.queue_name, ndr_charset_length(r->in.queue_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
13901
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
13902
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->in.info, r->in.level));
 
13903
                NDR_CHECK(ndr_push_srvsvc_NetCharDevQInfo(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.info));
 
13904
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_error));
 
13905
                if (r->in.parm_error) {
 
13906
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_error));
 
13907
                }
 
13908
        }
 
13909
        if (flags & NDR_OUT) {
 
13910
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_error));
 
13911
                if (r->out.parm_error) {
 
13912
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_error));
 
13913
                }
 
13914
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
13915
        }
 
13916
        return NDR_ERR_SUCCESS;
 
13917
}
 
13918
 
 
13919
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQSetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevQSetInfo *r)
 
13920
{
 
13921
        uint32_t _ptr_server_unc;
 
13922
        uint32_t _ptr_parm_error;
 
13923
        TALLOC_CTX *_mem_save_server_unc_0;
 
13924
        TALLOC_CTX *_mem_save_parm_error_0;
 
13925
        if (flags & NDR_IN) {
 
13926
                ZERO_STRUCT(r->out);
 
13927
 
 
13928
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
13929
                if (_ptr_server_unc) {
 
13930
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
13931
                } else {
 
13932
                        r->in.server_unc = NULL;
 
13933
                }
 
13934
                if (r->in.server_unc) {
 
13935
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13936
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
13937
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
13938
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
13939
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
13940
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
13941
                        }
 
13942
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
13943
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
13944
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
13945
                }
 
13946
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.queue_name));
 
13947
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.queue_name));
 
13948
                if (ndr_get_array_length(ndr, &r->in.queue_name) > ndr_get_array_size(ndr, &r->in.queue_name)) {
 
13949
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.queue_name), ndr_get_array_length(ndr, &r->in.queue_name));
 
13950
                }
 
13951
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t)));
 
13952
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.queue_name, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t), CH_UTF16));
 
13953
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
13954
                NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->in.info, r->in.level));
 
13955
                NDR_CHECK(ndr_pull_srvsvc_NetCharDevQInfo(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.info));
 
13956
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
13957
                if (_ptr_parm_error) {
 
13958
                        NDR_PULL_ALLOC(ndr, r->in.parm_error);
 
13959
                } else {
 
13960
                        r->in.parm_error = NULL;
 
13961
                }
 
13962
                if (r->in.parm_error) {
 
13963
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13964
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_error, 0);
 
13965
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_error));
 
13966
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
13967
                }
 
13968
        }
 
13969
        if (flags & NDR_OUT) {
 
13970
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
13971
                if (_ptr_parm_error) {
 
13972
                        NDR_PULL_ALLOC(ndr, r->out.parm_error);
 
13973
                } else {
 
13974
                        r->out.parm_error = NULL;
 
13975
                }
 
13976
                if (r->out.parm_error) {
 
13977
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
13978
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_error, 0);
 
13979
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_error));
 
13980
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
13981
                }
 
13982
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
13983
        }
 
13984
        return NDR_ERR_SUCCESS;
 
13985
}
 
13986
 
 
13987
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevQSetInfo *r)
 
13988
{
 
13989
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQSetInfo");
 
13990
        ndr->depth++;
 
13991
        if (flags & NDR_SET_VALUES) {
 
13992
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
13993
        }
 
13994
        if (flags & NDR_IN) {
 
13995
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevQSetInfo");
 
13996
                ndr->depth++;
 
13997
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
13998
                ndr->depth++;
 
13999
                if (r->in.server_unc) {
 
14000
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14001
                }
 
14002
                ndr->depth--;
 
14003
                ndr_print_string(ndr, "queue_name", r->in.queue_name);
 
14004
                ndr_print_uint32(ndr, "level", r->in.level);
 
14005
                ndr_print_set_switch_value(ndr, &r->in.info, r->in.level);
 
14006
                ndr_print_srvsvc_NetCharDevQInfo(ndr, "info", &r->in.info);
 
14007
                ndr_print_ptr(ndr, "parm_error", r->in.parm_error);
 
14008
                ndr->depth++;
 
14009
                if (r->in.parm_error) {
 
14010
                        ndr_print_uint32(ndr, "parm_error", *r->in.parm_error);
 
14011
                }
 
14012
                ndr->depth--;
 
14013
                ndr->depth--;
 
14014
        }
 
14015
        if (flags & NDR_OUT) {
 
14016
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevQSetInfo");
 
14017
                ndr->depth++;
 
14018
                ndr_print_ptr(ndr, "parm_error", r->out.parm_error);
 
14019
                ndr->depth++;
 
14020
                if (r->out.parm_error) {
 
14021
                        ndr_print_uint32(ndr, "parm_error", *r->out.parm_error);
 
14022
                }
 
14023
                ndr->depth--;
 
14024
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14025
                ndr->depth--;
 
14026
        }
 
14027
        ndr->depth--;
 
14028
}
 
14029
 
 
14030
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQPurge(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevQPurge *r)
 
14031
{
 
14032
        if (flags & NDR_IN) {
 
14033
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14034
                if (r->in.server_unc) {
 
14035
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14036
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14037
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14038
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14039
                }
 
14040
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
14041
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14042
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
14043
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.queue_name, ndr_charset_length(r->in.queue_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14044
        }
 
14045
        if (flags & NDR_OUT) {
 
14046
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14047
        }
 
14048
        return NDR_ERR_SUCCESS;
 
14049
}
 
14050
 
 
14051
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQPurge(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevQPurge *r)
 
14052
{
 
14053
        uint32_t _ptr_server_unc;
 
14054
        TALLOC_CTX *_mem_save_server_unc_0;
 
14055
        if (flags & NDR_IN) {
 
14056
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14057
                if (_ptr_server_unc) {
 
14058
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14059
                } else {
 
14060
                        r->in.server_unc = NULL;
 
14061
                }
 
14062
                if (r->in.server_unc) {
 
14063
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14064
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14065
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14066
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14067
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14068
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14069
                        }
 
14070
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14071
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14072
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14073
                }
 
14074
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.queue_name));
 
14075
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.queue_name));
 
14076
                if (ndr_get_array_length(ndr, &r->in.queue_name) > ndr_get_array_size(ndr, &r->in.queue_name)) {
 
14077
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.queue_name), ndr_get_array_length(ndr, &r->in.queue_name));
 
14078
                }
 
14079
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t)));
 
14080
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.queue_name, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t), CH_UTF16));
 
14081
        }
 
14082
        if (flags & NDR_OUT) {
 
14083
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
14084
        }
 
14085
        return NDR_ERR_SUCCESS;
 
14086
}
 
14087
 
 
14088
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQPurge(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevQPurge *r)
 
14089
{
 
14090
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQPurge");
 
14091
        ndr->depth++;
 
14092
        if (flags & NDR_SET_VALUES) {
 
14093
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
14094
        }
 
14095
        if (flags & NDR_IN) {
 
14096
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevQPurge");
 
14097
                ndr->depth++;
 
14098
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
14099
                ndr->depth++;
 
14100
                if (r->in.server_unc) {
 
14101
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14102
                }
 
14103
                ndr->depth--;
 
14104
                ndr_print_string(ndr, "queue_name", r->in.queue_name);
 
14105
                ndr->depth--;
 
14106
        }
 
14107
        if (flags & NDR_OUT) {
 
14108
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevQPurge");
 
14109
                ndr->depth++;
 
14110
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14111
                ndr->depth--;
 
14112
        }
 
14113
        ndr->depth--;
 
14114
}
 
14115
 
 
14116
static enum ndr_err_code ndr_push_srvsvc_NetCharDevQPurgeSelf(struct ndr_push *ndr, int flags, const struct srvsvc_NetCharDevQPurgeSelf *r)
 
14117
{
 
14118
        if (flags & NDR_IN) {
 
14119
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14120
                if (r->in.server_unc) {
 
14121
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14122
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14123
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14124
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14125
                }
 
14126
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
14127
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14128
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.queue_name, CH_UTF16)));
 
14129
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.queue_name, ndr_charset_length(r->in.queue_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14130
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.computer_name, CH_UTF16)));
 
14131
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14132
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.computer_name, CH_UTF16)));
 
14133
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.computer_name, ndr_charset_length(r->in.computer_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14134
        }
 
14135
        if (flags & NDR_OUT) {
 
14136
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14137
        }
 
14138
        return NDR_ERR_SUCCESS;
 
14139
}
 
14140
 
 
14141
static enum ndr_err_code ndr_pull_srvsvc_NetCharDevQPurgeSelf(struct ndr_pull *ndr, int flags, struct srvsvc_NetCharDevQPurgeSelf *r)
 
14142
{
 
14143
        uint32_t _ptr_server_unc;
 
14144
        TALLOC_CTX *_mem_save_server_unc_0;
 
14145
        if (flags & NDR_IN) {
 
14146
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14147
                if (_ptr_server_unc) {
 
14148
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14149
                } else {
 
14150
                        r->in.server_unc = NULL;
 
14151
                }
 
14152
                if (r->in.server_unc) {
 
14153
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14154
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14155
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14156
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14157
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14158
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14159
                        }
 
14160
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14161
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14162
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14163
                }
 
14164
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.queue_name));
 
14165
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.queue_name));
 
14166
                if (ndr_get_array_length(ndr, &r->in.queue_name) > ndr_get_array_size(ndr, &r->in.queue_name)) {
 
14167
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.queue_name), ndr_get_array_length(ndr, &r->in.queue_name));
 
14168
                }
 
14169
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t)));
 
14170
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.queue_name, ndr_get_array_length(ndr, &r->in.queue_name), sizeof(uint16_t), CH_UTF16));
 
14171
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.computer_name));
 
14172
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.computer_name));
 
14173
                if (ndr_get_array_length(ndr, &r->in.computer_name) > ndr_get_array_size(ndr, &r->in.computer_name)) {
 
14174
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.computer_name), ndr_get_array_length(ndr, &r->in.computer_name));
 
14175
                }
 
14176
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.computer_name), sizeof(uint16_t)));
 
14177
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.computer_name, ndr_get_array_length(ndr, &r->in.computer_name), sizeof(uint16_t), CH_UTF16));
 
14178
        }
 
14179
        if (flags & NDR_OUT) {
 
14180
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
14181
        }
 
14182
        return NDR_ERR_SUCCESS;
 
14183
}
 
14184
 
 
14185
_PUBLIC_ void ndr_print_srvsvc_NetCharDevQPurgeSelf(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetCharDevQPurgeSelf *r)
 
14186
{
 
14187
        ndr_print_struct(ndr, name, "srvsvc_NetCharDevQPurgeSelf");
 
14188
        ndr->depth++;
 
14189
        if (flags & NDR_SET_VALUES) {
 
14190
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
14191
        }
 
14192
        if (flags & NDR_IN) {
 
14193
                ndr_print_struct(ndr, "in", "srvsvc_NetCharDevQPurgeSelf");
 
14194
                ndr->depth++;
 
14195
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
14196
                ndr->depth++;
 
14197
                if (r->in.server_unc) {
 
14198
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14199
                }
 
14200
                ndr->depth--;
 
14201
                ndr_print_string(ndr, "queue_name", r->in.queue_name);
 
14202
                ndr_print_string(ndr, "computer_name", r->in.computer_name);
 
14203
                ndr->depth--;
 
14204
        }
 
14205
        if (flags & NDR_OUT) {
 
14206
                ndr_print_struct(ndr, "out", "srvsvc_NetCharDevQPurgeSelf");
 
14207
                ndr->depth++;
 
14208
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14209
                ndr->depth--;
 
14210
        }
 
14211
        ndr->depth--;
 
14212
}
 
14213
 
 
14214
static enum ndr_err_code ndr_push_srvsvc_NetConnEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetConnEnum *r)
 
14215
{
 
14216
        if (flags & NDR_IN) {
 
14217
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14218
                if (r->in.server_unc) {
 
14219
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14220
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14221
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14222
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14223
                }
 
14224
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.path));
 
14225
                if (r->in.path) {
 
14226
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
14227
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14228
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
14229
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path, ndr_charset_length(r->in.path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14230
                }
 
14231
                if (r->in.info_ctr == NULL) {
 
14232
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14233
                }
 
14234
                NDR_CHECK(ndr_push_srvsvc_NetConnInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
14235
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
14236
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
14237
                if (r->in.resume_handle) {
 
14238
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
14239
                }
 
14240
        }
 
14241
        if (flags & NDR_OUT) {
 
14242
                if (r->out.info_ctr == NULL) {
 
14243
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14244
                }
 
14245
                NDR_CHECK(ndr_push_srvsvc_NetConnInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
14246
                if (r->out.totalentries == NULL) {
 
14247
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14248
                }
 
14249
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
14250
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
14251
                if (r->out.resume_handle) {
 
14252
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
14253
                }
 
14254
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14255
        }
 
14256
        return NDR_ERR_SUCCESS;
 
14257
}
 
14258
 
 
14259
static enum ndr_err_code ndr_pull_srvsvc_NetConnEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetConnEnum *r)
 
14260
{
 
14261
        uint32_t _ptr_server_unc;
 
14262
        uint32_t _ptr_path;
 
14263
        uint32_t _ptr_resume_handle;
 
14264
        TALLOC_CTX *_mem_save_server_unc_0;
 
14265
        TALLOC_CTX *_mem_save_path_0;
 
14266
        TALLOC_CTX *_mem_save_info_ctr_0;
 
14267
        TALLOC_CTX *_mem_save_totalentries_0;
 
14268
        TALLOC_CTX *_mem_save_resume_handle_0;
 
14269
        if (flags & NDR_IN) {
 
14270
                ZERO_STRUCT(r->out);
 
14271
 
 
14272
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14273
                if (_ptr_server_unc) {
 
14274
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14275
                } else {
 
14276
                        r->in.server_unc = NULL;
 
14277
                }
 
14278
                if (r->in.server_unc) {
 
14279
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14280
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14281
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14282
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14283
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14284
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14285
                        }
 
14286
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14287
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14288
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14289
                }
 
14290
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
 
14291
                if (_ptr_path) {
 
14292
                        NDR_PULL_ALLOC(ndr, r->in.path);
 
14293
                } else {
 
14294
                        r->in.path = NULL;
 
14295
                }
 
14296
                if (r->in.path) {
 
14297
                        _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14298
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.path, 0);
 
14299
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path));
 
14300
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path));
 
14301
                        if (ndr_get_array_length(ndr, &r->in.path) > ndr_get_array_size(ndr, &r->in.path)) {
 
14302
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.path), ndr_get_array_length(ndr, &r->in.path));
 
14303
                        }
 
14304
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t)));
 
14305
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t), CH_UTF16));
 
14306
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
 
14307
                }
 
14308
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14309
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
14310
                }
 
14311
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14312
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
14313
                NDR_CHECK(ndr_pull_srvsvc_NetConnInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
14314
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
14315
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
14316
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
14317
                if (_ptr_resume_handle) {
 
14318
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
14319
                } else {
 
14320
                        r->in.resume_handle = NULL;
 
14321
                }
 
14322
                if (r->in.resume_handle) {
 
14323
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14324
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
14325
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
14326
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
14327
                }
 
14328
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
14329
                *r->out.info_ctr = *r->in.info_ctr;
 
14330
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
14331
                ZERO_STRUCTP(r->out.totalentries);
 
14332
        }
 
14333
        if (flags & NDR_OUT) {
 
14334
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14335
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
14336
                }
 
14337
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14338
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
14339
                NDR_CHECK(ndr_pull_srvsvc_NetConnInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
14340
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
14341
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14342
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
14343
                }
 
14344
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14345
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
14346
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
14347
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
14348
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
14349
                if (_ptr_resume_handle) {
 
14350
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
14351
                } else {
 
14352
                        r->out.resume_handle = NULL;
 
14353
                }
 
14354
                if (r->out.resume_handle) {
 
14355
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14356
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
14357
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
14358
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
14359
                }
 
14360
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
14361
        }
 
14362
        return NDR_ERR_SUCCESS;
 
14363
}
 
14364
 
 
14365
_PUBLIC_ void ndr_print_srvsvc_NetConnEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetConnEnum *r)
 
14366
{
 
14367
        ndr_print_struct(ndr, name, "srvsvc_NetConnEnum");
 
14368
        ndr->depth++;
 
14369
        if (flags & NDR_SET_VALUES) {
 
14370
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
14371
        }
 
14372
        if (flags & NDR_IN) {
 
14373
                ndr_print_struct(ndr, "in", "srvsvc_NetConnEnum");
 
14374
                ndr->depth++;
 
14375
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
14376
                ndr->depth++;
 
14377
                if (r->in.server_unc) {
 
14378
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14379
                }
 
14380
                ndr->depth--;
 
14381
                ndr_print_ptr(ndr, "path", r->in.path);
 
14382
                ndr->depth++;
 
14383
                if (r->in.path) {
 
14384
                        ndr_print_string(ndr, "path", r->in.path);
 
14385
                }
 
14386
                ndr->depth--;
 
14387
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
14388
                ndr->depth++;
 
14389
                ndr_print_srvsvc_NetConnInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
14390
                ndr->depth--;
 
14391
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
14392
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
14393
                ndr->depth++;
 
14394
                if (r->in.resume_handle) {
 
14395
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
14396
                }
 
14397
                ndr->depth--;
 
14398
                ndr->depth--;
 
14399
        }
 
14400
        if (flags & NDR_OUT) {
 
14401
                ndr_print_struct(ndr, "out", "srvsvc_NetConnEnum");
 
14402
                ndr->depth++;
 
14403
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
14404
                ndr->depth++;
 
14405
                ndr_print_srvsvc_NetConnInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
14406
                ndr->depth--;
 
14407
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
14408
                ndr->depth++;
 
14409
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
14410
                ndr->depth--;
 
14411
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
14412
                ndr->depth++;
 
14413
                if (r->out.resume_handle) {
 
14414
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
14415
                }
 
14416
                ndr->depth--;
 
14417
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14418
                ndr->depth--;
 
14419
        }
 
14420
        ndr->depth--;
 
14421
}
 
14422
 
 
14423
static enum ndr_err_code ndr_push_srvsvc_NetFileEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetFileEnum *r)
 
14424
{
 
14425
        if (flags & NDR_IN) {
 
14426
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14427
                if (r->in.server_unc) {
 
14428
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14429
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14430
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14431
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14432
                }
 
14433
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.path));
 
14434
                if (r->in.path) {
 
14435
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
14436
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14437
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
14438
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path, ndr_charset_length(r->in.path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14439
                }
 
14440
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.user));
 
14441
                if (r->in.user) {
 
14442
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
14443
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14444
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
14445
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.user, ndr_charset_length(r->in.user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14446
                }
 
14447
                if (r->in.info_ctr == NULL) {
 
14448
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14449
                }
 
14450
                NDR_CHECK(ndr_push_srvsvc_NetFileInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
14451
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
14452
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
14453
                if (r->in.resume_handle) {
 
14454
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
14455
                }
 
14456
        }
 
14457
        if (flags & NDR_OUT) {
 
14458
                if (r->out.info_ctr == NULL) {
 
14459
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14460
                }
 
14461
                NDR_CHECK(ndr_push_srvsvc_NetFileInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
14462
                if (r->out.totalentries == NULL) {
 
14463
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14464
                }
 
14465
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
14466
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
14467
                if (r->out.resume_handle) {
 
14468
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
14469
                }
 
14470
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14471
        }
 
14472
        return NDR_ERR_SUCCESS;
 
14473
}
 
14474
 
 
14475
static enum ndr_err_code ndr_pull_srvsvc_NetFileEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetFileEnum *r)
 
14476
{
 
14477
        uint32_t _ptr_server_unc;
 
14478
        uint32_t _ptr_path;
 
14479
        uint32_t _ptr_user;
 
14480
        uint32_t _ptr_resume_handle;
 
14481
        TALLOC_CTX *_mem_save_server_unc_0;
 
14482
        TALLOC_CTX *_mem_save_path_0;
 
14483
        TALLOC_CTX *_mem_save_user_0;
 
14484
        TALLOC_CTX *_mem_save_info_ctr_0;
 
14485
        TALLOC_CTX *_mem_save_totalentries_0;
 
14486
        TALLOC_CTX *_mem_save_resume_handle_0;
 
14487
        if (flags & NDR_IN) {
 
14488
                ZERO_STRUCT(r->out);
 
14489
 
 
14490
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14491
                if (_ptr_server_unc) {
 
14492
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14493
                } else {
 
14494
                        r->in.server_unc = NULL;
 
14495
                }
 
14496
                if (r->in.server_unc) {
 
14497
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14498
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14499
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14500
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14501
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14502
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14503
                        }
 
14504
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14505
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14506
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14507
                }
 
14508
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
 
14509
                if (_ptr_path) {
 
14510
                        NDR_PULL_ALLOC(ndr, r->in.path);
 
14511
                } else {
 
14512
                        r->in.path = NULL;
 
14513
                }
 
14514
                if (r->in.path) {
 
14515
                        _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14516
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.path, 0);
 
14517
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path));
 
14518
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path));
 
14519
                        if (ndr_get_array_length(ndr, &r->in.path) > ndr_get_array_size(ndr, &r->in.path)) {
 
14520
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.path), ndr_get_array_length(ndr, &r->in.path));
 
14521
                        }
 
14522
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t)));
 
14523
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t), CH_UTF16));
 
14524
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
 
14525
                }
 
14526
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
14527
                if (_ptr_user) {
 
14528
                        NDR_PULL_ALLOC(ndr, r->in.user);
 
14529
                } else {
 
14530
                        r->in.user = NULL;
 
14531
                }
 
14532
                if (r->in.user) {
 
14533
                        _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14534
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.user, 0);
 
14535
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.user));
 
14536
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.user));
 
14537
                        if (ndr_get_array_length(ndr, &r->in.user) > ndr_get_array_size(ndr, &r->in.user)) {
 
14538
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.user), ndr_get_array_length(ndr, &r->in.user));
 
14539
                        }
 
14540
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t)));
 
14541
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.user, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t), CH_UTF16));
 
14542
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
 
14543
                }
 
14544
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14545
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
14546
                }
 
14547
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14548
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
14549
                NDR_CHECK(ndr_pull_srvsvc_NetFileInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
14550
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
14551
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
14552
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
14553
                if (_ptr_resume_handle) {
 
14554
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
14555
                } else {
 
14556
                        r->in.resume_handle = NULL;
 
14557
                }
 
14558
                if (r->in.resume_handle) {
 
14559
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14560
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
14561
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
14562
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
14563
                }
 
14564
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
14565
                *r->out.info_ctr = *r->in.info_ctr;
 
14566
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
14567
                ZERO_STRUCTP(r->out.totalentries);
 
14568
        }
 
14569
        if (flags & NDR_OUT) {
 
14570
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14571
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
14572
                }
 
14573
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14574
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
14575
                NDR_CHECK(ndr_pull_srvsvc_NetFileInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
14576
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
14577
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14578
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
14579
                }
 
14580
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14581
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
14582
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
14583
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
14584
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
14585
                if (_ptr_resume_handle) {
 
14586
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
14587
                } else {
 
14588
                        r->out.resume_handle = NULL;
 
14589
                }
 
14590
                if (r->out.resume_handle) {
 
14591
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14592
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
14593
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
14594
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
14595
                }
 
14596
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
14597
        }
 
14598
        return NDR_ERR_SUCCESS;
 
14599
}
 
14600
 
 
14601
_PUBLIC_ void ndr_print_srvsvc_NetFileEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetFileEnum *r)
 
14602
{
 
14603
        ndr_print_struct(ndr, name, "srvsvc_NetFileEnum");
 
14604
        ndr->depth++;
 
14605
        if (flags & NDR_SET_VALUES) {
 
14606
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
14607
        }
 
14608
        if (flags & NDR_IN) {
 
14609
                ndr_print_struct(ndr, "in", "srvsvc_NetFileEnum");
 
14610
                ndr->depth++;
 
14611
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
14612
                ndr->depth++;
 
14613
                if (r->in.server_unc) {
 
14614
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14615
                }
 
14616
                ndr->depth--;
 
14617
                ndr_print_ptr(ndr, "path", r->in.path);
 
14618
                ndr->depth++;
 
14619
                if (r->in.path) {
 
14620
                        ndr_print_string(ndr, "path", r->in.path);
 
14621
                }
 
14622
                ndr->depth--;
 
14623
                ndr_print_ptr(ndr, "user", r->in.user);
 
14624
                ndr->depth++;
 
14625
                if (r->in.user) {
 
14626
                        ndr_print_string(ndr, "user", r->in.user);
 
14627
                }
 
14628
                ndr->depth--;
 
14629
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
14630
                ndr->depth++;
 
14631
                ndr_print_srvsvc_NetFileInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
14632
                ndr->depth--;
 
14633
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
14634
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
14635
                ndr->depth++;
 
14636
                if (r->in.resume_handle) {
 
14637
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
14638
                }
 
14639
                ndr->depth--;
 
14640
                ndr->depth--;
 
14641
        }
 
14642
        if (flags & NDR_OUT) {
 
14643
                ndr_print_struct(ndr, "out", "srvsvc_NetFileEnum");
 
14644
                ndr->depth++;
 
14645
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
14646
                ndr->depth++;
 
14647
                ndr_print_srvsvc_NetFileInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
14648
                ndr->depth--;
 
14649
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
14650
                ndr->depth++;
 
14651
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
14652
                ndr->depth--;
 
14653
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
14654
                ndr->depth++;
 
14655
                if (r->out.resume_handle) {
 
14656
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
14657
                }
 
14658
                ndr->depth--;
 
14659
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14660
                ndr->depth--;
 
14661
        }
 
14662
        ndr->depth--;
 
14663
}
 
14664
 
 
14665
static enum ndr_err_code ndr_push_srvsvc_NetFileGetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetFileGetInfo *r)
 
14666
{
 
14667
        if (flags & NDR_IN) {
 
14668
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14669
                if (r->in.server_unc) {
 
14670
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14671
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14672
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14673
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14674
                }
 
14675
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.fid));
 
14676
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
14677
        }
 
14678
        if (flags & NDR_OUT) {
 
14679
                if (r->out.info == NULL) {
 
14680
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14681
                }
 
14682
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
 
14683
                NDR_CHECK(ndr_push_srvsvc_NetFileInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
14684
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14685
        }
 
14686
        return NDR_ERR_SUCCESS;
 
14687
}
 
14688
 
 
14689
static enum ndr_err_code ndr_pull_srvsvc_NetFileGetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetFileGetInfo *r)
 
14690
{
 
14691
        uint32_t _ptr_server_unc;
 
14692
        TALLOC_CTX *_mem_save_server_unc_0;
 
14693
        TALLOC_CTX *_mem_save_info_0;
 
14694
        if (flags & NDR_IN) {
 
14695
                ZERO_STRUCT(r->out);
 
14696
 
 
14697
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14698
                if (_ptr_server_unc) {
 
14699
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14700
                } else {
 
14701
                        r->in.server_unc = NULL;
 
14702
                }
 
14703
                if (r->in.server_unc) {
 
14704
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14705
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14706
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14707
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14708
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14709
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14710
                        }
 
14711
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14712
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14713
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14714
                }
 
14715
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.fid));
 
14716
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
14717
                NDR_PULL_ALLOC(ndr, r->out.info);
 
14718
                ZERO_STRUCTP(r->out.info);
 
14719
        }
 
14720
        if (flags & NDR_OUT) {
 
14721
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14722
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
14723
                }
 
14724
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14725
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
14726
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
 
14727
                NDR_CHECK(ndr_pull_srvsvc_NetFileInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
14728
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
14729
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
14730
        }
 
14731
        return NDR_ERR_SUCCESS;
 
14732
}
 
14733
 
 
14734
_PUBLIC_ void ndr_print_srvsvc_NetFileGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetFileGetInfo *r)
 
14735
{
 
14736
        ndr_print_struct(ndr, name, "srvsvc_NetFileGetInfo");
 
14737
        ndr->depth++;
 
14738
        if (flags & NDR_SET_VALUES) {
 
14739
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
14740
        }
 
14741
        if (flags & NDR_IN) {
 
14742
                ndr_print_struct(ndr, "in", "srvsvc_NetFileGetInfo");
 
14743
                ndr->depth++;
 
14744
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
14745
                ndr->depth++;
 
14746
                if (r->in.server_unc) {
 
14747
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14748
                }
 
14749
                ndr->depth--;
 
14750
                ndr_print_uint32(ndr, "fid", r->in.fid);
 
14751
                ndr_print_uint32(ndr, "level", r->in.level);
 
14752
                ndr->depth--;
 
14753
        }
 
14754
        if (flags & NDR_OUT) {
 
14755
                ndr_print_struct(ndr, "out", "srvsvc_NetFileGetInfo");
 
14756
                ndr->depth++;
 
14757
                ndr_print_ptr(ndr, "info", r->out.info);
 
14758
                ndr->depth++;
 
14759
                ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
 
14760
                ndr_print_srvsvc_NetFileInfo(ndr, "info", r->out.info);
 
14761
                ndr->depth--;
 
14762
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14763
                ndr->depth--;
 
14764
        }
 
14765
        ndr->depth--;
 
14766
}
 
14767
 
 
14768
static enum ndr_err_code ndr_push_srvsvc_NetFileClose(struct ndr_push *ndr, int flags, const struct srvsvc_NetFileClose *r)
 
14769
{
 
14770
        if (flags & NDR_IN) {
 
14771
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14772
                if (r->in.server_unc) {
 
14773
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14774
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14775
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14776
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14777
                }
 
14778
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.fid));
 
14779
        }
 
14780
        if (flags & NDR_OUT) {
 
14781
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14782
        }
 
14783
        return NDR_ERR_SUCCESS;
 
14784
}
 
14785
 
 
14786
static enum ndr_err_code ndr_pull_srvsvc_NetFileClose(struct ndr_pull *ndr, int flags, struct srvsvc_NetFileClose *r)
 
14787
{
 
14788
        uint32_t _ptr_server_unc;
 
14789
        TALLOC_CTX *_mem_save_server_unc_0;
 
14790
        if (flags & NDR_IN) {
 
14791
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14792
                if (_ptr_server_unc) {
 
14793
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14794
                } else {
 
14795
                        r->in.server_unc = NULL;
 
14796
                }
 
14797
                if (r->in.server_unc) {
 
14798
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14799
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14800
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14801
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14802
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14803
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14804
                        }
 
14805
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14806
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14807
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14808
                }
 
14809
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.fid));
 
14810
        }
 
14811
        if (flags & NDR_OUT) {
 
14812
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
14813
        }
 
14814
        return NDR_ERR_SUCCESS;
 
14815
}
 
14816
 
 
14817
_PUBLIC_ void ndr_print_srvsvc_NetFileClose(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetFileClose *r)
 
14818
{
 
14819
        ndr_print_struct(ndr, name, "srvsvc_NetFileClose");
 
14820
        ndr->depth++;
 
14821
        if (flags & NDR_SET_VALUES) {
 
14822
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
14823
        }
 
14824
        if (flags & NDR_IN) {
 
14825
                ndr_print_struct(ndr, "in", "srvsvc_NetFileClose");
 
14826
                ndr->depth++;
 
14827
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
14828
                ndr->depth++;
 
14829
                if (r->in.server_unc) {
 
14830
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
14831
                }
 
14832
                ndr->depth--;
 
14833
                ndr_print_uint32(ndr, "fid", r->in.fid);
 
14834
                ndr->depth--;
 
14835
        }
 
14836
        if (flags & NDR_OUT) {
 
14837
                ndr_print_struct(ndr, "out", "srvsvc_NetFileClose");
 
14838
                ndr->depth++;
 
14839
                ndr_print_WERROR(ndr, "result", r->out.result);
 
14840
                ndr->depth--;
 
14841
        }
 
14842
        ndr->depth--;
 
14843
}
 
14844
 
 
14845
static enum ndr_err_code ndr_push_srvsvc_NetSessEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetSessEnum *r)
 
14846
{
 
14847
        if (flags & NDR_IN) {
 
14848
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
14849
                if (r->in.server_unc) {
 
14850
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14851
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14852
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
14853
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14854
                }
 
14855
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.client));
 
14856
                if (r->in.client) {
 
14857
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.client, CH_UTF16)));
 
14858
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14859
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.client, CH_UTF16)));
 
14860
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.client, ndr_charset_length(r->in.client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14861
                }
 
14862
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.user));
 
14863
                if (r->in.user) {
 
14864
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
14865
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
14866
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
14867
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.user, ndr_charset_length(r->in.user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
14868
                }
 
14869
                if (r->in.info_ctr == NULL) {
 
14870
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14871
                }
 
14872
                NDR_CHECK(ndr_push_srvsvc_NetSessInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
14873
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
14874
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
14875
                if (r->in.resume_handle) {
 
14876
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
14877
                }
 
14878
        }
 
14879
        if (flags & NDR_OUT) {
 
14880
                if (r->out.info_ctr == NULL) {
 
14881
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14882
                }
 
14883
                NDR_CHECK(ndr_push_srvsvc_NetSessInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
14884
                if (r->out.totalentries == NULL) {
 
14885
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
14886
                }
 
14887
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
14888
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
14889
                if (r->out.resume_handle) {
 
14890
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
14891
                }
 
14892
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
14893
        }
 
14894
        return NDR_ERR_SUCCESS;
 
14895
}
 
14896
 
 
14897
static enum ndr_err_code ndr_pull_srvsvc_NetSessEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetSessEnum *r)
 
14898
{
 
14899
        uint32_t _ptr_server_unc;
 
14900
        uint32_t _ptr_client;
 
14901
        uint32_t _ptr_user;
 
14902
        uint32_t _ptr_resume_handle;
 
14903
        TALLOC_CTX *_mem_save_server_unc_0;
 
14904
        TALLOC_CTX *_mem_save_client_0;
 
14905
        TALLOC_CTX *_mem_save_user_0;
 
14906
        TALLOC_CTX *_mem_save_info_ctr_0;
 
14907
        TALLOC_CTX *_mem_save_totalentries_0;
 
14908
        TALLOC_CTX *_mem_save_resume_handle_0;
 
14909
        if (flags & NDR_IN) {
 
14910
                ZERO_STRUCT(r->out);
 
14911
 
 
14912
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
14913
                if (_ptr_server_unc) {
 
14914
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
14915
                } else {
 
14916
                        r->in.server_unc = NULL;
 
14917
                }
 
14918
                if (r->in.server_unc) {
 
14919
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14920
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
14921
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
14922
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
14923
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
14924
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
14925
                        }
 
14926
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
14927
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
14928
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
14929
                }
 
14930
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
 
14931
                if (_ptr_client) {
 
14932
                        NDR_PULL_ALLOC(ndr, r->in.client);
 
14933
                } else {
 
14934
                        r->in.client = NULL;
 
14935
                }
 
14936
                if (r->in.client) {
 
14937
                        _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14938
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.client, 0);
 
14939
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.client));
 
14940
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.client));
 
14941
                        if (ndr_get_array_length(ndr, &r->in.client) > ndr_get_array_size(ndr, &r->in.client)) {
 
14942
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.client), ndr_get_array_length(ndr, &r->in.client));
 
14943
                        }
 
14944
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.client), sizeof(uint16_t)));
 
14945
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.client, ndr_get_array_length(ndr, &r->in.client), sizeof(uint16_t), CH_UTF16));
 
14946
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
 
14947
                }
 
14948
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
14949
                if (_ptr_user) {
 
14950
                        NDR_PULL_ALLOC(ndr, r->in.user);
 
14951
                } else {
 
14952
                        r->in.user = NULL;
 
14953
                }
 
14954
                if (r->in.user) {
 
14955
                        _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14956
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.user, 0);
 
14957
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.user));
 
14958
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.user));
 
14959
                        if (ndr_get_array_length(ndr, &r->in.user) > ndr_get_array_size(ndr, &r->in.user)) {
 
14960
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.user), ndr_get_array_length(ndr, &r->in.user));
 
14961
                        }
 
14962
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t)));
 
14963
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.user, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t), CH_UTF16));
 
14964
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
 
14965
                }
 
14966
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14967
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
14968
                }
 
14969
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14970
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
14971
                NDR_CHECK(ndr_pull_srvsvc_NetSessInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
14972
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
14973
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
14974
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
14975
                if (_ptr_resume_handle) {
 
14976
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
14977
                } else {
 
14978
                        r->in.resume_handle = NULL;
 
14979
                }
 
14980
                if (r->in.resume_handle) {
 
14981
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14982
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
14983
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
14984
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
14985
                }
 
14986
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
14987
                *r->out.info_ctr = *r->in.info_ctr;
 
14988
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
14989
                ZERO_STRUCTP(r->out.totalentries);
 
14990
        }
 
14991
        if (flags & NDR_OUT) {
 
14992
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
14993
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
14994
                }
 
14995
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
14996
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
14997
                NDR_CHECK(ndr_pull_srvsvc_NetSessInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
14998
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
14999
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15000
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
15001
                }
 
15002
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15003
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
15004
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
15005
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
15006
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
15007
                if (_ptr_resume_handle) {
 
15008
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
15009
                } else {
 
15010
                        r->out.resume_handle = NULL;
 
15011
                }
 
15012
                if (r->out.resume_handle) {
 
15013
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15014
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
15015
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
15016
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
15017
                }
 
15018
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15019
        }
 
15020
        return NDR_ERR_SUCCESS;
 
15021
}
 
15022
 
 
15023
_PUBLIC_ void ndr_print_srvsvc_NetSessEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetSessEnum *r)
 
15024
{
 
15025
        ndr_print_struct(ndr, name, "srvsvc_NetSessEnum");
 
15026
        ndr->depth++;
 
15027
        if (flags & NDR_SET_VALUES) {
 
15028
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15029
        }
 
15030
        if (flags & NDR_IN) {
 
15031
                ndr_print_struct(ndr, "in", "srvsvc_NetSessEnum");
 
15032
                ndr->depth++;
 
15033
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15034
                ndr->depth++;
 
15035
                if (r->in.server_unc) {
 
15036
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15037
                }
 
15038
                ndr->depth--;
 
15039
                ndr_print_ptr(ndr, "client", r->in.client);
 
15040
                ndr->depth++;
 
15041
                if (r->in.client) {
 
15042
                        ndr_print_string(ndr, "client", r->in.client);
 
15043
                }
 
15044
                ndr->depth--;
 
15045
                ndr_print_ptr(ndr, "user", r->in.user);
 
15046
                ndr->depth++;
 
15047
                if (r->in.user) {
 
15048
                        ndr_print_string(ndr, "user", r->in.user);
 
15049
                }
 
15050
                ndr->depth--;
 
15051
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
15052
                ndr->depth++;
 
15053
                ndr_print_srvsvc_NetSessInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
15054
                ndr->depth--;
 
15055
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
15056
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
15057
                ndr->depth++;
 
15058
                if (r->in.resume_handle) {
 
15059
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
15060
                }
 
15061
                ndr->depth--;
 
15062
                ndr->depth--;
 
15063
        }
 
15064
        if (flags & NDR_OUT) {
 
15065
                ndr_print_struct(ndr, "out", "srvsvc_NetSessEnum");
 
15066
                ndr->depth++;
 
15067
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
15068
                ndr->depth++;
 
15069
                ndr_print_srvsvc_NetSessInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
15070
                ndr->depth--;
 
15071
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
15072
                ndr->depth++;
 
15073
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
15074
                ndr->depth--;
 
15075
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
15076
                ndr->depth++;
 
15077
                if (r->out.resume_handle) {
 
15078
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
15079
                }
 
15080
                ndr->depth--;
 
15081
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15082
                ndr->depth--;
 
15083
        }
 
15084
        ndr->depth--;
 
15085
}
 
15086
 
 
15087
static enum ndr_err_code ndr_push_srvsvc_NetSessDel(struct ndr_push *ndr, int flags, const struct srvsvc_NetSessDel *r)
 
15088
{
 
15089
        if (flags & NDR_IN) {
 
15090
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15091
                if (r->in.server_unc) {
 
15092
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15093
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15094
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15095
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15096
                }
 
15097
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.client));
 
15098
                if (r->in.client) {
 
15099
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.client, CH_UTF16)));
 
15100
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15101
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.client, CH_UTF16)));
 
15102
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.client, ndr_charset_length(r->in.client, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15103
                }
 
15104
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.user));
 
15105
                if (r->in.user) {
 
15106
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
15107
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15108
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.user, CH_UTF16)));
 
15109
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.user, ndr_charset_length(r->in.user, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15110
                }
 
15111
        }
 
15112
        if (flags & NDR_OUT) {
 
15113
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15114
        }
 
15115
        return NDR_ERR_SUCCESS;
 
15116
}
 
15117
 
 
15118
static enum ndr_err_code ndr_pull_srvsvc_NetSessDel(struct ndr_pull *ndr, int flags, struct srvsvc_NetSessDel *r)
 
15119
{
 
15120
        uint32_t _ptr_server_unc;
 
15121
        uint32_t _ptr_client;
 
15122
        uint32_t _ptr_user;
 
15123
        TALLOC_CTX *_mem_save_server_unc_0;
 
15124
        TALLOC_CTX *_mem_save_client_0;
 
15125
        TALLOC_CTX *_mem_save_user_0;
 
15126
        if (flags & NDR_IN) {
 
15127
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15128
                if (_ptr_server_unc) {
 
15129
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15130
                } else {
 
15131
                        r->in.server_unc = NULL;
 
15132
                }
 
15133
                if (r->in.server_unc) {
 
15134
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15135
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15136
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15137
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15138
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15139
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15140
                        }
 
15141
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15142
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15143
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15144
                }
 
15145
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_client));
 
15146
                if (_ptr_client) {
 
15147
                        NDR_PULL_ALLOC(ndr, r->in.client);
 
15148
                } else {
 
15149
                        r->in.client = NULL;
 
15150
                }
 
15151
                if (r->in.client) {
 
15152
                        _mem_save_client_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15153
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.client, 0);
 
15154
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.client));
 
15155
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.client));
 
15156
                        if (ndr_get_array_length(ndr, &r->in.client) > ndr_get_array_size(ndr, &r->in.client)) {
 
15157
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.client), ndr_get_array_length(ndr, &r->in.client));
 
15158
                        }
 
15159
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.client), sizeof(uint16_t)));
 
15160
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.client, ndr_get_array_length(ndr, &r->in.client), sizeof(uint16_t), CH_UTF16));
 
15161
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_client_0, 0);
 
15162
                }
 
15163
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_user));
 
15164
                if (_ptr_user) {
 
15165
                        NDR_PULL_ALLOC(ndr, r->in.user);
 
15166
                } else {
 
15167
                        r->in.user = NULL;
 
15168
                }
 
15169
                if (r->in.user) {
 
15170
                        _mem_save_user_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15171
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.user, 0);
 
15172
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.user));
 
15173
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.user));
 
15174
                        if (ndr_get_array_length(ndr, &r->in.user) > ndr_get_array_size(ndr, &r->in.user)) {
 
15175
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.user), ndr_get_array_length(ndr, &r->in.user));
 
15176
                        }
 
15177
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t)));
 
15178
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.user, ndr_get_array_length(ndr, &r->in.user), sizeof(uint16_t), CH_UTF16));
 
15179
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_user_0, 0);
 
15180
                }
 
15181
        }
 
15182
        if (flags & NDR_OUT) {
 
15183
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15184
        }
 
15185
        return NDR_ERR_SUCCESS;
 
15186
}
 
15187
 
 
15188
_PUBLIC_ void ndr_print_srvsvc_NetSessDel(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetSessDel *r)
 
15189
{
 
15190
        ndr_print_struct(ndr, name, "srvsvc_NetSessDel");
 
15191
        ndr->depth++;
 
15192
        if (flags & NDR_SET_VALUES) {
 
15193
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15194
        }
 
15195
        if (flags & NDR_IN) {
 
15196
                ndr_print_struct(ndr, "in", "srvsvc_NetSessDel");
 
15197
                ndr->depth++;
 
15198
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15199
                ndr->depth++;
 
15200
                if (r->in.server_unc) {
 
15201
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15202
                }
 
15203
                ndr->depth--;
 
15204
                ndr_print_ptr(ndr, "client", r->in.client);
 
15205
                ndr->depth++;
 
15206
                if (r->in.client) {
 
15207
                        ndr_print_string(ndr, "client", r->in.client);
 
15208
                }
 
15209
                ndr->depth--;
 
15210
                ndr_print_ptr(ndr, "user", r->in.user);
 
15211
                ndr->depth++;
 
15212
                if (r->in.user) {
 
15213
                        ndr_print_string(ndr, "user", r->in.user);
 
15214
                }
 
15215
                ndr->depth--;
 
15216
                ndr->depth--;
 
15217
        }
 
15218
        if (flags & NDR_OUT) {
 
15219
                ndr_print_struct(ndr, "out", "srvsvc_NetSessDel");
 
15220
                ndr->depth++;
 
15221
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15222
                ndr->depth--;
 
15223
        }
 
15224
        ndr->depth--;
 
15225
}
 
15226
 
 
15227
static enum ndr_err_code ndr_push_srvsvc_NetShareAdd(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareAdd *r)
 
15228
{
 
15229
        if (flags & NDR_IN) {
 
15230
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15231
                if (r->in.server_unc) {
 
15232
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15233
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15234
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15235
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15236
                }
 
15237
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
15238
                if (r->in.info == NULL) {
 
15239
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
15240
                }
 
15241
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
 
15242
                NDR_CHECK(ndr_push_srvsvc_NetShareInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
15243
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_error));
 
15244
                if (r->in.parm_error) {
 
15245
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_error));
 
15246
                }
 
15247
        }
 
15248
        if (flags & NDR_OUT) {
 
15249
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_error));
 
15250
                if (r->out.parm_error) {
 
15251
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_error));
 
15252
                }
 
15253
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15254
        }
 
15255
        return NDR_ERR_SUCCESS;
 
15256
}
 
15257
 
 
15258
static enum ndr_err_code ndr_pull_srvsvc_NetShareAdd(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareAdd *r)
 
15259
{
 
15260
        uint32_t _ptr_server_unc;
 
15261
        uint32_t _ptr_parm_error;
 
15262
        TALLOC_CTX *_mem_save_server_unc_0;
 
15263
        TALLOC_CTX *_mem_save_info_0;
 
15264
        TALLOC_CTX *_mem_save_parm_error_0;
 
15265
        if (flags & NDR_IN) {
 
15266
                ZERO_STRUCT(r->out);
 
15267
 
 
15268
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15269
                if (_ptr_server_unc) {
 
15270
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15271
                } else {
 
15272
                        r->in.server_unc = NULL;
 
15273
                }
 
15274
                if (r->in.server_unc) {
 
15275
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15276
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15277
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15278
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15279
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15280
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15281
                        }
 
15282
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15283
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15284
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15285
                }
 
15286
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
15287
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15288
                        NDR_PULL_ALLOC(ndr, r->in.info);
 
15289
                }
 
15290
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15291
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
 
15292
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
 
15293
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
15294
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
15295
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
15296
                if (_ptr_parm_error) {
 
15297
                        NDR_PULL_ALLOC(ndr, r->in.parm_error);
 
15298
                } else {
 
15299
                        r->in.parm_error = NULL;
 
15300
                }
 
15301
                if (r->in.parm_error) {
 
15302
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15303
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_error, 0);
 
15304
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_error));
 
15305
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
15306
                }
 
15307
        }
 
15308
        if (flags & NDR_OUT) {
 
15309
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
15310
                if (_ptr_parm_error) {
 
15311
                        NDR_PULL_ALLOC(ndr, r->out.parm_error);
 
15312
                } else {
 
15313
                        r->out.parm_error = NULL;
 
15314
                }
 
15315
                if (r->out.parm_error) {
 
15316
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15317
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_error, 0);
 
15318
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_error));
 
15319
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
15320
                }
 
15321
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15322
        }
 
15323
        return NDR_ERR_SUCCESS;
 
15324
}
 
15325
 
 
15326
_PUBLIC_ void ndr_print_srvsvc_NetShareAdd(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareAdd *r)
 
15327
{
 
15328
        ndr_print_struct(ndr, name, "srvsvc_NetShareAdd");
 
15329
        ndr->depth++;
 
15330
        if (flags & NDR_SET_VALUES) {
 
15331
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15332
        }
 
15333
        if (flags & NDR_IN) {
 
15334
                ndr_print_struct(ndr, "in", "srvsvc_NetShareAdd");
 
15335
                ndr->depth++;
 
15336
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15337
                ndr->depth++;
 
15338
                if (r->in.server_unc) {
 
15339
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15340
                }
 
15341
                ndr->depth--;
 
15342
                ndr_print_uint32(ndr, "level", r->in.level);
 
15343
                ndr_print_ptr(ndr, "info", r->in.info);
 
15344
                ndr->depth++;
 
15345
                ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
 
15346
                ndr_print_srvsvc_NetShareInfo(ndr, "info", r->in.info);
 
15347
                ndr->depth--;
 
15348
                ndr_print_ptr(ndr, "parm_error", r->in.parm_error);
 
15349
                ndr->depth++;
 
15350
                if (r->in.parm_error) {
 
15351
                        ndr_print_uint32(ndr, "parm_error", *r->in.parm_error);
 
15352
                }
 
15353
                ndr->depth--;
 
15354
                ndr->depth--;
 
15355
        }
 
15356
        if (flags & NDR_OUT) {
 
15357
                ndr_print_struct(ndr, "out", "srvsvc_NetShareAdd");
 
15358
                ndr->depth++;
 
15359
                ndr_print_ptr(ndr, "parm_error", r->out.parm_error);
 
15360
                ndr->depth++;
 
15361
                if (r->out.parm_error) {
 
15362
                        ndr_print_uint32(ndr, "parm_error", *r->out.parm_error);
 
15363
                }
 
15364
                ndr->depth--;
 
15365
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15366
                ndr->depth--;
 
15367
        }
 
15368
        ndr->depth--;
 
15369
}
 
15370
 
 
15371
static enum ndr_err_code ndr_push_srvsvc_NetShareEnumAll(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareEnumAll *r)
 
15372
{
 
15373
        if (flags & NDR_IN) {
 
15374
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15375
                if (r->in.server_unc) {
 
15376
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15377
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15378
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15379
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15380
                }
 
15381
                if (r->in.info_ctr == NULL) {
 
15382
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
15383
                }
 
15384
                NDR_CHECK(ndr_push_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
15385
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
15386
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
15387
                if (r->in.resume_handle) {
 
15388
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
15389
                }
 
15390
        }
 
15391
        if (flags & NDR_OUT) {
 
15392
                if (r->out.info_ctr == NULL) {
 
15393
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
15394
                }
 
15395
                NDR_CHECK(ndr_push_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
15396
                if (r->out.totalentries == NULL) {
 
15397
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
15398
                }
 
15399
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
15400
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
15401
                if (r->out.resume_handle) {
 
15402
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
15403
                }
 
15404
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15405
        }
 
15406
        return NDR_ERR_SUCCESS;
 
15407
}
 
15408
 
 
15409
static enum ndr_err_code ndr_pull_srvsvc_NetShareEnumAll(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareEnumAll *r)
 
15410
{
 
15411
        uint32_t _ptr_server_unc;
 
15412
        uint32_t _ptr_resume_handle;
 
15413
        TALLOC_CTX *_mem_save_server_unc_0;
 
15414
        TALLOC_CTX *_mem_save_info_ctr_0;
 
15415
        TALLOC_CTX *_mem_save_totalentries_0;
 
15416
        TALLOC_CTX *_mem_save_resume_handle_0;
 
15417
        if (flags & NDR_IN) {
 
15418
                ZERO_STRUCT(r->out);
 
15419
 
 
15420
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15421
                if (_ptr_server_unc) {
 
15422
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15423
                } else {
 
15424
                        r->in.server_unc = NULL;
 
15425
                }
 
15426
                if (r->in.server_unc) {
 
15427
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15428
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15429
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15430
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15431
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15432
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15433
                        }
 
15434
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15435
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15436
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15437
                }
 
15438
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15439
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
15440
                }
 
15441
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15442
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
15443
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
15444
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
15445
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
15446
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
15447
                if (_ptr_resume_handle) {
 
15448
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
15449
                } else {
 
15450
                        r->in.resume_handle = NULL;
 
15451
                }
 
15452
                if (r->in.resume_handle) {
 
15453
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15454
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
15455
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
15456
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
15457
                }
 
15458
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
15459
                *r->out.info_ctr = *r->in.info_ctr;
 
15460
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
15461
                ZERO_STRUCTP(r->out.totalentries);
 
15462
        }
 
15463
        if (flags & NDR_OUT) {
 
15464
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15465
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
15466
                }
 
15467
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15468
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
15469
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
15470
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
15471
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15472
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
15473
                }
 
15474
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15475
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
15476
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
15477
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
15478
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
15479
                if (_ptr_resume_handle) {
 
15480
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
15481
                } else {
 
15482
                        r->out.resume_handle = NULL;
 
15483
                }
 
15484
                if (r->out.resume_handle) {
 
15485
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15486
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
15487
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
15488
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
15489
                }
 
15490
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15491
        }
 
15492
        return NDR_ERR_SUCCESS;
 
15493
}
 
15494
 
 
15495
_PUBLIC_ void ndr_print_srvsvc_NetShareEnumAll(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareEnumAll *r)
 
15496
{
 
15497
        ndr_print_struct(ndr, name, "srvsvc_NetShareEnumAll");
 
15498
        ndr->depth++;
 
15499
        if (flags & NDR_SET_VALUES) {
 
15500
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15501
        }
 
15502
        if (flags & NDR_IN) {
 
15503
                ndr_print_struct(ndr, "in", "srvsvc_NetShareEnumAll");
 
15504
                ndr->depth++;
 
15505
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15506
                ndr->depth++;
 
15507
                if (r->in.server_unc) {
 
15508
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15509
                }
 
15510
                ndr->depth--;
 
15511
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
15512
                ndr->depth++;
 
15513
                ndr_print_srvsvc_NetShareInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
15514
                ndr->depth--;
 
15515
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
15516
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
15517
                ndr->depth++;
 
15518
                if (r->in.resume_handle) {
 
15519
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
15520
                }
 
15521
                ndr->depth--;
 
15522
                ndr->depth--;
 
15523
        }
 
15524
        if (flags & NDR_OUT) {
 
15525
                ndr_print_struct(ndr, "out", "srvsvc_NetShareEnumAll");
 
15526
                ndr->depth++;
 
15527
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
15528
                ndr->depth++;
 
15529
                ndr_print_srvsvc_NetShareInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
15530
                ndr->depth--;
 
15531
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
15532
                ndr->depth++;
 
15533
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
15534
                ndr->depth--;
 
15535
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
15536
                ndr->depth++;
 
15537
                if (r->out.resume_handle) {
 
15538
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
15539
                }
 
15540
                ndr->depth--;
 
15541
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15542
                ndr->depth--;
 
15543
        }
 
15544
        ndr->depth--;
 
15545
}
 
15546
 
 
15547
static enum ndr_err_code ndr_push_srvsvc_NetShareGetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareGetInfo *r)
 
15548
{
 
15549
        if (flags & NDR_IN) {
 
15550
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15551
                if (r->in.server_unc) {
 
15552
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15553
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15554
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15555
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15556
                }
 
15557
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15558
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15559
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15560
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share_name, ndr_charset_length(r->in.share_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15561
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
15562
        }
 
15563
        if (flags & NDR_OUT) {
 
15564
                if (r->out.info == NULL) {
 
15565
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
15566
                }
 
15567
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
 
15568
                NDR_CHECK(ndr_push_srvsvc_NetShareInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
15569
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15570
        }
 
15571
        return NDR_ERR_SUCCESS;
 
15572
}
 
15573
 
 
15574
static enum ndr_err_code ndr_pull_srvsvc_NetShareGetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareGetInfo *r)
 
15575
{
 
15576
        uint32_t _ptr_server_unc;
 
15577
        TALLOC_CTX *_mem_save_server_unc_0;
 
15578
        TALLOC_CTX *_mem_save_info_0;
 
15579
        if (flags & NDR_IN) {
 
15580
                ZERO_STRUCT(r->out);
 
15581
 
 
15582
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15583
                if (_ptr_server_unc) {
 
15584
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15585
                } else {
 
15586
                        r->in.server_unc = NULL;
 
15587
                }
 
15588
                if (r->in.server_unc) {
 
15589
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15590
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15591
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15592
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15593
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15594
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15595
                        }
 
15596
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15597
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15598
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15599
                }
 
15600
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share_name));
 
15601
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share_name));
 
15602
                if (ndr_get_array_length(ndr, &r->in.share_name) > ndr_get_array_size(ndr, &r->in.share_name)) {
 
15603
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share_name), ndr_get_array_length(ndr, &r->in.share_name));
 
15604
                }
 
15605
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t)));
 
15606
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share_name, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t), CH_UTF16));
 
15607
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
15608
                NDR_PULL_ALLOC(ndr, r->out.info);
 
15609
                ZERO_STRUCTP(r->out.info);
 
15610
        }
 
15611
        if (flags & NDR_OUT) {
 
15612
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15613
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
15614
                }
 
15615
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15616
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
15617
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
 
15618
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
15619
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
15620
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15621
        }
 
15622
        return NDR_ERR_SUCCESS;
 
15623
}
 
15624
 
 
15625
_PUBLIC_ void ndr_print_srvsvc_NetShareGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareGetInfo *r)
 
15626
{
 
15627
        ndr_print_struct(ndr, name, "srvsvc_NetShareGetInfo");
 
15628
        ndr->depth++;
 
15629
        if (flags & NDR_SET_VALUES) {
 
15630
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15631
        }
 
15632
        if (flags & NDR_IN) {
 
15633
                ndr_print_struct(ndr, "in", "srvsvc_NetShareGetInfo");
 
15634
                ndr->depth++;
 
15635
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15636
                ndr->depth++;
 
15637
                if (r->in.server_unc) {
 
15638
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15639
                }
 
15640
                ndr->depth--;
 
15641
                ndr_print_string(ndr, "share_name", r->in.share_name);
 
15642
                ndr_print_uint32(ndr, "level", r->in.level);
 
15643
                ndr->depth--;
 
15644
        }
 
15645
        if (flags & NDR_OUT) {
 
15646
                ndr_print_struct(ndr, "out", "srvsvc_NetShareGetInfo");
 
15647
                ndr->depth++;
 
15648
                ndr_print_ptr(ndr, "info", r->out.info);
 
15649
                ndr->depth++;
 
15650
                ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
 
15651
                ndr_print_srvsvc_NetShareInfo(ndr, "info", r->out.info);
 
15652
                ndr->depth--;
 
15653
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15654
                ndr->depth--;
 
15655
        }
 
15656
        ndr->depth--;
 
15657
}
 
15658
 
 
15659
static enum ndr_err_code ndr_push_srvsvc_NetShareSetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareSetInfo *r)
 
15660
{
 
15661
        if (flags & NDR_IN) {
 
15662
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15663
                if (r->in.server_unc) {
 
15664
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15665
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15666
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15667
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15668
                }
 
15669
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15670
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15671
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15672
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share_name, ndr_charset_length(r->in.share_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15673
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
15674
                if (r->in.info == NULL) {
 
15675
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
15676
                }
 
15677
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
 
15678
                NDR_CHECK(ndr_push_srvsvc_NetShareInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
15679
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_error));
 
15680
                if (r->in.parm_error) {
 
15681
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_error));
 
15682
                }
 
15683
        }
 
15684
        if (flags & NDR_OUT) {
 
15685
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_error));
 
15686
                if (r->out.parm_error) {
 
15687
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_error));
 
15688
                }
 
15689
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15690
        }
 
15691
        return NDR_ERR_SUCCESS;
 
15692
}
 
15693
 
 
15694
static enum ndr_err_code ndr_pull_srvsvc_NetShareSetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareSetInfo *r)
 
15695
{
 
15696
        uint32_t _ptr_server_unc;
 
15697
        uint32_t _ptr_parm_error;
 
15698
        TALLOC_CTX *_mem_save_server_unc_0;
 
15699
        TALLOC_CTX *_mem_save_info_0;
 
15700
        TALLOC_CTX *_mem_save_parm_error_0;
 
15701
        if (flags & NDR_IN) {
 
15702
                ZERO_STRUCT(r->out);
 
15703
 
 
15704
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15705
                if (_ptr_server_unc) {
 
15706
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15707
                } else {
 
15708
                        r->in.server_unc = NULL;
 
15709
                }
 
15710
                if (r->in.server_unc) {
 
15711
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15712
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15713
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15714
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15715
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15716
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15717
                        }
 
15718
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15719
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15720
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15721
                }
 
15722
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share_name));
 
15723
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share_name));
 
15724
                if (ndr_get_array_length(ndr, &r->in.share_name) > ndr_get_array_size(ndr, &r->in.share_name)) {
 
15725
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share_name), ndr_get_array_length(ndr, &r->in.share_name));
 
15726
                }
 
15727
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t)));
 
15728
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share_name, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t), CH_UTF16));
 
15729
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
15730
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
15731
                        NDR_PULL_ALLOC(ndr, r->in.info);
 
15732
                }
 
15733
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15734
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
 
15735
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
 
15736
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
15737
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
15738
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
15739
                if (_ptr_parm_error) {
 
15740
                        NDR_PULL_ALLOC(ndr, r->in.parm_error);
 
15741
                } else {
 
15742
                        r->in.parm_error = NULL;
 
15743
                }
 
15744
                if (r->in.parm_error) {
 
15745
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15746
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_error, 0);
 
15747
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_error));
 
15748
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
15749
                }
 
15750
        }
 
15751
        if (flags & NDR_OUT) {
 
15752
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
15753
                if (_ptr_parm_error) {
 
15754
                        NDR_PULL_ALLOC(ndr, r->out.parm_error);
 
15755
                } else {
 
15756
                        r->out.parm_error = NULL;
 
15757
                }
 
15758
                if (r->out.parm_error) {
 
15759
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15760
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_error, 0);
 
15761
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_error));
 
15762
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
15763
                }
 
15764
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15765
        }
 
15766
        return NDR_ERR_SUCCESS;
 
15767
}
 
15768
 
 
15769
_PUBLIC_ void ndr_print_srvsvc_NetShareSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareSetInfo *r)
 
15770
{
 
15771
        ndr_print_struct(ndr, name, "srvsvc_NetShareSetInfo");
 
15772
        ndr->depth++;
 
15773
        if (flags & NDR_SET_VALUES) {
 
15774
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15775
        }
 
15776
        if (flags & NDR_IN) {
 
15777
                ndr_print_struct(ndr, "in", "srvsvc_NetShareSetInfo");
 
15778
                ndr->depth++;
 
15779
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15780
                ndr->depth++;
 
15781
                if (r->in.server_unc) {
 
15782
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15783
                }
 
15784
                ndr->depth--;
 
15785
                ndr_print_string(ndr, "share_name", r->in.share_name);
 
15786
                ndr_print_uint32(ndr, "level", r->in.level);
 
15787
                ndr_print_ptr(ndr, "info", r->in.info);
 
15788
                ndr->depth++;
 
15789
                ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
 
15790
                ndr_print_srvsvc_NetShareInfo(ndr, "info", r->in.info);
 
15791
                ndr->depth--;
 
15792
                ndr_print_ptr(ndr, "parm_error", r->in.parm_error);
 
15793
                ndr->depth++;
 
15794
                if (r->in.parm_error) {
 
15795
                        ndr_print_uint32(ndr, "parm_error", *r->in.parm_error);
 
15796
                }
 
15797
                ndr->depth--;
 
15798
                ndr->depth--;
 
15799
        }
 
15800
        if (flags & NDR_OUT) {
 
15801
                ndr_print_struct(ndr, "out", "srvsvc_NetShareSetInfo");
 
15802
                ndr->depth++;
 
15803
                ndr_print_ptr(ndr, "parm_error", r->out.parm_error);
 
15804
                ndr->depth++;
 
15805
                if (r->out.parm_error) {
 
15806
                        ndr_print_uint32(ndr, "parm_error", *r->out.parm_error);
 
15807
                }
 
15808
                ndr->depth--;
 
15809
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15810
                ndr->depth--;
 
15811
        }
 
15812
        ndr->depth--;
 
15813
}
 
15814
 
 
15815
static enum ndr_err_code ndr_push_srvsvc_NetShareDel(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareDel *r)
 
15816
{
 
15817
        if (flags & NDR_IN) {
 
15818
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15819
                if (r->in.server_unc) {
 
15820
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15821
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15822
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15823
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15824
                }
 
15825
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15826
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15827
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15828
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share_name, ndr_charset_length(r->in.share_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15829
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.reserved));
 
15830
        }
 
15831
        if (flags & NDR_OUT) {
 
15832
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15833
        }
 
15834
        return NDR_ERR_SUCCESS;
 
15835
}
 
15836
 
 
15837
static enum ndr_err_code ndr_pull_srvsvc_NetShareDel(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareDel *r)
 
15838
{
 
15839
        uint32_t _ptr_server_unc;
 
15840
        TALLOC_CTX *_mem_save_server_unc_0;
 
15841
        if (flags & NDR_IN) {
 
15842
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15843
                if (_ptr_server_unc) {
 
15844
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15845
                } else {
 
15846
                        r->in.server_unc = NULL;
 
15847
                }
 
15848
                if (r->in.server_unc) {
 
15849
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15850
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15851
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15852
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15853
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15854
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15855
                        }
 
15856
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15857
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15858
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15859
                }
 
15860
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share_name));
 
15861
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share_name));
 
15862
                if (ndr_get_array_length(ndr, &r->in.share_name) > ndr_get_array_size(ndr, &r->in.share_name)) {
 
15863
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share_name), ndr_get_array_length(ndr, &r->in.share_name));
 
15864
                }
 
15865
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t)));
 
15866
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share_name, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t), CH_UTF16));
 
15867
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.reserved));
 
15868
        }
 
15869
        if (flags & NDR_OUT) {
 
15870
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15871
        }
 
15872
        return NDR_ERR_SUCCESS;
 
15873
}
 
15874
 
 
15875
_PUBLIC_ void ndr_print_srvsvc_NetShareDel(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareDel *r)
 
15876
{
 
15877
        ndr_print_struct(ndr, name, "srvsvc_NetShareDel");
 
15878
        ndr->depth++;
 
15879
        if (flags & NDR_SET_VALUES) {
 
15880
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15881
        }
 
15882
        if (flags & NDR_IN) {
 
15883
                ndr_print_struct(ndr, "in", "srvsvc_NetShareDel");
 
15884
                ndr->depth++;
 
15885
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15886
                ndr->depth++;
 
15887
                if (r->in.server_unc) {
 
15888
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15889
                }
 
15890
                ndr->depth--;
 
15891
                ndr_print_string(ndr, "share_name", r->in.share_name);
 
15892
                ndr_print_uint32(ndr, "reserved", r->in.reserved);
 
15893
                ndr->depth--;
 
15894
        }
 
15895
        if (flags & NDR_OUT) {
 
15896
                ndr_print_struct(ndr, "out", "srvsvc_NetShareDel");
 
15897
                ndr->depth++;
 
15898
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15899
                ndr->depth--;
 
15900
        }
 
15901
        ndr->depth--;
 
15902
}
 
15903
 
 
15904
static enum ndr_err_code ndr_push_srvsvc_NetShareDelSticky(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareDelSticky *r)
 
15905
{
 
15906
        if (flags & NDR_IN) {
 
15907
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15908
                if (r->in.server_unc) {
 
15909
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15910
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15911
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15912
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15913
                }
 
15914
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15915
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
15916
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share_name, CH_UTF16)));
 
15917
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share_name, ndr_charset_length(r->in.share_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
15918
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.reserved));
 
15919
        }
 
15920
        if (flags & NDR_OUT) {
 
15921
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
15922
        }
 
15923
        return NDR_ERR_SUCCESS;
 
15924
}
 
15925
 
 
15926
static enum ndr_err_code ndr_pull_srvsvc_NetShareDelSticky(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareDelSticky *r)
 
15927
{
 
15928
        uint32_t _ptr_server_unc;
 
15929
        TALLOC_CTX *_mem_save_server_unc_0;
 
15930
        if (flags & NDR_IN) {
 
15931
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
15932
                if (_ptr_server_unc) {
 
15933
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
15934
                } else {
 
15935
                        r->in.server_unc = NULL;
 
15936
                }
 
15937
                if (r->in.server_unc) {
 
15938
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
15939
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
15940
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
15941
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
15942
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
15943
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
15944
                        }
 
15945
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
15946
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
15947
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
15948
                }
 
15949
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share_name));
 
15950
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share_name));
 
15951
                if (ndr_get_array_length(ndr, &r->in.share_name) > ndr_get_array_size(ndr, &r->in.share_name)) {
 
15952
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share_name), ndr_get_array_length(ndr, &r->in.share_name));
 
15953
                }
 
15954
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t)));
 
15955
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share_name, ndr_get_array_length(ndr, &r->in.share_name), sizeof(uint16_t), CH_UTF16));
 
15956
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.reserved));
 
15957
        }
 
15958
        if (flags & NDR_OUT) {
 
15959
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
15960
        }
 
15961
        return NDR_ERR_SUCCESS;
 
15962
}
 
15963
 
 
15964
_PUBLIC_ void ndr_print_srvsvc_NetShareDelSticky(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareDelSticky *r)
 
15965
{
 
15966
        ndr_print_struct(ndr, name, "srvsvc_NetShareDelSticky");
 
15967
        ndr->depth++;
 
15968
        if (flags & NDR_SET_VALUES) {
 
15969
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
15970
        }
 
15971
        if (flags & NDR_IN) {
 
15972
                ndr_print_struct(ndr, "in", "srvsvc_NetShareDelSticky");
 
15973
                ndr->depth++;
 
15974
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
15975
                ndr->depth++;
 
15976
                if (r->in.server_unc) {
 
15977
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
15978
                }
 
15979
                ndr->depth--;
 
15980
                ndr_print_string(ndr, "share_name", r->in.share_name);
 
15981
                ndr_print_uint32(ndr, "reserved", r->in.reserved);
 
15982
                ndr->depth--;
 
15983
        }
 
15984
        if (flags & NDR_OUT) {
 
15985
                ndr_print_struct(ndr, "out", "srvsvc_NetShareDelSticky");
 
15986
                ndr->depth++;
 
15987
                ndr_print_WERROR(ndr, "result", r->out.result);
 
15988
                ndr->depth--;
 
15989
        }
 
15990
        ndr->depth--;
 
15991
}
 
15992
 
 
15993
static enum ndr_err_code ndr_push_srvsvc_NetShareCheck(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareCheck *r)
 
15994
{
 
15995
        if (flags & NDR_IN) {
 
15996
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
15997
                if (r->in.server_unc) {
 
15998
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
15999
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16000
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16001
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16002
                }
 
16003
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.device_name, CH_UTF16)));
 
16004
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16005
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.device_name, CH_UTF16)));
 
16006
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.device_name, ndr_charset_length(r->in.device_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16007
        }
 
16008
        if (flags & NDR_OUT) {
 
16009
                if (r->out.type == NULL) {
 
16010
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16011
                }
 
16012
                NDR_CHECK(ndr_push_srvsvc_ShareType(ndr, NDR_SCALARS, *r->out.type));
 
16013
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16014
        }
 
16015
        return NDR_ERR_SUCCESS;
 
16016
}
 
16017
 
 
16018
static enum ndr_err_code ndr_pull_srvsvc_NetShareCheck(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareCheck *r)
 
16019
{
 
16020
        uint32_t _ptr_server_unc;
 
16021
        TALLOC_CTX *_mem_save_server_unc_0;
 
16022
        TALLOC_CTX *_mem_save_type_0;
 
16023
        if (flags & NDR_IN) {
 
16024
                ZERO_STRUCT(r->out);
 
16025
 
 
16026
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16027
                if (_ptr_server_unc) {
 
16028
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16029
                } else {
 
16030
                        r->in.server_unc = NULL;
 
16031
                }
 
16032
                if (r->in.server_unc) {
 
16033
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16034
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16035
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16036
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16037
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16038
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16039
                        }
 
16040
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16041
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16042
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16043
                }
 
16044
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.device_name));
 
16045
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.device_name));
 
16046
                if (ndr_get_array_length(ndr, &r->in.device_name) > ndr_get_array_size(ndr, &r->in.device_name)) {
 
16047
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.device_name), ndr_get_array_length(ndr, &r->in.device_name));
 
16048
                }
 
16049
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.device_name), sizeof(uint16_t)));
 
16050
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.device_name, ndr_get_array_length(ndr, &r->in.device_name), sizeof(uint16_t), CH_UTF16));
 
16051
                NDR_PULL_ALLOC(ndr, r->out.type);
 
16052
                ZERO_STRUCTP(r->out.type);
 
16053
        }
 
16054
        if (flags & NDR_OUT) {
 
16055
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16056
                        NDR_PULL_ALLOC(ndr, r->out.type);
 
16057
                }
 
16058
                _mem_save_type_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16059
                NDR_PULL_SET_MEM_CTX(ndr, r->out.type, LIBNDR_FLAG_REF_ALLOC);
 
16060
                NDR_CHECK(ndr_pull_srvsvc_ShareType(ndr, NDR_SCALARS, r->out.type));
 
16061
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_type_0, LIBNDR_FLAG_REF_ALLOC);
 
16062
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16063
        }
 
16064
        return NDR_ERR_SUCCESS;
 
16065
}
 
16066
 
 
16067
_PUBLIC_ void ndr_print_srvsvc_NetShareCheck(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareCheck *r)
 
16068
{
 
16069
        ndr_print_struct(ndr, name, "srvsvc_NetShareCheck");
 
16070
        ndr->depth++;
 
16071
        if (flags & NDR_SET_VALUES) {
 
16072
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16073
        }
 
16074
        if (flags & NDR_IN) {
 
16075
                ndr_print_struct(ndr, "in", "srvsvc_NetShareCheck");
 
16076
                ndr->depth++;
 
16077
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16078
                ndr->depth++;
 
16079
                if (r->in.server_unc) {
 
16080
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16081
                }
 
16082
                ndr->depth--;
 
16083
                ndr_print_string(ndr, "device_name", r->in.device_name);
 
16084
                ndr->depth--;
 
16085
        }
 
16086
        if (flags & NDR_OUT) {
 
16087
                ndr_print_struct(ndr, "out", "srvsvc_NetShareCheck");
 
16088
                ndr->depth++;
 
16089
                ndr_print_ptr(ndr, "type", r->out.type);
 
16090
                ndr->depth++;
 
16091
                ndr_print_srvsvc_ShareType(ndr, "type", *r->out.type);
 
16092
                ndr->depth--;
 
16093
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16094
                ndr->depth--;
 
16095
        }
 
16096
        ndr->depth--;
 
16097
}
 
16098
 
 
16099
static enum ndr_err_code ndr_push_srvsvc_NetSrvGetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetSrvGetInfo *r)
 
16100
{
 
16101
        if (flags & NDR_IN) {
 
16102
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16103
                if (r->in.server_unc) {
 
16104
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16105
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16106
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16107
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16108
                }
 
16109
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
16110
        }
 
16111
        if (flags & NDR_OUT) {
 
16112
                if (r->out.info == NULL) {
 
16113
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16114
                }
 
16115
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
 
16116
                NDR_CHECK(ndr_push_srvsvc_NetSrvInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
16117
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16118
        }
 
16119
        return NDR_ERR_SUCCESS;
 
16120
}
 
16121
 
 
16122
static enum ndr_err_code ndr_pull_srvsvc_NetSrvGetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetSrvGetInfo *r)
 
16123
{
 
16124
        uint32_t _ptr_server_unc;
 
16125
        TALLOC_CTX *_mem_save_server_unc_0;
 
16126
        TALLOC_CTX *_mem_save_info_0;
 
16127
        if (flags & NDR_IN) {
 
16128
                ZERO_STRUCT(r->out);
 
16129
 
 
16130
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16131
                if (_ptr_server_unc) {
 
16132
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16133
                } else {
 
16134
                        r->in.server_unc = NULL;
 
16135
                }
 
16136
                if (r->in.server_unc) {
 
16137
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16138
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16139
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16140
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16141
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16142
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16143
                        }
 
16144
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16145
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16146
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16147
                }
 
16148
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
16149
                NDR_PULL_ALLOC(ndr, r->out.info);
 
16150
                ZERO_STRUCTP(r->out.info);
 
16151
        }
 
16152
        if (flags & NDR_OUT) {
 
16153
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16154
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
16155
                }
 
16156
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16157
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
16158
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
 
16159
                NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
16160
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
16161
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16162
        }
 
16163
        return NDR_ERR_SUCCESS;
 
16164
}
 
16165
 
 
16166
_PUBLIC_ void ndr_print_srvsvc_NetSrvGetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetSrvGetInfo *r)
 
16167
{
 
16168
        ndr_print_struct(ndr, name, "srvsvc_NetSrvGetInfo");
 
16169
        ndr->depth++;
 
16170
        if (flags & NDR_SET_VALUES) {
 
16171
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16172
        }
 
16173
        if (flags & NDR_IN) {
 
16174
                ndr_print_struct(ndr, "in", "srvsvc_NetSrvGetInfo");
 
16175
                ndr->depth++;
 
16176
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16177
                ndr->depth++;
 
16178
                if (r->in.server_unc) {
 
16179
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16180
                }
 
16181
                ndr->depth--;
 
16182
                ndr_print_uint32(ndr, "level", r->in.level);
 
16183
                ndr->depth--;
 
16184
        }
 
16185
        if (flags & NDR_OUT) {
 
16186
                ndr_print_struct(ndr, "out", "srvsvc_NetSrvGetInfo");
 
16187
                ndr->depth++;
 
16188
                ndr_print_ptr(ndr, "info", r->out.info);
 
16189
                ndr->depth++;
 
16190
                ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
 
16191
                ndr_print_srvsvc_NetSrvInfo(ndr, "info", r->out.info);
 
16192
                ndr->depth--;
 
16193
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16194
                ndr->depth--;
 
16195
        }
 
16196
        ndr->depth--;
 
16197
}
 
16198
 
 
16199
static enum ndr_err_code ndr_push_srvsvc_NetSrvSetInfo(struct ndr_push *ndr, int flags, const struct srvsvc_NetSrvSetInfo *r)
 
16200
{
 
16201
        if (flags & NDR_IN) {
 
16202
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16203
                if (r->in.server_unc) {
 
16204
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16205
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16206
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16207
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16208
                }
 
16209
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
16210
                if (r->in.info == NULL) {
 
16211
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16212
                }
 
16213
                NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
 
16214
                NDR_CHECK(ndr_push_srvsvc_NetSrvInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
16215
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.parm_error));
 
16216
                if (r->in.parm_error) {
 
16217
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.parm_error));
 
16218
                }
 
16219
        }
 
16220
        if (flags & NDR_OUT) {
 
16221
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.parm_error));
 
16222
                if (r->out.parm_error) {
 
16223
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.parm_error));
 
16224
                }
 
16225
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16226
        }
 
16227
        return NDR_ERR_SUCCESS;
 
16228
}
 
16229
 
 
16230
static enum ndr_err_code ndr_pull_srvsvc_NetSrvSetInfo(struct ndr_pull *ndr, int flags, struct srvsvc_NetSrvSetInfo *r)
 
16231
{
 
16232
        uint32_t _ptr_server_unc;
 
16233
        uint32_t _ptr_parm_error;
 
16234
        TALLOC_CTX *_mem_save_server_unc_0;
 
16235
        TALLOC_CTX *_mem_save_info_0;
 
16236
        TALLOC_CTX *_mem_save_parm_error_0;
 
16237
        if (flags & NDR_IN) {
 
16238
                ZERO_STRUCT(r->out);
 
16239
 
 
16240
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16241
                if (_ptr_server_unc) {
 
16242
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16243
                } else {
 
16244
                        r->in.server_unc = NULL;
 
16245
                }
 
16246
                if (r->in.server_unc) {
 
16247
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16248
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16249
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16250
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16251
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16252
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16253
                        }
 
16254
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16255
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16256
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16257
                }
 
16258
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
16259
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16260
                        NDR_PULL_ALLOC(ndr, r->in.info);
 
16261
                }
 
16262
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16263
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
 
16264
                NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
 
16265
                NDR_CHECK(ndr_pull_srvsvc_NetSrvInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
16266
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
16267
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
16268
                if (_ptr_parm_error) {
 
16269
                        NDR_PULL_ALLOC(ndr, r->in.parm_error);
 
16270
                } else {
 
16271
                        r->in.parm_error = NULL;
 
16272
                }
 
16273
                if (r->in.parm_error) {
 
16274
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16275
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.parm_error, 0);
 
16276
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.parm_error));
 
16277
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
16278
                }
 
16279
        }
 
16280
        if (flags & NDR_OUT) {
 
16281
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_parm_error));
 
16282
                if (_ptr_parm_error) {
 
16283
                        NDR_PULL_ALLOC(ndr, r->out.parm_error);
 
16284
                } else {
 
16285
                        r->out.parm_error = NULL;
 
16286
                }
 
16287
                if (r->out.parm_error) {
 
16288
                        _mem_save_parm_error_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16289
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.parm_error, 0);
 
16290
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.parm_error));
 
16291
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_parm_error_0, 0);
 
16292
                }
 
16293
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16294
        }
 
16295
        return NDR_ERR_SUCCESS;
 
16296
}
 
16297
 
 
16298
_PUBLIC_ void ndr_print_srvsvc_NetSrvSetInfo(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetSrvSetInfo *r)
 
16299
{
 
16300
        ndr_print_struct(ndr, name, "srvsvc_NetSrvSetInfo");
 
16301
        ndr->depth++;
 
16302
        if (flags & NDR_SET_VALUES) {
 
16303
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16304
        }
 
16305
        if (flags & NDR_IN) {
 
16306
                ndr_print_struct(ndr, "in", "srvsvc_NetSrvSetInfo");
 
16307
                ndr->depth++;
 
16308
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16309
                ndr->depth++;
 
16310
                if (r->in.server_unc) {
 
16311
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16312
                }
 
16313
                ndr->depth--;
 
16314
                ndr_print_uint32(ndr, "level", r->in.level);
 
16315
                ndr_print_ptr(ndr, "info", r->in.info);
 
16316
                ndr->depth++;
 
16317
                ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
 
16318
                ndr_print_srvsvc_NetSrvInfo(ndr, "info", r->in.info);
 
16319
                ndr->depth--;
 
16320
                ndr_print_ptr(ndr, "parm_error", r->in.parm_error);
 
16321
                ndr->depth++;
 
16322
                if (r->in.parm_error) {
 
16323
                        ndr_print_uint32(ndr, "parm_error", *r->in.parm_error);
 
16324
                }
 
16325
                ndr->depth--;
 
16326
                ndr->depth--;
 
16327
        }
 
16328
        if (flags & NDR_OUT) {
 
16329
                ndr_print_struct(ndr, "out", "srvsvc_NetSrvSetInfo");
 
16330
                ndr->depth++;
 
16331
                ndr_print_ptr(ndr, "parm_error", r->out.parm_error);
 
16332
                ndr->depth++;
 
16333
                if (r->out.parm_error) {
 
16334
                        ndr_print_uint32(ndr, "parm_error", *r->out.parm_error);
 
16335
                }
 
16336
                ndr->depth--;
 
16337
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16338
                ndr->depth--;
 
16339
        }
 
16340
        ndr->depth--;
 
16341
}
 
16342
 
 
16343
static enum ndr_err_code ndr_push_srvsvc_NetDiskEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetDiskEnum *r)
 
16344
{
 
16345
        if (flags & NDR_IN) {
 
16346
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16347
                if (r->in.server_unc) {
 
16348
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16349
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16350
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16351
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16352
                }
 
16353
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
16354
                if (r->in.info == NULL) {
 
16355
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16356
                }
 
16357
                NDR_CHECK(ndr_push_srvsvc_NetDiskInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
16358
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.maxlen));
 
16359
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
16360
                if (r->in.resume_handle) {
 
16361
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
16362
                }
 
16363
        }
 
16364
        if (flags & NDR_OUT) {
 
16365
                if (r->out.info == NULL) {
 
16366
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16367
                }
 
16368
                NDR_CHECK(ndr_push_srvsvc_NetDiskInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
16369
                if (r->out.totalentries == NULL) {
 
16370
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16371
                }
 
16372
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
16373
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
16374
                if (r->out.resume_handle) {
 
16375
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
16376
                }
 
16377
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16378
        }
 
16379
        return NDR_ERR_SUCCESS;
 
16380
}
 
16381
 
 
16382
static enum ndr_err_code ndr_pull_srvsvc_NetDiskEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetDiskEnum *r)
 
16383
{
 
16384
        uint32_t _ptr_server_unc;
 
16385
        uint32_t _ptr_resume_handle;
 
16386
        TALLOC_CTX *_mem_save_server_unc_0;
 
16387
        TALLOC_CTX *_mem_save_info_0;
 
16388
        TALLOC_CTX *_mem_save_totalentries_0;
 
16389
        TALLOC_CTX *_mem_save_resume_handle_0;
 
16390
        if (flags & NDR_IN) {
 
16391
                ZERO_STRUCT(r->out);
 
16392
 
 
16393
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16394
                if (_ptr_server_unc) {
 
16395
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16396
                } else {
 
16397
                        r->in.server_unc = NULL;
 
16398
                }
 
16399
                if (r->in.server_unc) {
 
16400
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16401
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16402
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16403
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16404
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16405
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16406
                        }
 
16407
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16408
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16409
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16410
                }
 
16411
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
16412
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16413
                        NDR_PULL_ALLOC(ndr, r->in.info);
 
16414
                }
 
16415
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16416
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
 
16417
                NDR_CHECK(ndr_pull_srvsvc_NetDiskInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
 
16418
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
16419
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.maxlen));
 
16420
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
16421
                if (_ptr_resume_handle) {
 
16422
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
16423
                } else {
 
16424
                        r->in.resume_handle = NULL;
 
16425
                }
 
16426
                if (r->in.resume_handle) {
 
16427
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16428
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
16429
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
16430
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
16431
                }
 
16432
                NDR_PULL_ALLOC(ndr, r->out.info);
 
16433
                *r->out.info = *r->in.info;
 
16434
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
16435
                ZERO_STRUCTP(r->out.totalentries);
 
16436
        }
 
16437
        if (flags & NDR_OUT) {
 
16438
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16439
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
16440
                }
 
16441
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16442
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
16443
                NDR_CHECK(ndr_pull_srvsvc_NetDiskInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
 
16444
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
16445
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16446
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
16447
                }
 
16448
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16449
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
16450
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
16451
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
16452
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
16453
                if (_ptr_resume_handle) {
 
16454
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
16455
                } else {
 
16456
                        r->out.resume_handle = NULL;
 
16457
                }
 
16458
                if (r->out.resume_handle) {
 
16459
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16460
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
16461
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
16462
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
16463
                }
 
16464
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16465
        }
 
16466
        return NDR_ERR_SUCCESS;
 
16467
}
 
16468
 
 
16469
_PUBLIC_ void ndr_print_srvsvc_NetDiskEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetDiskEnum *r)
 
16470
{
 
16471
        ndr_print_struct(ndr, name, "srvsvc_NetDiskEnum");
 
16472
        ndr->depth++;
 
16473
        if (flags & NDR_SET_VALUES) {
 
16474
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16475
        }
 
16476
        if (flags & NDR_IN) {
 
16477
                ndr_print_struct(ndr, "in", "srvsvc_NetDiskEnum");
 
16478
                ndr->depth++;
 
16479
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16480
                ndr->depth++;
 
16481
                if (r->in.server_unc) {
 
16482
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16483
                }
 
16484
                ndr->depth--;
 
16485
                ndr_print_uint32(ndr, "level", r->in.level);
 
16486
                ndr_print_ptr(ndr, "info", r->in.info);
 
16487
                ndr->depth++;
 
16488
                ndr_print_srvsvc_NetDiskInfo(ndr, "info", r->in.info);
 
16489
                ndr->depth--;
 
16490
                ndr_print_uint32(ndr, "maxlen", r->in.maxlen);
 
16491
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
16492
                ndr->depth++;
 
16493
                if (r->in.resume_handle) {
 
16494
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
16495
                }
 
16496
                ndr->depth--;
 
16497
                ndr->depth--;
 
16498
        }
 
16499
        if (flags & NDR_OUT) {
 
16500
                ndr_print_struct(ndr, "out", "srvsvc_NetDiskEnum");
 
16501
                ndr->depth++;
 
16502
                ndr_print_ptr(ndr, "info", r->out.info);
 
16503
                ndr->depth++;
 
16504
                ndr_print_srvsvc_NetDiskInfo(ndr, "info", r->out.info);
 
16505
                ndr->depth--;
 
16506
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
16507
                ndr->depth++;
 
16508
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
16509
                ndr->depth--;
 
16510
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
16511
                ndr->depth++;
 
16512
                if (r->out.resume_handle) {
 
16513
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
16514
                }
 
16515
                ndr->depth--;
 
16516
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16517
                ndr->depth--;
 
16518
        }
 
16519
        ndr->depth--;
 
16520
}
 
16521
 
 
16522
static enum ndr_err_code ndr_push_srvsvc_NetServerStatisticsGet(struct ndr_push *ndr, int flags, const struct srvsvc_NetServerStatisticsGet *r)
 
16523
{
 
16524
        if (flags & NDR_IN) {
 
16525
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16526
                if (r->in.server_unc) {
 
16527
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16528
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16529
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16530
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16531
                }
 
16532
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.service));
 
16533
                if (r->in.service) {
 
16534
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.service, CH_UTF16)));
 
16535
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16536
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.service, CH_UTF16)));
 
16537
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.service, ndr_charset_length(r->in.service, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16538
                }
 
16539
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
16540
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.options));
 
16541
        }
 
16542
        if (flags & NDR_OUT) {
 
16543
                if (r->out.stats == NULL) {
 
16544
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16545
                }
 
16546
                NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.stats));
 
16547
                if (*r->out.stats) {
 
16548
                        NDR_CHECK(ndr_push_srvsvc_Statistics(ndr, NDR_SCALARS, *r->out.stats));
 
16549
                }
 
16550
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16551
        }
 
16552
        return NDR_ERR_SUCCESS;
 
16553
}
 
16554
 
 
16555
static enum ndr_err_code ndr_pull_srvsvc_NetServerStatisticsGet(struct ndr_pull *ndr, int flags, struct srvsvc_NetServerStatisticsGet *r)
 
16556
{
 
16557
        uint32_t _ptr_server_unc;
 
16558
        uint32_t _ptr_service;
 
16559
        uint32_t _ptr_stats;
 
16560
        TALLOC_CTX *_mem_save_server_unc_0;
 
16561
        TALLOC_CTX *_mem_save_service_0;
 
16562
        TALLOC_CTX *_mem_save_stats_0;
 
16563
        TALLOC_CTX *_mem_save_stats_1;
 
16564
        if (flags & NDR_IN) {
 
16565
                ZERO_STRUCT(r->out);
 
16566
 
 
16567
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16568
                if (_ptr_server_unc) {
 
16569
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16570
                } else {
 
16571
                        r->in.server_unc = NULL;
 
16572
                }
 
16573
                if (r->in.server_unc) {
 
16574
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16575
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16576
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16577
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16578
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16579
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16580
                        }
 
16581
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16582
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16583
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16584
                }
 
16585
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_service));
 
16586
                if (_ptr_service) {
 
16587
                        NDR_PULL_ALLOC(ndr, r->in.service);
 
16588
                } else {
 
16589
                        r->in.service = NULL;
 
16590
                }
 
16591
                if (r->in.service) {
 
16592
                        _mem_save_service_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16593
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.service, 0);
 
16594
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.service));
 
16595
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.service));
 
16596
                        if (ndr_get_array_length(ndr, &r->in.service) > ndr_get_array_size(ndr, &r->in.service)) {
 
16597
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.service), ndr_get_array_length(ndr, &r->in.service));
 
16598
                        }
 
16599
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.service), sizeof(uint16_t)));
 
16600
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.service, ndr_get_array_length(ndr, &r->in.service), sizeof(uint16_t), CH_UTF16));
 
16601
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_service_0, 0);
 
16602
                }
 
16603
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
16604
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.options));
 
16605
                NDR_PULL_ALLOC(ndr, r->out.stats);
 
16606
                ZERO_STRUCTP(r->out.stats);
 
16607
        }
 
16608
        if (flags & NDR_OUT) {
 
16609
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16610
                        NDR_PULL_ALLOC(ndr, r->out.stats);
 
16611
                }
 
16612
                _mem_save_stats_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16613
                NDR_PULL_SET_MEM_CTX(ndr, r->out.stats, LIBNDR_FLAG_REF_ALLOC);
 
16614
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_stats));
 
16615
                if (_ptr_stats) {
 
16616
                        NDR_PULL_ALLOC(ndr, *r->out.stats);
 
16617
                } else {
 
16618
                        *r->out.stats = NULL;
 
16619
                }
 
16620
                if (*r->out.stats) {
 
16621
                        _mem_save_stats_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
16622
                        NDR_PULL_SET_MEM_CTX(ndr, *r->out.stats, 0);
 
16623
                        NDR_CHECK(ndr_pull_srvsvc_Statistics(ndr, NDR_SCALARS, *r->out.stats));
 
16624
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stats_1, 0);
 
16625
                }
 
16626
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stats_0, LIBNDR_FLAG_REF_ALLOC);
 
16627
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16628
        }
 
16629
        return NDR_ERR_SUCCESS;
 
16630
}
 
16631
 
 
16632
_PUBLIC_ void ndr_print_srvsvc_NetServerStatisticsGet(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetServerStatisticsGet *r)
 
16633
{
 
16634
        ndr_print_struct(ndr, name, "srvsvc_NetServerStatisticsGet");
 
16635
        ndr->depth++;
 
16636
        if (flags & NDR_SET_VALUES) {
 
16637
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16638
        }
 
16639
        if (flags & NDR_IN) {
 
16640
                ndr_print_struct(ndr, "in", "srvsvc_NetServerStatisticsGet");
 
16641
                ndr->depth++;
 
16642
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16643
                ndr->depth++;
 
16644
                if (r->in.server_unc) {
 
16645
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16646
                }
 
16647
                ndr->depth--;
 
16648
                ndr_print_ptr(ndr, "service", r->in.service);
 
16649
                ndr->depth++;
 
16650
                if (r->in.service) {
 
16651
                        ndr_print_string(ndr, "service", r->in.service);
 
16652
                }
 
16653
                ndr->depth--;
 
16654
                ndr_print_uint32(ndr, "level", r->in.level);
 
16655
                ndr_print_uint32(ndr, "options", r->in.options);
 
16656
                ndr->depth--;
 
16657
        }
 
16658
        if (flags & NDR_OUT) {
 
16659
                ndr_print_struct(ndr, "out", "srvsvc_NetServerStatisticsGet");
 
16660
                ndr->depth++;
 
16661
                ndr_print_ptr(ndr, "stats", r->out.stats);
 
16662
                ndr->depth++;
 
16663
                ndr_print_ptr(ndr, "stats", *r->out.stats);
 
16664
                ndr->depth++;
 
16665
                if (*r->out.stats) {
 
16666
                        ndr_print_srvsvc_Statistics(ndr, "stats", *r->out.stats);
 
16667
                }
 
16668
                ndr->depth--;
 
16669
                ndr->depth--;
 
16670
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16671
                ndr->depth--;
 
16672
        }
 
16673
        ndr->depth--;
 
16674
}
 
16675
 
 
16676
static enum ndr_err_code ndr_push_srvsvc_NetTransportAdd(struct ndr_push *ndr, int flags, const struct srvsvc_NetTransportAdd *r)
 
16677
{
 
16678
        if (flags & NDR_IN) {
 
16679
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16680
                if (r->in.server_unc) {
 
16681
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16682
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16683
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16684
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16685
                }
 
16686
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
16687
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->in.info, r->in.level));
 
16688
                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.info));
 
16689
        }
 
16690
        if (flags & NDR_OUT) {
 
16691
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16692
        }
 
16693
        return NDR_ERR_SUCCESS;
 
16694
}
 
16695
 
 
16696
static enum ndr_err_code ndr_pull_srvsvc_NetTransportAdd(struct ndr_pull *ndr, int flags, struct srvsvc_NetTransportAdd *r)
 
16697
{
 
16698
        uint32_t _ptr_server_unc;
 
16699
        TALLOC_CTX *_mem_save_server_unc_0;
 
16700
        if (flags & NDR_IN) {
 
16701
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16702
                if (_ptr_server_unc) {
 
16703
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16704
                } else {
 
16705
                        r->in.server_unc = NULL;
 
16706
                }
 
16707
                if (r->in.server_unc) {
 
16708
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16709
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16710
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16711
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16712
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16713
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16714
                        }
 
16715
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16716
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16717
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16718
                }
 
16719
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
16720
                NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->in.info, r->in.level));
 
16721
                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.info));
 
16722
        }
 
16723
        if (flags & NDR_OUT) {
 
16724
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16725
        }
 
16726
        return NDR_ERR_SUCCESS;
 
16727
}
 
16728
 
 
16729
_PUBLIC_ void ndr_print_srvsvc_NetTransportAdd(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetTransportAdd *r)
 
16730
{
 
16731
        ndr_print_struct(ndr, name, "srvsvc_NetTransportAdd");
 
16732
        ndr->depth++;
 
16733
        if (flags & NDR_SET_VALUES) {
 
16734
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16735
        }
 
16736
        if (flags & NDR_IN) {
 
16737
                ndr_print_struct(ndr, "in", "srvsvc_NetTransportAdd");
 
16738
                ndr->depth++;
 
16739
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16740
                ndr->depth++;
 
16741
                if (r->in.server_unc) {
 
16742
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16743
                }
 
16744
                ndr->depth--;
 
16745
                ndr_print_uint32(ndr, "level", r->in.level);
 
16746
                ndr_print_set_switch_value(ndr, &r->in.info, r->in.level);
 
16747
                ndr_print_srvsvc_NetTransportInfo(ndr, "info", &r->in.info);
 
16748
                ndr->depth--;
 
16749
        }
 
16750
        if (flags & NDR_OUT) {
 
16751
                ndr_print_struct(ndr, "out", "srvsvc_NetTransportAdd");
 
16752
                ndr->depth++;
 
16753
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16754
                ndr->depth--;
 
16755
        }
 
16756
        ndr->depth--;
 
16757
}
 
16758
 
 
16759
static enum ndr_err_code ndr_push_srvsvc_NetTransportEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetTransportEnum *r)
 
16760
{
 
16761
        if (flags & NDR_IN) {
 
16762
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16763
                if (r->in.server_unc) {
 
16764
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16765
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16766
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16767
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16768
                }
 
16769
                if (r->in.transports == NULL) {
 
16770
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16771
                }
 
16772
                NDR_CHECK(ndr_push_srvsvc_NetTransportInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.transports));
 
16773
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
16774
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
16775
                if (r->in.resume_handle) {
 
16776
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
16777
                }
 
16778
        }
 
16779
        if (flags & NDR_OUT) {
 
16780
                if (r->out.transports == NULL) {
 
16781
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16782
                }
 
16783
                NDR_CHECK(ndr_push_srvsvc_NetTransportInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.transports));
 
16784
                if (r->out.totalentries == NULL) {
 
16785
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16786
                }
 
16787
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
16788
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
16789
                if (r->out.resume_handle) {
 
16790
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
16791
                }
 
16792
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16793
        }
 
16794
        return NDR_ERR_SUCCESS;
 
16795
}
 
16796
 
 
16797
static enum ndr_err_code ndr_pull_srvsvc_NetTransportEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetTransportEnum *r)
 
16798
{
 
16799
        uint32_t _ptr_server_unc;
 
16800
        uint32_t _ptr_resume_handle;
 
16801
        TALLOC_CTX *_mem_save_server_unc_0;
 
16802
        TALLOC_CTX *_mem_save_transports_0;
 
16803
        TALLOC_CTX *_mem_save_totalentries_0;
 
16804
        TALLOC_CTX *_mem_save_resume_handle_0;
 
16805
        if (flags & NDR_IN) {
 
16806
                ZERO_STRUCT(r->out);
 
16807
 
 
16808
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16809
                if (_ptr_server_unc) {
 
16810
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16811
                } else {
 
16812
                        r->in.server_unc = NULL;
 
16813
                }
 
16814
                if (r->in.server_unc) {
 
16815
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16816
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16817
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16818
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16819
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16820
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16821
                        }
 
16822
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16823
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16824
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16825
                }
 
16826
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16827
                        NDR_PULL_ALLOC(ndr, r->in.transports);
 
16828
                }
 
16829
                _mem_save_transports_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16830
                NDR_PULL_SET_MEM_CTX(ndr, r->in.transports, LIBNDR_FLAG_REF_ALLOC);
 
16831
                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.transports));
 
16832
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transports_0, LIBNDR_FLAG_REF_ALLOC);
 
16833
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
16834
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
16835
                if (_ptr_resume_handle) {
 
16836
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
16837
                } else {
 
16838
                        r->in.resume_handle = NULL;
 
16839
                }
 
16840
                if (r->in.resume_handle) {
 
16841
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16842
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
16843
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
16844
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
16845
                }
 
16846
                NDR_PULL_ALLOC(ndr, r->out.transports);
 
16847
                *r->out.transports = *r->in.transports;
 
16848
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
16849
                ZERO_STRUCTP(r->out.totalentries);
 
16850
        }
 
16851
        if (flags & NDR_OUT) {
 
16852
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16853
                        NDR_PULL_ALLOC(ndr, r->out.transports);
 
16854
                }
 
16855
                _mem_save_transports_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16856
                NDR_PULL_SET_MEM_CTX(ndr, r->out.transports, LIBNDR_FLAG_REF_ALLOC);
 
16857
                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.transports));
 
16858
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transports_0, LIBNDR_FLAG_REF_ALLOC);
 
16859
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16860
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
16861
                }
 
16862
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16863
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
16864
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
16865
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
16866
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
16867
                if (_ptr_resume_handle) {
 
16868
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
16869
                } else {
 
16870
                        r->out.resume_handle = NULL;
 
16871
                }
 
16872
                if (r->out.resume_handle) {
 
16873
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16874
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
16875
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
16876
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
16877
                }
 
16878
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16879
        }
 
16880
        return NDR_ERR_SUCCESS;
 
16881
}
 
16882
 
 
16883
_PUBLIC_ void ndr_print_srvsvc_NetTransportEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetTransportEnum *r)
 
16884
{
 
16885
        ndr_print_struct(ndr, name, "srvsvc_NetTransportEnum");
 
16886
        ndr->depth++;
 
16887
        if (flags & NDR_SET_VALUES) {
 
16888
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
16889
        }
 
16890
        if (flags & NDR_IN) {
 
16891
                ndr_print_struct(ndr, "in", "srvsvc_NetTransportEnum");
 
16892
                ndr->depth++;
 
16893
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
16894
                ndr->depth++;
 
16895
                if (r->in.server_unc) {
 
16896
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
16897
                }
 
16898
                ndr->depth--;
 
16899
                ndr_print_ptr(ndr, "transports", r->in.transports);
 
16900
                ndr->depth++;
 
16901
                ndr_print_srvsvc_NetTransportInfoCtr(ndr, "transports", r->in.transports);
 
16902
                ndr->depth--;
 
16903
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
16904
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
16905
                ndr->depth++;
 
16906
                if (r->in.resume_handle) {
 
16907
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
16908
                }
 
16909
                ndr->depth--;
 
16910
                ndr->depth--;
 
16911
        }
 
16912
        if (flags & NDR_OUT) {
 
16913
                ndr_print_struct(ndr, "out", "srvsvc_NetTransportEnum");
 
16914
                ndr->depth++;
 
16915
                ndr_print_ptr(ndr, "transports", r->out.transports);
 
16916
                ndr->depth++;
 
16917
                ndr_print_srvsvc_NetTransportInfoCtr(ndr, "transports", r->out.transports);
 
16918
                ndr->depth--;
 
16919
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
16920
                ndr->depth++;
 
16921
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
16922
                ndr->depth--;
 
16923
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
16924
                ndr->depth++;
 
16925
                if (r->out.resume_handle) {
 
16926
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
16927
                }
 
16928
                ndr->depth--;
 
16929
                ndr_print_WERROR(ndr, "result", r->out.result);
 
16930
                ndr->depth--;
 
16931
        }
 
16932
        ndr->depth--;
 
16933
}
 
16934
 
 
16935
static enum ndr_err_code ndr_push_srvsvc_NetTransportDel(struct ndr_push *ndr, int flags, const struct srvsvc_NetTransportDel *r)
 
16936
{
 
16937
        if (flags & NDR_IN) {
 
16938
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
16939
                if (r->in.server_unc) {
 
16940
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16941
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
16942
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
16943
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
16944
                }
 
16945
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
16946
                if (r->in.info0 == NULL) {
 
16947
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
16948
                }
 
16949
                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info0));
 
16950
        }
 
16951
        if (flags & NDR_OUT) {
 
16952
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
16953
        }
 
16954
        return NDR_ERR_SUCCESS;
 
16955
}
 
16956
 
 
16957
static enum ndr_err_code ndr_pull_srvsvc_NetTransportDel(struct ndr_pull *ndr, int flags, struct srvsvc_NetTransportDel *r)
 
16958
{
 
16959
        uint32_t _ptr_server_unc;
 
16960
        TALLOC_CTX *_mem_save_server_unc_0;
 
16961
        TALLOC_CTX *_mem_save_info0_0;
 
16962
        if (flags & NDR_IN) {
 
16963
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
16964
                if (_ptr_server_unc) {
 
16965
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
16966
                } else {
 
16967
                        r->in.server_unc = NULL;
 
16968
                }
 
16969
                if (r->in.server_unc) {
 
16970
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16971
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
16972
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
16973
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
16974
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
16975
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
16976
                        }
 
16977
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
16978
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
16979
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
16980
                }
 
16981
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
16982
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
16983
                        NDR_PULL_ALLOC(ndr, r->in.info0);
 
16984
                }
 
16985
                _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
16986
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info0, LIBNDR_FLAG_REF_ALLOC);
 
16987
                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo0(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info0));
 
16988
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, LIBNDR_FLAG_REF_ALLOC);
 
16989
        }
 
16990
        if (flags & NDR_OUT) {
 
16991
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
16992
        }
 
16993
        return NDR_ERR_SUCCESS;
 
16994
}
 
16995
 
 
16996
_PUBLIC_ void ndr_print_srvsvc_NetTransportDel(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetTransportDel *r)
 
16997
{
 
16998
        ndr_print_struct(ndr, name, "srvsvc_NetTransportDel");
 
16999
        ndr->depth++;
 
17000
        if (flags & NDR_SET_VALUES) {
 
17001
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17002
        }
 
17003
        if (flags & NDR_IN) {
 
17004
                ndr_print_struct(ndr, "in", "srvsvc_NetTransportDel");
 
17005
                ndr->depth++;
 
17006
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17007
                ndr->depth++;
 
17008
                if (r->in.server_unc) {
 
17009
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17010
                }
 
17011
                ndr->depth--;
 
17012
                ndr_print_uint32(ndr, "level", r->in.level);
 
17013
                ndr_print_ptr(ndr, "info0", r->in.info0);
 
17014
                ndr->depth++;
 
17015
                ndr_print_srvsvc_NetTransportInfo0(ndr, "info0", r->in.info0);
 
17016
                ndr->depth--;
 
17017
                ndr->depth--;
 
17018
        }
 
17019
        if (flags & NDR_OUT) {
 
17020
                ndr_print_struct(ndr, "out", "srvsvc_NetTransportDel");
 
17021
                ndr->depth++;
 
17022
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17023
                ndr->depth--;
 
17024
        }
 
17025
        ndr->depth--;
 
17026
}
 
17027
 
 
17028
static enum ndr_err_code ndr_push_srvsvc_NetRemoteTOD(struct ndr_push *ndr, int flags, const struct srvsvc_NetRemoteTOD *r)
 
17029
{
 
17030
        if (flags & NDR_IN) {
 
17031
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17032
                if (r->in.server_unc) {
 
17033
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17034
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17035
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17036
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17037
                }
 
17038
        }
 
17039
        if (flags & NDR_OUT) {
 
17040
                if (r->out.info == NULL) {
 
17041
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17042
                }
 
17043
                NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
 
17044
                if (*r->out.info) {
 
17045
                        NDR_CHECK(ndr_push_srvsvc_NetRemoteTODInfo(ndr, NDR_SCALARS, *r->out.info));
 
17046
                }
 
17047
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17048
        }
 
17049
        return NDR_ERR_SUCCESS;
 
17050
}
 
17051
 
 
17052
static enum ndr_err_code ndr_pull_srvsvc_NetRemoteTOD(struct ndr_pull *ndr, int flags, struct srvsvc_NetRemoteTOD *r)
 
17053
{
 
17054
        uint32_t _ptr_server_unc;
 
17055
        uint32_t _ptr_info;
 
17056
        TALLOC_CTX *_mem_save_server_unc_0;
 
17057
        TALLOC_CTX *_mem_save_info_0;
 
17058
        TALLOC_CTX *_mem_save_info_1;
 
17059
        if (flags & NDR_IN) {
 
17060
                ZERO_STRUCT(r->out);
 
17061
 
 
17062
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17063
                if (_ptr_server_unc) {
 
17064
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17065
                } else {
 
17066
                        r->in.server_unc = NULL;
 
17067
                }
 
17068
                if (r->in.server_unc) {
 
17069
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17070
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17071
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17072
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17073
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17074
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17075
                        }
 
17076
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17077
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17078
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17079
                }
 
17080
                NDR_PULL_ALLOC(ndr, r->out.info);
 
17081
                ZERO_STRUCTP(r->out.info);
 
17082
        }
 
17083
        if (flags & NDR_OUT) {
 
17084
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17085
                        NDR_PULL_ALLOC(ndr, r->out.info);
 
17086
                }
 
17087
                _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17088
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
 
17089
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
 
17090
                if (_ptr_info) {
 
17091
                        NDR_PULL_ALLOC(ndr, *r->out.info);
 
17092
                } else {
 
17093
                        *r->out.info = NULL;
 
17094
                }
 
17095
                if (*r->out.info) {
 
17096
                        _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
17097
                        NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
 
17098
                        NDR_CHECK(ndr_pull_srvsvc_NetRemoteTODInfo(ndr, NDR_SCALARS, *r->out.info));
 
17099
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
 
17100
                }
 
17101
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
 
17102
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17103
        }
 
17104
        return NDR_ERR_SUCCESS;
 
17105
}
 
17106
 
 
17107
_PUBLIC_ void ndr_print_srvsvc_NetRemoteTOD(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetRemoteTOD *r)
 
17108
{
 
17109
        ndr_print_struct(ndr, name, "srvsvc_NetRemoteTOD");
 
17110
        ndr->depth++;
 
17111
        if (flags & NDR_SET_VALUES) {
 
17112
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17113
        }
 
17114
        if (flags & NDR_IN) {
 
17115
                ndr_print_struct(ndr, "in", "srvsvc_NetRemoteTOD");
 
17116
                ndr->depth++;
 
17117
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17118
                ndr->depth++;
 
17119
                if (r->in.server_unc) {
 
17120
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17121
                }
 
17122
                ndr->depth--;
 
17123
                ndr->depth--;
 
17124
        }
 
17125
        if (flags & NDR_OUT) {
 
17126
                ndr_print_struct(ndr, "out", "srvsvc_NetRemoteTOD");
 
17127
                ndr->depth++;
 
17128
                ndr_print_ptr(ndr, "info", r->out.info);
 
17129
                ndr->depth++;
 
17130
                ndr_print_ptr(ndr, "info", *r->out.info);
 
17131
                ndr->depth++;
 
17132
                if (*r->out.info) {
 
17133
                        ndr_print_srvsvc_NetRemoteTODInfo(ndr, "info", *r->out.info);
 
17134
                }
 
17135
                ndr->depth--;
 
17136
                ndr->depth--;
 
17137
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17138
                ndr->depth--;
 
17139
        }
 
17140
        ndr->depth--;
 
17141
}
 
17142
 
 
17143
static enum ndr_err_code ndr_push_srvsvc_NetSetServiceBits(struct ndr_push *ndr, int flags, const struct srvsvc_NetSetServiceBits *r)
 
17144
{
 
17145
        if (flags & NDR_IN) {
 
17146
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17147
                if (r->in.server_unc) {
 
17148
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17149
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17150
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17151
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17152
                }
 
17153
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.transport));
 
17154
                if (r->in.transport) {
 
17155
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport, CH_UTF16)));
 
17156
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17157
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport, CH_UTF16)));
 
17158
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.transport, ndr_charset_length(r->in.transport, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17159
                }
 
17160
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.servicebits));
 
17161
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.updateimmediately));
 
17162
        }
 
17163
        if (flags & NDR_OUT) {
 
17164
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17165
        }
 
17166
        return NDR_ERR_SUCCESS;
 
17167
}
 
17168
 
 
17169
static enum ndr_err_code ndr_pull_srvsvc_NetSetServiceBits(struct ndr_pull *ndr, int flags, struct srvsvc_NetSetServiceBits *r)
 
17170
{
 
17171
        uint32_t _ptr_server_unc;
 
17172
        uint32_t _ptr_transport;
 
17173
        TALLOC_CTX *_mem_save_server_unc_0;
 
17174
        TALLOC_CTX *_mem_save_transport_0;
 
17175
        if (flags & NDR_IN) {
 
17176
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17177
                if (_ptr_server_unc) {
 
17178
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17179
                } else {
 
17180
                        r->in.server_unc = NULL;
 
17181
                }
 
17182
                if (r->in.server_unc) {
 
17183
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17184
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17185
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17186
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17187
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17188
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17189
                        }
 
17190
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17191
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17192
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17193
                }
 
17194
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_transport));
 
17195
                if (_ptr_transport) {
 
17196
                        NDR_PULL_ALLOC(ndr, r->in.transport);
 
17197
                } else {
 
17198
                        r->in.transport = NULL;
 
17199
                }
 
17200
                if (r->in.transport) {
 
17201
                        _mem_save_transport_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17202
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.transport, 0);
 
17203
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.transport));
 
17204
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.transport));
 
17205
                        if (ndr_get_array_length(ndr, &r->in.transport) > ndr_get_array_size(ndr, &r->in.transport)) {
 
17206
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.transport), ndr_get_array_length(ndr, &r->in.transport));
 
17207
                        }
 
17208
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.transport), sizeof(uint16_t)));
 
17209
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.transport, ndr_get_array_length(ndr, &r->in.transport), sizeof(uint16_t), CH_UTF16));
 
17210
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transport_0, 0);
 
17211
                }
 
17212
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.servicebits));
 
17213
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.updateimmediately));
 
17214
        }
 
17215
        if (flags & NDR_OUT) {
 
17216
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17217
        }
 
17218
        return NDR_ERR_SUCCESS;
 
17219
}
 
17220
 
 
17221
_PUBLIC_ void ndr_print_srvsvc_NetSetServiceBits(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetSetServiceBits *r)
 
17222
{
 
17223
        ndr_print_struct(ndr, name, "srvsvc_NetSetServiceBits");
 
17224
        ndr->depth++;
 
17225
        if (flags & NDR_SET_VALUES) {
 
17226
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17227
        }
 
17228
        if (flags & NDR_IN) {
 
17229
                ndr_print_struct(ndr, "in", "srvsvc_NetSetServiceBits");
 
17230
                ndr->depth++;
 
17231
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17232
                ndr->depth++;
 
17233
                if (r->in.server_unc) {
 
17234
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17235
                }
 
17236
                ndr->depth--;
 
17237
                ndr_print_ptr(ndr, "transport", r->in.transport);
 
17238
                ndr->depth++;
 
17239
                if (r->in.transport) {
 
17240
                        ndr_print_string(ndr, "transport", r->in.transport);
 
17241
                }
 
17242
                ndr->depth--;
 
17243
                ndr_print_uint32(ndr, "servicebits", r->in.servicebits);
 
17244
                ndr_print_uint32(ndr, "updateimmediately", r->in.updateimmediately);
 
17245
                ndr->depth--;
 
17246
        }
 
17247
        if (flags & NDR_OUT) {
 
17248
                ndr_print_struct(ndr, "out", "srvsvc_NetSetServiceBits");
 
17249
                ndr->depth++;
 
17250
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17251
                ndr->depth--;
 
17252
        }
 
17253
        ndr->depth--;
 
17254
}
 
17255
 
 
17256
static enum ndr_err_code ndr_push_srvsvc_NetPathType(struct ndr_push *ndr, int flags, const struct srvsvc_NetPathType *r)
 
17257
{
 
17258
        if (flags & NDR_IN) {
 
17259
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17260
                if (r->in.server_unc) {
 
17261
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17262
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17263
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17264
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17265
                }
 
17266
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
17267
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17268
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
17269
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path, ndr_charset_length(r->in.path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17270
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.pathflags));
 
17271
        }
 
17272
        if (flags & NDR_OUT) {
 
17273
                if (r->out.pathtype == NULL) {
 
17274
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17275
                }
 
17276
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.pathtype));
 
17277
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17278
        }
 
17279
        return NDR_ERR_SUCCESS;
 
17280
}
 
17281
 
 
17282
static enum ndr_err_code ndr_pull_srvsvc_NetPathType(struct ndr_pull *ndr, int flags, struct srvsvc_NetPathType *r)
 
17283
{
 
17284
        uint32_t _ptr_server_unc;
 
17285
        TALLOC_CTX *_mem_save_server_unc_0;
 
17286
        TALLOC_CTX *_mem_save_pathtype_0;
 
17287
        if (flags & NDR_IN) {
 
17288
                ZERO_STRUCT(r->out);
 
17289
 
 
17290
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17291
                if (_ptr_server_unc) {
 
17292
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17293
                } else {
 
17294
                        r->in.server_unc = NULL;
 
17295
                }
 
17296
                if (r->in.server_unc) {
 
17297
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17298
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17299
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17300
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17301
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17302
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17303
                        }
 
17304
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17305
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17306
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17307
                }
 
17308
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path));
 
17309
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path));
 
17310
                if (ndr_get_array_length(ndr, &r->in.path) > ndr_get_array_size(ndr, &r->in.path)) {
 
17311
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.path), ndr_get_array_length(ndr, &r->in.path));
 
17312
                }
 
17313
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t)));
 
17314
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t), CH_UTF16));
 
17315
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.pathflags));
 
17316
                NDR_PULL_ALLOC(ndr, r->out.pathtype);
 
17317
                ZERO_STRUCTP(r->out.pathtype);
 
17318
        }
 
17319
        if (flags & NDR_OUT) {
 
17320
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17321
                        NDR_PULL_ALLOC(ndr, r->out.pathtype);
 
17322
                }
 
17323
                _mem_save_pathtype_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17324
                NDR_PULL_SET_MEM_CTX(ndr, r->out.pathtype, LIBNDR_FLAG_REF_ALLOC);
 
17325
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.pathtype));
 
17326
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pathtype_0, LIBNDR_FLAG_REF_ALLOC);
 
17327
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17328
        }
 
17329
        return NDR_ERR_SUCCESS;
 
17330
}
 
17331
 
 
17332
_PUBLIC_ void ndr_print_srvsvc_NetPathType(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetPathType *r)
 
17333
{
 
17334
        ndr_print_struct(ndr, name, "srvsvc_NetPathType");
 
17335
        ndr->depth++;
 
17336
        if (flags & NDR_SET_VALUES) {
 
17337
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17338
        }
 
17339
        if (flags & NDR_IN) {
 
17340
                ndr_print_struct(ndr, "in", "srvsvc_NetPathType");
 
17341
                ndr->depth++;
 
17342
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17343
                ndr->depth++;
 
17344
                if (r->in.server_unc) {
 
17345
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17346
                }
 
17347
                ndr->depth--;
 
17348
                ndr_print_string(ndr, "path", r->in.path);
 
17349
                ndr_print_uint32(ndr, "pathflags", r->in.pathflags);
 
17350
                ndr->depth--;
 
17351
        }
 
17352
        if (flags & NDR_OUT) {
 
17353
                ndr_print_struct(ndr, "out", "srvsvc_NetPathType");
 
17354
                ndr->depth++;
 
17355
                ndr_print_ptr(ndr, "pathtype", r->out.pathtype);
 
17356
                ndr->depth++;
 
17357
                ndr_print_uint32(ndr, "pathtype", *r->out.pathtype);
 
17358
                ndr->depth--;
 
17359
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17360
                ndr->depth--;
 
17361
        }
 
17362
        ndr->depth--;
 
17363
}
 
17364
 
 
17365
static enum ndr_err_code ndr_push_srvsvc_NetPathCanonicalize(struct ndr_push *ndr, int flags, const struct srvsvc_NetPathCanonicalize *r)
 
17366
{
 
17367
        if (flags & NDR_IN) {
 
17368
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17369
                if (r->in.server_unc) {
 
17370
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17371
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17372
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17373
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17374
                }
 
17375
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
17376
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17377
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
 
17378
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path, ndr_charset_length(r->in.path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17379
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.maxbuf));
 
17380
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.prefix, CH_UTF16)));
 
17381
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17382
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.prefix, CH_UTF16)));
 
17383
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.prefix, ndr_charset_length(r->in.prefix, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17384
                if (r->in.pathtype == NULL) {
 
17385
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17386
                }
 
17387
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.pathtype));
 
17388
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.pathflags));
 
17389
        }
 
17390
        if (flags & NDR_OUT) {
 
17391
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.maxbuf));
 
17392
                NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->out.can_path, r->in.maxbuf));
 
17393
                if (r->out.pathtype == NULL) {
 
17394
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17395
                }
 
17396
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.pathtype));
 
17397
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17398
        }
 
17399
        return NDR_ERR_SUCCESS;
 
17400
}
 
17401
 
 
17402
static enum ndr_err_code ndr_pull_srvsvc_NetPathCanonicalize(struct ndr_pull *ndr, int flags, struct srvsvc_NetPathCanonicalize *r)
 
17403
{
 
17404
        uint32_t _ptr_server_unc;
 
17405
        TALLOC_CTX *_mem_save_server_unc_0;
 
17406
        TALLOC_CTX *_mem_save_pathtype_0;
 
17407
        if (flags & NDR_IN) {
 
17408
                ZERO_STRUCT(r->out);
 
17409
 
 
17410
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17411
                if (_ptr_server_unc) {
 
17412
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17413
                } else {
 
17414
                        r->in.server_unc = NULL;
 
17415
                }
 
17416
                if (r->in.server_unc) {
 
17417
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17418
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17419
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17420
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17421
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17422
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17423
                        }
 
17424
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17425
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17426
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17427
                }
 
17428
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path));
 
17429
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path));
 
17430
                if (ndr_get_array_length(ndr, &r->in.path) > ndr_get_array_size(ndr, &r->in.path)) {
 
17431
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.path), ndr_get_array_length(ndr, &r->in.path));
 
17432
                }
 
17433
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t)));
 
17434
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t), CH_UTF16));
 
17435
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.maxbuf));
 
17436
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.prefix));
 
17437
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.prefix));
 
17438
                if (ndr_get_array_length(ndr, &r->in.prefix) > ndr_get_array_size(ndr, &r->in.prefix)) {
 
17439
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.prefix), ndr_get_array_length(ndr, &r->in.prefix));
 
17440
                }
 
17441
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.prefix), sizeof(uint16_t)));
 
17442
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.prefix, ndr_get_array_length(ndr, &r->in.prefix), sizeof(uint16_t), CH_UTF16));
 
17443
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17444
                        NDR_PULL_ALLOC(ndr, r->in.pathtype);
 
17445
                }
 
17446
                _mem_save_pathtype_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17447
                NDR_PULL_SET_MEM_CTX(ndr, r->in.pathtype, LIBNDR_FLAG_REF_ALLOC);
 
17448
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.pathtype));
 
17449
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pathtype_0, LIBNDR_FLAG_REF_ALLOC);
 
17450
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.pathflags));
 
17451
                NDR_PULL_ALLOC(ndr, r->out.pathtype);
 
17452
                *r->out.pathtype = *r->in.pathtype;
 
17453
        }
 
17454
        if (flags & NDR_OUT) {
 
17455
                NDR_CHECK(ndr_pull_array_size(ndr, &r->out.can_path));
 
17456
                NDR_PULL_ALLOC_N(ndr, r->out.can_path, ndr_get_array_size(ndr, &r->out.can_path));
 
17457
                NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->out.can_path, ndr_get_array_size(ndr, &r->out.can_path)));
 
17458
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17459
                        NDR_PULL_ALLOC(ndr, r->out.pathtype);
 
17460
                }
 
17461
                _mem_save_pathtype_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17462
                NDR_PULL_SET_MEM_CTX(ndr, r->out.pathtype, LIBNDR_FLAG_REF_ALLOC);
 
17463
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.pathtype));
 
17464
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_pathtype_0, LIBNDR_FLAG_REF_ALLOC);
 
17465
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17466
                if (r->out.can_path) {
 
17467
                        NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->out.can_path, r->in.maxbuf));
 
17468
                }
 
17469
        }
 
17470
        return NDR_ERR_SUCCESS;
 
17471
}
 
17472
 
 
17473
_PUBLIC_ void ndr_print_srvsvc_NetPathCanonicalize(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetPathCanonicalize *r)
 
17474
{
 
17475
        ndr_print_struct(ndr, name, "srvsvc_NetPathCanonicalize");
 
17476
        ndr->depth++;
 
17477
        if (flags & NDR_SET_VALUES) {
 
17478
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17479
        }
 
17480
        if (flags & NDR_IN) {
 
17481
                ndr_print_struct(ndr, "in", "srvsvc_NetPathCanonicalize");
 
17482
                ndr->depth++;
 
17483
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17484
                ndr->depth++;
 
17485
                if (r->in.server_unc) {
 
17486
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17487
                }
 
17488
                ndr->depth--;
 
17489
                ndr_print_string(ndr, "path", r->in.path);
 
17490
                ndr_print_uint32(ndr, "maxbuf", r->in.maxbuf);
 
17491
                ndr_print_string(ndr, "prefix", r->in.prefix);
 
17492
                ndr_print_ptr(ndr, "pathtype", r->in.pathtype);
 
17493
                ndr->depth++;
 
17494
                ndr_print_uint32(ndr, "pathtype", *r->in.pathtype);
 
17495
                ndr->depth--;
 
17496
                ndr_print_uint32(ndr, "pathflags", r->in.pathflags);
 
17497
                ndr->depth--;
 
17498
        }
 
17499
        if (flags & NDR_OUT) {
 
17500
                ndr_print_struct(ndr, "out", "srvsvc_NetPathCanonicalize");
 
17501
                ndr->depth++;
 
17502
                ndr_print_array_uint8(ndr, "can_path", r->out.can_path, r->in.maxbuf);
 
17503
                ndr_print_ptr(ndr, "pathtype", r->out.pathtype);
 
17504
                ndr->depth++;
 
17505
                ndr_print_uint32(ndr, "pathtype", *r->out.pathtype);
 
17506
                ndr->depth--;
 
17507
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17508
                ndr->depth--;
 
17509
        }
 
17510
        ndr->depth--;
 
17511
}
 
17512
 
 
17513
static enum ndr_err_code ndr_push_srvsvc_NetPathCompare(struct ndr_push *ndr, int flags, const struct srvsvc_NetPathCompare *r)
 
17514
{
 
17515
        if (flags & NDR_IN) {
 
17516
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17517
                if (r->in.server_unc) {
 
17518
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17519
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17520
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17521
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17522
                }
 
17523
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path1, CH_UTF16)));
 
17524
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17525
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path1, CH_UTF16)));
 
17526
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path1, ndr_charset_length(r->in.path1, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17527
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path2, CH_UTF16)));
 
17528
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17529
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path2, CH_UTF16)));
 
17530
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path2, ndr_charset_length(r->in.path2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17531
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.pathtype));
 
17532
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.pathflags));
 
17533
        }
 
17534
        if (flags & NDR_OUT) {
 
17535
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17536
        }
 
17537
        return NDR_ERR_SUCCESS;
 
17538
}
 
17539
 
 
17540
static enum ndr_err_code ndr_pull_srvsvc_NetPathCompare(struct ndr_pull *ndr, int flags, struct srvsvc_NetPathCompare *r)
 
17541
{
 
17542
        uint32_t _ptr_server_unc;
 
17543
        TALLOC_CTX *_mem_save_server_unc_0;
 
17544
        if (flags & NDR_IN) {
 
17545
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17546
                if (_ptr_server_unc) {
 
17547
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17548
                } else {
 
17549
                        r->in.server_unc = NULL;
 
17550
                }
 
17551
                if (r->in.server_unc) {
 
17552
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17553
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17554
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17555
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17556
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17557
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17558
                        }
 
17559
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17560
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17561
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17562
                }
 
17563
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path1));
 
17564
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path1));
 
17565
                if (ndr_get_array_length(ndr, &r->in.path1) > ndr_get_array_size(ndr, &r->in.path1)) {
 
17566
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.path1), ndr_get_array_length(ndr, &r->in.path1));
 
17567
                }
 
17568
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path1), sizeof(uint16_t)));
 
17569
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path1, ndr_get_array_length(ndr, &r->in.path1), sizeof(uint16_t), CH_UTF16));
 
17570
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path2));
 
17571
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path2));
 
17572
                if (ndr_get_array_length(ndr, &r->in.path2) > ndr_get_array_size(ndr, &r->in.path2)) {
 
17573
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.path2), ndr_get_array_length(ndr, &r->in.path2));
 
17574
                }
 
17575
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path2), sizeof(uint16_t)));
 
17576
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path2, ndr_get_array_length(ndr, &r->in.path2), sizeof(uint16_t), CH_UTF16));
 
17577
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.pathtype));
 
17578
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.pathflags));
 
17579
        }
 
17580
        if (flags & NDR_OUT) {
 
17581
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17582
        }
 
17583
        return NDR_ERR_SUCCESS;
 
17584
}
 
17585
 
 
17586
_PUBLIC_ void ndr_print_srvsvc_NetPathCompare(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetPathCompare *r)
 
17587
{
 
17588
        ndr_print_struct(ndr, name, "srvsvc_NetPathCompare");
 
17589
        ndr->depth++;
 
17590
        if (flags & NDR_SET_VALUES) {
 
17591
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17592
        }
 
17593
        if (flags & NDR_IN) {
 
17594
                ndr_print_struct(ndr, "in", "srvsvc_NetPathCompare");
 
17595
                ndr->depth++;
 
17596
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17597
                ndr->depth++;
 
17598
                if (r->in.server_unc) {
 
17599
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17600
                }
 
17601
                ndr->depth--;
 
17602
                ndr_print_string(ndr, "path1", r->in.path1);
 
17603
                ndr_print_string(ndr, "path2", r->in.path2);
 
17604
                ndr_print_uint32(ndr, "pathtype", r->in.pathtype);
 
17605
                ndr_print_uint32(ndr, "pathflags", r->in.pathflags);
 
17606
                ndr->depth--;
 
17607
        }
 
17608
        if (flags & NDR_OUT) {
 
17609
                ndr_print_struct(ndr, "out", "srvsvc_NetPathCompare");
 
17610
                ndr->depth++;
 
17611
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17612
                ndr->depth--;
 
17613
        }
 
17614
        ndr->depth--;
 
17615
}
 
17616
 
 
17617
static enum ndr_err_code ndr_push_srvsvc_NetNameValidate(struct ndr_push *ndr, int flags, const struct srvsvc_NetNameValidate *r)
 
17618
{
 
17619
        if (flags & NDR_IN) {
 
17620
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17621
                if (r->in.server_unc) {
 
17622
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17623
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17624
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17625
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17626
                }
 
17627
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
 
17628
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17629
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name, CH_UTF16)));
 
17630
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name, ndr_charset_length(r->in.name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17631
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.name_type));
 
17632
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
 
17633
        }
 
17634
        if (flags & NDR_OUT) {
 
17635
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17636
        }
 
17637
        return NDR_ERR_SUCCESS;
 
17638
}
 
17639
 
 
17640
static enum ndr_err_code ndr_pull_srvsvc_NetNameValidate(struct ndr_pull *ndr, int flags, struct srvsvc_NetNameValidate *r)
 
17641
{
 
17642
        uint32_t _ptr_server_unc;
 
17643
        TALLOC_CTX *_mem_save_server_unc_0;
 
17644
        if (flags & NDR_IN) {
 
17645
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17646
                if (_ptr_server_unc) {
 
17647
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17648
                } else {
 
17649
                        r->in.server_unc = NULL;
 
17650
                }
 
17651
                if (r->in.server_unc) {
 
17652
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17653
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17654
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17655
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17656
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17657
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17658
                        }
 
17659
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17660
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17661
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17662
                }
 
17663
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name));
 
17664
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name));
 
17665
                if (ndr_get_array_length(ndr, &r->in.name) > ndr_get_array_size(ndr, &r->in.name)) {
 
17666
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.name), ndr_get_array_length(ndr, &r->in.name));
 
17667
                }
 
17668
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.name), sizeof(uint16_t)));
 
17669
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name, ndr_get_array_length(ndr, &r->in.name), sizeof(uint16_t), CH_UTF16));
 
17670
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.name_type));
 
17671
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
 
17672
        }
 
17673
        if (flags & NDR_OUT) {
 
17674
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17675
        }
 
17676
        return NDR_ERR_SUCCESS;
 
17677
}
 
17678
 
 
17679
_PUBLIC_ void ndr_print_srvsvc_NetNameValidate(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetNameValidate *r)
 
17680
{
 
17681
        ndr_print_struct(ndr, name, "srvsvc_NetNameValidate");
 
17682
        ndr->depth++;
 
17683
        if (flags & NDR_SET_VALUES) {
 
17684
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17685
        }
 
17686
        if (flags & NDR_IN) {
 
17687
                ndr_print_struct(ndr, "in", "srvsvc_NetNameValidate");
 
17688
                ndr->depth++;
 
17689
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17690
                ndr->depth++;
 
17691
                if (r->in.server_unc) {
 
17692
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17693
                }
 
17694
                ndr->depth--;
 
17695
                ndr_print_string(ndr, "name", r->in.name);
 
17696
                ndr_print_uint32(ndr, "name_type", r->in.name_type);
 
17697
                ndr_print_uint32(ndr, "flags", r->in.flags);
 
17698
                ndr->depth--;
 
17699
        }
 
17700
        if (flags & NDR_OUT) {
 
17701
                ndr_print_struct(ndr, "out", "srvsvc_NetNameValidate");
 
17702
                ndr->depth++;
 
17703
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17704
                ndr->depth--;
 
17705
        }
 
17706
        ndr->depth--;
 
17707
}
 
17708
 
 
17709
static enum ndr_err_code ndr_push_srvsvc_NETRPRNAMECANONICALIZE(struct ndr_push *ndr, int flags, const struct srvsvc_NETRPRNAMECANONICALIZE *r)
 
17710
{
 
17711
        if (flags & NDR_IN) {
 
17712
        }
 
17713
        if (flags & NDR_OUT) {
 
17714
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17715
        }
 
17716
        return NDR_ERR_SUCCESS;
 
17717
}
 
17718
 
 
17719
static enum ndr_err_code ndr_pull_srvsvc_NETRPRNAMECANONICALIZE(struct ndr_pull *ndr, int flags, struct srvsvc_NETRPRNAMECANONICALIZE *r)
 
17720
{
 
17721
        if (flags & NDR_IN) {
 
17722
        }
 
17723
        if (flags & NDR_OUT) {
 
17724
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17725
        }
 
17726
        return NDR_ERR_SUCCESS;
 
17727
}
 
17728
 
 
17729
_PUBLIC_ void ndr_print_srvsvc_NETRPRNAMECANONICALIZE(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRPRNAMECANONICALIZE *r)
 
17730
{
 
17731
        ndr_print_struct(ndr, name, "srvsvc_NETRPRNAMECANONICALIZE");
 
17732
        ndr->depth++;
 
17733
        if (flags & NDR_SET_VALUES) {
 
17734
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17735
        }
 
17736
        if (flags & NDR_IN) {
 
17737
                ndr_print_struct(ndr, "in", "srvsvc_NETRPRNAMECANONICALIZE");
 
17738
                ndr->depth++;
 
17739
                ndr->depth--;
 
17740
        }
 
17741
        if (flags & NDR_OUT) {
 
17742
                ndr_print_struct(ndr, "out", "srvsvc_NETRPRNAMECANONICALIZE");
 
17743
                ndr->depth++;
 
17744
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17745
                ndr->depth--;
 
17746
        }
 
17747
        ndr->depth--;
 
17748
}
 
17749
 
 
17750
static enum ndr_err_code ndr_push_srvsvc_NetPRNameCompare(struct ndr_push *ndr, int flags, const struct srvsvc_NetPRNameCompare *r)
 
17751
{
 
17752
        if (flags & NDR_IN) {
 
17753
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17754
                if (r->in.server_unc) {
 
17755
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17756
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17757
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17758
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17759
                }
 
17760
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name1, CH_UTF16)));
 
17761
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17762
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name1, CH_UTF16)));
 
17763
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name1, ndr_charset_length(r->in.name1, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17764
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name2, CH_UTF16)));
 
17765
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17766
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.name2, CH_UTF16)));
 
17767
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.name2, ndr_charset_length(r->in.name2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17768
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.name_type));
 
17769
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
 
17770
        }
 
17771
        if (flags & NDR_OUT) {
 
17772
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17773
        }
 
17774
        return NDR_ERR_SUCCESS;
 
17775
}
 
17776
 
 
17777
static enum ndr_err_code ndr_pull_srvsvc_NetPRNameCompare(struct ndr_pull *ndr, int flags, struct srvsvc_NetPRNameCompare *r)
 
17778
{
 
17779
        uint32_t _ptr_server_unc;
 
17780
        TALLOC_CTX *_mem_save_server_unc_0;
 
17781
        if (flags & NDR_IN) {
 
17782
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17783
                if (_ptr_server_unc) {
 
17784
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17785
                } else {
 
17786
                        r->in.server_unc = NULL;
 
17787
                }
 
17788
                if (r->in.server_unc) {
 
17789
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17790
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17791
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17792
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17793
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17794
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17795
                        }
 
17796
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17797
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17798
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17799
                }
 
17800
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name1));
 
17801
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name1));
 
17802
                if (ndr_get_array_length(ndr, &r->in.name1) > ndr_get_array_size(ndr, &r->in.name1)) {
 
17803
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.name1), ndr_get_array_length(ndr, &r->in.name1));
 
17804
                }
 
17805
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.name1), sizeof(uint16_t)));
 
17806
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name1, ndr_get_array_length(ndr, &r->in.name1), sizeof(uint16_t), CH_UTF16));
 
17807
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.name2));
 
17808
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.name2));
 
17809
                if (ndr_get_array_length(ndr, &r->in.name2) > ndr_get_array_size(ndr, &r->in.name2)) {
 
17810
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.name2), ndr_get_array_length(ndr, &r->in.name2));
 
17811
                }
 
17812
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.name2), sizeof(uint16_t)));
 
17813
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.name2, ndr_get_array_length(ndr, &r->in.name2), sizeof(uint16_t), CH_UTF16));
 
17814
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.name_type));
 
17815
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
 
17816
        }
 
17817
        if (flags & NDR_OUT) {
 
17818
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17819
        }
 
17820
        return NDR_ERR_SUCCESS;
 
17821
}
 
17822
 
 
17823
_PUBLIC_ void ndr_print_srvsvc_NetPRNameCompare(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetPRNameCompare *r)
 
17824
{
 
17825
        ndr_print_struct(ndr, name, "srvsvc_NetPRNameCompare");
 
17826
        ndr->depth++;
 
17827
        if (flags & NDR_SET_VALUES) {
 
17828
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17829
        }
 
17830
        if (flags & NDR_IN) {
 
17831
                ndr_print_struct(ndr, "in", "srvsvc_NetPRNameCompare");
 
17832
                ndr->depth++;
 
17833
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17834
                ndr->depth++;
 
17835
                if (r->in.server_unc) {
 
17836
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17837
                }
 
17838
                ndr->depth--;
 
17839
                ndr_print_string(ndr, "name1", r->in.name1);
 
17840
                ndr_print_string(ndr, "name2", r->in.name2);
 
17841
                ndr_print_uint32(ndr, "name_type", r->in.name_type);
 
17842
                ndr_print_uint32(ndr, "flags", r->in.flags);
 
17843
                ndr->depth--;
 
17844
        }
 
17845
        if (flags & NDR_OUT) {
 
17846
                ndr_print_struct(ndr, "out", "srvsvc_NetPRNameCompare");
 
17847
                ndr->depth++;
 
17848
                ndr_print_WERROR(ndr, "result", r->out.result);
 
17849
                ndr->depth--;
 
17850
        }
 
17851
        ndr->depth--;
 
17852
}
 
17853
 
 
17854
static enum ndr_err_code ndr_push_srvsvc_NetShareEnum(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareEnum *r)
 
17855
{
 
17856
        if (flags & NDR_IN) {
 
17857
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
17858
                if (r->in.server_unc) {
 
17859
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17860
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
17861
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
17862
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
17863
                }
 
17864
                if (r->in.info_ctr == NULL) {
 
17865
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17866
                }
 
17867
                NDR_CHECK(ndr_push_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
17868
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_buffer));
 
17869
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.resume_handle));
 
17870
                if (r->in.resume_handle) {
 
17871
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
 
17872
                }
 
17873
        }
 
17874
        if (flags & NDR_OUT) {
 
17875
                if (r->out.info_ctr == NULL) {
 
17876
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17877
                }
 
17878
                NDR_CHECK(ndr_push_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
17879
                if (r->out.totalentries == NULL) {
 
17880
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
17881
                }
 
17882
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.totalentries));
 
17883
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.resume_handle));
 
17884
                if (r->out.resume_handle) {
 
17885
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
 
17886
                }
 
17887
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
17888
        }
 
17889
        return NDR_ERR_SUCCESS;
 
17890
}
 
17891
 
 
17892
static enum ndr_err_code ndr_pull_srvsvc_NetShareEnum(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareEnum *r)
 
17893
{
 
17894
        uint32_t _ptr_server_unc;
 
17895
        uint32_t _ptr_resume_handle;
 
17896
        TALLOC_CTX *_mem_save_server_unc_0;
 
17897
        TALLOC_CTX *_mem_save_info_ctr_0;
 
17898
        TALLOC_CTX *_mem_save_totalentries_0;
 
17899
        TALLOC_CTX *_mem_save_resume_handle_0;
 
17900
        if (flags & NDR_IN) {
 
17901
                ZERO_STRUCT(r->out);
 
17902
 
 
17903
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
17904
                if (_ptr_server_unc) {
 
17905
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
17906
                } else {
 
17907
                        r->in.server_unc = NULL;
 
17908
                }
 
17909
                if (r->in.server_unc) {
 
17910
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17911
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
17912
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
17913
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
17914
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
17915
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
17916
                        }
 
17917
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
17918
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
17919
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
17920
                }
 
17921
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17922
                        NDR_PULL_ALLOC(ndr, r->in.info_ctr);
 
17923
                }
 
17924
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17925
                NDR_PULL_SET_MEM_CTX(ndr, r->in.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
17926
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info_ctr));
 
17927
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
17928
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_buffer));
 
17929
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
17930
                if (_ptr_resume_handle) {
 
17931
                        NDR_PULL_ALLOC(ndr, r->in.resume_handle);
 
17932
                } else {
 
17933
                        r->in.resume_handle = NULL;
 
17934
                }
 
17935
                if (r->in.resume_handle) {
 
17936
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17937
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, 0);
 
17938
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
 
17939
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
17940
                }
 
17941
                NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
17942
                *r->out.info_ctr = *r->in.info_ctr;
 
17943
                NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
17944
                ZERO_STRUCTP(r->out.totalentries);
 
17945
        }
 
17946
        if (flags & NDR_OUT) {
 
17947
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17948
                        NDR_PULL_ALLOC(ndr, r->out.info_ctr);
 
17949
                }
 
17950
                _mem_save_info_ctr_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17951
                NDR_PULL_SET_MEM_CTX(ndr, r->out.info_ctr, LIBNDR_FLAG_REF_ALLOC);
 
17952
                NDR_CHECK(ndr_pull_srvsvc_NetShareInfoCtr(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info_ctr));
 
17953
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_ctr_0, LIBNDR_FLAG_REF_ALLOC);
 
17954
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
17955
                        NDR_PULL_ALLOC(ndr, r->out.totalentries);
 
17956
                }
 
17957
                _mem_save_totalentries_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17958
                NDR_PULL_SET_MEM_CTX(ndr, r->out.totalentries, LIBNDR_FLAG_REF_ALLOC);
 
17959
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.totalentries));
 
17960
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_totalentries_0, LIBNDR_FLAG_REF_ALLOC);
 
17961
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_resume_handle));
 
17962
                if (_ptr_resume_handle) {
 
17963
                        NDR_PULL_ALLOC(ndr, r->out.resume_handle);
 
17964
                } else {
 
17965
                        r->out.resume_handle = NULL;
 
17966
                }
 
17967
                if (r->out.resume_handle) {
 
17968
                        _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
17969
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, 0);
 
17970
                        NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
 
17971
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, 0);
 
17972
                }
 
17973
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
17974
        }
 
17975
        return NDR_ERR_SUCCESS;
 
17976
}
 
17977
 
 
17978
_PUBLIC_ void ndr_print_srvsvc_NetShareEnum(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareEnum *r)
 
17979
{
 
17980
        ndr_print_struct(ndr, name, "srvsvc_NetShareEnum");
 
17981
        ndr->depth++;
 
17982
        if (flags & NDR_SET_VALUES) {
 
17983
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
17984
        }
 
17985
        if (flags & NDR_IN) {
 
17986
                ndr_print_struct(ndr, "in", "srvsvc_NetShareEnum");
 
17987
                ndr->depth++;
 
17988
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
17989
                ndr->depth++;
 
17990
                if (r->in.server_unc) {
 
17991
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
17992
                }
 
17993
                ndr->depth--;
 
17994
                ndr_print_ptr(ndr, "info_ctr", r->in.info_ctr);
 
17995
                ndr->depth++;
 
17996
                ndr_print_srvsvc_NetShareInfoCtr(ndr, "info_ctr", r->in.info_ctr);
 
17997
                ndr->depth--;
 
17998
                ndr_print_uint32(ndr, "max_buffer", r->in.max_buffer);
 
17999
                ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
 
18000
                ndr->depth++;
 
18001
                if (r->in.resume_handle) {
 
18002
                        ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
 
18003
                }
 
18004
                ndr->depth--;
 
18005
                ndr->depth--;
 
18006
        }
 
18007
        if (flags & NDR_OUT) {
 
18008
                ndr_print_struct(ndr, "out", "srvsvc_NetShareEnum");
 
18009
                ndr->depth++;
 
18010
                ndr_print_ptr(ndr, "info_ctr", r->out.info_ctr);
 
18011
                ndr->depth++;
 
18012
                ndr_print_srvsvc_NetShareInfoCtr(ndr, "info_ctr", r->out.info_ctr);
 
18013
                ndr->depth--;
 
18014
                ndr_print_ptr(ndr, "totalentries", r->out.totalentries);
 
18015
                ndr->depth++;
 
18016
                ndr_print_uint32(ndr, "totalentries", *r->out.totalentries);
 
18017
                ndr->depth--;
 
18018
                ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
 
18019
                ndr->depth++;
 
18020
                if (r->out.resume_handle) {
 
18021
                        ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
 
18022
                }
 
18023
                ndr->depth--;
 
18024
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18025
                ndr->depth--;
 
18026
        }
 
18027
        ndr->depth--;
 
18028
}
 
18029
 
 
18030
static enum ndr_err_code ndr_push_srvsvc_NetShareDelStart(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareDelStart *r)
 
18031
{
 
18032
        if (flags & NDR_IN) {
 
18033
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
18034
                if (r->in.server_unc) {
 
18035
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18036
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18037
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18038
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18039
                }
 
18040
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
 
18041
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18042
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
 
18043
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share, ndr_charset_length(r->in.share, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18044
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.reserved));
 
18045
        }
 
18046
        if (flags & NDR_OUT) {
 
18047
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.hnd));
 
18048
                if (r->out.hnd) {
 
18049
                        NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.hnd));
 
18050
                }
 
18051
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18052
        }
 
18053
        return NDR_ERR_SUCCESS;
 
18054
}
 
18055
 
 
18056
static enum ndr_err_code ndr_pull_srvsvc_NetShareDelStart(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareDelStart *r)
 
18057
{
 
18058
        uint32_t _ptr_server_unc;
 
18059
        uint32_t _ptr_hnd;
 
18060
        TALLOC_CTX *_mem_save_server_unc_0;
 
18061
        TALLOC_CTX *_mem_save_hnd_0;
 
18062
        if (flags & NDR_IN) {
 
18063
                ZERO_STRUCT(r->out);
 
18064
 
 
18065
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
18066
                if (_ptr_server_unc) {
 
18067
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
18068
                } else {
 
18069
                        r->in.server_unc = NULL;
 
18070
                }
 
18071
                if (r->in.server_unc) {
 
18072
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18073
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
18074
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
18075
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
18076
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
18077
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
18078
                        }
 
18079
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
18080
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
18081
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
18082
                }
 
18083
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share));
 
18084
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share));
 
18085
                if (ndr_get_array_length(ndr, &r->in.share) > ndr_get_array_size(ndr, &r->in.share)) {
 
18086
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share), ndr_get_array_length(ndr, &r->in.share));
 
18087
                }
 
18088
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t)));
 
18089
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t), CH_UTF16));
 
18090
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.reserved));
 
18091
        }
 
18092
        if (flags & NDR_OUT) {
 
18093
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hnd));
 
18094
                if (_ptr_hnd) {
 
18095
                        NDR_PULL_ALLOC(ndr, r->out.hnd);
 
18096
                } else {
 
18097
                        r->out.hnd = NULL;
 
18098
                }
 
18099
                if (r->out.hnd) {
 
18100
                        _mem_save_hnd_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18101
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.hnd, 0);
 
18102
                        NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.hnd));
 
18103
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hnd_0, 0);
 
18104
                }
 
18105
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18106
        }
 
18107
        return NDR_ERR_SUCCESS;
 
18108
}
 
18109
 
 
18110
_PUBLIC_ void ndr_print_srvsvc_NetShareDelStart(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareDelStart *r)
 
18111
{
 
18112
        ndr_print_struct(ndr, name, "srvsvc_NetShareDelStart");
 
18113
        ndr->depth++;
 
18114
        if (flags & NDR_SET_VALUES) {
 
18115
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18116
        }
 
18117
        if (flags & NDR_IN) {
 
18118
                ndr_print_struct(ndr, "in", "srvsvc_NetShareDelStart");
 
18119
                ndr->depth++;
 
18120
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
18121
                ndr->depth++;
 
18122
                if (r->in.server_unc) {
 
18123
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
18124
                }
 
18125
                ndr->depth--;
 
18126
                ndr_print_string(ndr, "share", r->in.share);
 
18127
                ndr_print_uint32(ndr, "reserved", r->in.reserved);
 
18128
                ndr->depth--;
 
18129
        }
 
18130
        if (flags & NDR_OUT) {
 
18131
                ndr_print_struct(ndr, "out", "srvsvc_NetShareDelStart");
 
18132
                ndr->depth++;
 
18133
                ndr_print_ptr(ndr, "hnd", r->out.hnd);
 
18134
                ndr->depth++;
 
18135
                if (r->out.hnd) {
 
18136
                        ndr_print_policy_handle(ndr, "hnd", r->out.hnd);
 
18137
                }
 
18138
                ndr->depth--;
 
18139
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18140
                ndr->depth--;
 
18141
        }
 
18142
        ndr->depth--;
 
18143
}
 
18144
 
 
18145
static enum ndr_err_code ndr_push_srvsvc_NetShareDelCommit(struct ndr_push *ndr, int flags, const struct srvsvc_NetShareDelCommit *r)
 
18146
{
 
18147
        if (flags & NDR_IN) {
 
18148
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.hnd));
 
18149
                if (r->in.hnd) {
 
18150
                        NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->in.hnd));
 
18151
                }
 
18152
        }
 
18153
        if (flags & NDR_OUT) {
 
18154
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.hnd));
 
18155
                if (r->out.hnd) {
 
18156
                        NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS, r->out.hnd));
 
18157
                }
 
18158
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18159
        }
 
18160
        return NDR_ERR_SUCCESS;
 
18161
}
 
18162
 
 
18163
static enum ndr_err_code ndr_pull_srvsvc_NetShareDelCommit(struct ndr_pull *ndr, int flags, struct srvsvc_NetShareDelCommit *r)
 
18164
{
 
18165
        uint32_t _ptr_hnd;
 
18166
        TALLOC_CTX *_mem_save_hnd_0;
 
18167
        if (flags & NDR_IN) {
 
18168
                ZERO_STRUCT(r->out);
 
18169
 
 
18170
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hnd));
 
18171
                if (_ptr_hnd) {
 
18172
                        NDR_PULL_ALLOC(ndr, r->in.hnd);
 
18173
                } else {
 
18174
                        r->in.hnd = NULL;
 
18175
                }
 
18176
                if (r->in.hnd) {
 
18177
                        _mem_save_hnd_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18178
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.hnd, 0);
 
18179
                        NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->in.hnd));
 
18180
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hnd_0, 0);
 
18181
                }
 
18182
        }
 
18183
        if (flags & NDR_OUT) {
 
18184
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_hnd));
 
18185
                if (_ptr_hnd) {
 
18186
                        NDR_PULL_ALLOC(ndr, r->out.hnd);
 
18187
                } else {
 
18188
                        r->out.hnd = NULL;
 
18189
                }
 
18190
                if (r->out.hnd) {
 
18191
                        _mem_save_hnd_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18192
                        NDR_PULL_SET_MEM_CTX(ndr, r->out.hnd, 0);
 
18193
                        NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS, r->out.hnd));
 
18194
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_hnd_0, 0);
 
18195
                }
 
18196
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18197
        }
 
18198
        return NDR_ERR_SUCCESS;
 
18199
}
 
18200
 
 
18201
_PUBLIC_ void ndr_print_srvsvc_NetShareDelCommit(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetShareDelCommit *r)
 
18202
{
 
18203
        ndr_print_struct(ndr, name, "srvsvc_NetShareDelCommit");
 
18204
        ndr->depth++;
 
18205
        if (flags & NDR_SET_VALUES) {
 
18206
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18207
        }
 
18208
        if (flags & NDR_IN) {
 
18209
                ndr_print_struct(ndr, "in", "srvsvc_NetShareDelCommit");
 
18210
                ndr->depth++;
 
18211
                ndr_print_ptr(ndr, "hnd", r->in.hnd);
 
18212
                ndr->depth++;
 
18213
                if (r->in.hnd) {
 
18214
                        ndr_print_policy_handle(ndr, "hnd", r->in.hnd);
 
18215
                }
 
18216
                ndr->depth--;
 
18217
                ndr->depth--;
 
18218
        }
 
18219
        if (flags & NDR_OUT) {
 
18220
                ndr_print_struct(ndr, "out", "srvsvc_NetShareDelCommit");
 
18221
                ndr->depth++;
 
18222
                ndr_print_ptr(ndr, "hnd", r->out.hnd);
 
18223
                ndr->depth++;
 
18224
                if (r->out.hnd) {
 
18225
                        ndr_print_policy_handle(ndr, "hnd", r->out.hnd);
 
18226
                }
 
18227
                ndr->depth--;
 
18228
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18229
                ndr->depth--;
 
18230
        }
 
18231
        ndr->depth--;
 
18232
}
 
18233
 
 
18234
static enum ndr_err_code ndr_push_srvsvc_NetGetFileSecurity(struct ndr_push *ndr, int flags, const struct srvsvc_NetGetFileSecurity *r)
 
18235
{
 
18236
        if (flags & NDR_IN) {
 
18237
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
18238
                if (r->in.server_unc) {
 
18239
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18240
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18241
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18242
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18243
                }
 
18244
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.share));
 
18245
                if (r->in.share) {
 
18246
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
 
18247
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18248
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
 
18249
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share, ndr_charset_length(r->in.share, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18250
                }
 
18251
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.file, CH_UTF16)));
 
18252
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18253
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.file, CH_UTF16)));
 
18254
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.file, ndr_charset_length(r->in.file, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18255
                NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.securityinformation));
 
18256
        }
 
18257
        if (flags & NDR_OUT) {
 
18258
                if (r->out.sd_buf == NULL) {
 
18259
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
18260
                }
 
18261
                NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sd_buf));
 
18262
                if (*r->out.sd_buf) {
 
18263
                        NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sd_buf));
 
18264
                }
 
18265
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18266
        }
 
18267
        return NDR_ERR_SUCCESS;
 
18268
}
 
18269
 
 
18270
static enum ndr_err_code ndr_pull_srvsvc_NetGetFileSecurity(struct ndr_pull *ndr, int flags, struct srvsvc_NetGetFileSecurity *r)
 
18271
{
 
18272
        uint32_t _ptr_server_unc;
 
18273
        uint32_t _ptr_share;
 
18274
        uint32_t _ptr_sd_buf;
 
18275
        TALLOC_CTX *_mem_save_server_unc_0;
 
18276
        TALLOC_CTX *_mem_save_share_0;
 
18277
        TALLOC_CTX *_mem_save_sd_buf_0;
 
18278
        TALLOC_CTX *_mem_save_sd_buf_1;
 
18279
        if (flags & NDR_IN) {
 
18280
                ZERO_STRUCT(r->out);
 
18281
 
 
18282
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
18283
                if (_ptr_server_unc) {
 
18284
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
18285
                } else {
 
18286
                        r->in.server_unc = NULL;
 
18287
                }
 
18288
                if (r->in.server_unc) {
 
18289
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18290
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
18291
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
18292
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
18293
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
18294
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
18295
                        }
 
18296
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
18297
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
18298
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
18299
                }
 
18300
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_share));
 
18301
                if (_ptr_share) {
 
18302
                        NDR_PULL_ALLOC(ndr, r->in.share);
 
18303
                } else {
 
18304
                        r->in.share = NULL;
 
18305
                }
 
18306
                if (r->in.share) {
 
18307
                        _mem_save_share_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18308
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.share, 0);
 
18309
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share));
 
18310
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share));
 
18311
                        if (ndr_get_array_length(ndr, &r->in.share) > ndr_get_array_size(ndr, &r->in.share)) {
 
18312
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share), ndr_get_array_length(ndr, &r->in.share));
 
18313
                        }
 
18314
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t)));
 
18315
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t), CH_UTF16));
 
18316
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_share_0, 0);
 
18317
                }
 
18318
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.file));
 
18319
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.file));
 
18320
                if (ndr_get_array_length(ndr, &r->in.file) > ndr_get_array_size(ndr, &r->in.file)) {
 
18321
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.file), ndr_get_array_length(ndr, &r->in.file));
 
18322
                }
 
18323
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.file), sizeof(uint16_t)));
 
18324
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.file, ndr_get_array_length(ndr, &r->in.file), sizeof(uint16_t), CH_UTF16));
 
18325
                NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.securityinformation));
 
18326
                NDR_PULL_ALLOC(ndr, r->out.sd_buf);
 
18327
                ZERO_STRUCTP(r->out.sd_buf);
 
18328
        }
 
18329
        if (flags & NDR_OUT) {
 
18330
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
18331
                        NDR_PULL_ALLOC(ndr, r->out.sd_buf);
 
18332
                }
 
18333
                _mem_save_sd_buf_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18334
                NDR_PULL_SET_MEM_CTX(ndr, r->out.sd_buf, LIBNDR_FLAG_REF_ALLOC);
 
18335
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sd_buf));
 
18336
                if (_ptr_sd_buf) {
 
18337
                        NDR_PULL_ALLOC(ndr, *r->out.sd_buf);
 
18338
                } else {
 
18339
                        *r->out.sd_buf = NULL;
 
18340
                }
 
18341
                if (*r->out.sd_buf) {
 
18342
                        _mem_save_sd_buf_1 = NDR_PULL_GET_MEM_CTX(ndr);
 
18343
                        NDR_PULL_SET_MEM_CTX(ndr, *r->out.sd_buf, 0);
 
18344
                        NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sd_buf));
 
18345
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sd_buf_1, 0);
 
18346
                }
 
18347
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sd_buf_0, LIBNDR_FLAG_REF_ALLOC);
 
18348
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18349
        }
 
18350
        return NDR_ERR_SUCCESS;
 
18351
}
 
18352
 
 
18353
_PUBLIC_ void ndr_print_srvsvc_NetGetFileSecurity(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetGetFileSecurity *r)
 
18354
{
 
18355
        ndr_print_struct(ndr, name, "srvsvc_NetGetFileSecurity");
 
18356
        ndr->depth++;
 
18357
        if (flags & NDR_SET_VALUES) {
 
18358
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18359
        }
 
18360
        if (flags & NDR_IN) {
 
18361
                ndr_print_struct(ndr, "in", "srvsvc_NetGetFileSecurity");
 
18362
                ndr->depth++;
 
18363
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
18364
                ndr->depth++;
 
18365
                if (r->in.server_unc) {
 
18366
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
18367
                }
 
18368
                ndr->depth--;
 
18369
                ndr_print_ptr(ndr, "share", r->in.share);
 
18370
                ndr->depth++;
 
18371
                if (r->in.share) {
 
18372
                        ndr_print_string(ndr, "share", r->in.share);
 
18373
                }
 
18374
                ndr->depth--;
 
18375
                ndr_print_string(ndr, "file", r->in.file);
 
18376
                ndr_print_security_secinfo(ndr, "securityinformation", r->in.securityinformation);
 
18377
                ndr->depth--;
 
18378
        }
 
18379
        if (flags & NDR_OUT) {
 
18380
                ndr_print_struct(ndr, "out", "srvsvc_NetGetFileSecurity");
 
18381
                ndr->depth++;
 
18382
                ndr_print_ptr(ndr, "sd_buf", r->out.sd_buf);
 
18383
                ndr->depth++;
 
18384
                ndr_print_ptr(ndr, "sd_buf", *r->out.sd_buf);
 
18385
                ndr->depth++;
 
18386
                if (*r->out.sd_buf) {
 
18387
                        ndr_print_sec_desc_buf(ndr, "sd_buf", *r->out.sd_buf);
 
18388
                }
 
18389
                ndr->depth--;
 
18390
                ndr->depth--;
 
18391
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18392
                ndr->depth--;
 
18393
        }
 
18394
        ndr->depth--;
 
18395
}
 
18396
 
 
18397
static enum ndr_err_code ndr_push_srvsvc_NetSetFileSecurity(struct ndr_push *ndr, int flags, const struct srvsvc_NetSetFileSecurity *r)
 
18398
{
 
18399
        if (flags & NDR_IN) {
 
18400
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
18401
                if (r->in.server_unc) {
 
18402
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18403
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18404
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18405
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18406
                }
 
18407
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.share));
 
18408
                if (r->in.share) {
 
18409
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
 
18410
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18411
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
 
18412
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share, ndr_charset_length(r->in.share, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18413
                }
 
18414
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.file, CH_UTF16)));
 
18415
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18416
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.file, CH_UTF16)));
 
18417
                NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.file, ndr_charset_length(r->in.file, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18418
                NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.securityinformation));
 
18419
                if (r->in.sd_buf == NULL) {
 
18420
                        return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
 
18421
                }
 
18422
                NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sd_buf));
 
18423
        }
 
18424
        if (flags & NDR_OUT) {
 
18425
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18426
        }
 
18427
        return NDR_ERR_SUCCESS;
 
18428
}
 
18429
 
 
18430
static enum ndr_err_code ndr_pull_srvsvc_NetSetFileSecurity(struct ndr_pull *ndr, int flags, struct srvsvc_NetSetFileSecurity *r)
 
18431
{
 
18432
        uint32_t _ptr_server_unc;
 
18433
        uint32_t _ptr_share;
 
18434
        TALLOC_CTX *_mem_save_server_unc_0;
 
18435
        TALLOC_CTX *_mem_save_share_0;
 
18436
        TALLOC_CTX *_mem_save_sd_buf_0;
 
18437
        if (flags & NDR_IN) {
 
18438
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
18439
                if (_ptr_server_unc) {
 
18440
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
18441
                } else {
 
18442
                        r->in.server_unc = NULL;
 
18443
                }
 
18444
                if (r->in.server_unc) {
 
18445
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18446
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
18447
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
18448
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
18449
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
18450
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
18451
                        }
 
18452
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
18453
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
18454
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
18455
                }
 
18456
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_share));
 
18457
                if (_ptr_share) {
 
18458
                        NDR_PULL_ALLOC(ndr, r->in.share);
 
18459
                } else {
 
18460
                        r->in.share = NULL;
 
18461
                }
 
18462
                if (r->in.share) {
 
18463
                        _mem_save_share_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18464
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.share, 0);
 
18465
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share));
 
18466
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share));
 
18467
                        if (ndr_get_array_length(ndr, &r->in.share) > ndr_get_array_size(ndr, &r->in.share)) {
 
18468
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.share), ndr_get_array_length(ndr, &r->in.share));
 
18469
                        }
 
18470
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t)));
 
18471
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t), CH_UTF16));
 
18472
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_share_0, 0);
 
18473
                }
 
18474
                NDR_CHECK(ndr_pull_array_size(ndr, &r->in.file));
 
18475
                NDR_CHECK(ndr_pull_array_length(ndr, &r->in.file));
 
18476
                if (ndr_get_array_length(ndr, &r->in.file) > ndr_get_array_size(ndr, &r->in.file)) {
 
18477
                        return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.file), ndr_get_array_length(ndr, &r->in.file));
 
18478
                }
 
18479
                NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.file), sizeof(uint16_t)));
 
18480
                NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.file, ndr_get_array_length(ndr, &r->in.file), sizeof(uint16_t), CH_UTF16));
 
18481
                NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.securityinformation));
 
18482
                if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
 
18483
                        NDR_PULL_ALLOC(ndr, r->in.sd_buf);
 
18484
                }
 
18485
                _mem_save_sd_buf_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18486
                NDR_PULL_SET_MEM_CTX(ndr, r->in.sd_buf, LIBNDR_FLAG_REF_ALLOC);
 
18487
                NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sd_buf));
 
18488
                NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sd_buf_0, LIBNDR_FLAG_REF_ALLOC);
 
18489
        }
 
18490
        if (flags & NDR_OUT) {
 
18491
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18492
        }
 
18493
        return NDR_ERR_SUCCESS;
 
18494
}
 
18495
 
 
18496
_PUBLIC_ void ndr_print_srvsvc_NetSetFileSecurity(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetSetFileSecurity *r)
 
18497
{
 
18498
        ndr_print_struct(ndr, name, "srvsvc_NetSetFileSecurity");
 
18499
        ndr->depth++;
 
18500
        if (flags & NDR_SET_VALUES) {
 
18501
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18502
        }
 
18503
        if (flags & NDR_IN) {
 
18504
                ndr_print_struct(ndr, "in", "srvsvc_NetSetFileSecurity");
 
18505
                ndr->depth++;
 
18506
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
18507
                ndr->depth++;
 
18508
                if (r->in.server_unc) {
 
18509
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
18510
                }
 
18511
                ndr->depth--;
 
18512
                ndr_print_ptr(ndr, "share", r->in.share);
 
18513
                ndr->depth++;
 
18514
                if (r->in.share) {
 
18515
                        ndr_print_string(ndr, "share", r->in.share);
 
18516
                }
 
18517
                ndr->depth--;
 
18518
                ndr_print_string(ndr, "file", r->in.file);
 
18519
                ndr_print_security_secinfo(ndr, "securityinformation", r->in.securityinformation);
 
18520
                ndr_print_ptr(ndr, "sd_buf", r->in.sd_buf);
 
18521
                ndr->depth++;
 
18522
                ndr_print_sec_desc_buf(ndr, "sd_buf", r->in.sd_buf);
 
18523
                ndr->depth--;
 
18524
                ndr->depth--;
 
18525
        }
 
18526
        if (flags & NDR_OUT) {
 
18527
                ndr_print_struct(ndr, "out", "srvsvc_NetSetFileSecurity");
 
18528
                ndr->depth++;
 
18529
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18530
                ndr->depth--;
 
18531
        }
 
18532
        ndr->depth--;
 
18533
}
 
18534
 
 
18535
static enum ndr_err_code ndr_push_srvsvc_NetServerTransportAddEx(struct ndr_push *ndr, int flags, const struct srvsvc_NetServerTransportAddEx *r)
 
18536
{
 
18537
        if (flags & NDR_IN) {
 
18538
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
18539
                if (r->in.server_unc) {
 
18540
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18541
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18542
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18543
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18544
                }
 
18545
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
 
18546
                NDR_CHECK(ndr_push_set_switch_value(ndr, &r->in.info, r->in.level));
 
18547
                NDR_CHECK(ndr_push_srvsvc_NetTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.info));
 
18548
        }
 
18549
        if (flags & NDR_OUT) {
 
18550
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18551
        }
 
18552
        return NDR_ERR_SUCCESS;
 
18553
}
 
18554
 
 
18555
static enum ndr_err_code ndr_pull_srvsvc_NetServerTransportAddEx(struct ndr_pull *ndr, int flags, struct srvsvc_NetServerTransportAddEx *r)
 
18556
{
 
18557
        uint32_t _ptr_server_unc;
 
18558
        TALLOC_CTX *_mem_save_server_unc_0;
 
18559
        if (flags & NDR_IN) {
 
18560
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
18561
                if (_ptr_server_unc) {
 
18562
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
18563
                } else {
 
18564
                        r->in.server_unc = NULL;
 
18565
                }
 
18566
                if (r->in.server_unc) {
 
18567
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18568
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
18569
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
18570
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
18571
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
18572
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
18573
                        }
 
18574
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
18575
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
18576
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
18577
                }
 
18578
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
 
18579
                NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->in.info, r->in.level));
 
18580
                NDR_CHECK(ndr_pull_srvsvc_NetTransportInfo(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.info));
 
18581
        }
 
18582
        if (flags & NDR_OUT) {
 
18583
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18584
        }
 
18585
        return NDR_ERR_SUCCESS;
 
18586
}
 
18587
 
 
18588
_PUBLIC_ void ndr_print_srvsvc_NetServerTransportAddEx(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetServerTransportAddEx *r)
 
18589
{
 
18590
        ndr_print_struct(ndr, name, "srvsvc_NetServerTransportAddEx");
 
18591
        ndr->depth++;
 
18592
        if (flags & NDR_SET_VALUES) {
 
18593
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18594
        }
 
18595
        if (flags & NDR_IN) {
 
18596
                ndr_print_struct(ndr, "in", "srvsvc_NetServerTransportAddEx");
 
18597
                ndr->depth++;
 
18598
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
18599
                ndr->depth++;
 
18600
                if (r->in.server_unc) {
 
18601
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
18602
                }
 
18603
                ndr->depth--;
 
18604
                ndr_print_uint32(ndr, "level", r->in.level);
 
18605
                ndr_print_set_switch_value(ndr, &r->in.info, r->in.level);
 
18606
                ndr_print_srvsvc_NetTransportInfo(ndr, "info", &r->in.info);
 
18607
                ndr->depth--;
 
18608
        }
 
18609
        if (flags & NDR_OUT) {
 
18610
                ndr_print_struct(ndr, "out", "srvsvc_NetServerTransportAddEx");
 
18611
                ndr->depth++;
 
18612
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18613
                ndr->depth--;
 
18614
        }
 
18615
        ndr->depth--;
 
18616
}
 
18617
 
 
18618
static enum ndr_err_code ndr_push_srvsvc_NetServerSetServiceBitsEx(struct ndr_push *ndr, int flags, const struct srvsvc_NetServerSetServiceBitsEx *r)
 
18619
{
 
18620
        if (flags & NDR_IN) {
 
18621
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.server_unc));
 
18622
                if (r->in.server_unc) {
 
18623
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18624
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18625
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server_unc, CH_UTF16)));
 
18626
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server_unc, ndr_charset_length(r->in.server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18627
                }
 
18628
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.emulated_server_unc));
 
18629
                if (r->in.emulated_server_unc) {
 
18630
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.emulated_server_unc, CH_UTF16)));
 
18631
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18632
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.emulated_server_unc, CH_UTF16)));
 
18633
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.emulated_server_unc, ndr_charset_length(r->in.emulated_server_unc, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18634
                }
 
18635
                NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.transport));
 
18636
                if (r->in.transport) {
 
18637
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport, CH_UTF16)));
 
18638
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
 
18639
                        NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.transport, CH_UTF16)));
 
18640
                        NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.transport, ndr_charset_length(r->in.transport, CH_UTF16), sizeof(uint16_t), CH_UTF16));
 
18641
                }
 
18642
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.servicebitsofinterest));
 
18643
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.servicebits));
 
18644
                NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.updateimmediately));
 
18645
        }
 
18646
        if (flags & NDR_OUT) {
 
18647
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18648
        }
 
18649
        return NDR_ERR_SUCCESS;
 
18650
}
 
18651
 
 
18652
static enum ndr_err_code ndr_pull_srvsvc_NetServerSetServiceBitsEx(struct ndr_pull *ndr, int flags, struct srvsvc_NetServerSetServiceBitsEx *r)
 
18653
{
 
18654
        uint32_t _ptr_server_unc;
 
18655
        uint32_t _ptr_emulated_server_unc;
 
18656
        uint32_t _ptr_transport;
 
18657
        TALLOC_CTX *_mem_save_server_unc_0;
 
18658
        TALLOC_CTX *_mem_save_emulated_server_unc_0;
 
18659
        TALLOC_CTX *_mem_save_transport_0;
 
18660
        if (flags & NDR_IN) {
 
18661
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server_unc));
 
18662
                if (_ptr_server_unc) {
 
18663
                        NDR_PULL_ALLOC(ndr, r->in.server_unc);
 
18664
                } else {
 
18665
                        r->in.server_unc = NULL;
 
18666
                }
 
18667
                if (r->in.server_unc) {
 
18668
                        _mem_save_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18669
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.server_unc, 0);
 
18670
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server_unc));
 
18671
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server_unc));
 
18672
                        if (ndr_get_array_length(ndr, &r->in.server_unc) > ndr_get_array_size(ndr, &r->in.server_unc)) {
 
18673
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.server_unc), ndr_get_array_length(ndr, &r->in.server_unc));
 
18674
                        }
 
18675
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t)));
 
18676
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server_unc, ndr_get_array_length(ndr, &r->in.server_unc), sizeof(uint16_t), CH_UTF16));
 
18677
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_unc_0, 0);
 
18678
                }
 
18679
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_emulated_server_unc));
 
18680
                if (_ptr_emulated_server_unc) {
 
18681
                        NDR_PULL_ALLOC(ndr, r->in.emulated_server_unc);
 
18682
                } else {
 
18683
                        r->in.emulated_server_unc = NULL;
 
18684
                }
 
18685
                if (r->in.emulated_server_unc) {
 
18686
                        _mem_save_emulated_server_unc_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18687
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.emulated_server_unc, 0);
 
18688
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.emulated_server_unc));
 
18689
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.emulated_server_unc));
 
18690
                        if (ndr_get_array_length(ndr, &r->in.emulated_server_unc) > ndr_get_array_size(ndr, &r->in.emulated_server_unc)) {
 
18691
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.emulated_server_unc), ndr_get_array_length(ndr, &r->in.emulated_server_unc));
 
18692
                        }
 
18693
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.emulated_server_unc), sizeof(uint16_t)));
 
18694
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.emulated_server_unc, ndr_get_array_length(ndr, &r->in.emulated_server_unc), sizeof(uint16_t), CH_UTF16));
 
18695
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_emulated_server_unc_0, 0);
 
18696
                }
 
18697
                NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_transport));
 
18698
                if (_ptr_transport) {
 
18699
                        NDR_PULL_ALLOC(ndr, r->in.transport);
 
18700
                } else {
 
18701
                        r->in.transport = NULL;
 
18702
                }
 
18703
                if (r->in.transport) {
 
18704
                        _mem_save_transport_0 = NDR_PULL_GET_MEM_CTX(ndr);
 
18705
                        NDR_PULL_SET_MEM_CTX(ndr, r->in.transport, 0);
 
18706
                        NDR_CHECK(ndr_pull_array_size(ndr, &r->in.transport));
 
18707
                        NDR_CHECK(ndr_pull_array_length(ndr, &r->in.transport));
 
18708
                        if (ndr_get_array_length(ndr, &r->in.transport) > ndr_get_array_size(ndr, &r->in.transport)) {
 
18709
                                return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->in.transport), ndr_get_array_length(ndr, &r->in.transport));
 
18710
                        }
 
18711
                        NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.transport), sizeof(uint16_t)));
 
18712
                        NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.transport, ndr_get_array_length(ndr, &r->in.transport), sizeof(uint16_t), CH_UTF16));
 
18713
                        NDR_PULL_SET_MEM_CTX(ndr, _mem_save_transport_0, 0);
 
18714
                }
 
18715
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.servicebitsofinterest));
 
18716
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.servicebits));
 
18717
                NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.updateimmediately));
 
18718
        }
 
18719
        if (flags & NDR_OUT) {
 
18720
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18721
        }
 
18722
        return NDR_ERR_SUCCESS;
 
18723
}
 
18724
 
 
18725
_PUBLIC_ void ndr_print_srvsvc_NetServerSetServiceBitsEx(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NetServerSetServiceBitsEx *r)
 
18726
{
 
18727
        ndr_print_struct(ndr, name, "srvsvc_NetServerSetServiceBitsEx");
 
18728
        ndr->depth++;
 
18729
        if (flags & NDR_SET_VALUES) {
 
18730
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18731
        }
 
18732
        if (flags & NDR_IN) {
 
18733
                ndr_print_struct(ndr, "in", "srvsvc_NetServerSetServiceBitsEx");
 
18734
                ndr->depth++;
 
18735
                ndr_print_ptr(ndr, "server_unc", r->in.server_unc);
 
18736
                ndr->depth++;
 
18737
                if (r->in.server_unc) {
 
18738
                        ndr_print_string(ndr, "server_unc", r->in.server_unc);
 
18739
                }
 
18740
                ndr->depth--;
 
18741
                ndr_print_ptr(ndr, "emulated_server_unc", r->in.emulated_server_unc);
 
18742
                ndr->depth++;
 
18743
                if (r->in.emulated_server_unc) {
 
18744
                        ndr_print_string(ndr, "emulated_server_unc", r->in.emulated_server_unc);
 
18745
                }
 
18746
                ndr->depth--;
 
18747
                ndr_print_ptr(ndr, "transport", r->in.transport);
 
18748
                ndr->depth++;
 
18749
                if (r->in.transport) {
 
18750
                        ndr_print_string(ndr, "transport", r->in.transport);
 
18751
                }
 
18752
                ndr->depth--;
 
18753
                ndr_print_uint32(ndr, "servicebitsofinterest", r->in.servicebitsofinterest);
 
18754
                ndr_print_uint32(ndr, "servicebits", r->in.servicebits);
 
18755
                ndr_print_uint32(ndr, "updateimmediately", r->in.updateimmediately);
 
18756
                ndr->depth--;
 
18757
        }
 
18758
        if (flags & NDR_OUT) {
 
18759
                ndr_print_struct(ndr, "out", "srvsvc_NetServerSetServiceBitsEx");
 
18760
                ndr->depth++;
 
18761
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18762
                ndr->depth--;
 
18763
        }
 
18764
        ndr->depth--;
 
18765
}
 
18766
 
 
18767
static enum ndr_err_code ndr_push_srvsvc_NETRDFSGETVERSION(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSGETVERSION *r)
 
18768
{
 
18769
        if (flags & NDR_IN) {
 
18770
        }
 
18771
        if (flags & NDR_OUT) {
 
18772
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18773
        }
 
18774
        return NDR_ERR_SUCCESS;
 
18775
}
 
18776
 
 
18777
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSGETVERSION(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSGETVERSION *r)
 
18778
{
 
18779
        if (flags & NDR_IN) {
 
18780
        }
 
18781
        if (flags & NDR_OUT) {
 
18782
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18783
        }
 
18784
        return NDR_ERR_SUCCESS;
 
18785
}
 
18786
 
 
18787
_PUBLIC_ void ndr_print_srvsvc_NETRDFSGETVERSION(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSGETVERSION *r)
 
18788
{
 
18789
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSGETVERSION");
 
18790
        ndr->depth++;
 
18791
        if (flags & NDR_SET_VALUES) {
 
18792
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18793
        }
 
18794
        if (flags & NDR_IN) {
 
18795
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSGETVERSION");
 
18796
                ndr->depth++;
 
18797
                ndr->depth--;
 
18798
        }
 
18799
        if (flags & NDR_OUT) {
 
18800
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSGETVERSION");
 
18801
                ndr->depth++;
 
18802
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18803
                ndr->depth--;
 
18804
        }
 
18805
        ndr->depth--;
 
18806
}
 
18807
 
 
18808
static enum ndr_err_code ndr_push_srvsvc_NETRDFSCREATELOCALPARTITION(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSCREATELOCALPARTITION *r)
 
18809
{
 
18810
        if (flags & NDR_IN) {
 
18811
        }
 
18812
        if (flags & NDR_OUT) {
 
18813
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18814
        }
 
18815
        return NDR_ERR_SUCCESS;
 
18816
}
 
18817
 
 
18818
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSCREATELOCALPARTITION(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSCREATELOCALPARTITION *r)
 
18819
{
 
18820
        if (flags & NDR_IN) {
 
18821
        }
 
18822
        if (flags & NDR_OUT) {
 
18823
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18824
        }
 
18825
        return NDR_ERR_SUCCESS;
 
18826
}
 
18827
 
 
18828
_PUBLIC_ void ndr_print_srvsvc_NETRDFSCREATELOCALPARTITION(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSCREATELOCALPARTITION *r)
 
18829
{
 
18830
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSCREATELOCALPARTITION");
 
18831
        ndr->depth++;
 
18832
        if (flags & NDR_SET_VALUES) {
 
18833
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18834
        }
 
18835
        if (flags & NDR_IN) {
 
18836
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSCREATELOCALPARTITION");
 
18837
                ndr->depth++;
 
18838
                ndr->depth--;
 
18839
        }
 
18840
        if (flags & NDR_OUT) {
 
18841
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSCREATELOCALPARTITION");
 
18842
                ndr->depth++;
 
18843
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18844
                ndr->depth--;
 
18845
        }
 
18846
        ndr->depth--;
 
18847
}
 
18848
 
 
18849
static enum ndr_err_code ndr_push_srvsvc_NETRDFSDELETELOCALPARTITION(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSDELETELOCALPARTITION *r)
 
18850
{
 
18851
        if (flags & NDR_IN) {
 
18852
        }
 
18853
        if (flags & NDR_OUT) {
 
18854
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18855
        }
 
18856
        return NDR_ERR_SUCCESS;
 
18857
}
 
18858
 
 
18859
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSDELETELOCALPARTITION(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSDELETELOCALPARTITION *r)
 
18860
{
 
18861
        if (flags & NDR_IN) {
 
18862
        }
 
18863
        if (flags & NDR_OUT) {
 
18864
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18865
        }
 
18866
        return NDR_ERR_SUCCESS;
 
18867
}
 
18868
 
 
18869
_PUBLIC_ void ndr_print_srvsvc_NETRDFSDELETELOCALPARTITION(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSDELETELOCALPARTITION *r)
 
18870
{
 
18871
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSDELETELOCALPARTITION");
 
18872
        ndr->depth++;
 
18873
        if (flags & NDR_SET_VALUES) {
 
18874
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18875
        }
 
18876
        if (flags & NDR_IN) {
 
18877
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSDELETELOCALPARTITION");
 
18878
                ndr->depth++;
 
18879
                ndr->depth--;
 
18880
        }
 
18881
        if (flags & NDR_OUT) {
 
18882
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSDELETELOCALPARTITION");
 
18883
                ndr->depth++;
 
18884
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18885
                ndr->depth--;
 
18886
        }
 
18887
        ndr->depth--;
 
18888
}
 
18889
 
 
18890
static enum ndr_err_code ndr_push_srvsvc_NETRDFSSETLOCALVOLUMESTATE(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *r)
 
18891
{
 
18892
        if (flags & NDR_IN) {
 
18893
        }
 
18894
        if (flags & NDR_OUT) {
 
18895
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18896
        }
 
18897
        return NDR_ERR_SUCCESS;
 
18898
}
 
18899
 
 
18900
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSSETLOCALVOLUMESTATE(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *r)
 
18901
{
 
18902
        if (flags & NDR_IN) {
 
18903
        }
 
18904
        if (flags & NDR_OUT) {
 
18905
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18906
        }
 
18907
        return NDR_ERR_SUCCESS;
 
18908
}
 
18909
 
 
18910
_PUBLIC_ void ndr_print_srvsvc_NETRDFSSETLOCALVOLUMESTATE(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSSETLOCALVOLUMESTATE *r)
 
18911
{
 
18912
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSSETLOCALVOLUMESTATE");
 
18913
        ndr->depth++;
 
18914
        if (flags & NDR_SET_VALUES) {
 
18915
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18916
        }
 
18917
        if (flags & NDR_IN) {
 
18918
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSSETLOCALVOLUMESTATE");
 
18919
                ndr->depth++;
 
18920
                ndr->depth--;
 
18921
        }
 
18922
        if (flags & NDR_OUT) {
 
18923
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSSETLOCALVOLUMESTATE");
 
18924
                ndr->depth++;
 
18925
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18926
                ndr->depth--;
 
18927
        }
 
18928
        ndr->depth--;
 
18929
}
 
18930
 
 
18931
static enum ndr_err_code ndr_push_srvsvc_NETRDFSSETSERVERINFO(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSSETSERVERINFO *r)
 
18932
{
 
18933
        if (flags & NDR_IN) {
 
18934
        }
 
18935
        if (flags & NDR_OUT) {
 
18936
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18937
        }
 
18938
        return NDR_ERR_SUCCESS;
 
18939
}
 
18940
 
 
18941
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSSETSERVERINFO(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSSETSERVERINFO *r)
 
18942
{
 
18943
        if (flags & NDR_IN) {
 
18944
        }
 
18945
        if (flags & NDR_OUT) {
 
18946
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18947
        }
 
18948
        return NDR_ERR_SUCCESS;
 
18949
}
 
18950
 
 
18951
_PUBLIC_ void ndr_print_srvsvc_NETRDFSSETSERVERINFO(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSSETSERVERINFO *r)
 
18952
{
 
18953
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSSETSERVERINFO");
 
18954
        ndr->depth++;
 
18955
        if (flags & NDR_SET_VALUES) {
 
18956
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18957
        }
 
18958
        if (flags & NDR_IN) {
 
18959
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSSETSERVERINFO");
 
18960
                ndr->depth++;
 
18961
                ndr->depth--;
 
18962
        }
 
18963
        if (flags & NDR_OUT) {
 
18964
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSSETSERVERINFO");
 
18965
                ndr->depth++;
 
18966
                ndr_print_WERROR(ndr, "result", r->out.result);
 
18967
                ndr->depth--;
 
18968
        }
 
18969
        ndr->depth--;
 
18970
}
 
18971
 
 
18972
static enum ndr_err_code ndr_push_srvsvc_NETRDFSCREATEEXITPOINT(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSCREATEEXITPOINT *r)
 
18973
{
 
18974
        if (flags & NDR_IN) {
 
18975
        }
 
18976
        if (flags & NDR_OUT) {
 
18977
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
18978
        }
 
18979
        return NDR_ERR_SUCCESS;
 
18980
}
 
18981
 
 
18982
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSCREATEEXITPOINT(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSCREATEEXITPOINT *r)
 
18983
{
 
18984
        if (flags & NDR_IN) {
 
18985
        }
 
18986
        if (flags & NDR_OUT) {
 
18987
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
18988
        }
 
18989
        return NDR_ERR_SUCCESS;
 
18990
}
 
18991
 
 
18992
_PUBLIC_ void ndr_print_srvsvc_NETRDFSCREATEEXITPOINT(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSCREATEEXITPOINT *r)
 
18993
{
 
18994
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSCREATEEXITPOINT");
 
18995
        ndr->depth++;
 
18996
        if (flags & NDR_SET_VALUES) {
 
18997
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
18998
        }
 
18999
        if (flags & NDR_IN) {
 
19000
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSCREATEEXITPOINT");
 
19001
                ndr->depth++;
 
19002
                ndr->depth--;
 
19003
        }
 
19004
        if (flags & NDR_OUT) {
 
19005
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSCREATEEXITPOINT");
 
19006
                ndr->depth++;
 
19007
                ndr_print_WERROR(ndr, "result", r->out.result);
 
19008
                ndr->depth--;
 
19009
        }
 
19010
        ndr->depth--;
 
19011
}
 
19012
 
 
19013
static enum ndr_err_code ndr_push_srvsvc_NETRDFSDELETEEXITPOINT(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSDELETEEXITPOINT *r)
 
19014
{
 
19015
        if (flags & NDR_IN) {
 
19016
        }
 
19017
        if (flags & NDR_OUT) {
 
19018
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
19019
        }
 
19020
        return NDR_ERR_SUCCESS;
 
19021
}
 
19022
 
 
19023
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSDELETEEXITPOINT(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSDELETEEXITPOINT *r)
 
19024
{
 
19025
        if (flags & NDR_IN) {
 
19026
        }
 
19027
        if (flags & NDR_OUT) {
 
19028
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
19029
        }
 
19030
        return NDR_ERR_SUCCESS;
 
19031
}
 
19032
 
 
19033
_PUBLIC_ void ndr_print_srvsvc_NETRDFSDELETEEXITPOINT(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSDELETEEXITPOINT *r)
 
19034
{
 
19035
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSDELETEEXITPOINT");
 
19036
        ndr->depth++;
 
19037
        if (flags & NDR_SET_VALUES) {
 
19038
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
19039
        }
 
19040
        if (flags & NDR_IN) {
 
19041
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSDELETEEXITPOINT");
 
19042
                ndr->depth++;
 
19043
                ndr->depth--;
 
19044
        }
 
19045
        if (flags & NDR_OUT) {
 
19046
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSDELETEEXITPOINT");
 
19047
                ndr->depth++;
 
19048
                ndr_print_WERROR(ndr, "result", r->out.result);
 
19049
                ndr->depth--;
 
19050
        }
 
19051
        ndr->depth--;
 
19052
}
 
19053
 
 
19054
static enum ndr_err_code ndr_push_srvsvc_NETRDFSMODIFYPREFIX(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSMODIFYPREFIX *r)
 
19055
{
 
19056
        if (flags & NDR_IN) {
 
19057
        }
 
19058
        if (flags & NDR_OUT) {
 
19059
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
19060
        }
 
19061
        return NDR_ERR_SUCCESS;
 
19062
}
 
19063
 
 
19064
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSMODIFYPREFIX(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSMODIFYPREFIX *r)
 
19065
{
 
19066
        if (flags & NDR_IN) {
 
19067
        }
 
19068
        if (flags & NDR_OUT) {
 
19069
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
19070
        }
 
19071
        return NDR_ERR_SUCCESS;
 
19072
}
 
19073
 
 
19074
_PUBLIC_ void ndr_print_srvsvc_NETRDFSMODIFYPREFIX(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSMODIFYPREFIX *r)
 
19075
{
 
19076
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSMODIFYPREFIX");
 
19077
        ndr->depth++;
 
19078
        if (flags & NDR_SET_VALUES) {
 
19079
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
19080
        }
 
19081
        if (flags & NDR_IN) {
 
19082
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSMODIFYPREFIX");
 
19083
                ndr->depth++;
 
19084
                ndr->depth--;
 
19085
        }
 
19086
        if (flags & NDR_OUT) {
 
19087
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSMODIFYPREFIX");
 
19088
                ndr->depth++;
 
19089
                ndr_print_WERROR(ndr, "result", r->out.result);
 
19090
                ndr->depth--;
 
19091
        }
 
19092
        ndr->depth--;
 
19093
}
 
19094
 
 
19095
static enum ndr_err_code ndr_push_srvsvc_NETRDFSFIXLOCALVOLUME(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSFIXLOCALVOLUME *r)
 
19096
{
 
19097
        if (flags & NDR_IN) {
 
19098
        }
 
19099
        if (flags & NDR_OUT) {
 
19100
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
19101
        }
 
19102
        return NDR_ERR_SUCCESS;
 
19103
}
 
19104
 
 
19105
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSFIXLOCALVOLUME(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSFIXLOCALVOLUME *r)
 
19106
{
 
19107
        if (flags & NDR_IN) {
 
19108
        }
 
19109
        if (flags & NDR_OUT) {
 
19110
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
19111
        }
 
19112
        return NDR_ERR_SUCCESS;
 
19113
}
 
19114
 
 
19115
_PUBLIC_ void ndr_print_srvsvc_NETRDFSFIXLOCALVOLUME(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSFIXLOCALVOLUME *r)
 
19116
{
 
19117
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSFIXLOCALVOLUME");
 
19118
        ndr->depth++;
 
19119
        if (flags & NDR_SET_VALUES) {
 
19120
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
19121
        }
 
19122
        if (flags & NDR_IN) {
 
19123
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSFIXLOCALVOLUME");
 
19124
                ndr->depth++;
 
19125
                ndr->depth--;
 
19126
        }
 
19127
        if (flags & NDR_OUT) {
 
19128
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSFIXLOCALVOLUME");
 
19129
                ndr->depth++;
 
19130
                ndr_print_WERROR(ndr, "result", r->out.result);
 
19131
                ndr->depth--;
 
19132
        }
 
19133
        ndr->depth--;
 
19134
}
 
19135
 
 
19136
static enum ndr_err_code ndr_push_srvsvc_NETRDFSMANAGERREPORTSITEINFO(struct ndr_push *ndr, int flags, const struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *r)
 
19137
{
 
19138
        if (flags & NDR_IN) {
 
19139
        }
 
19140
        if (flags & NDR_OUT) {
 
19141
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
19142
        }
 
19143
        return NDR_ERR_SUCCESS;
 
19144
}
 
19145
 
 
19146
static enum ndr_err_code ndr_pull_srvsvc_NETRDFSMANAGERREPORTSITEINFO(struct ndr_pull *ndr, int flags, struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *r)
 
19147
{
 
19148
        if (flags & NDR_IN) {
 
19149
        }
 
19150
        if (flags & NDR_OUT) {
 
19151
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
19152
        }
 
19153
        return NDR_ERR_SUCCESS;
 
19154
}
 
19155
 
 
19156
_PUBLIC_ void ndr_print_srvsvc_NETRDFSMANAGERREPORTSITEINFO(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRDFSMANAGERREPORTSITEINFO *r)
 
19157
{
 
19158
        ndr_print_struct(ndr, name, "srvsvc_NETRDFSMANAGERREPORTSITEINFO");
 
19159
        ndr->depth++;
 
19160
        if (flags & NDR_SET_VALUES) {
 
19161
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
19162
        }
 
19163
        if (flags & NDR_IN) {
 
19164
                ndr_print_struct(ndr, "in", "srvsvc_NETRDFSMANAGERREPORTSITEINFO");
 
19165
                ndr->depth++;
 
19166
                ndr->depth--;
 
19167
        }
 
19168
        if (flags & NDR_OUT) {
 
19169
                ndr_print_struct(ndr, "out", "srvsvc_NETRDFSMANAGERREPORTSITEINFO");
 
19170
                ndr->depth++;
 
19171
                ndr_print_WERROR(ndr, "result", r->out.result);
 
19172
                ndr->depth--;
 
19173
        }
 
19174
        ndr->depth--;
 
19175
}
 
19176
 
 
19177
static enum ndr_err_code ndr_push_srvsvc_NETRSERVERTRANSPORTDELEX(struct ndr_push *ndr, int flags, const struct srvsvc_NETRSERVERTRANSPORTDELEX *r)
 
19178
{
 
19179
        if (flags & NDR_IN) {
 
19180
        }
 
19181
        if (flags & NDR_OUT) {
 
19182
                NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
 
19183
        }
 
19184
        return NDR_ERR_SUCCESS;
 
19185
}
 
19186
 
 
19187
static enum ndr_err_code ndr_pull_srvsvc_NETRSERVERTRANSPORTDELEX(struct ndr_pull *ndr, int flags, struct srvsvc_NETRSERVERTRANSPORTDELEX *r)
 
19188
{
 
19189
        if (flags & NDR_IN) {
 
19190
        }
 
19191
        if (flags & NDR_OUT) {
 
19192
                NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
 
19193
        }
 
19194
        return NDR_ERR_SUCCESS;
 
19195
}
 
19196
 
 
19197
_PUBLIC_ void ndr_print_srvsvc_NETRSERVERTRANSPORTDELEX(struct ndr_print *ndr, const char *name, int flags, const struct srvsvc_NETRSERVERTRANSPORTDELEX *r)
 
19198
{
 
19199
        ndr_print_struct(ndr, name, "srvsvc_NETRSERVERTRANSPORTDELEX");
 
19200
        ndr->depth++;
 
19201
        if (flags & NDR_SET_VALUES) {
 
19202
                ndr->flags |= LIBNDR_PRINT_SET_VALUES;
 
19203
        }
 
19204
        if (flags & NDR_IN) {
 
19205
                ndr_print_struct(ndr, "in", "srvsvc_NETRSERVERTRANSPORTDELEX");
 
19206
                ndr->depth++;
 
19207
                ndr->depth--;
 
19208
        }
 
19209
        if (flags & NDR_OUT) {
 
19210
                ndr_print_struct(ndr, "out", "srvsvc_NETRSERVERTRANSPORTDELEX");
 
19211
                ndr->depth++;
 
19212
                ndr_print_WERROR(ndr, "result", r->out.result);
 
19213
                ndr->depth--;
 
19214
        }
 
19215
        ndr->depth--;
 
19216
}
 
19217
 
 
19218
static const struct ndr_interface_call srvsvc_calls[] = {
 
19219
        {
 
19220
                "srvsvc_NetCharDevEnum",
 
19221
                sizeof(struct srvsvc_NetCharDevEnum),
 
19222
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevEnum,
 
19223
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevEnum,
 
19224
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevEnum,
 
19225
                false,
 
19226
        },
 
19227
        {
 
19228
                "srvsvc_NetCharDevGetInfo",
 
19229
                sizeof(struct srvsvc_NetCharDevGetInfo),
 
19230
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevGetInfo,
 
19231
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevGetInfo,
 
19232
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevGetInfo,
 
19233
                false,
 
19234
        },
 
19235
        {
 
19236
                "srvsvc_NetCharDevControl",
 
19237
                sizeof(struct srvsvc_NetCharDevControl),
 
19238
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevControl,
 
19239
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevControl,
 
19240
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevControl,
 
19241
                false,
 
19242
        },
 
19243
        {
 
19244
                "srvsvc_NetCharDevQEnum",
 
19245
                sizeof(struct srvsvc_NetCharDevQEnum),
 
19246
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevQEnum,
 
19247
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevQEnum,
 
19248
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevQEnum,
 
19249
                false,
 
19250
        },
 
19251
        {
 
19252
                "srvsvc_NetCharDevQGetInfo",
 
19253
                sizeof(struct srvsvc_NetCharDevQGetInfo),
 
19254
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevQGetInfo,
 
19255
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevQGetInfo,
 
19256
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevQGetInfo,
 
19257
                false,
 
19258
        },
 
19259
        {
 
19260
                "srvsvc_NetCharDevQSetInfo",
 
19261
                sizeof(struct srvsvc_NetCharDevQSetInfo),
 
19262
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevQSetInfo,
 
19263
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevQSetInfo,
 
19264
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevQSetInfo,
 
19265
                false,
 
19266
        },
 
19267
        {
 
19268
                "srvsvc_NetCharDevQPurge",
 
19269
                sizeof(struct srvsvc_NetCharDevQPurge),
 
19270
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevQPurge,
 
19271
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevQPurge,
 
19272
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevQPurge,
 
19273
                false,
 
19274
        },
 
19275
        {
 
19276
                "srvsvc_NetCharDevQPurgeSelf",
 
19277
                sizeof(struct srvsvc_NetCharDevQPurgeSelf),
 
19278
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetCharDevQPurgeSelf,
 
19279
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetCharDevQPurgeSelf,
 
19280
                (ndr_print_function_t) ndr_print_srvsvc_NetCharDevQPurgeSelf,
 
19281
                false,
 
19282
        },
 
19283
        {
 
19284
                "srvsvc_NetConnEnum",
 
19285
                sizeof(struct srvsvc_NetConnEnum),
 
19286
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetConnEnum,
 
19287
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetConnEnum,
 
19288
                (ndr_print_function_t) ndr_print_srvsvc_NetConnEnum,
 
19289
                false,
 
19290
        },
 
19291
        {
 
19292
                "srvsvc_NetFileEnum",
 
19293
                sizeof(struct srvsvc_NetFileEnum),
 
19294
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetFileEnum,
 
19295
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetFileEnum,
 
19296
                (ndr_print_function_t) ndr_print_srvsvc_NetFileEnum,
 
19297
                false,
 
19298
        },
 
19299
        {
 
19300
                "srvsvc_NetFileGetInfo",
 
19301
                sizeof(struct srvsvc_NetFileGetInfo),
 
19302
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetFileGetInfo,
 
19303
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetFileGetInfo,
 
19304
                (ndr_print_function_t) ndr_print_srvsvc_NetFileGetInfo,
 
19305
                false,
 
19306
        },
 
19307
        {
 
19308
                "srvsvc_NetFileClose",
 
19309
                sizeof(struct srvsvc_NetFileClose),
 
19310
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetFileClose,
 
19311
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetFileClose,
 
19312
                (ndr_print_function_t) ndr_print_srvsvc_NetFileClose,
 
19313
                false,
 
19314
        },
 
19315
        {
 
19316
                "srvsvc_NetSessEnum",
 
19317
                sizeof(struct srvsvc_NetSessEnum),
 
19318
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetSessEnum,
 
19319
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetSessEnum,
 
19320
                (ndr_print_function_t) ndr_print_srvsvc_NetSessEnum,
 
19321
                false,
 
19322
        },
 
19323
        {
 
19324
                "srvsvc_NetSessDel",
 
19325
                sizeof(struct srvsvc_NetSessDel),
 
19326
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetSessDel,
 
19327
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetSessDel,
 
19328
                (ndr_print_function_t) ndr_print_srvsvc_NetSessDel,
 
19329
                false,
 
19330
        },
 
19331
        {
 
19332
                "srvsvc_NetShareAdd",
 
19333
                sizeof(struct srvsvc_NetShareAdd),
 
19334
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareAdd,
 
19335
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareAdd,
 
19336
                (ndr_print_function_t) ndr_print_srvsvc_NetShareAdd,
 
19337
                false,
 
19338
        },
 
19339
        {
 
19340
                "srvsvc_NetShareEnumAll",
 
19341
                sizeof(struct srvsvc_NetShareEnumAll),
 
19342
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareEnumAll,
 
19343
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareEnumAll,
 
19344
                (ndr_print_function_t) ndr_print_srvsvc_NetShareEnumAll,
 
19345
                false,
 
19346
        },
 
19347
        {
 
19348
                "srvsvc_NetShareGetInfo",
 
19349
                sizeof(struct srvsvc_NetShareGetInfo),
 
19350
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareGetInfo,
 
19351
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareGetInfo,
 
19352
                (ndr_print_function_t) ndr_print_srvsvc_NetShareGetInfo,
 
19353
                false,
 
19354
        },
 
19355
        {
 
19356
                "srvsvc_NetShareSetInfo",
 
19357
                sizeof(struct srvsvc_NetShareSetInfo),
 
19358
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareSetInfo,
 
19359
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareSetInfo,
 
19360
                (ndr_print_function_t) ndr_print_srvsvc_NetShareSetInfo,
 
19361
                false,
 
19362
        },
 
19363
        {
 
19364
                "srvsvc_NetShareDel",
 
19365
                sizeof(struct srvsvc_NetShareDel),
 
19366
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareDel,
 
19367
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareDel,
 
19368
                (ndr_print_function_t) ndr_print_srvsvc_NetShareDel,
 
19369
                false,
 
19370
        },
 
19371
        {
 
19372
                "srvsvc_NetShareDelSticky",
 
19373
                sizeof(struct srvsvc_NetShareDelSticky),
 
19374
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareDelSticky,
 
19375
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareDelSticky,
 
19376
                (ndr_print_function_t) ndr_print_srvsvc_NetShareDelSticky,
 
19377
                false,
 
19378
        },
 
19379
        {
 
19380
                "srvsvc_NetShareCheck",
 
19381
                sizeof(struct srvsvc_NetShareCheck),
 
19382
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareCheck,
 
19383
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareCheck,
 
19384
                (ndr_print_function_t) ndr_print_srvsvc_NetShareCheck,
 
19385
                false,
 
19386
        },
 
19387
        {
 
19388
                "srvsvc_NetSrvGetInfo",
 
19389
                sizeof(struct srvsvc_NetSrvGetInfo),
 
19390
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetSrvGetInfo,
 
19391
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetSrvGetInfo,
 
19392
                (ndr_print_function_t) ndr_print_srvsvc_NetSrvGetInfo,
 
19393
                false,
 
19394
        },
 
19395
        {
 
19396
                "srvsvc_NetSrvSetInfo",
 
19397
                sizeof(struct srvsvc_NetSrvSetInfo),
 
19398
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetSrvSetInfo,
 
19399
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetSrvSetInfo,
 
19400
                (ndr_print_function_t) ndr_print_srvsvc_NetSrvSetInfo,
 
19401
                false,
 
19402
        },
 
19403
        {
 
19404
                "srvsvc_NetDiskEnum",
 
19405
                sizeof(struct srvsvc_NetDiskEnum),
 
19406
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetDiskEnum,
 
19407
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetDiskEnum,
 
19408
                (ndr_print_function_t) ndr_print_srvsvc_NetDiskEnum,
 
19409
                false,
 
19410
        },
 
19411
        {
 
19412
                "srvsvc_NetServerStatisticsGet",
 
19413
                sizeof(struct srvsvc_NetServerStatisticsGet),
 
19414
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetServerStatisticsGet,
 
19415
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetServerStatisticsGet,
 
19416
                (ndr_print_function_t) ndr_print_srvsvc_NetServerStatisticsGet,
 
19417
                false,
 
19418
        },
 
19419
        {
 
19420
                "srvsvc_NetTransportAdd",
 
19421
                sizeof(struct srvsvc_NetTransportAdd),
 
19422
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetTransportAdd,
 
19423
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetTransportAdd,
 
19424
                (ndr_print_function_t) ndr_print_srvsvc_NetTransportAdd,
 
19425
                false,
 
19426
        },
 
19427
        {
 
19428
                "srvsvc_NetTransportEnum",
 
19429
                sizeof(struct srvsvc_NetTransportEnum),
 
19430
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetTransportEnum,
 
19431
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetTransportEnum,
 
19432
                (ndr_print_function_t) ndr_print_srvsvc_NetTransportEnum,
 
19433
                false,
 
19434
        },
 
19435
        {
 
19436
                "srvsvc_NetTransportDel",
 
19437
                sizeof(struct srvsvc_NetTransportDel),
 
19438
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetTransportDel,
 
19439
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetTransportDel,
 
19440
                (ndr_print_function_t) ndr_print_srvsvc_NetTransportDel,
 
19441
                false,
 
19442
        },
 
19443
        {
 
19444
                "srvsvc_NetRemoteTOD",
 
19445
                sizeof(struct srvsvc_NetRemoteTOD),
 
19446
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetRemoteTOD,
 
19447
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetRemoteTOD,
 
19448
                (ndr_print_function_t) ndr_print_srvsvc_NetRemoteTOD,
 
19449
                false,
 
19450
        },
 
19451
        {
 
19452
                "srvsvc_NetSetServiceBits",
 
19453
                sizeof(struct srvsvc_NetSetServiceBits),
 
19454
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetSetServiceBits,
 
19455
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetSetServiceBits,
 
19456
                (ndr_print_function_t) ndr_print_srvsvc_NetSetServiceBits,
 
19457
                false,
 
19458
        },
 
19459
        {
 
19460
                "srvsvc_NetPathType",
 
19461
                sizeof(struct srvsvc_NetPathType),
 
19462
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetPathType,
 
19463
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetPathType,
 
19464
                (ndr_print_function_t) ndr_print_srvsvc_NetPathType,
 
19465
                false,
 
19466
        },
 
19467
        {
 
19468
                "srvsvc_NetPathCanonicalize",
 
19469
                sizeof(struct srvsvc_NetPathCanonicalize),
 
19470
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetPathCanonicalize,
 
19471
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetPathCanonicalize,
 
19472
                (ndr_print_function_t) ndr_print_srvsvc_NetPathCanonicalize,
 
19473
                false,
 
19474
        },
 
19475
        {
 
19476
                "srvsvc_NetPathCompare",
 
19477
                sizeof(struct srvsvc_NetPathCompare),
 
19478
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetPathCompare,
 
19479
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetPathCompare,
 
19480
                (ndr_print_function_t) ndr_print_srvsvc_NetPathCompare,
 
19481
                false,
 
19482
        },
 
19483
        {
 
19484
                "srvsvc_NetNameValidate",
 
19485
                sizeof(struct srvsvc_NetNameValidate),
 
19486
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetNameValidate,
 
19487
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetNameValidate,
 
19488
                (ndr_print_function_t) ndr_print_srvsvc_NetNameValidate,
 
19489
                false,
 
19490
        },
 
19491
        {
 
19492
                "srvsvc_NETRPRNAMECANONICALIZE",
 
19493
                sizeof(struct srvsvc_NETRPRNAMECANONICALIZE),
 
19494
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRPRNAMECANONICALIZE,
 
19495
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRPRNAMECANONICALIZE,
 
19496
                (ndr_print_function_t) ndr_print_srvsvc_NETRPRNAMECANONICALIZE,
 
19497
                false,
 
19498
        },
 
19499
        {
 
19500
                "srvsvc_NetPRNameCompare",
 
19501
                sizeof(struct srvsvc_NetPRNameCompare),
 
19502
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetPRNameCompare,
 
19503
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetPRNameCompare,
 
19504
                (ndr_print_function_t) ndr_print_srvsvc_NetPRNameCompare,
 
19505
                false,
 
19506
        },
 
19507
        {
 
19508
                "srvsvc_NetShareEnum",
 
19509
                sizeof(struct srvsvc_NetShareEnum),
 
19510
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareEnum,
 
19511
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareEnum,
 
19512
                (ndr_print_function_t) ndr_print_srvsvc_NetShareEnum,
 
19513
                false,
 
19514
        },
 
19515
        {
 
19516
                "srvsvc_NetShareDelStart",
 
19517
                sizeof(struct srvsvc_NetShareDelStart),
 
19518
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareDelStart,
 
19519
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareDelStart,
 
19520
                (ndr_print_function_t) ndr_print_srvsvc_NetShareDelStart,
 
19521
                false,
 
19522
        },
 
19523
        {
 
19524
                "srvsvc_NetShareDelCommit",
 
19525
                sizeof(struct srvsvc_NetShareDelCommit),
 
19526
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetShareDelCommit,
 
19527
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetShareDelCommit,
 
19528
                (ndr_print_function_t) ndr_print_srvsvc_NetShareDelCommit,
 
19529
                false,
 
19530
        },
 
19531
        {
 
19532
                "srvsvc_NetGetFileSecurity",
 
19533
                sizeof(struct srvsvc_NetGetFileSecurity),
 
19534
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetGetFileSecurity,
 
19535
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetGetFileSecurity,
 
19536
                (ndr_print_function_t) ndr_print_srvsvc_NetGetFileSecurity,
 
19537
                false,
 
19538
        },
 
19539
        {
 
19540
                "srvsvc_NetSetFileSecurity",
 
19541
                sizeof(struct srvsvc_NetSetFileSecurity),
 
19542
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetSetFileSecurity,
 
19543
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetSetFileSecurity,
 
19544
                (ndr_print_function_t) ndr_print_srvsvc_NetSetFileSecurity,
 
19545
                false,
 
19546
        },
 
19547
        {
 
19548
                "srvsvc_NetServerTransportAddEx",
 
19549
                sizeof(struct srvsvc_NetServerTransportAddEx),
 
19550
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetServerTransportAddEx,
 
19551
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetServerTransportAddEx,
 
19552
                (ndr_print_function_t) ndr_print_srvsvc_NetServerTransportAddEx,
 
19553
                false,
 
19554
        },
 
19555
        {
 
19556
                "srvsvc_NetServerSetServiceBitsEx",
 
19557
                sizeof(struct srvsvc_NetServerSetServiceBitsEx),
 
19558
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NetServerSetServiceBitsEx,
 
19559
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NetServerSetServiceBitsEx,
 
19560
                (ndr_print_function_t) ndr_print_srvsvc_NetServerSetServiceBitsEx,
 
19561
                false,
 
19562
        },
 
19563
        {
 
19564
                "srvsvc_NETRDFSGETVERSION",
 
19565
                sizeof(struct srvsvc_NETRDFSGETVERSION),
 
19566
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSGETVERSION,
 
19567
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSGETVERSION,
 
19568
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSGETVERSION,
 
19569
                false,
 
19570
        },
 
19571
        {
 
19572
                "srvsvc_NETRDFSCREATELOCALPARTITION",
 
19573
                sizeof(struct srvsvc_NETRDFSCREATELOCALPARTITION),
 
19574
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSCREATELOCALPARTITION,
 
19575
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSCREATELOCALPARTITION,
 
19576
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSCREATELOCALPARTITION,
 
19577
                false,
 
19578
        },
 
19579
        {
 
19580
                "srvsvc_NETRDFSDELETELOCALPARTITION",
 
19581
                sizeof(struct srvsvc_NETRDFSDELETELOCALPARTITION),
 
19582
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSDELETELOCALPARTITION,
 
19583
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSDELETELOCALPARTITION,
 
19584
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSDELETELOCALPARTITION,
 
19585
                false,
 
19586
        },
 
19587
        {
 
19588
                "srvsvc_NETRDFSSETLOCALVOLUMESTATE",
 
19589
                sizeof(struct srvsvc_NETRDFSSETLOCALVOLUMESTATE),
 
19590
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSSETLOCALVOLUMESTATE,
 
19591
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSSETLOCALVOLUMESTATE,
 
19592
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSSETLOCALVOLUMESTATE,
 
19593
                false,
 
19594
        },
 
19595
        {
 
19596
                "srvsvc_NETRDFSSETSERVERINFO",
 
19597
                sizeof(struct srvsvc_NETRDFSSETSERVERINFO),
 
19598
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSSETSERVERINFO,
 
19599
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSSETSERVERINFO,
 
19600
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSSETSERVERINFO,
 
19601
                false,
 
19602
        },
 
19603
        {
 
19604
                "srvsvc_NETRDFSCREATEEXITPOINT",
 
19605
                sizeof(struct srvsvc_NETRDFSCREATEEXITPOINT),
 
19606
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSCREATEEXITPOINT,
 
19607
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSCREATEEXITPOINT,
 
19608
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSCREATEEXITPOINT,
 
19609
                false,
 
19610
        },
 
19611
        {
 
19612
                "srvsvc_NETRDFSDELETEEXITPOINT",
 
19613
                sizeof(struct srvsvc_NETRDFSDELETEEXITPOINT),
 
19614
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSDELETEEXITPOINT,
 
19615
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSDELETEEXITPOINT,
 
19616
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSDELETEEXITPOINT,
 
19617
                false,
 
19618
        },
 
19619
        {
 
19620
                "srvsvc_NETRDFSMODIFYPREFIX",
 
19621
                sizeof(struct srvsvc_NETRDFSMODIFYPREFIX),
 
19622
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSMODIFYPREFIX,
 
19623
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSMODIFYPREFIX,
 
19624
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSMODIFYPREFIX,
 
19625
                false,
 
19626
        },
 
19627
        {
 
19628
                "srvsvc_NETRDFSFIXLOCALVOLUME",
 
19629
                sizeof(struct srvsvc_NETRDFSFIXLOCALVOLUME),
 
19630
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSFIXLOCALVOLUME,
 
19631
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSFIXLOCALVOLUME,
 
19632
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSFIXLOCALVOLUME,
 
19633
                false,
 
19634
        },
 
19635
        {
 
19636
                "srvsvc_NETRDFSMANAGERREPORTSITEINFO",
 
19637
                sizeof(struct srvsvc_NETRDFSMANAGERREPORTSITEINFO),
 
19638
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRDFSMANAGERREPORTSITEINFO,
 
19639
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRDFSMANAGERREPORTSITEINFO,
 
19640
                (ndr_print_function_t) ndr_print_srvsvc_NETRDFSMANAGERREPORTSITEINFO,
 
19641
                false,
 
19642
        },
 
19643
        {
 
19644
                "srvsvc_NETRSERVERTRANSPORTDELEX",
 
19645
                sizeof(struct srvsvc_NETRSERVERTRANSPORTDELEX),
 
19646
                (ndr_push_flags_fn_t) ndr_push_srvsvc_NETRSERVERTRANSPORTDELEX,
 
19647
                (ndr_pull_flags_fn_t) ndr_pull_srvsvc_NETRSERVERTRANSPORTDELEX,
 
19648
                (ndr_print_function_t) ndr_print_srvsvc_NETRSERVERTRANSPORTDELEX,
 
19649
                false,
 
19650
        },
 
19651
        { NULL, 0, NULL, NULL, NULL, false }
 
19652
};
 
19653
 
 
19654
static const char * const srvsvc_endpoint_strings[] = {
 
19655
        "ncacn_np:[\\pipe\\srvsvc]", 
 
19656
        "ncacn_ip_tcp:", 
 
19657
        "ncalrpc:", 
 
19658
};
 
19659
 
 
19660
static const struct ndr_interface_string_array srvsvc_endpoints = {
 
19661
        .count  = 3,
 
19662
        .names  = srvsvc_endpoint_strings
 
19663
};
 
19664
 
 
19665
static const char * const srvsvc_authservice_strings[] = {
 
19666
        "host", 
 
19667
};
 
19668
 
 
19669
static const struct ndr_interface_string_array srvsvc_authservices = {
 
19670
        .count  = 1,
 
19671
        .names  = srvsvc_authservice_strings
 
19672
};
 
19673
 
 
19674
 
 
19675
const struct ndr_interface_table ndr_table_srvsvc = {
 
19676
        .name           = "srvsvc",
 
19677
        .syntax_id      = {
 
19678
                {0x4b324fc8,0x1670,0x01d3,{0x12,0x78},{0x5a,0x47,0xbf,0x6e,0xe1,0x88}},
 
19679
                NDR_SRVSVC_VERSION
 
19680
        },
 
19681
        .helpstring     = NDR_SRVSVC_HELPSTRING,
 
19682
        .num_calls      = 54,
 
19683
        .calls          = srvsvc_calls,
 
19684
        .endpoints      = &srvsvc_endpoints,
 
19685
        .authservices   = &srvsvc_authservices
 
19686
};
 
19687