1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_dfs.h"
6 NTSTATUS ndr_push_dfs_ManagerVersion(struct ndr_push *ndr, int ndr_flags, enum dfs_ManagerVersion r)
8 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
12 NTSTATUS ndr_pull_dfs_ManagerVersion(struct ndr_pull *ndr, int ndr_flags, enum dfs_ManagerVersion *r)
15 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
20 _PUBLIC_ void ndr_print_dfs_ManagerVersion(struct ndr_print *ndr, const char *name, enum dfs_ManagerVersion r)
22 const char *val = NULL;
25 case DFS_MANAGER_VERSION_NT4: val = "DFS_MANAGER_VERSION_NT4"; break;
26 case DFS_MANAGER_VERSION_W2K: val = "DFS_MANAGER_VERSION_W2K"; break;
27 case DFS_MANAGER_VERSION_W2K3: val = "DFS_MANAGER_VERSION_W2K3"; break;
29 ndr_print_enum(ndr, name, "ENUM", val, r);
32 NTSTATUS ndr_push_dfs_Info0(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info0 *r)
34 if (ndr_flags & NDR_SCALARS) {
35 NDR_CHECK(ndr_push_align(ndr, 1));
37 if (ndr_flags & NDR_BUFFERS) {
42 NTSTATUS ndr_pull_dfs_Info0(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info0 *r)
44 if (ndr_flags & NDR_SCALARS) {
45 NDR_CHECK(ndr_pull_align(ndr, 1));
47 if (ndr_flags & NDR_BUFFERS) {
52 _PUBLIC_ void ndr_print_dfs_Info0(struct ndr_print *ndr, const char *name, const struct dfs_Info0 *r)
54 ndr_print_struct(ndr, name, "dfs_Info0");
59 NTSTATUS ndr_push_dfs_Info1(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info1 *r)
61 if (ndr_flags & NDR_SCALARS) {
62 NDR_CHECK(ndr_push_align(ndr, 4));
63 NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
65 if (ndr_flags & NDR_BUFFERS) {
67 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
68 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
69 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
70 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
76 NTSTATUS ndr_pull_dfs_Info1(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info1 *r)
79 TALLOC_CTX *_mem_save_path_0;
80 if (ndr_flags & NDR_SCALARS) {
81 NDR_CHECK(ndr_pull_align(ndr, 4));
82 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
84 NDR_PULL_ALLOC(ndr, r->path);
89 if (ndr_flags & NDR_BUFFERS) {
91 _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
92 NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
93 NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
94 NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
95 if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
96 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));
98 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
99 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
100 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
106 _PUBLIC_ void ndr_print_dfs_Info1(struct ndr_print *ndr, const char *name, const struct dfs_Info1 *r)
108 ndr_print_struct(ndr, name, "dfs_Info1");
110 ndr_print_ptr(ndr, "path", r->path);
113 ndr_print_string(ndr, "path", r->path);
119 _PUBLIC_ NTSTATUS ndr_push_dfs_VolumeState(struct ndr_push *ndr, int ndr_flags, uint32_t r)
121 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
125 _PUBLIC_ NTSTATUS ndr_pull_dfs_VolumeState(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
128 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
133 _PUBLIC_ void ndr_print_dfs_VolumeState(struct ndr_print *ndr, const char *name, uint32_t r)
135 ndr_print_uint32(ndr, name, r);
137 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_VOLUME_STATE_OK", DFS_VOLUME_STATE_OK, r);
138 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_VOLUME_STATE_INCONSISTENT", DFS_VOLUME_STATE_INCONSISTENT, r);
139 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_VOLUME_STATE_OFFLINE", DFS_VOLUME_STATE_OFFLINE, r);
140 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_VOLUME_STATE_ONLINE", DFS_VOLUME_STATE_ONLINE, r);
141 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_VOLUME_STATE_STANDALONE", DFS_VOLUME_STATE_STANDALONE, r);
142 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_VOLUME_STATE_AD_BLOB", DFS_VOLUME_STATE_AD_BLOB, r);
146 NTSTATUS ndr_push_dfs_Info2(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info2 *r)
148 if (ndr_flags & NDR_SCALARS) {
149 NDR_CHECK(ndr_push_align(ndr, 4));
150 NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
151 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
152 NDR_CHECK(ndr_push_dfs_VolumeState(ndr, NDR_SCALARS, r->state));
153 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
155 if (ndr_flags & NDR_BUFFERS) {
157 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
158 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
159 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
160 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
163 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
164 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
165 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
166 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
172 NTSTATUS ndr_pull_dfs_Info2(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info2 *r)
175 TALLOC_CTX *_mem_save_path_0;
176 uint32_t _ptr_comment;
177 TALLOC_CTX *_mem_save_comment_0;
178 if (ndr_flags & NDR_SCALARS) {
179 NDR_CHECK(ndr_pull_align(ndr, 4));
180 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
182 NDR_PULL_ALLOC(ndr, r->path);
186 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
188 NDR_PULL_ALLOC(ndr, r->comment);
192 NDR_CHECK(ndr_pull_dfs_VolumeState(ndr, NDR_SCALARS, &r->state));
193 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_stores));
195 if (ndr_flags & NDR_BUFFERS) {
197 _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
198 NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
199 NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
200 NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
201 if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
202 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));
204 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
205 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
206 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
209 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
210 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
211 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
212 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
213 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
214 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));
216 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
217 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
218 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
224 _PUBLIC_ void ndr_print_dfs_Info2(struct ndr_print *ndr, const char *name, const struct dfs_Info2 *r)
226 ndr_print_struct(ndr, name, "dfs_Info2");
228 ndr_print_ptr(ndr, "path", r->path);
231 ndr_print_string(ndr, "path", r->path);
234 ndr_print_ptr(ndr, "comment", r->comment);
237 ndr_print_string(ndr, "comment", r->comment);
240 ndr_print_dfs_VolumeState(ndr, "state", r->state);
241 ndr_print_uint32(ndr, "num_stores", r->num_stores);
245 _PUBLIC_ NTSTATUS ndr_push_dfs_StorageState(struct ndr_push *ndr, int ndr_flags, uint32_t r)
247 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
251 _PUBLIC_ NTSTATUS ndr_pull_dfs_StorageState(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
254 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
259 _PUBLIC_ void ndr_print_dfs_StorageState(struct ndr_print *ndr, const char *name, uint32_t r)
261 ndr_print_uint32(ndr, name, r);
263 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_STORAGE_STATE_OFFLINE", DFS_STORAGE_STATE_OFFLINE, r);
264 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_STORAGE_STATE_ONLINE", DFS_STORAGE_STATE_ONLINE, r);
265 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_STORAGE_STATE_ACTIVE", DFS_STORAGE_STATE_ACTIVE, r);
269 NTSTATUS ndr_push_dfs_StorageInfo(struct ndr_push *ndr, int ndr_flags, const struct dfs_StorageInfo *r)
271 if (ndr_flags & NDR_SCALARS) {
272 NDR_CHECK(ndr_push_align(ndr, 4));
273 NDR_CHECK(ndr_push_dfs_StorageState(ndr, NDR_SCALARS, r->state));
274 NDR_CHECK(ndr_push_unique_ptr(ndr, r->server));
275 NDR_CHECK(ndr_push_unique_ptr(ndr, r->share));
277 if (ndr_flags & NDR_BUFFERS) {
279 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server, CH_UTF16)));
280 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
281 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->server, CH_UTF16)));
282 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->server, ndr_charset_length(r->server, CH_UTF16), sizeof(uint16_t), CH_UTF16));
285 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->share, CH_UTF16)));
286 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
287 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->share, CH_UTF16)));
288 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->share, ndr_charset_length(r->share, CH_UTF16), sizeof(uint16_t), CH_UTF16));
294 NTSTATUS ndr_pull_dfs_StorageInfo(struct ndr_pull *ndr, int ndr_flags, struct dfs_StorageInfo *r)
296 uint32_t _ptr_server;
297 TALLOC_CTX *_mem_save_server_0;
299 TALLOC_CTX *_mem_save_share_0;
300 if (ndr_flags & NDR_SCALARS) {
301 NDR_CHECK(ndr_pull_align(ndr, 4));
302 NDR_CHECK(ndr_pull_dfs_StorageState(ndr, NDR_SCALARS, &r->state));
303 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_server));
305 NDR_PULL_ALLOC(ndr, r->server);
309 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_share));
311 NDR_PULL_ALLOC(ndr, r->share);
316 if (ndr_flags & NDR_BUFFERS) {
318 _mem_save_server_0 = NDR_PULL_GET_MEM_CTX(ndr);
319 NDR_PULL_SET_MEM_CTX(ndr, r->server, 0);
320 NDR_CHECK(ndr_pull_array_size(ndr, &r->server));
321 NDR_CHECK(ndr_pull_array_length(ndr, &r->server));
322 if (ndr_get_array_length(ndr, &r->server) > ndr_get_array_size(ndr, &r->server)) {
323 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), ndr_get_array_length(ndr, &r->server));
325 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->server), sizeof(uint16_t)));
326 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->server, ndr_get_array_length(ndr, &r->server), sizeof(uint16_t), CH_UTF16));
327 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_server_0, 0);
330 _mem_save_share_0 = NDR_PULL_GET_MEM_CTX(ndr);
331 NDR_PULL_SET_MEM_CTX(ndr, r->share, 0);
332 NDR_CHECK(ndr_pull_array_size(ndr, &r->share));
333 NDR_CHECK(ndr_pull_array_length(ndr, &r->share));
334 if (ndr_get_array_length(ndr, &r->share) > ndr_get_array_size(ndr, &r->share)) {
335 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));
337 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->share), sizeof(uint16_t)));
338 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->share, ndr_get_array_length(ndr, &r->share), sizeof(uint16_t), CH_UTF16));
339 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_share_0, 0);
345 _PUBLIC_ void ndr_print_dfs_StorageInfo(struct ndr_print *ndr, const char *name, const struct dfs_StorageInfo *r)
347 ndr_print_struct(ndr, name, "dfs_StorageInfo");
349 ndr_print_dfs_StorageState(ndr, "state", r->state);
350 ndr_print_ptr(ndr, "server", r->server);
353 ndr_print_string(ndr, "server", r->server);
356 ndr_print_ptr(ndr, "share", r->share);
359 ndr_print_string(ndr, "share", r->share);
365 NTSTATUS ndr_push_dfs_Info3(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info3 *r)
367 uint32_t cntr_stores_1;
368 if (ndr_flags & NDR_SCALARS) {
369 NDR_CHECK(ndr_push_align(ndr, 4));
370 NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
371 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
372 NDR_CHECK(ndr_push_dfs_VolumeState(ndr, NDR_SCALARS, r->state));
373 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
374 NDR_CHECK(ndr_push_unique_ptr(ndr, r->stores));
376 if (ndr_flags & NDR_BUFFERS) {
378 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
379 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
380 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
381 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
384 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
385 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
386 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
387 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
390 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
391 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
392 NDR_CHECK(ndr_push_dfs_StorageInfo(ndr, NDR_SCALARS, &r->stores[cntr_stores_1]));
394 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
395 NDR_CHECK(ndr_push_dfs_StorageInfo(ndr, NDR_BUFFERS, &r->stores[cntr_stores_1]));
402 NTSTATUS ndr_pull_dfs_Info3(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info3 *r)
405 TALLOC_CTX *_mem_save_path_0;
406 uint32_t _ptr_comment;
407 TALLOC_CTX *_mem_save_comment_0;
408 uint32_t _ptr_stores;
409 uint32_t cntr_stores_1;
410 TALLOC_CTX *_mem_save_stores_0;
411 TALLOC_CTX *_mem_save_stores_1;
412 if (ndr_flags & NDR_SCALARS) {
413 NDR_CHECK(ndr_pull_align(ndr, 4));
414 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
416 NDR_PULL_ALLOC(ndr, r->path);
420 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
422 NDR_PULL_ALLOC(ndr, r->comment);
426 NDR_CHECK(ndr_pull_dfs_VolumeState(ndr, NDR_SCALARS, &r->state));
427 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_stores));
428 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_stores));
430 NDR_PULL_ALLOC(ndr, r->stores);
435 if (ndr_flags & NDR_BUFFERS) {
437 _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
438 NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
439 NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
440 NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
441 if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
442 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));
444 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
445 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
446 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
449 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
450 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
451 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
452 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
453 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
454 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));
456 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
457 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
458 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
461 _mem_save_stores_0 = NDR_PULL_GET_MEM_CTX(ndr);
462 NDR_PULL_SET_MEM_CTX(ndr, r->stores, 0);
463 NDR_CHECK(ndr_pull_array_size(ndr, &r->stores));
464 NDR_PULL_ALLOC_N(ndr, r->stores, ndr_get_array_size(ndr, &r->stores));
465 _mem_save_stores_1 = NDR_PULL_GET_MEM_CTX(ndr);
466 NDR_PULL_SET_MEM_CTX(ndr, r->stores, 0);
467 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
468 NDR_CHECK(ndr_pull_dfs_StorageInfo(ndr, NDR_SCALARS, &r->stores[cntr_stores_1]));
470 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
471 NDR_CHECK(ndr_pull_dfs_StorageInfo(ndr, NDR_BUFFERS, &r->stores[cntr_stores_1]));
473 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stores_1, 0);
474 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stores_0, 0);
477 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->stores, r->num_stores));
483 _PUBLIC_ void ndr_print_dfs_Info3(struct ndr_print *ndr, const char *name, const struct dfs_Info3 *r)
485 uint32_t cntr_stores_1;
486 ndr_print_struct(ndr, name, "dfs_Info3");
488 ndr_print_ptr(ndr, "path", r->path);
491 ndr_print_string(ndr, "path", r->path);
494 ndr_print_ptr(ndr, "comment", r->comment);
497 ndr_print_string(ndr, "comment", r->comment);
500 ndr_print_dfs_VolumeState(ndr, "state", r->state);
501 ndr_print_uint32(ndr, "num_stores", r->num_stores);
502 ndr_print_ptr(ndr, "stores", r->stores);
505 ndr->print(ndr, "%s: ARRAY(%d)", "stores", r->num_stores);
507 for (cntr_stores_1=0;cntr_stores_1<r->num_stores;cntr_stores_1++) {
509 asprintf(&idx_1, "[%d]", cntr_stores_1);
511 ndr_print_dfs_StorageInfo(ndr, "stores", &r->stores[cntr_stores_1]);
521 NTSTATUS ndr_push_dfs_Info4(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info4 *r)
523 uint32_t cntr_stores_1;
524 if (ndr_flags & NDR_SCALARS) {
525 NDR_CHECK(ndr_push_align(ndr, 4));
526 NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
527 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
528 NDR_CHECK(ndr_push_dfs_VolumeState(ndr, NDR_SCALARS, r->state));
529 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timeout));
530 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->guid));
531 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
532 NDR_CHECK(ndr_push_unique_ptr(ndr, r->stores));
534 if (ndr_flags & NDR_BUFFERS) {
536 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
537 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
538 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
539 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
542 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
543 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
544 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
545 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
547 NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->guid));
549 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
550 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
551 NDR_CHECK(ndr_push_dfs_StorageInfo(ndr, NDR_SCALARS, &r->stores[cntr_stores_1]));
553 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
554 NDR_CHECK(ndr_push_dfs_StorageInfo(ndr, NDR_BUFFERS, &r->stores[cntr_stores_1]));
561 NTSTATUS ndr_pull_dfs_Info4(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info4 *r)
564 TALLOC_CTX *_mem_save_path_0;
565 uint32_t _ptr_comment;
566 TALLOC_CTX *_mem_save_comment_0;
567 uint32_t _ptr_stores;
568 uint32_t cntr_stores_1;
569 TALLOC_CTX *_mem_save_stores_0;
570 TALLOC_CTX *_mem_save_stores_1;
571 if (ndr_flags & NDR_SCALARS) {
572 NDR_CHECK(ndr_pull_align(ndr, 4));
573 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
575 NDR_PULL_ALLOC(ndr, r->path);
579 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
581 NDR_PULL_ALLOC(ndr, r->comment);
585 NDR_CHECK(ndr_pull_dfs_VolumeState(ndr, NDR_SCALARS, &r->state));
586 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timeout));
587 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->guid));
588 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_stores));
589 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_stores));
591 NDR_PULL_ALLOC(ndr, r->stores);
596 if (ndr_flags & NDR_BUFFERS) {
598 _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
599 NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
600 NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
601 NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
602 if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
603 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));
605 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
606 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
607 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
610 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
611 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
612 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
613 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
614 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
615 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));
617 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
618 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
619 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
621 NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->guid));
623 _mem_save_stores_0 = NDR_PULL_GET_MEM_CTX(ndr);
624 NDR_PULL_SET_MEM_CTX(ndr, r->stores, 0);
625 NDR_CHECK(ndr_pull_array_size(ndr, &r->stores));
626 NDR_PULL_ALLOC_N(ndr, r->stores, ndr_get_array_size(ndr, &r->stores));
627 _mem_save_stores_1 = NDR_PULL_GET_MEM_CTX(ndr);
628 NDR_PULL_SET_MEM_CTX(ndr, r->stores, 0);
629 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
630 NDR_CHECK(ndr_pull_dfs_StorageInfo(ndr, NDR_SCALARS, &r->stores[cntr_stores_1]));
632 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
633 NDR_CHECK(ndr_pull_dfs_StorageInfo(ndr, NDR_BUFFERS, &r->stores[cntr_stores_1]));
635 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stores_1, 0);
636 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stores_0, 0);
639 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->stores, r->num_stores));
645 _PUBLIC_ void ndr_print_dfs_Info4(struct ndr_print *ndr, const char *name, const struct dfs_Info4 *r)
647 uint32_t cntr_stores_1;
648 ndr_print_struct(ndr, name, "dfs_Info4");
650 ndr_print_ptr(ndr, "path", r->path);
653 ndr_print_string(ndr, "path", r->path);
656 ndr_print_ptr(ndr, "comment", r->comment);
659 ndr_print_string(ndr, "comment", r->comment);
662 ndr_print_dfs_VolumeState(ndr, "state", r->state);
663 ndr_print_uint32(ndr, "timeout", r->timeout);
664 ndr_print_GUID(ndr, "guid", &r->guid);
665 ndr_print_uint32(ndr, "num_stores", r->num_stores);
666 ndr_print_ptr(ndr, "stores", r->stores);
669 ndr->print(ndr, "%s: ARRAY(%d)", "stores", r->num_stores);
671 for (cntr_stores_1=0;cntr_stores_1<r->num_stores;cntr_stores_1++) {
673 asprintf(&idx_1, "[%d]", cntr_stores_1);
675 ndr_print_dfs_StorageInfo(ndr, "stores", &r->stores[cntr_stores_1]);
685 _PUBLIC_ NTSTATUS ndr_push_dfs_PropertyFlags(struct ndr_push *ndr, int ndr_flags, uint32_t r)
687 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
691 _PUBLIC_ NTSTATUS ndr_pull_dfs_PropertyFlags(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
694 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
699 _PUBLIC_ void ndr_print_dfs_PropertyFlags(struct ndr_print *ndr, const char *name, uint32_t r)
701 ndr_print_uint32(ndr, name, r);
703 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_PROPERTY_FLAG_INSITE_REFERRALS", DFS_PROPERTY_FLAG_INSITE_REFERRALS, r);
704 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_PROPERTY_FLAG_ROOT_SCALABILITY", DFS_PROPERTY_FLAG_ROOT_SCALABILITY, r);
705 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_PROPERTY_FLAG_SITE_COSTING", DFS_PROPERTY_FLAG_SITE_COSTING, r);
706 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_PROPERTY_FLAG_TARGET_FAILBACK", DFS_PROPERTY_FLAG_TARGET_FAILBACK, r);
707 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "DFS_PROPERTY_FLAG_CLUSTER_ENABLED", DFS_PROPERTY_FLAG_CLUSTER_ENABLED, r);
711 NTSTATUS ndr_push_dfs_Info5(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info5 *r)
713 if (ndr_flags & NDR_SCALARS) {
714 NDR_CHECK(ndr_push_align(ndr, 4));
715 NDR_CHECK(ndr_push_unique_ptr(ndr, r->path));
716 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
717 NDR_CHECK(ndr_push_dfs_VolumeState(ndr, NDR_SCALARS, r->state));
718 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timeout));
719 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->guid));
720 NDR_CHECK(ndr_push_dfs_PropertyFlags(ndr, NDR_SCALARS, r->flags));
721 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pktsize));
722 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
724 if (ndr_flags & NDR_BUFFERS) {
726 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
727 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
728 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->path, CH_UTF16)));
729 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->path, ndr_charset_length(r->path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
732 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
733 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
734 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
735 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
737 NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->guid));
742 NTSTATUS ndr_pull_dfs_Info5(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info5 *r)
745 TALLOC_CTX *_mem_save_path_0;
746 uint32_t _ptr_comment;
747 TALLOC_CTX *_mem_save_comment_0;
748 if (ndr_flags & NDR_SCALARS) {
749 NDR_CHECK(ndr_pull_align(ndr, 4));
750 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_path));
752 NDR_PULL_ALLOC(ndr, r->path);
756 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
758 NDR_PULL_ALLOC(ndr, r->comment);
762 NDR_CHECK(ndr_pull_dfs_VolumeState(ndr, NDR_SCALARS, &r->state));
763 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timeout));
764 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->guid));
765 NDR_CHECK(ndr_pull_dfs_PropertyFlags(ndr, NDR_SCALARS, &r->flags));
766 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pktsize));
767 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_stores));
769 if (ndr_flags & NDR_BUFFERS) {
771 _mem_save_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
772 NDR_PULL_SET_MEM_CTX(ndr, r->path, 0);
773 NDR_CHECK(ndr_pull_array_size(ndr, &r->path));
774 NDR_CHECK(ndr_pull_array_length(ndr, &r->path));
775 if (ndr_get_array_length(ndr, &r->path) > ndr_get_array_size(ndr, &r->path)) {
776 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));
778 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t)));
779 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->path, ndr_get_array_length(ndr, &r->path), sizeof(uint16_t), CH_UTF16));
780 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_path_0, 0);
783 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
784 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
785 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
786 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
787 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
788 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));
790 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
791 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
792 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
794 NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->guid));
799 _PUBLIC_ void ndr_print_dfs_Info5(struct ndr_print *ndr, const char *name, const struct dfs_Info5 *r)
801 ndr_print_struct(ndr, name, "dfs_Info5");
803 ndr_print_ptr(ndr, "path", r->path);
806 ndr_print_string(ndr, "path", r->path);
809 ndr_print_ptr(ndr, "comment", r->comment);
812 ndr_print_string(ndr, "comment", r->comment);
815 ndr_print_dfs_VolumeState(ndr, "state", r->state);
816 ndr_print_uint32(ndr, "timeout", r->timeout);
817 ndr_print_GUID(ndr, "guid", &r->guid);
818 ndr_print_dfs_PropertyFlags(ndr, "flags", r->flags);
819 ndr_print_uint32(ndr, "pktsize", r->pktsize);
820 ndr_print_uint32(ndr, "num_stores", r->num_stores);
824 NTSTATUS ndr_push_dfs_Target_PriorityClass(struct ndr_push *ndr, int ndr_flags, enum dfs_Target_PriorityClass r)
826 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
830 NTSTATUS ndr_pull_dfs_Target_PriorityClass(struct ndr_pull *ndr, int ndr_flags, enum dfs_Target_PriorityClass *r)
833 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
838 _PUBLIC_ void ndr_print_dfs_Target_PriorityClass(struct ndr_print *ndr, const char *name, enum dfs_Target_PriorityClass r)
840 const char *val = NULL;
843 case DFS_INVALID_PRIORITY_CLASS: val = "DFS_INVALID_PRIORITY_CLASS"; break;
844 case DFS_SITE_COST_NORMAL_PRIORITY_CLASS: val = "DFS_SITE_COST_NORMAL_PRIORITY_CLASS"; break;
845 case DFS_GLOBAL_HIGH_PRIORITY_CLASS: val = "DFS_GLOBAL_HIGH_PRIORITY_CLASS"; break;
846 case DFS_SITE_COST_HIGH_PRIORITY_CLASS: val = "DFS_SITE_COST_HIGH_PRIORITY_CLASS"; break;
847 case DFS_SITE_COST_LOW_PRIORITY_CLASS: val = "DFS_SITE_COST_LOW_PRIORITY_CLASS"; break;
848 case DFS_GLOBAL_LOW_PRIORITY_CLASS: val = "DFS_GLOBAL_LOW_PRIORITY_CLASS"; break;
850 ndr_print_enum(ndr, name, "ENUM", val, r);
853 NTSTATUS ndr_push_dfs_Target_Priority(struct ndr_push *ndr, int ndr_flags, const struct dfs_Target_Priority *r)
855 if (ndr_flags & NDR_SCALARS) {
856 NDR_CHECK(ndr_push_align(ndr, 4));
857 NDR_CHECK(ndr_push_dfs_Target_PriorityClass(ndr, NDR_SCALARS, r->target_priority_class));
858 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->target_priority_rank));
859 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->reserved));
861 if (ndr_flags & NDR_BUFFERS) {
866 NTSTATUS ndr_pull_dfs_Target_Priority(struct ndr_pull *ndr, int ndr_flags, struct dfs_Target_Priority *r)
868 if (ndr_flags & NDR_SCALARS) {
869 NDR_CHECK(ndr_pull_align(ndr, 4));
870 NDR_CHECK(ndr_pull_dfs_Target_PriorityClass(ndr, NDR_SCALARS, &r->target_priority_class));
871 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->target_priority_rank));
872 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->reserved));
874 if (ndr_flags & NDR_BUFFERS) {
879 _PUBLIC_ void ndr_print_dfs_Target_Priority(struct ndr_print *ndr, const char *name, const struct dfs_Target_Priority *r)
881 ndr_print_struct(ndr, name, "dfs_Target_Priority");
883 ndr_print_dfs_Target_PriorityClass(ndr, "target_priority_class", r->target_priority_class);
884 ndr_print_uint16(ndr, "target_priority_rank", r->target_priority_rank);
885 ndr_print_uint16(ndr, "reserved", r->reserved);
889 NTSTATUS ndr_push_dfs_StorageInfo2(struct ndr_push *ndr, int ndr_flags, const struct dfs_StorageInfo2 *r)
891 if (ndr_flags & NDR_SCALARS) {
892 NDR_CHECK(ndr_push_align(ndr, 4));
893 NDR_CHECK(ndr_push_dfs_StorageInfo(ndr, NDR_SCALARS, &r->info));
894 NDR_CHECK(ndr_push_dfs_Target_Priority(ndr, NDR_SCALARS, &r->target_priority));
896 if (ndr_flags & NDR_BUFFERS) {
897 NDR_CHECK(ndr_push_dfs_StorageInfo(ndr, NDR_BUFFERS, &r->info));
902 NTSTATUS ndr_pull_dfs_StorageInfo2(struct ndr_pull *ndr, int ndr_flags, struct dfs_StorageInfo2 *r)
904 if (ndr_flags & NDR_SCALARS) {
905 NDR_CHECK(ndr_pull_align(ndr, 4));
906 NDR_CHECK(ndr_pull_dfs_StorageInfo(ndr, NDR_SCALARS, &r->info));
907 NDR_CHECK(ndr_pull_dfs_Target_Priority(ndr, NDR_SCALARS, &r->target_priority));
909 if (ndr_flags & NDR_BUFFERS) {
910 NDR_CHECK(ndr_pull_dfs_StorageInfo(ndr, NDR_BUFFERS, &r->info));
915 _PUBLIC_ void ndr_print_dfs_StorageInfo2(struct ndr_print *ndr, const char *name, const struct dfs_StorageInfo2 *r)
917 ndr_print_struct(ndr, name, "dfs_StorageInfo2");
919 ndr_print_dfs_StorageInfo(ndr, "info", &r->info);
920 ndr_print_dfs_Target_Priority(ndr, "target_priority", &r->target_priority);
924 NTSTATUS ndr_push_dfs_Info6(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info6 *r)
926 uint32_t cntr_stores_1;
927 if (ndr_flags & NDR_SCALARS) {
928 NDR_CHECK(ndr_push_align(ndr, 4));
929 NDR_CHECK(ndr_push_unique_ptr(ndr, r->entry_path));
930 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
931 NDR_CHECK(ndr_push_dfs_VolumeState(ndr, NDR_SCALARS, r->state));
932 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timeout));
933 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->guid));
934 NDR_CHECK(ndr_push_dfs_PropertyFlags(ndr, NDR_SCALARS, r->flags));
935 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pktsize));
936 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->num_stores));
937 NDR_CHECK(ndr_push_unique_ptr(ndr, r->stores));
939 if (ndr_flags & NDR_BUFFERS) {
941 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->entry_path, CH_UTF16)));
942 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
943 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->entry_path, CH_UTF16)));
944 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->entry_path, ndr_charset_length(r->entry_path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
947 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
948 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
949 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
950 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
952 NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->guid));
954 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_stores));
955 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
956 NDR_CHECK(ndr_push_dfs_StorageInfo2(ndr, NDR_SCALARS, &r->stores[cntr_stores_1]));
958 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
959 NDR_CHECK(ndr_push_dfs_StorageInfo2(ndr, NDR_BUFFERS, &r->stores[cntr_stores_1]));
966 NTSTATUS ndr_pull_dfs_Info6(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info6 *r)
968 uint32_t _ptr_entry_path;
969 TALLOC_CTX *_mem_save_entry_path_0;
970 uint32_t _ptr_comment;
971 TALLOC_CTX *_mem_save_comment_0;
972 uint32_t _ptr_stores;
973 uint32_t cntr_stores_1;
974 TALLOC_CTX *_mem_save_stores_0;
975 TALLOC_CTX *_mem_save_stores_1;
976 if (ndr_flags & NDR_SCALARS) {
977 NDR_CHECK(ndr_pull_align(ndr, 4));
978 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entry_path));
979 if (_ptr_entry_path) {
980 NDR_PULL_ALLOC(ndr, r->entry_path);
982 r->entry_path = NULL;
984 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
986 NDR_PULL_ALLOC(ndr, r->comment);
990 NDR_CHECK(ndr_pull_dfs_VolumeState(ndr, NDR_SCALARS, &r->state));
991 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timeout));
992 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->guid));
993 NDR_CHECK(ndr_pull_dfs_PropertyFlags(ndr, NDR_SCALARS, &r->flags));
994 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pktsize));
995 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->num_stores));
996 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_stores));
998 NDR_PULL_ALLOC(ndr, r->stores);
1003 if (ndr_flags & NDR_BUFFERS) {
1004 if (r->entry_path) {
1005 _mem_save_entry_path_0 = NDR_PULL_GET_MEM_CTX(ndr);
1006 NDR_PULL_SET_MEM_CTX(ndr, r->entry_path, 0);
1007 NDR_CHECK(ndr_pull_array_size(ndr, &r->entry_path));
1008 NDR_CHECK(ndr_pull_array_length(ndr, &r->entry_path));
1009 if (ndr_get_array_length(ndr, &r->entry_path) > ndr_get_array_size(ndr, &r->entry_path)) {
1010 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->entry_path), ndr_get_array_length(ndr, &r->entry_path));
1012 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->entry_path), sizeof(uint16_t)));
1013 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->entry_path, ndr_get_array_length(ndr, &r->entry_path), sizeof(uint16_t), CH_UTF16));
1014 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entry_path_0, 0);
1017 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
1018 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
1019 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
1020 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
1021 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
1022 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));
1024 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
1025 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
1026 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
1028 NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->guid));
1030 _mem_save_stores_0 = NDR_PULL_GET_MEM_CTX(ndr);
1031 NDR_PULL_SET_MEM_CTX(ndr, r->stores, 0);
1032 NDR_CHECK(ndr_pull_array_size(ndr, &r->stores));
1033 NDR_PULL_ALLOC_N(ndr, r->stores, ndr_get_array_size(ndr, &r->stores));
1034 _mem_save_stores_1 = NDR_PULL_GET_MEM_CTX(ndr);
1035 NDR_PULL_SET_MEM_CTX(ndr, r->stores, 0);
1036 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
1037 NDR_CHECK(ndr_pull_dfs_StorageInfo2(ndr, NDR_SCALARS, &r->stores[cntr_stores_1]));
1039 for (cntr_stores_1 = 0; cntr_stores_1 < r->num_stores; cntr_stores_1++) {
1040 NDR_CHECK(ndr_pull_dfs_StorageInfo2(ndr, NDR_BUFFERS, &r->stores[cntr_stores_1]));
1042 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stores_1, 0);
1043 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_stores_0, 0);
1046 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->stores, r->num_stores));
1049 return NT_STATUS_OK;
1052 _PUBLIC_ void ndr_print_dfs_Info6(struct ndr_print *ndr, const char *name, const struct dfs_Info6 *r)
1054 uint32_t cntr_stores_1;
1055 ndr_print_struct(ndr, name, "dfs_Info6");
1057 ndr_print_ptr(ndr, "entry_path", r->entry_path);
1059 if (r->entry_path) {
1060 ndr_print_string(ndr, "entry_path", r->entry_path);
1063 ndr_print_ptr(ndr, "comment", r->comment);
1066 ndr_print_string(ndr, "comment", r->comment);
1069 ndr_print_dfs_VolumeState(ndr, "state", r->state);
1070 ndr_print_uint32(ndr, "timeout", r->timeout);
1071 ndr_print_GUID(ndr, "guid", &r->guid);
1072 ndr_print_dfs_PropertyFlags(ndr, "flags", r->flags);
1073 ndr_print_uint32(ndr, "pktsize", r->pktsize);
1074 ndr_print_uint16(ndr, "num_stores", r->num_stores);
1075 ndr_print_ptr(ndr, "stores", r->stores);
1078 ndr->print(ndr, "%s: ARRAY(%d)", "stores", r->num_stores);
1080 for (cntr_stores_1=0;cntr_stores_1<r->num_stores;cntr_stores_1++) {
1082 asprintf(&idx_1, "[%d]", cntr_stores_1);
1084 ndr_print_dfs_StorageInfo2(ndr, "stores", &r->stores[cntr_stores_1]);
1094 NTSTATUS ndr_push_dfs_Info7(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info7 *r)
1096 if (ndr_flags & NDR_SCALARS) {
1097 NDR_CHECK(ndr_push_align(ndr, 4));
1098 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->generation_guid));
1100 if (ndr_flags & NDR_BUFFERS) {
1101 NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->generation_guid));
1103 return NT_STATUS_OK;
1106 NTSTATUS ndr_pull_dfs_Info7(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info7 *r)
1108 if (ndr_flags & NDR_SCALARS) {
1109 NDR_CHECK(ndr_pull_align(ndr, 4));
1110 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->generation_guid));
1112 if (ndr_flags & NDR_BUFFERS) {
1113 NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->generation_guid));
1115 return NT_STATUS_OK;
1118 _PUBLIC_ void ndr_print_dfs_Info7(struct ndr_print *ndr, const char *name, const struct dfs_Info7 *r)
1120 ndr_print_struct(ndr, name, "dfs_Info7");
1122 ndr_print_GUID(ndr, "generation_guid", &r->generation_guid);
1126 NTSTATUS ndr_push_dfs_Info100(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info100 *r)
1128 if (ndr_flags & NDR_SCALARS) {
1129 NDR_CHECK(ndr_push_align(ndr, 4));
1130 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
1132 if (ndr_flags & NDR_BUFFERS) {
1134 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
1135 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1136 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
1137 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1140 return NT_STATUS_OK;
1143 NTSTATUS ndr_pull_dfs_Info100(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info100 *r)
1145 uint32_t _ptr_comment;
1146 TALLOC_CTX *_mem_save_comment_0;
1147 if (ndr_flags & NDR_SCALARS) {
1148 NDR_CHECK(ndr_pull_align(ndr, 4));
1149 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
1151 NDR_PULL_ALLOC(ndr, r->comment);
1156 if (ndr_flags & NDR_BUFFERS) {
1158 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
1159 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
1160 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
1161 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
1162 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
1163 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));
1165 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
1166 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
1167 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
1170 return NT_STATUS_OK;
1173 _PUBLIC_ void ndr_print_dfs_Info100(struct ndr_print *ndr, const char *name, const struct dfs_Info100 *r)
1175 ndr_print_struct(ndr, name, "dfs_Info100");
1177 ndr_print_ptr(ndr, "comment", r->comment);
1180 ndr_print_string(ndr, "comment", r->comment);
1186 NTSTATUS ndr_push_dfs_Info101(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info101 *r)
1188 if (ndr_flags & NDR_SCALARS) {
1189 NDR_CHECK(ndr_push_align(ndr, 4));
1190 NDR_CHECK(ndr_push_dfs_StorageState(ndr, NDR_SCALARS, r->state));
1192 if (ndr_flags & NDR_BUFFERS) {
1194 return NT_STATUS_OK;
1197 NTSTATUS ndr_pull_dfs_Info101(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info101 *r)
1199 if (ndr_flags & NDR_SCALARS) {
1200 NDR_CHECK(ndr_pull_align(ndr, 4));
1201 NDR_CHECK(ndr_pull_dfs_StorageState(ndr, NDR_SCALARS, &r->state));
1203 if (ndr_flags & NDR_BUFFERS) {
1205 return NT_STATUS_OK;
1208 _PUBLIC_ void ndr_print_dfs_Info101(struct ndr_print *ndr, const char *name, const struct dfs_Info101 *r)
1210 ndr_print_struct(ndr, name, "dfs_Info101");
1212 ndr_print_dfs_StorageState(ndr, "state", r->state);
1216 NTSTATUS ndr_push_dfs_Info102(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info102 *r)
1218 if (ndr_flags & NDR_SCALARS) {
1219 NDR_CHECK(ndr_push_align(ndr, 4));
1220 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timeout));
1222 if (ndr_flags & NDR_BUFFERS) {
1224 return NT_STATUS_OK;
1227 NTSTATUS ndr_pull_dfs_Info102(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info102 *r)
1229 if (ndr_flags & NDR_SCALARS) {
1230 NDR_CHECK(ndr_pull_align(ndr, 4));
1231 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timeout));
1233 if (ndr_flags & NDR_BUFFERS) {
1235 return NT_STATUS_OK;
1238 _PUBLIC_ void ndr_print_dfs_Info102(struct ndr_print *ndr, const char *name, const struct dfs_Info102 *r)
1240 ndr_print_struct(ndr, name, "dfs_Info102");
1242 ndr_print_uint32(ndr, "timeout", r->timeout);
1246 NTSTATUS ndr_push_dfs_Info103(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info103 *r)
1248 if (ndr_flags & NDR_SCALARS) {
1249 NDR_CHECK(ndr_push_align(ndr, 4));
1250 NDR_CHECK(ndr_push_dfs_PropertyFlags(ndr, NDR_SCALARS, r->flags));
1252 if (ndr_flags & NDR_BUFFERS) {
1254 return NT_STATUS_OK;
1257 NTSTATUS ndr_pull_dfs_Info103(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info103 *r)
1259 if (ndr_flags & NDR_SCALARS) {
1260 NDR_CHECK(ndr_pull_align(ndr, 4));
1261 NDR_CHECK(ndr_pull_dfs_PropertyFlags(ndr, NDR_SCALARS, &r->flags));
1263 if (ndr_flags & NDR_BUFFERS) {
1265 return NT_STATUS_OK;
1268 _PUBLIC_ void ndr_print_dfs_Info103(struct ndr_print *ndr, const char *name, const struct dfs_Info103 *r)
1270 ndr_print_struct(ndr, name, "dfs_Info103");
1272 ndr_print_dfs_PropertyFlags(ndr, "flags", r->flags);
1276 NTSTATUS ndr_push_dfs_Info104(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info104 *r)
1278 if (ndr_flags & NDR_SCALARS) {
1279 NDR_CHECK(ndr_push_align(ndr, 4));
1280 NDR_CHECK(ndr_push_dfs_Target_Priority(ndr, NDR_SCALARS, &r->priority));
1282 if (ndr_flags & NDR_BUFFERS) {
1284 return NT_STATUS_OK;
1287 NTSTATUS ndr_pull_dfs_Info104(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info104 *r)
1289 if (ndr_flags & NDR_SCALARS) {
1290 NDR_CHECK(ndr_pull_align(ndr, 4));
1291 NDR_CHECK(ndr_pull_dfs_Target_Priority(ndr, NDR_SCALARS, &r->priority));
1293 if (ndr_flags & NDR_BUFFERS) {
1295 return NT_STATUS_OK;
1298 _PUBLIC_ void ndr_print_dfs_Info104(struct ndr_print *ndr, const char *name, const struct dfs_Info104 *r)
1300 ndr_print_struct(ndr, name, "dfs_Info104");
1302 ndr_print_dfs_Target_Priority(ndr, "priority", &r->priority);
1306 NTSTATUS ndr_push_dfs_Info105(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info105 *r)
1308 if (ndr_flags & NDR_SCALARS) {
1309 NDR_CHECK(ndr_push_align(ndr, 4));
1310 NDR_CHECK(ndr_push_unique_ptr(ndr, r->comment));
1311 NDR_CHECK(ndr_push_dfs_VolumeState(ndr, NDR_SCALARS, r->state));
1312 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->timeout));
1313 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->property_flag_mask));
1314 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->property_flags));
1316 if (ndr_flags & NDR_BUFFERS) {
1318 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
1319 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1320 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->comment, CH_UTF16)));
1321 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->comment, ndr_charset_length(r->comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1324 return NT_STATUS_OK;
1327 NTSTATUS ndr_pull_dfs_Info105(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info105 *r)
1329 uint32_t _ptr_comment;
1330 TALLOC_CTX *_mem_save_comment_0;
1331 if (ndr_flags & NDR_SCALARS) {
1332 NDR_CHECK(ndr_pull_align(ndr, 4));
1333 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
1335 NDR_PULL_ALLOC(ndr, r->comment);
1339 NDR_CHECK(ndr_pull_dfs_VolumeState(ndr, NDR_SCALARS, &r->state));
1340 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->timeout));
1341 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->property_flag_mask));
1342 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->property_flags));
1344 if (ndr_flags & NDR_BUFFERS) {
1346 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
1347 NDR_PULL_SET_MEM_CTX(ndr, r->comment, 0);
1348 NDR_CHECK(ndr_pull_array_size(ndr, &r->comment));
1349 NDR_CHECK(ndr_pull_array_length(ndr, &r->comment));
1350 if (ndr_get_array_length(ndr, &r->comment) > ndr_get_array_size(ndr, &r->comment)) {
1351 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));
1353 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t)));
1354 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->comment, ndr_get_array_length(ndr, &r->comment), sizeof(uint16_t), CH_UTF16));
1355 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
1358 return NT_STATUS_OK;
1361 _PUBLIC_ void ndr_print_dfs_Info105(struct ndr_print *ndr, const char *name, const struct dfs_Info105 *r)
1363 ndr_print_struct(ndr, name, "dfs_Info105");
1365 ndr_print_ptr(ndr, "comment", r->comment);
1368 ndr_print_string(ndr, "comment", r->comment);
1371 ndr_print_dfs_VolumeState(ndr, "state", r->state);
1372 ndr_print_uint32(ndr, "timeout", r->timeout);
1373 ndr_print_uint32(ndr, "property_flag_mask", r->property_flag_mask);
1374 ndr_print_uint32(ndr, "property_flags", r->property_flags);
1378 NTSTATUS ndr_push_dfs_Info106(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info106 *r)
1380 if (ndr_flags & NDR_SCALARS) {
1381 NDR_CHECK(ndr_push_align(ndr, 4));
1382 NDR_CHECK(ndr_push_dfs_StorageState(ndr, NDR_SCALARS, r->state));
1383 NDR_CHECK(ndr_push_dfs_Target_Priority(ndr, NDR_SCALARS, &r->priority));
1385 if (ndr_flags & NDR_BUFFERS) {
1387 return NT_STATUS_OK;
1390 NTSTATUS ndr_pull_dfs_Info106(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info106 *r)
1392 if (ndr_flags & NDR_SCALARS) {
1393 NDR_CHECK(ndr_pull_align(ndr, 4));
1394 NDR_CHECK(ndr_pull_dfs_StorageState(ndr, NDR_SCALARS, &r->state));
1395 NDR_CHECK(ndr_pull_dfs_Target_Priority(ndr, NDR_SCALARS, &r->priority));
1397 if (ndr_flags & NDR_BUFFERS) {
1399 return NT_STATUS_OK;
1402 _PUBLIC_ void ndr_print_dfs_Info106(struct ndr_print *ndr, const char *name, const struct dfs_Info106 *r)
1404 ndr_print_struct(ndr, name, "dfs_Info106");
1406 ndr_print_dfs_StorageState(ndr, "state", r->state);
1407 ndr_print_dfs_Target_Priority(ndr, "priority", &r->priority);
1411 NTSTATUS ndr_push_dfs_Info200(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info200 *r)
1413 if (ndr_flags & NDR_SCALARS) {
1414 NDR_CHECK(ndr_push_align(ndr, 4));
1415 NDR_CHECK(ndr_push_unique_ptr(ndr, r->dom_root));
1417 if (ndr_flags & NDR_BUFFERS) {
1419 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->dom_root, CH_UTF16)));
1420 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1421 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->dom_root, CH_UTF16)));
1422 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->dom_root, ndr_charset_length(r->dom_root, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1425 return NT_STATUS_OK;
1428 NTSTATUS ndr_pull_dfs_Info200(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info200 *r)
1430 uint32_t _ptr_dom_root;
1431 TALLOC_CTX *_mem_save_dom_root_0;
1432 if (ndr_flags & NDR_SCALARS) {
1433 NDR_CHECK(ndr_pull_align(ndr, 4));
1434 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dom_root));
1435 if (_ptr_dom_root) {
1436 NDR_PULL_ALLOC(ndr, r->dom_root);
1441 if (ndr_flags & NDR_BUFFERS) {
1443 _mem_save_dom_root_0 = NDR_PULL_GET_MEM_CTX(ndr);
1444 NDR_PULL_SET_MEM_CTX(ndr, r->dom_root, 0);
1445 NDR_CHECK(ndr_pull_array_size(ndr, &r->dom_root));
1446 NDR_CHECK(ndr_pull_array_length(ndr, &r->dom_root));
1447 if (ndr_get_array_length(ndr, &r->dom_root) > ndr_get_array_size(ndr, &r->dom_root)) {
1448 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->dom_root), ndr_get_array_length(ndr, &r->dom_root));
1450 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->dom_root), sizeof(uint16_t)));
1451 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->dom_root, ndr_get_array_length(ndr, &r->dom_root), sizeof(uint16_t), CH_UTF16));
1452 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_root_0, 0);
1455 return NT_STATUS_OK;
1458 _PUBLIC_ void ndr_print_dfs_Info200(struct ndr_print *ndr, const char *name, const struct dfs_Info200 *r)
1460 ndr_print_struct(ndr, name, "dfs_Info200");
1462 ndr_print_ptr(ndr, "dom_root", r->dom_root);
1465 ndr_print_string(ndr, "dom_root", r->dom_root);
1471 NTSTATUS ndr_push_dfs_VolumeFlavor(struct ndr_push *ndr, int ndr_flags, enum dfs_VolumeFlavor r)
1473 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
1474 return NT_STATUS_OK;
1477 NTSTATUS ndr_pull_dfs_VolumeFlavor(struct ndr_pull *ndr, int ndr_flags, enum dfs_VolumeFlavor *r)
1480 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
1482 return NT_STATUS_OK;
1485 _PUBLIC_ void ndr_print_dfs_VolumeFlavor(struct ndr_print *ndr, const char *name, enum dfs_VolumeFlavor r)
1487 const char *val = NULL;
1490 case DFS_VOLUME_FLAVOR_STANDALONE: val = "DFS_VOLUME_FLAVOR_STANDALONE"; break;
1491 case DFS_VOLUME_FLAVOR_AD_BLOB: val = "DFS_VOLUME_FLAVOR_AD_BLOB"; break;
1493 ndr_print_enum(ndr, name, "ENUM", val, r);
1496 NTSTATUS ndr_push_dfs_Info300(struct ndr_push *ndr, int ndr_flags, const struct dfs_Info300 *r)
1498 if (ndr_flags & NDR_SCALARS) {
1499 NDR_CHECK(ndr_push_align(ndr, 4));
1500 NDR_CHECK(ndr_push_dfs_VolumeFlavor(ndr, NDR_SCALARS, r->flavor));
1501 NDR_CHECK(ndr_push_unique_ptr(ndr, r->dom_root));
1503 if (ndr_flags & NDR_BUFFERS) {
1505 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->dom_root, CH_UTF16)));
1506 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
1507 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->dom_root, CH_UTF16)));
1508 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->dom_root, ndr_charset_length(r->dom_root, CH_UTF16), sizeof(uint16_t), CH_UTF16));
1511 return NT_STATUS_OK;
1514 NTSTATUS ndr_pull_dfs_Info300(struct ndr_pull *ndr, int ndr_flags, struct dfs_Info300 *r)
1516 uint32_t _ptr_dom_root;
1517 TALLOC_CTX *_mem_save_dom_root_0;
1518 if (ndr_flags & NDR_SCALARS) {
1519 NDR_CHECK(ndr_pull_align(ndr, 4));
1520 NDR_CHECK(ndr_pull_dfs_VolumeFlavor(ndr, NDR_SCALARS, &r->flavor));
1521 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_dom_root));
1522 if (_ptr_dom_root) {
1523 NDR_PULL_ALLOC(ndr, r->dom_root);
1528 if (ndr_flags & NDR_BUFFERS) {
1530 _mem_save_dom_root_0 = NDR_PULL_GET_MEM_CTX(ndr);
1531 NDR_PULL_SET_MEM_CTX(ndr, r->dom_root, 0);
1532 NDR_CHECK(ndr_pull_array_size(ndr, &r->dom_root));
1533 NDR_CHECK(ndr_pull_array_length(ndr, &r->dom_root));
1534 if (ndr_get_array_length(ndr, &r->dom_root) > ndr_get_array_size(ndr, &r->dom_root)) {
1535 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->dom_root), ndr_get_array_length(ndr, &r->dom_root));
1537 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->dom_root), sizeof(uint16_t)));
1538 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->dom_root, ndr_get_array_length(ndr, &r->dom_root), sizeof(uint16_t), CH_UTF16));
1539 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_root_0, 0);
1542 return NT_STATUS_OK;
1545 _PUBLIC_ void ndr_print_dfs_Info300(struct ndr_print *ndr, const char *name, const struct dfs_Info300 *r)
1547 ndr_print_struct(ndr, name, "dfs_Info300");
1549 ndr_print_dfs_VolumeFlavor(ndr, "flavor", r->flavor);
1550 ndr_print_ptr(ndr, "dom_root", r->dom_root);
1553 ndr_print_string(ndr, "dom_root", r->dom_root);
1559 NTSTATUS ndr_push_dfs_Info(struct ndr_push *ndr, int ndr_flags, const union dfs_Info *r)
1561 if (ndr_flags & NDR_SCALARS) {
1562 int level = ndr_push_get_switch_value(ndr, r);
1563 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
1566 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info0));
1570 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
1574 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
1578 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info3));
1582 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info4));
1586 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info5));
1590 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info6));
1594 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info7));
1598 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info100));
1602 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info101));
1606 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info102));
1610 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info103));
1614 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info104));
1618 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info105));
1622 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info106));
1626 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1629 if (ndr_flags & NDR_BUFFERS) {
1630 int level = ndr_push_get_switch_value(ndr, r);
1634 NDR_CHECK(ndr_push_dfs_Info0(ndr, NDR_SCALARS, r->info0));
1640 NDR_CHECK(ndr_push_dfs_Info1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
1646 NDR_CHECK(ndr_push_dfs_Info2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
1652 NDR_CHECK(ndr_push_dfs_Info3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
1658 NDR_CHECK(ndr_push_dfs_Info4(ndr, NDR_SCALARS|NDR_BUFFERS, r->info4));
1664 NDR_CHECK(ndr_push_dfs_Info5(ndr, NDR_SCALARS|NDR_BUFFERS, r->info5));
1670 NDR_CHECK(ndr_push_dfs_Info6(ndr, NDR_SCALARS|NDR_BUFFERS, r->info6));
1676 NDR_CHECK(ndr_push_dfs_Info7(ndr, NDR_SCALARS|NDR_BUFFERS, r->info7));
1682 NDR_CHECK(ndr_push_dfs_Info100(ndr, NDR_SCALARS|NDR_BUFFERS, r->info100));
1688 NDR_CHECK(ndr_push_dfs_Info101(ndr, NDR_SCALARS, r->info101));
1694 NDR_CHECK(ndr_push_dfs_Info102(ndr, NDR_SCALARS, r->info102));
1700 NDR_CHECK(ndr_push_dfs_Info103(ndr, NDR_SCALARS, r->info103));
1706 NDR_CHECK(ndr_push_dfs_Info104(ndr, NDR_SCALARS, r->info104));
1712 NDR_CHECK(ndr_push_dfs_Info105(ndr, NDR_SCALARS|NDR_BUFFERS, r->info105));
1718 NDR_CHECK(ndr_push_dfs_Info106(ndr, NDR_SCALARS, r->info106));
1723 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1726 return NT_STATUS_OK;
1729 NTSTATUS ndr_pull_dfs_Info(struct ndr_pull *ndr, int ndr_flags, union dfs_Info *r)
1733 TALLOC_CTX *_mem_save_info0_0;
1734 TALLOC_CTX *_mem_save_info1_0;
1735 TALLOC_CTX *_mem_save_info2_0;
1736 TALLOC_CTX *_mem_save_info3_0;
1737 TALLOC_CTX *_mem_save_info4_0;
1738 TALLOC_CTX *_mem_save_info5_0;
1739 TALLOC_CTX *_mem_save_info6_0;
1740 TALLOC_CTX *_mem_save_info7_0;
1741 TALLOC_CTX *_mem_save_info100_0;
1742 TALLOC_CTX *_mem_save_info101_0;
1743 TALLOC_CTX *_mem_save_info102_0;
1744 TALLOC_CTX *_mem_save_info103_0;
1745 TALLOC_CTX *_mem_save_info104_0;
1746 TALLOC_CTX *_mem_save_info105_0;
1747 TALLOC_CTX *_mem_save_info106_0;
1748 level = ndr_pull_get_switch_value(ndr, r);
1749 if (ndr_flags & NDR_SCALARS) {
1750 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
1751 if (_level != level) {
1752 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1756 uint32_t _ptr_info0;
1757 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info0));
1759 NDR_PULL_ALLOC(ndr, r->info0);
1766 uint32_t _ptr_info1;
1767 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
1769 NDR_PULL_ALLOC(ndr, r->info1);
1776 uint32_t _ptr_info2;
1777 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
1779 NDR_PULL_ALLOC(ndr, r->info2);
1786 uint32_t _ptr_info3;
1787 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info3));
1789 NDR_PULL_ALLOC(ndr, r->info3);
1796 uint32_t _ptr_info4;
1797 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info4));
1799 NDR_PULL_ALLOC(ndr, r->info4);
1806 uint32_t _ptr_info5;
1807 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info5));
1809 NDR_PULL_ALLOC(ndr, r->info5);
1816 uint32_t _ptr_info6;
1817 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info6));
1819 NDR_PULL_ALLOC(ndr, r->info6);
1826 uint32_t _ptr_info7;
1827 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info7));
1829 NDR_PULL_ALLOC(ndr, r->info7);
1836 uint32_t _ptr_info100;
1837 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info100));
1839 NDR_PULL_ALLOC(ndr, r->info100);
1846 uint32_t _ptr_info101;
1847 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info101));
1849 NDR_PULL_ALLOC(ndr, r->info101);
1856 uint32_t _ptr_info102;
1857 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info102));
1859 NDR_PULL_ALLOC(ndr, r->info102);
1866 uint32_t _ptr_info103;
1867 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info103));
1869 NDR_PULL_ALLOC(ndr, r->info103);
1876 uint32_t _ptr_info104;
1877 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info104));
1879 NDR_PULL_ALLOC(ndr, r->info104);
1886 uint32_t _ptr_info105;
1887 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info105));
1889 NDR_PULL_ALLOC(ndr, r->info105);
1896 uint32_t _ptr_info106;
1897 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info106));
1899 NDR_PULL_ALLOC(ndr, r->info106);
1906 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1909 if (ndr_flags & NDR_BUFFERS) {
1913 _mem_save_info0_0 = NDR_PULL_GET_MEM_CTX(ndr);
1914 NDR_PULL_SET_MEM_CTX(ndr, r->info0, 0);
1915 NDR_CHECK(ndr_pull_dfs_Info0(ndr, NDR_SCALARS, r->info0));
1916 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info0_0, 0);
1922 _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
1923 NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
1924 NDR_CHECK(ndr_pull_dfs_Info1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
1925 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
1931 _mem_save_info2_0 = NDR_PULL_GET_MEM_CTX(ndr);
1932 NDR_PULL_SET_MEM_CTX(ndr, r->info2, 0);
1933 NDR_CHECK(ndr_pull_dfs_Info2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
1934 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info2_0, 0);
1940 _mem_save_info3_0 = NDR_PULL_GET_MEM_CTX(ndr);
1941 NDR_PULL_SET_MEM_CTX(ndr, r->info3, 0);
1942 NDR_CHECK(ndr_pull_dfs_Info3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
1943 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info3_0, 0);
1949 _mem_save_info4_0 = NDR_PULL_GET_MEM_CTX(ndr);
1950 NDR_PULL_SET_MEM_CTX(ndr, r->info4, 0);
1951 NDR_CHECK(ndr_pull_dfs_Info4(ndr, NDR_SCALARS|NDR_BUFFERS, r->info4));
1952 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info4_0, 0);
1958 _mem_save_info5_0 = NDR_PULL_GET_MEM_CTX(ndr);
1959 NDR_PULL_SET_MEM_CTX(ndr, r->info5, 0);
1960 NDR_CHECK(ndr_pull_dfs_Info5(ndr, NDR_SCALARS|NDR_BUFFERS, r->info5));
1961 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info5_0, 0);
1967 _mem_save_info6_0 = NDR_PULL_GET_MEM_CTX(ndr);
1968 NDR_PULL_SET_MEM_CTX(ndr, r->info6, 0);
1969 NDR_CHECK(ndr_pull_dfs_Info6(ndr, NDR_SCALARS|NDR_BUFFERS, r->info6));
1970 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info6_0, 0);
1976 _mem_save_info7_0 = NDR_PULL_GET_MEM_CTX(ndr);
1977 NDR_PULL_SET_MEM_CTX(ndr, r->info7, 0);
1978 NDR_CHECK(ndr_pull_dfs_Info7(ndr, NDR_SCALARS|NDR_BUFFERS, r->info7));
1979 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info7_0, 0);
1985 _mem_save_info100_0 = NDR_PULL_GET_MEM_CTX(ndr);
1986 NDR_PULL_SET_MEM_CTX(ndr, r->info100, 0);
1987 NDR_CHECK(ndr_pull_dfs_Info100(ndr, NDR_SCALARS|NDR_BUFFERS, r->info100));
1988 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info100_0, 0);
1994 _mem_save_info101_0 = NDR_PULL_GET_MEM_CTX(ndr);
1995 NDR_PULL_SET_MEM_CTX(ndr, r->info101, 0);
1996 NDR_CHECK(ndr_pull_dfs_Info101(ndr, NDR_SCALARS, r->info101));
1997 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info101_0, 0);
2003 _mem_save_info102_0 = NDR_PULL_GET_MEM_CTX(ndr);
2004 NDR_PULL_SET_MEM_CTX(ndr, r->info102, 0);
2005 NDR_CHECK(ndr_pull_dfs_Info102(ndr, NDR_SCALARS, r->info102));
2006 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info102_0, 0);
2012 _mem_save_info103_0 = NDR_PULL_GET_MEM_CTX(ndr);
2013 NDR_PULL_SET_MEM_CTX(ndr, r->info103, 0);
2014 NDR_CHECK(ndr_pull_dfs_Info103(ndr, NDR_SCALARS, r->info103));
2015 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info103_0, 0);
2021 _mem_save_info104_0 = NDR_PULL_GET_MEM_CTX(ndr);
2022 NDR_PULL_SET_MEM_CTX(ndr, r->info104, 0);
2023 NDR_CHECK(ndr_pull_dfs_Info104(ndr, NDR_SCALARS, r->info104));
2024 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info104_0, 0);
2030 _mem_save_info105_0 = NDR_PULL_GET_MEM_CTX(ndr);
2031 NDR_PULL_SET_MEM_CTX(ndr, r->info105, 0);
2032 NDR_CHECK(ndr_pull_dfs_Info105(ndr, NDR_SCALARS|NDR_BUFFERS, r->info105));
2033 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info105_0, 0);
2039 _mem_save_info106_0 = NDR_PULL_GET_MEM_CTX(ndr);
2040 NDR_PULL_SET_MEM_CTX(ndr, r->info106, 0);
2041 NDR_CHECK(ndr_pull_dfs_Info106(ndr, NDR_SCALARS, r->info106));
2042 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info106_0, 0);
2047 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
2050 return NT_STATUS_OK;
2053 _PUBLIC_ void ndr_print_dfs_Info(struct ndr_print *ndr, const char *name, const union dfs_Info *r)
2056 level = ndr_print_get_switch_value(ndr, r);
2057 ndr_print_union(ndr, name, level, "dfs_Info");
2060 ndr_print_ptr(ndr, "info0", r->info0);
2063 ndr_print_dfs_Info0(ndr, "info0", r->info0);
2069 ndr_print_ptr(ndr, "info1", r->info1);
2072 ndr_print_dfs_Info1(ndr, "info1", r->info1);
2078 ndr_print_ptr(ndr, "info2", r->info2);
2081 ndr_print_dfs_Info2(ndr, "info2", r->info2);
2087 ndr_print_ptr(ndr, "info3", r->info3);
2090 ndr_print_dfs_Info3(ndr, "info3", r->info3);
2096 ndr_print_ptr(ndr, "info4", r->info4);
2099 ndr_print_dfs_Info4(ndr, "info4", r->info4);
2105 ndr_print_ptr(ndr, "info5", r->info5);
2108 ndr_print_dfs_Info5(ndr, "info5", r->info5);
2114 ndr_print_ptr(ndr, "info6", r->info6);
2117 ndr_print_dfs_Info6(ndr, "info6", r->info6);
2123 ndr_print_ptr(ndr, "info7", r->info7);
2126 ndr_print_dfs_Info7(ndr, "info7", r->info7);
2132 ndr_print_ptr(ndr, "info100", r->info100);
2135 ndr_print_dfs_Info100(ndr, "info100", r->info100);
2141 ndr_print_ptr(ndr, "info101", r->info101);
2144 ndr_print_dfs_Info101(ndr, "info101", r->info101);
2150 ndr_print_ptr(ndr, "info102", r->info102);
2153 ndr_print_dfs_Info102(ndr, "info102", r->info102);
2159 ndr_print_ptr(ndr, "info103", r->info103);
2162 ndr_print_dfs_Info103(ndr, "info103", r->info103);
2168 ndr_print_ptr(ndr, "info104", r->info104);
2171 ndr_print_dfs_Info104(ndr, "info104", r->info104);
2177 ndr_print_ptr(ndr, "info105", r->info105);
2180 ndr_print_dfs_Info105(ndr, "info105", r->info105);
2186 ndr_print_ptr(ndr, "info106", r->info106);
2189 ndr_print_dfs_Info106(ndr, "info106", r->info106);
2195 ndr_print_bad_level(ndr, name, level);
2199 NTSTATUS ndr_push_dfs_EnumArray1(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumArray1 *r)
2202 if (ndr_flags & NDR_SCALARS) {
2203 NDR_CHECK(ndr_push_align(ndr, 4));
2204 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2205 NDR_CHECK(ndr_push_unique_ptr(ndr, r->s));
2207 if (ndr_flags & NDR_BUFFERS) {
2209 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2210 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2211 NDR_CHECK(ndr_push_dfs_Info1(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2213 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2214 NDR_CHECK(ndr_push_dfs_Info1(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2218 return NT_STATUS_OK;
2221 NTSTATUS ndr_pull_dfs_EnumArray1(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumArray1 *r)
2225 TALLOC_CTX *_mem_save_s_0;
2226 TALLOC_CTX *_mem_save_s_1;
2227 if (ndr_flags & NDR_SCALARS) {
2228 NDR_CHECK(ndr_pull_align(ndr, 4));
2229 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2230 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_s));
2232 NDR_PULL_ALLOC(ndr, r->s);
2237 if (ndr_flags & NDR_BUFFERS) {
2239 _mem_save_s_0 = NDR_PULL_GET_MEM_CTX(ndr);
2240 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2241 NDR_CHECK(ndr_pull_array_size(ndr, &r->s));
2242 NDR_PULL_ALLOC_N(ndr, r->s, ndr_get_array_size(ndr, &r->s));
2243 _mem_save_s_1 = NDR_PULL_GET_MEM_CTX(ndr);
2244 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2245 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2246 NDR_CHECK(ndr_pull_dfs_Info1(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2248 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2249 NDR_CHECK(ndr_pull_dfs_Info1(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2251 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_1, 0);
2252 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_0, 0);
2255 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->s, r->count));
2258 return NT_STATUS_OK;
2261 _PUBLIC_ void ndr_print_dfs_EnumArray1(struct ndr_print *ndr, const char *name, const struct dfs_EnumArray1 *r)
2264 ndr_print_struct(ndr, name, "dfs_EnumArray1");
2266 ndr_print_uint32(ndr, "count", r->count);
2267 ndr_print_ptr(ndr, "s", r->s);
2270 ndr->print(ndr, "%s: ARRAY(%d)", "s", r->count);
2272 for (cntr_s_1=0;cntr_s_1<r->count;cntr_s_1++) {
2274 asprintf(&idx_1, "[%d]", cntr_s_1);
2276 ndr_print_dfs_Info1(ndr, "s", &r->s[cntr_s_1]);
2286 NTSTATUS ndr_push_dfs_EnumArray2(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumArray2 *r)
2289 if (ndr_flags & NDR_SCALARS) {
2290 NDR_CHECK(ndr_push_align(ndr, 4));
2291 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2292 NDR_CHECK(ndr_push_unique_ptr(ndr, r->s));
2294 if (ndr_flags & NDR_BUFFERS) {
2296 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2297 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2298 NDR_CHECK(ndr_push_dfs_Info2(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2300 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2301 NDR_CHECK(ndr_push_dfs_Info2(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2305 return NT_STATUS_OK;
2308 NTSTATUS ndr_pull_dfs_EnumArray2(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumArray2 *r)
2312 TALLOC_CTX *_mem_save_s_0;
2313 TALLOC_CTX *_mem_save_s_1;
2314 if (ndr_flags & NDR_SCALARS) {
2315 NDR_CHECK(ndr_pull_align(ndr, 4));
2316 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2317 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_s));
2319 NDR_PULL_ALLOC(ndr, r->s);
2324 if (ndr_flags & NDR_BUFFERS) {
2326 _mem_save_s_0 = NDR_PULL_GET_MEM_CTX(ndr);
2327 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2328 NDR_CHECK(ndr_pull_array_size(ndr, &r->s));
2329 NDR_PULL_ALLOC_N(ndr, r->s, ndr_get_array_size(ndr, &r->s));
2330 _mem_save_s_1 = NDR_PULL_GET_MEM_CTX(ndr);
2331 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2332 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2333 NDR_CHECK(ndr_pull_dfs_Info2(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2335 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2336 NDR_CHECK(ndr_pull_dfs_Info2(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2338 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_1, 0);
2339 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_0, 0);
2342 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->s, r->count));
2345 return NT_STATUS_OK;
2348 _PUBLIC_ void ndr_print_dfs_EnumArray2(struct ndr_print *ndr, const char *name, const struct dfs_EnumArray2 *r)
2351 ndr_print_struct(ndr, name, "dfs_EnumArray2");
2353 ndr_print_uint32(ndr, "count", r->count);
2354 ndr_print_ptr(ndr, "s", r->s);
2357 ndr->print(ndr, "%s: ARRAY(%d)", "s", r->count);
2359 for (cntr_s_1=0;cntr_s_1<r->count;cntr_s_1++) {
2361 asprintf(&idx_1, "[%d]", cntr_s_1);
2363 ndr_print_dfs_Info2(ndr, "s", &r->s[cntr_s_1]);
2373 NTSTATUS ndr_push_dfs_EnumArray3(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumArray3 *r)
2376 if (ndr_flags & NDR_SCALARS) {
2377 NDR_CHECK(ndr_push_align(ndr, 4));
2378 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2379 NDR_CHECK(ndr_push_unique_ptr(ndr, r->s));
2381 if (ndr_flags & NDR_BUFFERS) {
2383 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2384 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2385 NDR_CHECK(ndr_push_dfs_Info3(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2387 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2388 NDR_CHECK(ndr_push_dfs_Info3(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2392 return NT_STATUS_OK;
2395 NTSTATUS ndr_pull_dfs_EnumArray3(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumArray3 *r)
2399 TALLOC_CTX *_mem_save_s_0;
2400 TALLOC_CTX *_mem_save_s_1;
2401 if (ndr_flags & NDR_SCALARS) {
2402 NDR_CHECK(ndr_pull_align(ndr, 4));
2403 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2404 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_s));
2406 NDR_PULL_ALLOC(ndr, r->s);
2411 if (ndr_flags & NDR_BUFFERS) {
2413 _mem_save_s_0 = NDR_PULL_GET_MEM_CTX(ndr);
2414 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2415 NDR_CHECK(ndr_pull_array_size(ndr, &r->s));
2416 NDR_PULL_ALLOC_N(ndr, r->s, ndr_get_array_size(ndr, &r->s));
2417 _mem_save_s_1 = NDR_PULL_GET_MEM_CTX(ndr);
2418 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2419 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2420 NDR_CHECK(ndr_pull_dfs_Info3(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2422 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2423 NDR_CHECK(ndr_pull_dfs_Info3(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2425 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_1, 0);
2426 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_0, 0);
2429 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->s, r->count));
2432 return NT_STATUS_OK;
2435 _PUBLIC_ void ndr_print_dfs_EnumArray3(struct ndr_print *ndr, const char *name, const struct dfs_EnumArray3 *r)
2438 ndr_print_struct(ndr, name, "dfs_EnumArray3");
2440 ndr_print_uint32(ndr, "count", r->count);
2441 ndr_print_ptr(ndr, "s", r->s);
2444 ndr->print(ndr, "%s: ARRAY(%d)", "s", r->count);
2446 for (cntr_s_1=0;cntr_s_1<r->count;cntr_s_1++) {
2448 asprintf(&idx_1, "[%d]", cntr_s_1);
2450 ndr_print_dfs_Info3(ndr, "s", &r->s[cntr_s_1]);
2460 NTSTATUS ndr_push_dfs_EnumArray4(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumArray4 *r)
2463 if (ndr_flags & NDR_SCALARS) {
2464 NDR_CHECK(ndr_push_align(ndr, 4));
2465 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2466 NDR_CHECK(ndr_push_unique_ptr(ndr, r->s));
2468 if (ndr_flags & NDR_BUFFERS) {
2470 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2471 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2472 NDR_CHECK(ndr_push_dfs_Info4(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2474 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2475 NDR_CHECK(ndr_push_dfs_Info4(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2479 return NT_STATUS_OK;
2482 NTSTATUS ndr_pull_dfs_EnumArray4(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumArray4 *r)
2486 TALLOC_CTX *_mem_save_s_0;
2487 TALLOC_CTX *_mem_save_s_1;
2488 if (ndr_flags & NDR_SCALARS) {
2489 NDR_CHECK(ndr_pull_align(ndr, 4));
2490 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2491 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_s));
2493 NDR_PULL_ALLOC(ndr, r->s);
2498 if (ndr_flags & NDR_BUFFERS) {
2500 _mem_save_s_0 = NDR_PULL_GET_MEM_CTX(ndr);
2501 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2502 NDR_CHECK(ndr_pull_array_size(ndr, &r->s));
2503 NDR_PULL_ALLOC_N(ndr, r->s, ndr_get_array_size(ndr, &r->s));
2504 _mem_save_s_1 = NDR_PULL_GET_MEM_CTX(ndr);
2505 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2506 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2507 NDR_CHECK(ndr_pull_dfs_Info4(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2509 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2510 NDR_CHECK(ndr_pull_dfs_Info4(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2512 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_1, 0);
2513 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_0, 0);
2516 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->s, r->count));
2519 return NT_STATUS_OK;
2522 _PUBLIC_ void ndr_print_dfs_EnumArray4(struct ndr_print *ndr, const char *name, const struct dfs_EnumArray4 *r)
2525 ndr_print_struct(ndr, name, "dfs_EnumArray4");
2527 ndr_print_uint32(ndr, "count", r->count);
2528 ndr_print_ptr(ndr, "s", r->s);
2531 ndr->print(ndr, "%s: ARRAY(%d)", "s", r->count);
2533 for (cntr_s_1=0;cntr_s_1<r->count;cntr_s_1++) {
2535 asprintf(&idx_1, "[%d]", cntr_s_1);
2537 ndr_print_dfs_Info4(ndr, "s", &r->s[cntr_s_1]);
2547 NTSTATUS ndr_push_dfs_EnumArray200(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumArray200 *r)
2550 if (ndr_flags & NDR_SCALARS) {
2551 NDR_CHECK(ndr_push_align(ndr, 4));
2552 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2553 NDR_CHECK(ndr_push_unique_ptr(ndr, r->s));
2555 if (ndr_flags & NDR_BUFFERS) {
2557 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2558 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2559 NDR_CHECK(ndr_push_dfs_Info200(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2561 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2562 NDR_CHECK(ndr_push_dfs_Info200(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2566 return NT_STATUS_OK;
2569 NTSTATUS ndr_pull_dfs_EnumArray200(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumArray200 *r)
2573 TALLOC_CTX *_mem_save_s_0;
2574 TALLOC_CTX *_mem_save_s_1;
2575 if (ndr_flags & NDR_SCALARS) {
2576 NDR_CHECK(ndr_pull_align(ndr, 4));
2577 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2578 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_s));
2580 NDR_PULL_ALLOC(ndr, r->s);
2585 if (ndr_flags & NDR_BUFFERS) {
2587 _mem_save_s_0 = NDR_PULL_GET_MEM_CTX(ndr);
2588 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2589 NDR_CHECK(ndr_pull_array_size(ndr, &r->s));
2590 NDR_PULL_ALLOC_N(ndr, r->s, ndr_get_array_size(ndr, &r->s));
2591 _mem_save_s_1 = NDR_PULL_GET_MEM_CTX(ndr);
2592 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2593 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2594 NDR_CHECK(ndr_pull_dfs_Info200(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2596 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2597 NDR_CHECK(ndr_pull_dfs_Info200(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2599 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_1, 0);
2600 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_0, 0);
2603 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->s, r->count));
2606 return NT_STATUS_OK;
2609 _PUBLIC_ void ndr_print_dfs_EnumArray200(struct ndr_print *ndr, const char *name, const struct dfs_EnumArray200 *r)
2612 ndr_print_struct(ndr, name, "dfs_EnumArray200");
2614 ndr_print_uint32(ndr, "count", r->count);
2615 ndr_print_ptr(ndr, "s", r->s);
2618 ndr->print(ndr, "%s: ARRAY(%d)", "s", r->count);
2620 for (cntr_s_1=0;cntr_s_1<r->count;cntr_s_1++) {
2622 asprintf(&idx_1, "[%d]", cntr_s_1);
2624 ndr_print_dfs_Info200(ndr, "s", &r->s[cntr_s_1]);
2634 NTSTATUS ndr_push_dfs_EnumArray300(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumArray300 *r)
2637 if (ndr_flags & NDR_SCALARS) {
2638 NDR_CHECK(ndr_push_align(ndr, 4));
2639 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2640 NDR_CHECK(ndr_push_unique_ptr(ndr, r->s));
2642 if (ndr_flags & NDR_BUFFERS) {
2644 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2645 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2646 NDR_CHECK(ndr_push_dfs_Info300(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2648 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2649 NDR_CHECK(ndr_push_dfs_Info300(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2653 return NT_STATUS_OK;
2656 NTSTATUS ndr_pull_dfs_EnumArray300(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumArray300 *r)
2660 TALLOC_CTX *_mem_save_s_0;
2661 TALLOC_CTX *_mem_save_s_1;
2662 if (ndr_flags & NDR_SCALARS) {
2663 NDR_CHECK(ndr_pull_align(ndr, 4));
2664 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2665 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_s));
2667 NDR_PULL_ALLOC(ndr, r->s);
2672 if (ndr_flags & NDR_BUFFERS) {
2674 _mem_save_s_0 = NDR_PULL_GET_MEM_CTX(ndr);
2675 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2676 NDR_CHECK(ndr_pull_array_size(ndr, &r->s));
2677 NDR_PULL_ALLOC_N(ndr, r->s, ndr_get_array_size(ndr, &r->s));
2678 _mem_save_s_1 = NDR_PULL_GET_MEM_CTX(ndr);
2679 NDR_PULL_SET_MEM_CTX(ndr, r->s, 0);
2680 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2681 NDR_CHECK(ndr_pull_dfs_Info300(ndr, NDR_SCALARS, &r->s[cntr_s_1]));
2683 for (cntr_s_1 = 0; cntr_s_1 < r->count; cntr_s_1++) {
2684 NDR_CHECK(ndr_pull_dfs_Info300(ndr, NDR_BUFFERS, &r->s[cntr_s_1]));
2686 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_1, 0);
2687 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_s_0, 0);
2690 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->s, r->count));
2693 return NT_STATUS_OK;
2696 _PUBLIC_ void ndr_print_dfs_EnumArray300(struct ndr_print *ndr, const char *name, const struct dfs_EnumArray300 *r)
2699 ndr_print_struct(ndr, name, "dfs_EnumArray300");
2701 ndr_print_uint32(ndr, "count", r->count);
2702 ndr_print_ptr(ndr, "s", r->s);
2705 ndr->print(ndr, "%s: ARRAY(%d)", "s", r->count);
2707 for (cntr_s_1=0;cntr_s_1<r->count;cntr_s_1++) {
2709 asprintf(&idx_1, "[%d]", cntr_s_1);
2711 ndr_print_dfs_Info300(ndr, "s", &r->s[cntr_s_1]);
2721 NTSTATUS ndr_push_dfs_EnumInfo(struct ndr_push *ndr, int ndr_flags, const union dfs_EnumInfo *r)
2723 if (ndr_flags & NDR_SCALARS) {
2724 int level = ndr_push_get_switch_value(ndr, r);
2725 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
2728 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info1));
2732 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info2));
2736 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info3));
2740 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info4));
2744 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info200));
2748 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info300));
2752 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
2755 if (ndr_flags & NDR_BUFFERS) {
2756 int level = ndr_push_get_switch_value(ndr, r);
2760 NDR_CHECK(ndr_push_dfs_EnumArray1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
2766 NDR_CHECK(ndr_push_dfs_EnumArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
2772 NDR_CHECK(ndr_push_dfs_EnumArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
2778 NDR_CHECK(ndr_push_dfs_EnumArray4(ndr, NDR_SCALARS|NDR_BUFFERS, r->info4));
2784 NDR_CHECK(ndr_push_dfs_EnumArray200(ndr, NDR_SCALARS|NDR_BUFFERS, r->info200));
2790 NDR_CHECK(ndr_push_dfs_EnumArray300(ndr, NDR_SCALARS|NDR_BUFFERS, r->info300));
2795 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
2798 return NT_STATUS_OK;
2801 NTSTATUS ndr_pull_dfs_EnumInfo(struct ndr_pull *ndr, int ndr_flags, union dfs_EnumInfo *r)
2805 TALLOC_CTX *_mem_save_info1_0;
2806 TALLOC_CTX *_mem_save_info2_0;
2807 TALLOC_CTX *_mem_save_info3_0;
2808 TALLOC_CTX *_mem_save_info4_0;
2809 TALLOC_CTX *_mem_save_info200_0;
2810 TALLOC_CTX *_mem_save_info300_0;
2811 level = ndr_pull_get_switch_value(ndr, r);
2812 if (ndr_flags & NDR_SCALARS) {
2813 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
2814 if (_level != level) {
2815 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
2819 uint32_t _ptr_info1;
2820 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info1));
2822 NDR_PULL_ALLOC(ndr, r->info1);
2829 uint32_t _ptr_info2;
2830 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info2));
2832 NDR_PULL_ALLOC(ndr, r->info2);
2839 uint32_t _ptr_info3;
2840 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info3));
2842 NDR_PULL_ALLOC(ndr, r->info3);
2849 uint32_t _ptr_info4;
2850 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info4));
2852 NDR_PULL_ALLOC(ndr, r->info4);
2859 uint32_t _ptr_info200;
2860 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info200));
2862 NDR_PULL_ALLOC(ndr, r->info200);
2869 uint32_t _ptr_info300;
2870 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info300));
2872 NDR_PULL_ALLOC(ndr, r->info300);
2879 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
2882 if (ndr_flags & NDR_BUFFERS) {
2886 _mem_save_info1_0 = NDR_PULL_GET_MEM_CTX(ndr);
2887 NDR_PULL_SET_MEM_CTX(ndr, r->info1, 0);
2888 NDR_CHECK(ndr_pull_dfs_EnumArray1(ndr, NDR_SCALARS|NDR_BUFFERS, r->info1));
2889 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info1_0, 0);
2895 _mem_save_info2_0 = NDR_PULL_GET_MEM_CTX(ndr);
2896 NDR_PULL_SET_MEM_CTX(ndr, r->info2, 0);
2897 NDR_CHECK(ndr_pull_dfs_EnumArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->info2));
2898 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info2_0, 0);
2904 _mem_save_info3_0 = NDR_PULL_GET_MEM_CTX(ndr);
2905 NDR_PULL_SET_MEM_CTX(ndr, r->info3, 0);
2906 NDR_CHECK(ndr_pull_dfs_EnumArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->info3));
2907 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info3_0, 0);
2913 _mem_save_info4_0 = NDR_PULL_GET_MEM_CTX(ndr);
2914 NDR_PULL_SET_MEM_CTX(ndr, r->info4, 0);
2915 NDR_CHECK(ndr_pull_dfs_EnumArray4(ndr, NDR_SCALARS|NDR_BUFFERS, r->info4));
2916 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info4_0, 0);
2922 _mem_save_info200_0 = NDR_PULL_GET_MEM_CTX(ndr);
2923 NDR_PULL_SET_MEM_CTX(ndr, r->info200, 0);
2924 NDR_CHECK(ndr_pull_dfs_EnumArray200(ndr, NDR_SCALARS|NDR_BUFFERS, r->info200));
2925 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info200_0, 0);
2931 _mem_save_info300_0 = NDR_PULL_GET_MEM_CTX(ndr);
2932 NDR_PULL_SET_MEM_CTX(ndr, r->info300, 0);
2933 NDR_CHECK(ndr_pull_dfs_EnumArray300(ndr, NDR_SCALARS|NDR_BUFFERS, r->info300));
2934 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info300_0, 0);
2939 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
2942 return NT_STATUS_OK;
2945 _PUBLIC_ void ndr_print_dfs_EnumInfo(struct ndr_print *ndr, const char *name, const union dfs_EnumInfo *r)
2948 level = ndr_print_get_switch_value(ndr, r);
2949 ndr_print_union(ndr, name, level, "dfs_EnumInfo");
2952 ndr_print_ptr(ndr, "info1", r->info1);
2955 ndr_print_dfs_EnumArray1(ndr, "info1", r->info1);
2961 ndr_print_ptr(ndr, "info2", r->info2);
2964 ndr_print_dfs_EnumArray2(ndr, "info2", r->info2);
2970 ndr_print_ptr(ndr, "info3", r->info3);
2973 ndr_print_dfs_EnumArray3(ndr, "info3", r->info3);
2979 ndr_print_ptr(ndr, "info4", r->info4);
2982 ndr_print_dfs_EnumArray4(ndr, "info4", r->info4);
2988 ndr_print_ptr(ndr, "info200", r->info200);
2991 ndr_print_dfs_EnumArray200(ndr, "info200", r->info200);
2997 ndr_print_ptr(ndr, "info300", r->info300);
3000 ndr_print_dfs_EnumArray300(ndr, "info300", r->info300);
3006 ndr_print_bad_level(ndr, name, level);
3010 NTSTATUS ndr_push_dfs_EnumStruct(struct ndr_push *ndr, int ndr_flags, const struct dfs_EnumStruct *r)
3012 if (ndr_flags & NDR_SCALARS) {
3013 NDR_CHECK(ndr_push_align(ndr, 4));
3014 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->level));
3015 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->e, r->level));
3016 NDR_CHECK(ndr_push_dfs_EnumInfo(ndr, NDR_SCALARS, &r->e));
3018 if (ndr_flags & NDR_BUFFERS) {
3019 NDR_CHECK(ndr_push_dfs_EnumInfo(ndr, NDR_BUFFERS, &r->e));
3021 return NT_STATUS_OK;
3024 NTSTATUS ndr_pull_dfs_EnumStruct(struct ndr_pull *ndr, int ndr_flags, struct dfs_EnumStruct *r)
3026 if (ndr_flags & NDR_SCALARS) {
3027 NDR_CHECK(ndr_pull_align(ndr, 4));
3028 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->level));
3029 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->e, r->level));
3030 NDR_CHECK(ndr_pull_dfs_EnumInfo(ndr, NDR_SCALARS, &r->e));
3032 if (ndr_flags & NDR_BUFFERS) {
3033 NDR_CHECK(ndr_pull_dfs_EnumInfo(ndr, NDR_BUFFERS, &r->e));
3035 return NT_STATUS_OK;
3038 _PUBLIC_ void ndr_print_dfs_EnumStruct(struct ndr_print *ndr, const char *name, const struct dfs_EnumStruct *r)
3040 ndr_print_struct(ndr, name, "dfs_EnumStruct");
3042 ndr_print_uint32(ndr, "level", r->level);
3043 ndr_print_set_switch_value(ndr, &r->e, r->level);
3044 ndr_print_dfs_EnumInfo(ndr, "e", &r->e);
3048 NTSTATUS ndr_push_dfs_UnknownStruct(struct ndr_push *ndr, int ndr_flags, const struct dfs_UnknownStruct *r)
3050 if (ndr_flags & NDR_SCALARS) {
3051 NDR_CHECK(ndr_push_align(ndr, 4));
3052 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown1));
3053 NDR_CHECK(ndr_push_unique_ptr(ndr, r->unknown2));
3055 if (ndr_flags & NDR_BUFFERS) {
3057 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->unknown2, CH_UTF16)));
3058 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3059 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->unknown2, CH_UTF16)));
3060 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->unknown2, ndr_charset_length(r->unknown2, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3063 return NT_STATUS_OK;
3066 NTSTATUS ndr_pull_dfs_UnknownStruct(struct ndr_pull *ndr, int ndr_flags, struct dfs_UnknownStruct *r)
3068 uint32_t _ptr_unknown2;
3069 TALLOC_CTX *_mem_save_unknown2_0;
3070 if (ndr_flags & NDR_SCALARS) {
3071 NDR_CHECK(ndr_pull_align(ndr, 4));
3072 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
3073 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
3074 if (_ptr_unknown2) {
3075 NDR_PULL_ALLOC(ndr, r->unknown2);
3080 if (ndr_flags & NDR_BUFFERS) {
3082 _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
3083 NDR_PULL_SET_MEM_CTX(ndr, r->unknown2, 0);
3084 NDR_CHECK(ndr_pull_array_size(ndr, &r->unknown2));
3085 NDR_CHECK(ndr_pull_array_length(ndr, &r->unknown2));
3086 if (ndr_get_array_length(ndr, &r->unknown2) > ndr_get_array_size(ndr, &r->unknown2)) {
3087 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->unknown2), ndr_get_array_length(ndr, &r->unknown2));
3089 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->unknown2), sizeof(uint16_t)));
3090 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->unknown2, ndr_get_array_length(ndr, &r->unknown2), sizeof(uint16_t), CH_UTF16));
3091 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
3094 return NT_STATUS_OK;
3097 _PUBLIC_ void ndr_print_dfs_UnknownStruct(struct ndr_print *ndr, const char *name, const struct dfs_UnknownStruct *r)
3099 ndr_print_struct(ndr, name, "dfs_UnknownStruct");
3101 ndr_print_uint32(ndr, "unknown1", r->unknown1);
3102 ndr_print_ptr(ndr, "unknown2", r->unknown2);
3105 ndr_print_string(ndr, "unknown2", r->unknown2);
3111 _PUBLIC_ NTSTATUS ndr_push_dfs_GetManagerVersion(struct ndr_push *ndr, int flags, const struct dfs_GetManagerVersion *r)
3113 if (flags & NDR_IN) {
3115 if (flags & NDR_OUT) {
3116 if (r->out.version == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
3117 NDR_CHECK(ndr_push_dfs_ManagerVersion(ndr, NDR_SCALARS, *r->out.version));
3119 return NT_STATUS_OK;
3122 _PUBLIC_ NTSTATUS ndr_pull_dfs_GetManagerVersion(struct ndr_pull *ndr, int flags, struct dfs_GetManagerVersion *r)
3124 TALLOC_CTX *_mem_save_version_0;
3125 if (flags & NDR_IN) {
3126 ZERO_STRUCT(r->out);
3128 NDR_PULL_ALLOC(ndr, r->out.version);
3129 ZERO_STRUCTP(r->out.version);
3131 if (flags & NDR_OUT) {
3132 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
3133 NDR_PULL_ALLOC(ndr, r->out.version);
3135 _mem_save_version_0 = NDR_PULL_GET_MEM_CTX(ndr);
3136 NDR_PULL_SET_MEM_CTX(ndr, r->out.version, LIBNDR_FLAG_REF_ALLOC);
3137 NDR_CHECK(ndr_pull_dfs_ManagerVersion(ndr, NDR_SCALARS, r->out.version));
3138 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_version_0, LIBNDR_FLAG_REF_ALLOC);
3140 return NT_STATUS_OK;
3143 _PUBLIC_ void ndr_print_dfs_GetManagerVersion(struct ndr_print *ndr, const char *name, int flags, const struct dfs_GetManagerVersion *r)
3145 ndr_print_struct(ndr, name, "dfs_GetManagerVersion");
3147 if (flags & NDR_SET_VALUES) {
3148 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3150 if (flags & NDR_IN) {
3151 ndr_print_struct(ndr, "in", "dfs_GetManagerVersion");
3155 if (flags & NDR_OUT) {
3156 ndr_print_struct(ndr, "out", "dfs_GetManagerVersion");
3158 ndr_print_ptr(ndr, "version", r->out.version);
3160 ndr_print_dfs_ManagerVersion(ndr, "version", *r->out.version);
3167 NTSTATUS ndr_push_dfs_Add(struct ndr_push *ndr, int flags, const struct dfs_Add *r)
3169 if (flags & NDR_IN) {
3170 if (r->in.path == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
3171 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
3172 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3173 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.path, CH_UTF16)));
3174 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.path, ndr_charset_length(r->in.path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3175 if (r->in.server == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
3176 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server, CH_UTF16)));
3177 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3178 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.server, CH_UTF16)));
3179 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.server, ndr_charset_length(r->in.server, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3180 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.share));
3182 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
3183 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3184 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.share, CH_UTF16)));
3185 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.share, ndr_charset_length(r->in.share, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3187 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.comment));
3188 if (r->in.comment) {
3189 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
3190 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3191 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
3192 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.comment, ndr_charset_length(r->in.comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3194 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
3196 if (flags & NDR_OUT) {
3197 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3199 return NT_STATUS_OK;
3202 NTSTATUS ndr_pull_dfs_Add(struct ndr_pull *ndr, int flags, struct dfs_Add *r)
3204 uint32_t _ptr_share;
3205 uint32_t _ptr_comment;
3206 TALLOC_CTX *_mem_save_share_0;
3207 TALLOC_CTX *_mem_save_comment_0;
3208 if (flags & NDR_IN) {
3209 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.path));
3210 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.path));
3211 if (ndr_get_array_length(ndr, &r->in.path) > ndr_get_array_size(ndr, &r->in.path)) {
3212 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));
3214 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t)));
3215 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.path, ndr_get_array_length(ndr, &r->in.path), sizeof(uint16_t), CH_UTF16));
3216 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.server));
3217 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.server));
3218 if (ndr_get_array_length(ndr, &r->in.server) > ndr_get_array_size(ndr, &r->in.server)) {
3219 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), ndr_get_array_length(ndr, &r->in.server));
3221 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.server), sizeof(uint16_t)));
3222 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.server, ndr_get_array_length(ndr, &r->in.server), sizeof(uint16_t), CH_UTF16));
3223 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_share));
3225 NDR_PULL_ALLOC(ndr, r->in.share);
3230 _mem_save_share_0 = NDR_PULL_GET_MEM_CTX(ndr);
3231 NDR_PULL_SET_MEM_CTX(ndr, r->in.share, 0);
3232 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.share));
3233 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.share));
3234 if (ndr_get_array_length(ndr, &r->in.share) > ndr_get_array_size(ndr, &r->in.share)) {
3235 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));
3237 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t)));
3238 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.share, ndr_get_array_length(ndr, &r->in.share), sizeof(uint16_t), CH_UTF16));
3239 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_share_0, 0);
3241 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_comment));
3243 NDR_PULL_ALLOC(ndr, r->in.comment);
3245 r->in.comment = NULL;
3247 if (r->in.comment) {
3248 _mem_save_comment_0 = NDR_PULL_GET_MEM_CTX(ndr);
3249 NDR_PULL_SET_MEM_CTX(ndr, r->in.comment, 0);
3250 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.comment));
3251 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.comment));
3252 if (ndr_get_array_length(ndr, &r->in.comment) > ndr_get_array_size(ndr, &r->in.comment)) {
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->in.comment), ndr_get_array_length(ndr, &r->in.comment));
3255 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t)));
3256 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.comment, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t), CH_UTF16));
3257 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_comment_0, 0);
3259 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
3261 if (flags & NDR_OUT) {
3262 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3264 return NT_STATUS_OK;
3267 _PUBLIC_ void ndr_print_dfs_Add(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Add *r)
3269 ndr_print_struct(ndr, name, "dfs_Add");
3271 if (flags & NDR_SET_VALUES) {
3272 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3274 if (flags & NDR_IN) {
3275 ndr_print_struct(ndr, "in", "dfs_Add");
3277 ndr_print_ptr(ndr, "path", r->in.path);
3279 ndr_print_string(ndr, "path", r->in.path);
3281 ndr_print_ptr(ndr, "server", r->in.server);
3283 ndr_print_string(ndr, "server", r->in.server);
3285 ndr_print_ptr(ndr, "share", r->in.share);
3288 ndr_print_string(ndr, "share", r->in.share);
3291 ndr_print_ptr(ndr, "comment", r->in.comment);
3293 if (r->in.comment) {
3294 ndr_print_string(ndr, "comment", r->in.comment);
3297 ndr_print_uint32(ndr, "flags", r->in.flags);
3300 if (flags & NDR_OUT) {
3301 ndr_print_struct(ndr, "out", "dfs_Add");
3303 ndr_print_WERROR(ndr, "result", r->out.result);
3309 NTSTATUS ndr_push_dfs_Remove(struct ndr_push *ndr, int flags, const struct dfs_Remove *r)
3311 if (flags & NDR_IN) {
3312 if (r->in.dfs_entry_path == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
3313 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16)));
3314 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3315 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16)));
3316 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfs_entry_path, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3317 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.servername));
3318 if (r->in.servername) {
3319 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
3320 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3321 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
3322 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3324 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.sharename));
3325 if (r->in.sharename) {
3326 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.sharename, CH_UTF16)));
3327 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3328 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.sharename, CH_UTF16)));
3329 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.sharename, ndr_charset_length(r->in.sharename, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3332 if (flags & NDR_OUT) {
3333 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3335 return NT_STATUS_OK;
3338 NTSTATUS ndr_pull_dfs_Remove(struct ndr_pull *ndr, int flags, struct dfs_Remove *r)
3340 uint32_t _ptr_servername;
3341 uint32_t _ptr_sharename;
3342 TALLOC_CTX *_mem_save_servername_0;
3343 TALLOC_CTX *_mem_save_sharename_0;
3344 if (flags & NDR_IN) {
3345 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfs_entry_path));
3346 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfs_entry_path));
3347 if (ndr_get_array_length(ndr, &r->in.dfs_entry_path) > ndr_get_array_size(ndr, &r->in.dfs_entry_path)) {
3348 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.dfs_entry_path), ndr_get_array_length(ndr, &r->in.dfs_entry_path));
3350 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfs_entry_path), sizeof(uint16_t)));
3351 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfs_entry_path, ndr_get_array_length(ndr, &r->in.dfs_entry_path), sizeof(uint16_t), CH_UTF16));
3352 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
3353 if (_ptr_servername) {
3354 NDR_PULL_ALLOC(ndr, r->in.servername);
3356 r->in.servername = NULL;
3358 if (r->in.servername) {
3359 _mem_save_servername_0 = NDR_PULL_GET_MEM_CTX(ndr);
3360 NDR_PULL_SET_MEM_CTX(ndr, r->in.servername, 0);
3361 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
3362 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
3363 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
3364 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.servername), ndr_get_array_length(ndr, &r->in.servername));
3366 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
3367 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
3368 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_servername_0, 0);
3370 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sharename));
3371 if (_ptr_sharename) {
3372 NDR_PULL_ALLOC(ndr, r->in.sharename);
3374 r->in.sharename = NULL;
3376 if (r->in.sharename) {
3377 _mem_save_sharename_0 = NDR_PULL_GET_MEM_CTX(ndr);
3378 NDR_PULL_SET_MEM_CTX(ndr, r->in.sharename, 0);
3379 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.sharename));
3380 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.sharename));
3381 if (ndr_get_array_length(ndr, &r->in.sharename) > ndr_get_array_size(ndr, &r->in.sharename)) {
3382 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.sharename), ndr_get_array_length(ndr, &r->in.sharename));
3384 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.sharename), sizeof(uint16_t)));
3385 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.sharename, ndr_get_array_length(ndr, &r->in.sharename), sizeof(uint16_t), CH_UTF16));
3386 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sharename_0, 0);
3389 if (flags & NDR_OUT) {
3390 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3392 return NT_STATUS_OK;
3395 _PUBLIC_ void ndr_print_dfs_Remove(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Remove *r)
3397 ndr_print_struct(ndr, name, "dfs_Remove");
3399 if (flags & NDR_SET_VALUES) {
3400 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3402 if (flags & NDR_IN) {
3403 ndr_print_struct(ndr, "in", "dfs_Remove");
3405 ndr_print_ptr(ndr, "dfs_entry_path", r->in.dfs_entry_path);
3407 ndr_print_string(ndr, "dfs_entry_path", r->in.dfs_entry_path);
3409 ndr_print_ptr(ndr, "servername", r->in.servername);
3411 if (r->in.servername) {
3412 ndr_print_string(ndr, "servername", r->in.servername);
3415 ndr_print_ptr(ndr, "sharename", r->in.sharename);
3417 if (r->in.sharename) {
3418 ndr_print_string(ndr, "sharename", r->in.sharename);
3423 if (flags & NDR_OUT) {
3424 ndr_print_struct(ndr, "out", "dfs_Remove");
3426 ndr_print_WERROR(ndr, "result", r->out.result);
3432 NTSTATUS ndr_push_dfs_SetInfo(struct ndr_push *ndr, int flags, const struct dfs_SetInfo *r)
3434 if (flags & NDR_IN) {
3435 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16)));
3436 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3437 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16)));
3438 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfs_entry_path, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3439 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.servername));
3440 if (r->in.servername) {
3441 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
3442 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3443 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
3444 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3446 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.sharename));
3447 if (r->in.sharename) {
3448 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.sharename, CH_UTF16)));
3449 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3450 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.sharename, CH_UTF16)));
3451 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.sharename, ndr_charset_length(r->in.sharename, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3453 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
3454 if (r->in.info == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
3455 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
3456 NDR_CHECK(ndr_push_dfs_Info(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
3458 if (flags & NDR_OUT) {
3459 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3461 return NT_STATUS_OK;
3464 NTSTATUS ndr_pull_dfs_SetInfo(struct ndr_pull *ndr, int flags, struct dfs_SetInfo *r)
3466 uint32_t _ptr_servername;
3467 uint32_t _ptr_sharename;
3468 TALLOC_CTX *_mem_save_servername_0;
3469 TALLOC_CTX *_mem_save_sharename_0;
3470 TALLOC_CTX *_mem_save_info_0;
3471 if (flags & NDR_IN) {
3472 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfs_entry_path));
3473 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfs_entry_path));
3474 if (ndr_get_array_length(ndr, &r->in.dfs_entry_path) > ndr_get_array_size(ndr, &r->in.dfs_entry_path)) {
3475 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.dfs_entry_path), ndr_get_array_length(ndr, &r->in.dfs_entry_path));
3477 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfs_entry_path), sizeof(uint16_t)));
3478 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfs_entry_path, ndr_get_array_length(ndr, &r->in.dfs_entry_path), sizeof(uint16_t), CH_UTF16));
3479 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
3480 if (_ptr_servername) {
3481 NDR_PULL_ALLOC(ndr, r->in.servername);
3483 r->in.servername = NULL;
3485 if (r->in.servername) {
3486 _mem_save_servername_0 = NDR_PULL_GET_MEM_CTX(ndr);
3487 NDR_PULL_SET_MEM_CTX(ndr, r->in.servername, 0);
3488 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
3489 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
3490 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
3491 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.servername), ndr_get_array_length(ndr, &r->in.servername));
3493 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
3494 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
3495 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_servername_0, 0);
3497 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sharename));
3498 if (_ptr_sharename) {
3499 NDR_PULL_ALLOC(ndr, r->in.sharename);
3501 r->in.sharename = NULL;
3503 if (r->in.sharename) {
3504 _mem_save_sharename_0 = NDR_PULL_GET_MEM_CTX(ndr);
3505 NDR_PULL_SET_MEM_CTX(ndr, r->in.sharename, 0);
3506 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.sharename));
3507 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.sharename));
3508 if (ndr_get_array_length(ndr, &r->in.sharename) > ndr_get_array_size(ndr, &r->in.sharename)) {
3509 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.sharename), ndr_get_array_length(ndr, &r->in.sharename));
3511 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.sharename), sizeof(uint16_t)));
3512 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.sharename, ndr_get_array_length(ndr, &r->in.sharename), sizeof(uint16_t), CH_UTF16));
3513 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sharename_0, 0);
3515 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
3516 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
3517 NDR_PULL_ALLOC(ndr, r->in.info);
3519 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3520 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
3521 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
3522 NDR_CHECK(ndr_pull_dfs_Info(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
3523 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
3525 if (flags & NDR_OUT) {
3526 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3528 return NT_STATUS_OK;
3531 _PUBLIC_ void ndr_print_dfs_SetInfo(struct ndr_print *ndr, const char *name, int flags, const struct dfs_SetInfo *r)
3533 ndr_print_struct(ndr, name, "dfs_SetInfo");
3535 if (flags & NDR_SET_VALUES) {
3536 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3538 if (flags & NDR_IN) {
3539 ndr_print_struct(ndr, "in", "dfs_SetInfo");
3541 ndr_print_string(ndr, "dfs_entry_path", r->in.dfs_entry_path);
3542 ndr_print_ptr(ndr, "servername", r->in.servername);
3544 if (r->in.servername) {
3545 ndr_print_string(ndr, "servername", r->in.servername);
3548 ndr_print_ptr(ndr, "sharename", r->in.sharename);
3550 if (r->in.sharename) {
3551 ndr_print_string(ndr, "sharename", r->in.sharename);
3554 ndr_print_uint32(ndr, "level", r->in.level);
3555 ndr_print_ptr(ndr, "info", r->in.info);
3557 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
3558 ndr_print_dfs_Info(ndr, "info", r->in.info);
3562 if (flags & NDR_OUT) {
3563 ndr_print_struct(ndr, "out", "dfs_SetInfo");
3565 ndr_print_WERROR(ndr, "result", r->out.result);
3571 NTSTATUS ndr_push_dfs_GetInfo(struct ndr_push *ndr, int flags, const struct dfs_GetInfo *r)
3573 if (flags & NDR_IN) {
3574 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16)));
3575 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3576 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16)));
3577 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfs_entry_path, ndr_charset_length(r->in.dfs_entry_path, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3578 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.servername));
3579 if (r->in.servername) {
3580 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
3581 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3582 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
3583 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3585 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.sharename));
3586 if (r->in.sharename) {
3587 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.sharename, CH_UTF16)));
3588 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
3589 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.sharename, CH_UTF16)));
3590 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.sharename, ndr_charset_length(r->in.sharename, CH_UTF16), sizeof(uint16_t), CH_UTF16));
3592 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
3594 if (flags & NDR_OUT) {
3595 if (r->out.info == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
3596 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
3597 NDR_CHECK(ndr_push_dfs_Info(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
3598 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3600 return NT_STATUS_OK;
3603 NTSTATUS ndr_pull_dfs_GetInfo(struct ndr_pull *ndr, int flags, struct dfs_GetInfo *r)
3605 uint32_t _ptr_servername;
3606 uint32_t _ptr_sharename;
3607 TALLOC_CTX *_mem_save_servername_0;
3608 TALLOC_CTX *_mem_save_sharename_0;
3609 TALLOC_CTX *_mem_save_info_0;
3610 if (flags & NDR_IN) {
3611 ZERO_STRUCT(r->out);
3613 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfs_entry_path));
3614 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfs_entry_path));
3615 if (ndr_get_array_length(ndr, &r->in.dfs_entry_path) > ndr_get_array_size(ndr, &r->in.dfs_entry_path)) {
3616 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.dfs_entry_path), ndr_get_array_length(ndr, &r->in.dfs_entry_path));
3618 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfs_entry_path), sizeof(uint16_t)));
3619 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfs_entry_path, ndr_get_array_length(ndr, &r->in.dfs_entry_path), sizeof(uint16_t), CH_UTF16));
3620 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_servername));
3621 if (_ptr_servername) {
3622 NDR_PULL_ALLOC(ndr, r->in.servername);
3624 r->in.servername = NULL;
3626 if (r->in.servername) {
3627 _mem_save_servername_0 = NDR_PULL_GET_MEM_CTX(ndr);
3628 NDR_PULL_SET_MEM_CTX(ndr, r->in.servername, 0);
3629 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
3630 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
3631 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
3632 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.servername), ndr_get_array_length(ndr, &r->in.servername));
3634 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
3635 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
3636 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_servername_0, 0);
3638 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sharename));
3639 if (_ptr_sharename) {
3640 NDR_PULL_ALLOC(ndr, r->in.sharename);
3642 r->in.sharename = NULL;
3644 if (r->in.sharename) {
3645 _mem_save_sharename_0 = NDR_PULL_GET_MEM_CTX(ndr);
3646 NDR_PULL_SET_MEM_CTX(ndr, r->in.sharename, 0);
3647 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.sharename));
3648 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.sharename));
3649 if (ndr_get_array_length(ndr, &r->in.sharename) > ndr_get_array_size(ndr, &r->in.sharename)) {
3650 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.sharename), ndr_get_array_length(ndr, &r->in.sharename));
3652 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.sharename), sizeof(uint16_t)));
3653 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.sharename, ndr_get_array_length(ndr, &r->in.sharename), sizeof(uint16_t), CH_UTF16));
3654 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sharename_0, 0);
3656 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
3657 NDR_PULL_ALLOC(ndr, r->out.info);
3658 ZERO_STRUCTP(r->out.info);
3660 if (flags & NDR_OUT) {
3661 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
3662 NDR_PULL_ALLOC(ndr, r->out.info);
3664 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3665 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
3666 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
3667 NDR_CHECK(ndr_pull_dfs_Info(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
3668 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
3669 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3671 return NT_STATUS_OK;
3674 _PUBLIC_ void ndr_print_dfs_GetInfo(struct ndr_print *ndr, const char *name, int flags, const struct dfs_GetInfo *r)
3676 ndr_print_struct(ndr, name, "dfs_GetInfo");
3678 if (flags & NDR_SET_VALUES) {
3679 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3681 if (flags & NDR_IN) {
3682 ndr_print_struct(ndr, "in", "dfs_GetInfo");
3684 ndr_print_string(ndr, "dfs_entry_path", r->in.dfs_entry_path);
3685 ndr_print_ptr(ndr, "servername", r->in.servername);
3687 if (r->in.servername) {
3688 ndr_print_string(ndr, "servername", r->in.servername);
3691 ndr_print_ptr(ndr, "sharename", r->in.sharename);
3693 if (r->in.sharename) {
3694 ndr_print_string(ndr, "sharename", r->in.sharename);
3697 ndr_print_uint32(ndr, "level", r->in.level);
3700 if (flags & NDR_OUT) {
3701 ndr_print_struct(ndr, "out", "dfs_GetInfo");
3703 ndr_print_ptr(ndr, "info", r->out.info);
3705 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
3706 ndr_print_dfs_Info(ndr, "info", r->out.info);
3708 ndr_print_WERROR(ndr, "result", r->out.result);
3714 NTSTATUS ndr_push_dfs_Enum(struct ndr_push *ndr, int flags, const struct dfs_Enum *r)
3716 if (flags & NDR_IN) {
3717 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
3718 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.bufsize));
3719 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
3721 NDR_CHECK(ndr_push_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
3723 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.total));
3725 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.total));
3728 if (flags & NDR_OUT) {
3729 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
3731 NDR_CHECK(ndr_push_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
3733 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.total));
3735 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total));
3737 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3739 return NT_STATUS_OK;
3742 NTSTATUS ndr_pull_dfs_Enum(struct ndr_pull *ndr, int flags, struct dfs_Enum *r)
3745 uint32_t _ptr_total;
3746 TALLOC_CTX *_mem_save_info_0;
3747 TALLOC_CTX *_mem_save_total_0;
3748 if (flags & NDR_IN) {
3749 ZERO_STRUCT(r->out);
3751 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
3752 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.bufsize));
3753 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
3755 NDR_PULL_ALLOC(ndr, r->in.info);
3760 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3761 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
3762 NDR_CHECK(ndr_pull_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
3763 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
3765 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_total));
3767 NDR_PULL_ALLOC(ndr, r->in.total);
3772 _mem_save_total_0 = NDR_PULL_GET_MEM_CTX(ndr);
3773 NDR_PULL_SET_MEM_CTX(ndr, r->in.total, 0);
3774 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.total));
3775 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_0, 0);
3778 if (flags & NDR_OUT) {
3779 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
3781 NDR_PULL_ALLOC(ndr, r->out.info);
3786 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
3787 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
3788 NDR_CHECK(ndr_pull_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
3789 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
3791 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_total));
3793 NDR_PULL_ALLOC(ndr, r->out.total);
3795 r->out.total = NULL;
3798 _mem_save_total_0 = NDR_PULL_GET_MEM_CTX(ndr);
3799 NDR_PULL_SET_MEM_CTX(ndr, r->out.total, 0);
3800 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total));
3801 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_0, 0);
3803 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3805 return NT_STATUS_OK;
3808 _PUBLIC_ void ndr_print_dfs_Enum(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Enum *r)
3810 ndr_print_struct(ndr, name, "dfs_Enum");
3812 if (flags & NDR_SET_VALUES) {
3813 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3815 if (flags & NDR_IN) {
3816 ndr_print_struct(ndr, "in", "dfs_Enum");
3818 ndr_print_uint32(ndr, "level", r->in.level);
3819 ndr_print_uint32(ndr, "bufsize", r->in.bufsize);
3820 ndr_print_ptr(ndr, "info", r->in.info);
3823 ndr_print_dfs_EnumStruct(ndr, "info", r->in.info);
3826 ndr_print_ptr(ndr, "total", r->in.total);
3829 ndr_print_uint32(ndr, "total", *r->in.total);
3834 if (flags & NDR_OUT) {
3835 ndr_print_struct(ndr, "out", "dfs_Enum");
3837 ndr_print_ptr(ndr, "info", r->out.info);
3840 ndr_print_dfs_EnumStruct(ndr, "info", r->out.info);
3843 ndr_print_ptr(ndr, "total", r->out.total);
3846 ndr_print_uint32(ndr, "total", *r->out.total);
3849 ndr_print_WERROR(ndr, "result", r->out.result);
3855 NTSTATUS ndr_push_dfs_Rename(struct ndr_push *ndr, int flags, const struct dfs_Rename *r)
3857 if (flags & NDR_IN) {
3859 if (flags & NDR_OUT) {
3860 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3862 return NT_STATUS_OK;
3865 NTSTATUS ndr_pull_dfs_Rename(struct ndr_pull *ndr, int flags, struct dfs_Rename *r)
3867 if (flags & NDR_IN) {
3869 if (flags & NDR_OUT) {
3870 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3872 return NT_STATUS_OK;
3875 _PUBLIC_ void ndr_print_dfs_Rename(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Rename *r)
3877 ndr_print_struct(ndr, name, "dfs_Rename");
3879 if (flags & NDR_SET_VALUES) {
3880 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3882 if (flags & NDR_IN) {
3883 ndr_print_struct(ndr, "in", "dfs_Rename");
3887 if (flags & NDR_OUT) {
3888 ndr_print_struct(ndr, "out", "dfs_Rename");
3890 ndr_print_WERROR(ndr, "result", r->out.result);
3896 NTSTATUS ndr_push_dfs_Move(struct ndr_push *ndr, int flags, const struct dfs_Move *r)
3898 if (flags & NDR_IN) {
3900 if (flags & NDR_OUT) {
3901 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3903 return NT_STATUS_OK;
3906 NTSTATUS ndr_pull_dfs_Move(struct ndr_pull *ndr, int flags, struct dfs_Move *r)
3908 if (flags & NDR_IN) {
3910 if (flags & NDR_OUT) {
3911 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3913 return NT_STATUS_OK;
3916 _PUBLIC_ void ndr_print_dfs_Move(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Move *r)
3918 ndr_print_struct(ndr, name, "dfs_Move");
3920 if (flags & NDR_SET_VALUES) {
3921 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3923 if (flags & NDR_IN) {
3924 ndr_print_struct(ndr, "in", "dfs_Move");
3928 if (flags & NDR_OUT) {
3929 ndr_print_struct(ndr, "out", "dfs_Move");
3931 ndr_print_WERROR(ndr, "result", r->out.result);
3937 NTSTATUS ndr_push_dfs_ManagerGetConfigInfo(struct ndr_push *ndr, int flags, const struct dfs_ManagerGetConfigInfo *r)
3939 if (flags & NDR_IN) {
3941 if (flags & NDR_OUT) {
3942 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3944 return NT_STATUS_OK;
3947 NTSTATUS ndr_pull_dfs_ManagerGetConfigInfo(struct ndr_pull *ndr, int flags, struct dfs_ManagerGetConfigInfo *r)
3949 if (flags & NDR_IN) {
3951 if (flags & NDR_OUT) {
3952 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3954 return NT_STATUS_OK;
3957 _PUBLIC_ void ndr_print_dfs_ManagerGetConfigInfo(struct ndr_print *ndr, const char *name, int flags, const struct dfs_ManagerGetConfigInfo *r)
3959 ndr_print_struct(ndr, name, "dfs_ManagerGetConfigInfo");
3961 if (flags & NDR_SET_VALUES) {
3962 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
3964 if (flags & NDR_IN) {
3965 ndr_print_struct(ndr, "in", "dfs_ManagerGetConfigInfo");
3969 if (flags & NDR_OUT) {
3970 ndr_print_struct(ndr, "out", "dfs_ManagerGetConfigInfo");
3972 ndr_print_WERROR(ndr, "result", r->out.result);
3978 NTSTATUS ndr_push_dfs_ManagerSendSiteInfo(struct ndr_push *ndr, int flags, const struct dfs_ManagerSendSiteInfo *r)
3980 if (flags & NDR_IN) {
3982 if (flags & NDR_OUT) {
3983 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
3985 return NT_STATUS_OK;
3988 NTSTATUS ndr_pull_dfs_ManagerSendSiteInfo(struct ndr_pull *ndr, int flags, struct dfs_ManagerSendSiteInfo *r)
3990 if (flags & NDR_IN) {
3992 if (flags & NDR_OUT) {
3993 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
3995 return NT_STATUS_OK;
3998 _PUBLIC_ void ndr_print_dfs_ManagerSendSiteInfo(struct ndr_print *ndr, const char *name, int flags, const struct dfs_ManagerSendSiteInfo *r)
4000 ndr_print_struct(ndr, name, "dfs_ManagerSendSiteInfo");
4002 if (flags & NDR_SET_VALUES) {
4003 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4005 if (flags & NDR_IN) {
4006 ndr_print_struct(ndr, "in", "dfs_ManagerSendSiteInfo");
4010 if (flags & NDR_OUT) {
4011 ndr_print_struct(ndr, "out", "dfs_ManagerSendSiteInfo");
4013 ndr_print_WERROR(ndr, "result", r->out.result);
4019 NTSTATUS ndr_push_dfs_AddFtRoot(struct ndr_push *ndr, int flags, const struct dfs_AddFtRoot *r)
4021 if (flags & NDR_IN) {
4022 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4023 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4024 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4025 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4026 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dns_servername, CH_UTF16)));
4027 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4028 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dns_servername, CH_UTF16)));
4029 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dns_servername, ndr_charset_length(r->in.dns_servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4030 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfsname, CH_UTF16)));
4031 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4032 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfsname, CH_UTF16)));
4033 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfsname, ndr_charset_length(r->in.dfsname, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4034 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4035 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4036 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4037 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.rootshare, ndr_charset_length(r->in.rootshare, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4038 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
4039 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4040 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
4041 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.comment, ndr_charset_length(r->in.comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4042 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_config_dn, CH_UTF16)));
4043 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4044 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_config_dn, CH_UTF16)));
4045 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfs_config_dn, ndr_charset_length(r->in.dfs_config_dn, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4046 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.unknown1));
4047 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
4048 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown2));
4049 if (r->in.unknown2) {
4050 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.unknown2));
4051 if (*r->in.unknown2) {
4052 NDR_CHECK(ndr_push_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.unknown2));
4056 if (flags & NDR_OUT) {
4057 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.unknown2));
4058 if (r->out.unknown2) {
4059 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.unknown2));
4060 if (*r->out.unknown2) {
4061 NDR_CHECK(ndr_push_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.unknown2));
4064 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4066 return NT_STATUS_OK;
4069 NTSTATUS ndr_pull_dfs_AddFtRoot(struct ndr_pull *ndr, int flags, struct dfs_AddFtRoot *r)
4071 uint32_t _ptr_unknown2;
4072 TALLOC_CTX *_mem_save_unknown2_0;
4073 TALLOC_CTX *_mem_save_unknown2_1;
4074 if (flags & NDR_IN) {
4075 ZERO_STRUCT(r->out);
4077 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4078 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4079 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4080 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4082 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4083 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4084 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dns_servername));
4085 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dns_servername));
4086 if (ndr_get_array_length(ndr, &r->in.dns_servername) > ndr_get_array_size(ndr, &r->in.dns_servername)) {
4087 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.dns_servername), ndr_get_array_length(ndr, &r->in.dns_servername));
4089 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dns_servername), sizeof(uint16_t)));
4090 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dns_servername, ndr_get_array_length(ndr, &r->in.dns_servername), sizeof(uint16_t), CH_UTF16));
4091 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfsname));
4092 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfsname));
4093 if (ndr_get_array_length(ndr, &r->in.dfsname) > ndr_get_array_size(ndr, &r->in.dfsname)) {
4094 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.dfsname), ndr_get_array_length(ndr, &r->in.dfsname));
4096 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfsname), sizeof(uint16_t)));
4097 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfsname, ndr_get_array_length(ndr, &r->in.dfsname), sizeof(uint16_t), CH_UTF16));
4098 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rootshare));
4099 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rootshare));
4100 if (ndr_get_array_length(ndr, &r->in.rootshare) > ndr_get_array_size(ndr, &r->in.rootshare)) {
4101 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.rootshare), ndr_get_array_length(ndr, &r->in.rootshare));
4103 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t)));
4104 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.rootshare, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t), CH_UTF16));
4105 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.comment));
4106 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.comment));
4107 if (ndr_get_array_length(ndr, &r->in.comment) > ndr_get_array_size(ndr, &r->in.comment)) {
4108 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.comment), ndr_get_array_length(ndr, &r->in.comment));
4110 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t)));
4111 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.comment, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t), CH_UTF16));
4112 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfs_config_dn));
4113 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfs_config_dn));
4114 if (ndr_get_array_length(ndr, &r->in.dfs_config_dn) > ndr_get_array_size(ndr, &r->in.dfs_config_dn)) {
4115 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.dfs_config_dn), ndr_get_array_length(ndr, &r->in.dfs_config_dn));
4117 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfs_config_dn), sizeof(uint16_t)));
4118 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfs_config_dn, ndr_get_array_length(ndr, &r->in.dfs_config_dn), sizeof(uint16_t), CH_UTF16));
4119 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.unknown1));
4120 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
4121 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
4122 if (_ptr_unknown2) {
4123 NDR_PULL_ALLOC(ndr, r->in.unknown2);
4125 r->in.unknown2 = NULL;
4127 if (r->in.unknown2) {
4128 _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
4129 NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown2, 0);
4130 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
4131 if (_ptr_unknown2) {
4132 NDR_PULL_ALLOC(ndr, *r->in.unknown2);
4134 *r->in.unknown2 = NULL;
4136 if (*r->in.unknown2) {
4137 _mem_save_unknown2_1 = NDR_PULL_GET_MEM_CTX(ndr);
4138 NDR_PULL_SET_MEM_CTX(ndr, *r->in.unknown2, 0);
4139 NDR_CHECK(ndr_pull_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.unknown2));
4140 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_1, 0);
4142 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
4145 if (flags & NDR_OUT) {
4146 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
4147 if (_ptr_unknown2) {
4148 NDR_PULL_ALLOC(ndr, r->out.unknown2);
4150 r->out.unknown2 = NULL;
4152 if (r->out.unknown2) {
4153 _mem_save_unknown2_0 = NDR_PULL_GET_MEM_CTX(ndr);
4154 NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown2, 0);
4155 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown2));
4156 if (_ptr_unknown2) {
4157 NDR_PULL_ALLOC(ndr, *r->out.unknown2);
4159 *r->out.unknown2 = NULL;
4161 if (*r->out.unknown2) {
4162 _mem_save_unknown2_1 = NDR_PULL_GET_MEM_CTX(ndr);
4163 NDR_PULL_SET_MEM_CTX(ndr, *r->out.unknown2, 0);
4164 NDR_CHECK(ndr_pull_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.unknown2));
4165 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_1, 0);
4167 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown2_0, 0);
4169 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4171 return NT_STATUS_OK;
4174 _PUBLIC_ void ndr_print_dfs_AddFtRoot(struct ndr_print *ndr, const char *name, int flags, const struct dfs_AddFtRoot *r)
4176 ndr_print_struct(ndr, name, "dfs_AddFtRoot");
4178 if (flags & NDR_SET_VALUES) {
4179 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4181 if (flags & NDR_IN) {
4182 ndr_print_struct(ndr, "in", "dfs_AddFtRoot");
4184 ndr_print_string(ndr, "servername", r->in.servername);
4185 ndr_print_string(ndr, "dns_servername", r->in.dns_servername);
4186 ndr_print_string(ndr, "dfsname", r->in.dfsname);
4187 ndr_print_string(ndr, "rootshare", r->in.rootshare);
4188 ndr_print_string(ndr, "comment", r->in.comment);
4189 ndr_print_string(ndr, "dfs_config_dn", r->in.dfs_config_dn);
4190 ndr_print_uint8(ndr, "unknown1", r->in.unknown1);
4191 ndr_print_uint32(ndr, "flags", r->in.flags);
4192 ndr_print_ptr(ndr, "unknown2", r->in.unknown2);
4194 if (r->in.unknown2) {
4195 ndr_print_ptr(ndr, "unknown2", *r->in.unknown2);
4197 if (*r->in.unknown2) {
4198 ndr_print_dfs_UnknownStruct(ndr, "unknown2", *r->in.unknown2);
4205 if (flags & NDR_OUT) {
4206 ndr_print_struct(ndr, "out", "dfs_AddFtRoot");
4208 ndr_print_ptr(ndr, "unknown2", r->out.unknown2);
4210 if (r->out.unknown2) {
4211 ndr_print_ptr(ndr, "unknown2", *r->out.unknown2);
4213 if (*r->out.unknown2) {
4214 ndr_print_dfs_UnknownStruct(ndr, "unknown2", *r->out.unknown2);
4219 ndr_print_WERROR(ndr, "result", r->out.result);
4225 NTSTATUS ndr_push_dfs_RemoveFtRoot(struct ndr_push *ndr, int flags, const struct dfs_RemoveFtRoot *r)
4227 if (flags & NDR_IN) {
4228 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4229 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4230 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4231 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4232 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dns_servername, CH_UTF16)));
4233 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4234 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dns_servername, CH_UTF16)));
4235 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dns_servername, ndr_charset_length(r->in.dns_servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4236 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfsname, CH_UTF16)));
4237 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4238 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfsname, CH_UTF16)));
4239 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfsname, ndr_charset_length(r->in.dfsname, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4240 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4241 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4242 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4243 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.rootshare, ndr_charset_length(r->in.rootshare, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4244 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
4245 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.unknown));
4246 if (r->in.unknown) {
4247 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.unknown));
4248 if (*r->in.unknown) {
4249 NDR_CHECK(ndr_push_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.unknown));
4253 if (flags & NDR_OUT) {
4254 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.unknown));
4255 if (r->out.unknown) {
4256 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.unknown));
4257 if (*r->out.unknown) {
4258 NDR_CHECK(ndr_push_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.unknown));
4261 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4263 return NT_STATUS_OK;
4266 NTSTATUS ndr_pull_dfs_RemoveFtRoot(struct ndr_pull *ndr, int flags, struct dfs_RemoveFtRoot *r)
4268 uint32_t _ptr_unknown;
4269 TALLOC_CTX *_mem_save_unknown_0;
4270 TALLOC_CTX *_mem_save_unknown_1;
4271 if (flags & NDR_IN) {
4272 ZERO_STRUCT(r->out);
4274 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4275 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4276 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4277 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4279 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4280 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4281 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dns_servername));
4282 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dns_servername));
4283 if (ndr_get_array_length(ndr, &r->in.dns_servername) > ndr_get_array_size(ndr, &r->in.dns_servername)) {
4284 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.dns_servername), ndr_get_array_length(ndr, &r->in.dns_servername));
4286 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dns_servername), sizeof(uint16_t)));
4287 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dns_servername, ndr_get_array_length(ndr, &r->in.dns_servername), sizeof(uint16_t), CH_UTF16));
4288 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfsname));
4289 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfsname));
4290 if (ndr_get_array_length(ndr, &r->in.dfsname) > ndr_get_array_size(ndr, &r->in.dfsname)) {
4291 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.dfsname), ndr_get_array_length(ndr, &r->in.dfsname));
4293 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfsname), sizeof(uint16_t)));
4294 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfsname, ndr_get_array_length(ndr, &r->in.dfsname), sizeof(uint16_t), CH_UTF16));
4295 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rootshare));
4296 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rootshare));
4297 if (ndr_get_array_length(ndr, &r->in.rootshare) > ndr_get_array_size(ndr, &r->in.rootshare)) {
4298 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.rootshare), ndr_get_array_length(ndr, &r->in.rootshare));
4300 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t)));
4301 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.rootshare, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t), CH_UTF16));
4302 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
4303 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
4305 NDR_PULL_ALLOC(ndr, r->in.unknown);
4307 r->in.unknown = NULL;
4309 if (r->in.unknown) {
4310 _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
4311 NDR_PULL_SET_MEM_CTX(ndr, r->in.unknown, 0);
4312 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
4314 NDR_PULL_ALLOC(ndr, *r->in.unknown);
4316 *r->in.unknown = NULL;
4318 if (*r->in.unknown) {
4319 _mem_save_unknown_1 = NDR_PULL_GET_MEM_CTX(ndr);
4320 NDR_PULL_SET_MEM_CTX(ndr, *r->in.unknown, 0);
4321 NDR_CHECK(ndr_pull_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.unknown));
4322 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_1, 0);
4324 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
4327 if (flags & NDR_OUT) {
4328 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
4330 NDR_PULL_ALLOC(ndr, r->out.unknown);
4332 r->out.unknown = NULL;
4334 if (r->out.unknown) {
4335 _mem_save_unknown_0 = NDR_PULL_GET_MEM_CTX(ndr);
4336 NDR_PULL_SET_MEM_CTX(ndr, r->out.unknown, 0);
4337 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_unknown));
4339 NDR_PULL_ALLOC(ndr, *r->out.unknown);
4341 *r->out.unknown = NULL;
4343 if (*r->out.unknown) {
4344 _mem_save_unknown_1 = NDR_PULL_GET_MEM_CTX(ndr);
4345 NDR_PULL_SET_MEM_CTX(ndr, *r->out.unknown, 0);
4346 NDR_CHECK(ndr_pull_dfs_UnknownStruct(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.unknown));
4347 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_1, 0);
4349 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_unknown_0, 0);
4351 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4353 return NT_STATUS_OK;
4356 _PUBLIC_ void ndr_print_dfs_RemoveFtRoot(struct ndr_print *ndr, const char *name, int flags, const struct dfs_RemoveFtRoot *r)
4358 ndr_print_struct(ndr, name, "dfs_RemoveFtRoot");
4360 if (flags & NDR_SET_VALUES) {
4361 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4363 if (flags & NDR_IN) {
4364 ndr_print_struct(ndr, "in", "dfs_RemoveFtRoot");
4366 ndr_print_string(ndr, "servername", r->in.servername);
4367 ndr_print_string(ndr, "dns_servername", r->in.dns_servername);
4368 ndr_print_string(ndr, "dfsname", r->in.dfsname);
4369 ndr_print_string(ndr, "rootshare", r->in.rootshare);
4370 ndr_print_uint32(ndr, "flags", r->in.flags);
4371 ndr_print_ptr(ndr, "unknown", r->in.unknown);
4373 if (r->in.unknown) {
4374 ndr_print_ptr(ndr, "unknown", *r->in.unknown);
4376 if (*r->in.unknown) {
4377 ndr_print_dfs_UnknownStruct(ndr, "unknown", *r->in.unknown);
4384 if (flags & NDR_OUT) {
4385 ndr_print_struct(ndr, "out", "dfs_RemoveFtRoot");
4387 ndr_print_ptr(ndr, "unknown", r->out.unknown);
4389 if (r->out.unknown) {
4390 ndr_print_ptr(ndr, "unknown", *r->out.unknown);
4392 if (*r->out.unknown) {
4393 ndr_print_dfs_UnknownStruct(ndr, "unknown", *r->out.unknown);
4398 ndr_print_WERROR(ndr, "result", r->out.result);
4404 NTSTATUS ndr_push_dfs_AddStdRoot(struct ndr_push *ndr, int flags, const struct dfs_AddStdRoot *r)
4406 if (flags & NDR_IN) {
4407 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4408 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4409 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4410 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4411 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4412 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4413 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4414 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.rootshare, ndr_charset_length(r->in.rootshare, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4415 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
4416 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4417 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
4418 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.comment, ndr_charset_length(r->in.comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4419 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
4421 if (flags & NDR_OUT) {
4422 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4424 return NT_STATUS_OK;
4427 NTSTATUS ndr_pull_dfs_AddStdRoot(struct ndr_pull *ndr, int flags, struct dfs_AddStdRoot *r)
4429 if (flags & NDR_IN) {
4430 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4431 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4432 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4433 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4435 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4436 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4437 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rootshare));
4438 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rootshare));
4439 if (ndr_get_array_length(ndr, &r->in.rootshare) > ndr_get_array_size(ndr, &r->in.rootshare)) {
4440 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.rootshare), ndr_get_array_length(ndr, &r->in.rootshare));
4442 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t)));
4443 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.rootshare, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t), CH_UTF16));
4444 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.comment));
4445 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.comment));
4446 if (ndr_get_array_length(ndr, &r->in.comment) > ndr_get_array_size(ndr, &r->in.comment)) {
4447 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.comment), ndr_get_array_length(ndr, &r->in.comment));
4449 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t)));
4450 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.comment, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t), CH_UTF16));
4451 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
4453 if (flags & NDR_OUT) {
4454 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4456 return NT_STATUS_OK;
4459 _PUBLIC_ void ndr_print_dfs_AddStdRoot(struct ndr_print *ndr, const char *name, int flags, const struct dfs_AddStdRoot *r)
4461 ndr_print_struct(ndr, name, "dfs_AddStdRoot");
4463 if (flags & NDR_SET_VALUES) {
4464 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4466 if (flags & NDR_IN) {
4467 ndr_print_struct(ndr, "in", "dfs_AddStdRoot");
4469 ndr_print_string(ndr, "servername", r->in.servername);
4470 ndr_print_string(ndr, "rootshare", r->in.rootshare);
4471 ndr_print_string(ndr, "comment", r->in.comment);
4472 ndr_print_uint32(ndr, "flags", r->in.flags);
4475 if (flags & NDR_OUT) {
4476 ndr_print_struct(ndr, "out", "dfs_AddStdRoot");
4478 ndr_print_WERROR(ndr, "result", r->out.result);
4484 NTSTATUS ndr_push_dfs_RemoveStdRoot(struct ndr_push *ndr, int flags, const struct dfs_RemoveStdRoot *r)
4486 if (flags & NDR_IN) {
4487 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4488 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4489 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4490 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4491 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4492 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4493 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4494 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.rootshare, ndr_charset_length(r->in.rootshare, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4495 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
4497 if (flags & NDR_OUT) {
4498 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4500 return NT_STATUS_OK;
4503 NTSTATUS ndr_pull_dfs_RemoveStdRoot(struct ndr_pull *ndr, int flags, struct dfs_RemoveStdRoot *r)
4505 if (flags & NDR_IN) {
4506 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4507 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4508 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4509 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4511 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4512 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4513 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rootshare));
4514 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rootshare));
4515 if (ndr_get_array_length(ndr, &r->in.rootshare) > ndr_get_array_size(ndr, &r->in.rootshare)) {
4516 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.rootshare), ndr_get_array_length(ndr, &r->in.rootshare));
4518 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t)));
4519 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.rootshare, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t), CH_UTF16));
4520 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
4522 if (flags & NDR_OUT) {
4523 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4525 return NT_STATUS_OK;
4528 _PUBLIC_ void ndr_print_dfs_RemoveStdRoot(struct ndr_print *ndr, const char *name, int flags, const struct dfs_RemoveStdRoot *r)
4530 ndr_print_struct(ndr, name, "dfs_RemoveStdRoot");
4532 if (flags & NDR_SET_VALUES) {
4533 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4535 if (flags & NDR_IN) {
4536 ndr_print_struct(ndr, "in", "dfs_RemoveStdRoot");
4538 ndr_print_string(ndr, "servername", r->in.servername);
4539 ndr_print_string(ndr, "rootshare", r->in.rootshare);
4540 ndr_print_uint32(ndr, "flags", r->in.flags);
4543 if (flags & NDR_OUT) {
4544 ndr_print_struct(ndr, "out", "dfs_RemoveStdRoot");
4546 ndr_print_WERROR(ndr, "result", r->out.result);
4552 NTSTATUS ndr_push_dfs_ManagerInitialize(struct ndr_push *ndr, int flags, const struct dfs_ManagerInitialize *r)
4554 if (flags & NDR_IN) {
4555 if (r->in.servername == NULL) return NT_STATUS_INVALID_PARAMETER_MIX;
4556 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4557 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4558 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4559 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4560 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.flags));
4562 if (flags & NDR_OUT) {
4563 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4565 return NT_STATUS_OK;
4568 NTSTATUS ndr_pull_dfs_ManagerInitialize(struct ndr_pull *ndr, int flags, struct dfs_ManagerInitialize *r)
4570 if (flags & NDR_IN) {
4571 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4572 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4573 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4574 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4576 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4577 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4578 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.flags));
4580 if (flags & NDR_OUT) {
4581 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4583 return NT_STATUS_OK;
4586 _PUBLIC_ void ndr_print_dfs_ManagerInitialize(struct ndr_print *ndr, const char *name, int flags, const struct dfs_ManagerInitialize *r)
4588 ndr_print_struct(ndr, name, "dfs_ManagerInitialize");
4590 if (flags & NDR_SET_VALUES) {
4591 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4593 if (flags & NDR_IN) {
4594 ndr_print_struct(ndr, "in", "dfs_ManagerInitialize");
4596 ndr_print_ptr(ndr, "servername", r->in.servername);
4598 ndr_print_string(ndr, "servername", r->in.servername);
4600 ndr_print_uint32(ndr, "flags", r->in.flags);
4603 if (flags & NDR_OUT) {
4604 ndr_print_struct(ndr, "out", "dfs_ManagerInitialize");
4606 ndr_print_WERROR(ndr, "result", r->out.result);
4612 NTSTATUS ndr_push_dfs_AddStdRootForced(struct ndr_push *ndr, int flags, const struct dfs_AddStdRootForced *r)
4614 if (flags & NDR_IN) {
4615 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4616 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4617 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4618 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4619 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4620 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4621 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4622 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.rootshare, ndr_charset_length(r->in.rootshare, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4623 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
4624 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4625 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.comment, CH_UTF16)));
4626 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.comment, ndr_charset_length(r->in.comment, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4627 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.store, CH_UTF16)));
4628 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4629 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.store, CH_UTF16)));
4630 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.store, ndr_charset_length(r->in.store, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4632 if (flags & NDR_OUT) {
4633 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4635 return NT_STATUS_OK;
4638 NTSTATUS ndr_pull_dfs_AddStdRootForced(struct ndr_pull *ndr, int flags, struct dfs_AddStdRootForced *r)
4640 if (flags & NDR_IN) {
4641 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4642 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4643 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4644 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4646 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4647 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4648 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rootshare));
4649 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rootshare));
4650 if (ndr_get_array_length(ndr, &r->in.rootshare) > ndr_get_array_size(ndr, &r->in.rootshare)) {
4651 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.rootshare), ndr_get_array_length(ndr, &r->in.rootshare));
4653 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t)));
4654 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.rootshare, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t), CH_UTF16));
4655 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.comment));
4656 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.comment));
4657 if (ndr_get_array_length(ndr, &r->in.comment) > ndr_get_array_size(ndr, &r->in.comment)) {
4658 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.comment), ndr_get_array_length(ndr, &r->in.comment));
4660 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t)));
4661 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.comment, ndr_get_array_length(ndr, &r->in.comment), sizeof(uint16_t), CH_UTF16));
4662 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.store));
4663 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.store));
4664 if (ndr_get_array_length(ndr, &r->in.store) > ndr_get_array_size(ndr, &r->in.store)) {
4665 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.store), ndr_get_array_length(ndr, &r->in.store));
4667 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.store), sizeof(uint16_t)));
4668 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.store, ndr_get_array_length(ndr, &r->in.store), sizeof(uint16_t), CH_UTF16));
4670 if (flags & NDR_OUT) {
4671 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4673 return NT_STATUS_OK;
4676 _PUBLIC_ void ndr_print_dfs_AddStdRootForced(struct ndr_print *ndr, const char *name, int flags, const struct dfs_AddStdRootForced *r)
4678 ndr_print_struct(ndr, name, "dfs_AddStdRootForced");
4680 if (flags & NDR_SET_VALUES) {
4681 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4683 if (flags & NDR_IN) {
4684 ndr_print_struct(ndr, "in", "dfs_AddStdRootForced");
4686 ndr_print_string(ndr, "servername", r->in.servername);
4687 ndr_print_string(ndr, "rootshare", r->in.rootshare);
4688 ndr_print_string(ndr, "comment", r->in.comment);
4689 ndr_print_string(ndr, "store", r->in.store);
4692 if (flags & NDR_OUT) {
4693 ndr_print_struct(ndr, "out", "dfs_AddStdRootForced");
4695 ndr_print_WERROR(ndr, "result", r->out.result);
4701 NTSTATUS ndr_push_dfs_GetDcAddress(struct ndr_push *ndr, int flags, const struct dfs_GetDcAddress *r)
4703 if (flags & NDR_IN) {
4705 if (flags & NDR_OUT) {
4706 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4708 return NT_STATUS_OK;
4711 NTSTATUS ndr_pull_dfs_GetDcAddress(struct ndr_pull *ndr, int flags, struct dfs_GetDcAddress *r)
4713 if (flags & NDR_IN) {
4715 if (flags & NDR_OUT) {
4716 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4718 return NT_STATUS_OK;
4721 _PUBLIC_ void ndr_print_dfs_GetDcAddress(struct ndr_print *ndr, const char *name, int flags, const struct dfs_GetDcAddress *r)
4723 ndr_print_struct(ndr, name, "dfs_GetDcAddress");
4725 if (flags & NDR_SET_VALUES) {
4726 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4728 if (flags & NDR_IN) {
4729 ndr_print_struct(ndr, "in", "dfs_GetDcAddress");
4733 if (flags & NDR_OUT) {
4734 ndr_print_struct(ndr, "out", "dfs_GetDcAddress");
4736 ndr_print_WERROR(ndr, "result", r->out.result);
4742 NTSTATUS ndr_push_dfs_SetDcAddress(struct ndr_push *ndr, int flags, const struct dfs_SetDcAddress *r)
4744 if (flags & NDR_IN) {
4746 if (flags & NDR_OUT) {
4747 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4749 return NT_STATUS_OK;
4752 NTSTATUS ndr_pull_dfs_SetDcAddress(struct ndr_pull *ndr, int flags, struct dfs_SetDcAddress *r)
4754 if (flags & NDR_IN) {
4756 if (flags & NDR_OUT) {
4757 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4759 return NT_STATUS_OK;
4762 _PUBLIC_ void ndr_print_dfs_SetDcAddress(struct ndr_print *ndr, const char *name, int flags, const struct dfs_SetDcAddress *r)
4764 ndr_print_struct(ndr, name, "dfs_SetDcAddress");
4766 if (flags & NDR_SET_VALUES) {
4767 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4769 if (flags & NDR_IN) {
4770 ndr_print_struct(ndr, "in", "dfs_SetDcAddress");
4774 if (flags & NDR_OUT) {
4775 ndr_print_struct(ndr, "out", "dfs_SetDcAddress");
4777 ndr_print_WERROR(ndr, "result", r->out.result);
4783 NTSTATUS ndr_push_dfs_FlushFtTable(struct ndr_push *ndr, int flags, const struct dfs_FlushFtTable *r)
4785 if (flags & NDR_IN) {
4786 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4787 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4788 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.servername, CH_UTF16)));
4789 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.servername, ndr_charset_length(r->in.servername, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4790 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4791 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4792 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.rootshare, CH_UTF16)));
4793 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.rootshare, ndr_charset_length(r->in.rootshare, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4795 if (flags & NDR_OUT) {
4796 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4798 return NT_STATUS_OK;
4801 NTSTATUS ndr_pull_dfs_FlushFtTable(struct ndr_pull *ndr, int flags, struct dfs_FlushFtTable *r)
4803 if (flags & NDR_IN) {
4804 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.servername));
4805 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.servername));
4806 if (ndr_get_array_length(ndr, &r->in.servername) > ndr_get_array_size(ndr, &r->in.servername)) {
4807 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.servername), ndr_get_array_length(ndr, &r->in.servername));
4809 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t)));
4810 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.servername, ndr_get_array_length(ndr, &r->in.servername), sizeof(uint16_t), CH_UTF16));
4811 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.rootshare));
4812 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.rootshare));
4813 if (ndr_get_array_length(ndr, &r->in.rootshare) > ndr_get_array_size(ndr, &r->in.rootshare)) {
4814 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.rootshare), ndr_get_array_length(ndr, &r->in.rootshare));
4816 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t)));
4817 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.rootshare, ndr_get_array_length(ndr, &r->in.rootshare), sizeof(uint16_t), CH_UTF16));
4819 if (flags & NDR_OUT) {
4820 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4822 return NT_STATUS_OK;
4825 _PUBLIC_ void ndr_print_dfs_FlushFtTable(struct ndr_print *ndr, const char *name, int flags, const struct dfs_FlushFtTable *r)
4827 ndr_print_struct(ndr, name, "dfs_FlushFtTable");
4829 if (flags & NDR_SET_VALUES) {
4830 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4832 if (flags & NDR_IN) {
4833 ndr_print_struct(ndr, "in", "dfs_FlushFtTable");
4835 ndr_print_string(ndr, "servername", r->in.servername);
4836 ndr_print_string(ndr, "rootshare", r->in.rootshare);
4839 if (flags & NDR_OUT) {
4840 ndr_print_struct(ndr, "out", "dfs_FlushFtTable");
4842 ndr_print_WERROR(ndr, "result", r->out.result);
4848 NTSTATUS ndr_push_dfs_Add2(struct ndr_push *ndr, int flags, const struct dfs_Add2 *r)
4850 if (flags & NDR_IN) {
4852 if (flags & NDR_OUT) {
4853 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4855 return NT_STATUS_OK;
4858 NTSTATUS ndr_pull_dfs_Add2(struct ndr_pull *ndr, int flags, struct dfs_Add2 *r)
4860 if (flags & NDR_IN) {
4862 if (flags & NDR_OUT) {
4863 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4865 return NT_STATUS_OK;
4868 _PUBLIC_ void ndr_print_dfs_Add2(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Add2 *r)
4870 ndr_print_struct(ndr, name, "dfs_Add2");
4872 if (flags & NDR_SET_VALUES) {
4873 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4875 if (flags & NDR_IN) {
4876 ndr_print_struct(ndr, "in", "dfs_Add2");
4880 if (flags & NDR_OUT) {
4881 ndr_print_struct(ndr, "out", "dfs_Add2");
4883 ndr_print_WERROR(ndr, "result", r->out.result);
4889 NTSTATUS ndr_push_dfs_Remove2(struct ndr_push *ndr, int flags, const struct dfs_Remove2 *r)
4891 if (flags & NDR_IN) {
4893 if (flags & NDR_OUT) {
4894 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4896 return NT_STATUS_OK;
4899 NTSTATUS ndr_pull_dfs_Remove2(struct ndr_pull *ndr, int flags, struct dfs_Remove2 *r)
4901 if (flags & NDR_IN) {
4903 if (flags & NDR_OUT) {
4904 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
4906 return NT_STATUS_OK;
4909 _PUBLIC_ void ndr_print_dfs_Remove2(struct ndr_print *ndr, const char *name, int flags, const struct dfs_Remove2 *r)
4911 ndr_print_struct(ndr, name, "dfs_Remove2");
4913 if (flags & NDR_SET_VALUES) {
4914 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4916 if (flags & NDR_IN) {
4917 ndr_print_struct(ndr, "in", "dfs_Remove2");
4921 if (flags & NDR_OUT) {
4922 ndr_print_struct(ndr, "out", "dfs_Remove2");
4924 ndr_print_WERROR(ndr, "result", r->out.result);
4930 _PUBLIC_ NTSTATUS ndr_push_dfs_EnumEx(struct ndr_push *ndr, int flags, const struct dfs_EnumEx *r)
4932 if (flags & NDR_IN) {
4933 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_name, CH_UTF16)));
4934 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
4935 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.dfs_name, CH_UTF16)));
4936 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.dfs_name, ndr_charset_length(r->in.dfs_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
4937 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.level));
4938 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.bufsize));
4939 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
4941 NDR_CHECK(ndr_push_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
4943 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.total));
4945 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.total));
4948 if (flags & NDR_OUT) {
4949 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
4951 NDR_CHECK(ndr_push_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
4953 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.total));
4955 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.total));
4957 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
4959 return NT_STATUS_OK;
4962 _PUBLIC_ NTSTATUS ndr_pull_dfs_EnumEx(struct ndr_pull *ndr, int flags, struct dfs_EnumEx *r)
4965 uint32_t _ptr_total;
4966 TALLOC_CTX *_mem_save_info_0;
4967 TALLOC_CTX *_mem_save_total_0;
4968 if (flags & NDR_IN) {
4969 ZERO_STRUCT(r->out);
4971 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.dfs_name));
4972 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.dfs_name));
4973 if (ndr_get_array_length(ndr, &r->in.dfs_name) > ndr_get_array_size(ndr, &r->in.dfs_name)) {
4974 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.dfs_name), ndr_get_array_length(ndr, &r->in.dfs_name));
4976 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.dfs_name), sizeof(uint16_t)));
4977 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.dfs_name, ndr_get_array_length(ndr, &r->in.dfs_name), sizeof(uint16_t), CH_UTF16));
4978 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.level));
4979 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.bufsize));
4980 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
4982 NDR_PULL_ALLOC(ndr, r->in.info);
4987 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
4988 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
4989 NDR_CHECK(ndr_pull_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
4990 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
4992 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_total));
4994 NDR_PULL_ALLOC(ndr, r->in.total);
4999 _mem_save_total_0 = NDR_PULL_GET_MEM_CTX(ndr);
5000 NDR_PULL_SET_MEM_CTX(ndr, r->in.total, 0);
5001 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.total));
5002 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_0, 0);
5005 if (flags & NDR_OUT) {
5006 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
5008 NDR_PULL_ALLOC(ndr, r->out.info);
5013 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5014 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
5015 NDR_CHECK(ndr_pull_dfs_EnumStruct(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
5016 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
5018 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_total));
5020 NDR_PULL_ALLOC(ndr, r->out.total);
5022 r->out.total = NULL;
5025 _mem_save_total_0 = NDR_PULL_GET_MEM_CTX(ndr);
5026 NDR_PULL_SET_MEM_CTX(ndr, r->out.total, 0);
5027 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.total));
5028 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_total_0, 0);
5030 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
5032 return NT_STATUS_OK;
5035 _PUBLIC_ void ndr_print_dfs_EnumEx(struct ndr_print *ndr, const char *name, int flags, const struct dfs_EnumEx *r)
5037 ndr_print_struct(ndr, name, "dfs_EnumEx");
5039 if (flags & NDR_SET_VALUES) {
5040 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5042 if (flags & NDR_IN) {
5043 ndr_print_struct(ndr, "in", "dfs_EnumEx");
5045 ndr_print_string(ndr, "dfs_name", r->in.dfs_name);
5046 ndr_print_uint32(ndr, "level", r->in.level);
5047 ndr_print_uint32(ndr, "bufsize", r->in.bufsize);
5048 ndr_print_ptr(ndr, "info", r->in.info);
5051 ndr_print_dfs_EnumStruct(ndr, "info", r->in.info);
5054 ndr_print_ptr(ndr, "total", r->in.total);
5057 ndr_print_uint32(ndr, "total", *r->in.total);
5062 if (flags & NDR_OUT) {
5063 ndr_print_struct(ndr, "out", "dfs_EnumEx");
5065 ndr_print_ptr(ndr, "info", r->out.info);
5068 ndr_print_dfs_EnumStruct(ndr, "info", r->out.info);
5071 ndr_print_ptr(ndr, "total", r->out.total);
5074 ndr_print_uint32(ndr, "total", *r->out.total);
5077 ndr_print_WERROR(ndr, "result", r->out.result);
5083 NTSTATUS ndr_push_dfs_SetInfo2(struct ndr_push *ndr, int flags, const struct dfs_SetInfo2 *r)
5085 if (flags & NDR_IN) {
5087 if (flags & NDR_OUT) {
5088 NDR_CHECK(ndr_push_WERROR(ndr, NDR_SCALARS, r->out.result));
5090 return NT_STATUS_OK;
5093 NTSTATUS ndr_pull_dfs_SetInfo2(struct ndr_pull *ndr, int flags, struct dfs_SetInfo2 *r)
5095 if (flags & NDR_IN) {
5097 if (flags & NDR_OUT) {
5098 NDR_CHECK(ndr_pull_WERROR(ndr, NDR_SCALARS, &r->out.result));
5100 return NT_STATUS_OK;
5103 _PUBLIC_ void ndr_print_dfs_SetInfo2(struct ndr_print *ndr, const char *name, int flags, const struct dfs_SetInfo2 *r)
5105 ndr_print_struct(ndr, name, "dfs_SetInfo2");
5107 if (flags & NDR_SET_VALUES) {
5108 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5110 if (flags & NDR_IN) {
5111 ndr_print_struct(ndr, "in", "dfs_SetInfo2");
5115 if (flags & NDR_OUT) {
5116 ndr_print_struct(ndr, "out", "dfs_SetInfo2");
5118 ndr_print_WERROR(ndr, "result", r->out.result);
5124 const struct ndr_interface_call netdfs_calls[] = {
5126 "dfs_GetManagerVersion",
5127 sizeof(struct dfs_GetManagerVersion),
5128 (ndr_push_flags_fn_t) ndr_push_dfs_GetManagerVersion,
5129 (ndr_pull_flags_fn_t) ndr_pull_dfs_GetManagerVersion,
5130 (ndr_print_function_t) ndr_print_dfs_GetManagerVersion,
5135 sizeof(struct dfs_Add),
5136 (ndr_push_flags_fn_t) ndr_push_dfs_Add,
5137 (ndr_pull_flags_fn_t) ndr_pull_dfs_Add,
5138 (ndr_print_function_t) ndr_print_dfs_Add,
5143 sizeof(struct dfs_Remove),
5144 (ndr_push_flags_fn_t) ndr_push_dfs_Remove,
5145 (ndr_pull_flags_fn_t) ndr_pull_dfs_Remove,
5146 (ndr_print_function_t) ndr_print_dfs_Remove,
5151 sizeof(struct dfs_SetInfo),
5152 (ndr_push_flags_fn_t) ndr_push_dfs_SetInfo,
5153 (ndr_pull_flags_fn_t) ndr_pull_dfs_SetInfo,
5154 (ndr_print_function_t) ndr_print_dfs_SetInfo,
5159 sizeof(struct dfs_GetInfo),
5160 (ndr_push_flags_fn_t) ndr_push_dfs_GetInfo,
5161 (ndr_pull_flags_fn_t) ndr_pull_dfs_GetInfo,
5162 (ndr_print_function_t) ndr_print_dfs_GetInfo,
5167 sizeof(struct dfs_Enum),
5168 (ndr_push_flags_fn_t) ndr_push_dfs_Enum,
5169 (ndr_pull_flags_fn_t) ndr_pull_dfs_Enum,
5170 (ndr_print_function_t) ndr_print_dfs_Enum,
5175 sizeof(struct dfs_Rename),
5176 (ndr_push_flags_fn_t) ndr_push_dfs_Rename,
5177 (ndr_pull_flags_fn_t) ndr_pull_dfs_Rename,
5178 (ndr_print_function_t) ndr_print_dfs_Rename,
5183 sizeof(struct dfs_Move),
5184 (ndr_push_flags_fn_t) ndr_push_dfs_Move,
5185 (ndr_pull_flags_fn_t) ndr_pull_dfs_Move,
5186 (ndr_print_function_t) ndr_print_dfs_Move,
5190 "dfs_ManagerGetConfigInfo",
5191 sizeof(struct dfs_ManagerGetConfigInfo),
5192 (ndr_push_flags_fn_t) ndr_push_dfs_ManagerGetConfigInfo,
5193 (ndr_pull_flags_fn_t) ndr_pull_dfs_ManagerGetConfigInfo,
5194 (ndr_print_function_t) ndr_print_dfs_ManagerGetConfigInfo,
5198 "dfs_ManagerSendSiteInfo",
5199 sizeof(struct dfs_ManagerSendSiteInfo),
5200 (ndr_push_flags_fn_t) ndr_push_dfs_ManagerSendSiteInfo,
5201 (ndr_pull_flags_fn_t) ndr_pull_dfs_ManagerSendSiteInfo,
5202 (ndr_print_function_t) ndr_print_dfs_ManagerSendSiteInfo,
5207 sizeof(struct dfs_AddFtRoot),
5208 (ndr_push_flags_fn_t) ndr_push_dfs_AddFtRoot,
5209 (ndr_pull_flags_fn_t) ndr_pull_dfs_AddFtRoot,
5210 (ndr_print_function_t) ndr_print_dfs_AddFtRoot,
5215 sizeof(struct dfs_RemoveFtRoot),
5216 (ndr_push_flags_fn_t) ndr_push_dfs_RemoveFtRoot,
5217 (ndr_pull_flags_fn_t) ndr_pull_dfs_RemoveFtRoot,
5218 (ndr_print_function_t) ndr_print_dfs_RemoveFtRoot,
5223 sizeof(struct dfs_AddStdRoot),
5224 (ndr_push_flags_fn_t) ndr_push_dfs_AddStdRoot,
5225 (ndr_pull_flags_fn_t) ndr_pull_dfs_AddStdRoot,
5226 (ndr_print_function_t) ndr_print_dfs_AddStdRoot,
5230 "dfs_RemoveStdRoot",
5231 sizeof(struct dfs_RemoveStdRoot),
5232 (ndr_push_flags_fn_t) ndr_push_dfs_RemoveStdRoot,
5233 (ndr_pull_flags_fn_t) ndr_pull_dfs_RemoveStdRoot,
5234 (ndr_print_function_t) ndr_print_dfs_RemoveStdRoot,
5238 "dfs_ManagerInitialize",
5239 sizeof(struct dfs_ManagerInitialize),
5240 (ndr_push_flags_fn_t) ndr_push_dfs_ManagerInitialize,
5241 (ndr_pull_flags_fn_t) ndr_pull_dfs_ManagerInitialize,
5242 (ndr_print_function_t) ndr_print_dfs_ManagerInitialize,
5246 "dfs_AddStdRootForced",
5247 sizeof(struct dfs_AddStdRootForced),
5248 (ndr_push_flags_fn_t) ndr_push_dfs_AddStdRootForced,
5249 (ndr_pull_flags_fn_t) ndr_pull_dfs_AddStdRootForced,
5250 (ndr_print_function_t) ndr_print_dfs_AddStdRootForced,
5255 sizeof(struct dfs_GetDcAddress),
5256 (ndr_push_flags_fn_t) ndr_push_dfs_GetDcAddress,
5257 (ndr_pull_flags_fn_t) ndr_pull_dfs_GetDcAddress,
5258 (ndr_print_function_t) ndr_print_dfs_GetDcAddress,
5263 sizeof(struct dfs_SetDcAddress),
5264 (ndr_push_flags_fn_t) ndr_push_dfs_SetDcAddress,
5265 (ndr_pull_flags_fn_t) ndr_pull_dfs_SetDcAddress,
5266 (ndr_print_function_t) ndr_print_dfs_SetDcAddress,
5271 sizeof(struct dfs_FlushFtTable),
5272 (ndr_push_flags_fn_t) ndr_push_dfs_FlushFtTable,
5273 (ndr_pull_flags_fn_t) ndr_pull_dfs_FlushFtTable,
5274 (ndr_print_function_t) ndr_print_dfs_FlushFtTable,
5279 sizeof(struct dfs_Add2),
5280 (ndr_push_flags_fn_t) ndr_push_dfs_Add2,
5281 (ndr_pull_flags_fn_t) ndr_pull_dfs_Add2,
5282 (ndr_print_function_t) ndr_print_dfs_Add2,
5287 sizeof(struct dfs_Remove2),
5288 (ndr_push_flags_fn_t) ndr_push_dfs_Remove2,
5289 (ndr_pull_flags_fn_t) ndr_pull_dfs_Remove2,
5290 (ndr_print_function_t) ndr_print_dfs_Remove2,
5295 sizeof(struct dfs_EnumEx),
5296 (ndr_push_flags_fn_t) ndr_push_dfs_EnumEx,
5297 (ndr_pull_flags_fn_t) ndr_pull_dfs_EnumEx,
5298 (ndr_print_function_t) ndr_print_dfs_EnumEx,
5303 sizeof(struct dfs_SetInfo2),
5304 (ndr_push_flags_fn_t) ndr_push_dfs_SetInfo2,
5305 (ndr_pull_flags_fn_t) ndr_pull_dfs_SetInfo2,
5306 (ndr_print_function_t) ndr_print_dfs_SetInfo2,
5309 { NULL, 0, NULL, NULL, NULL, False }
5312 const char * const netdfs_endpoint_strings[] = {
5313 "ncacn_np:[\\pipe\\netdfs]",
5316 const struct ndr_interface_string_array netdfs_endpoints = {
5318 .names = netdfs_endpoint_strings
5321 const char * const netdfs_authservice_strings[] = {
5325 const struct ndr_interface_string_array netdfs_authservices = {
5327 .names = netdfs_authservice_strings
5331 const struct ndr_interface_table ndr_table_netdfs = {
5334 {0x4fc742e0,0x4a10,0x11cf,{0x82,0x73},{0x00,0xaa,0x00,0x4a,0xe6,0x73}},
5335 DCERPC_NETDFS_VERSION
5337 .helpstring = DCERPC_NETDFS_HELPSTRING,
5339 .calls = netdfs_calls,
5340 .endpoints = &netdfs_endpoints,
5341 .authservices = &netdfs_authservices