1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_lsa.h"
6 #include "librpc/gen_ndr/ndr_security.h"
7 _PUBLIC_ enum ndr_err_code ndr_push_lsa_String(struct ndr_push *ndr, int ndr_flags, const struct lsa_String *r)
9 if (ndr_flags & NDR_SCALARS) {
10 NDR_CHECK(ndr_push_align(ndr, 4));
11 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->string)));
12 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->string)));
13 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
15 if (ndr_flags & NDR_BUFFERS) {
17 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m(r->string) / 2));
18 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
19 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m(r->string) / 2));
20 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, 2 * strlen_m(r->string) / 2, sizeof(uint16_t), CH_UTF16));
23 return NDR_ERR_SUCCESS;
26 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_String(struct ndr_pull *ndr, int ndr_flags, struct lsa_String *r)
29 TALLOC_CTX *_mem_save_string_0;
30 if (ndr_flags & NDR_SCALARS) {
31 NDR_CHECK(ndr_pull_align(ndr, 4));
32 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
33 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
34 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
36 NDR_PULL_ALLOC(ndr, r->string);
41 if (ndr_flags & NDR_BUFFERS) {
43 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
44 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
45 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
46 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
47 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
48 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
50 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint16_t), CH_UTF16));
51 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
54 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size / 2));
57 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length / 2));
60 return NDR_ERR_SUCCESS;
63 _PUBLIC_ void ndr_print_lsa_String(struct ndr_print *ndr, const char *name, const struct lsa_String *r)
65 ndr_print_struct(ndr, name, "lsa_String");
67 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->string):r->length);
68 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->string):r->size);
69 ndr_print_ptr(ndr, "string", r->string);
72 ndr_print_string(ndr, "string", r->string);
78 _PUBLIC_ enum ndr_err_code ndr_push_lsa_StringLarge(struct ndr_push *ndr, int ndr_flags, const struct lsa_StringLarge *r)
80 if (ndr_flags & NDR_SCALARS) {
81 NDR_CHECK(ndr_push_align(ndr, 4));
82 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->string)));
83 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m_term(r->string)));
84 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
86 if (ndr_flags & NDR_BUFFERS) {
88 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m_term(r->string) / 2));
89 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
90 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 2 * strlen_m(r->string) / 2));
91 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, 2 * strlen_m(r->string) / 2, sizeof(uint16_t), CH_UTF16));
94 return NDR_ERR_SUCCESS;
97 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_StringLarge(struct ndr_pull *ndr, int ndr_flags, struct lsa_StringLarge *r)
100 TALLOC_CTX *_mem_save_string_0;
101 if (ndr_flags & NDR_SCALARS) {
102 NDR_CHECK(ndr_pull_align(ndr, 4));
103 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
104 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
105 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
107 NDR_PULL_ALLOC(ndr, r->string);
112 if (ndr_flags & NDR_BUFFERS) {
114 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
115 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
116 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
117 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
118 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
119 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
121 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint16_t), CH_UTF16));
122 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
125 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size / 2));
128 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length / 2));
131 return NDR_ERR_SUCCESS;
134 _PUBLIC_ void ndr_print_lsa_StringLarge(struct ndr_print *ndr, const char *name, const struct lsa_StringLarge *r)
136 ndr_print_struct(ndr, name, "lsa_StringLarge");
138 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->string):r->length);
139 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m_term(r->string):r->size);
140 ndr_print_ptr(ndr, "string", r->string);
143 ndr_print_string(ndr, "string", r->string);
149 _PUBLIC_ enum ndr_err_code ndr_push_lsa_Strings(struct ndr_push *ndr, int ndr_flags, const struct lsa_Strings *r)
151 uint32_t cntr_names_1;
152 if (ndr_flags & NDR_SCALARS) {
153 NDR_CHECK(ndr_push_align(ndr, 4));
154 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
155 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
157 if (ndr_flags & NDR_BUFFERS) {
159 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
160 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
161 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
163 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
164 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
168 return NDR_ERR_SUCCESS;
171 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_Strings(struct ndr_pull *ndr, int ndr_flags, struct lsa_Strings *r)
174 uint32_t cntr_names_1;
175 TALLOC_CTX *_mem_save_names_0;
176 TALLOC_CTX *_mem_save_names_1;
177 if (ndr_flags & NDR_SCALARS) {
178 NDR_CHECK(ndr_pull_align(ndr, 4));
179 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
180 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
182 NDR_PULL_ALLOC(ndr, r->names);
187 if (ndr_flags & NDR_BUFFERS) {
189 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
190 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
191 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
192 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
193 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
194 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
195 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
196 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
198 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
199 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
201 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
202 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
205 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
208 return NDR_ERR_SUCCESS;
211 _PUBLIC_ void ndr_print_lsa_Strings(struct ndr_print *ndr, const char *name, const struct lsa_Strings *r)
213 uint32_t cntr_names_1;
214 ndr_print_struct(ndr, name, "lsa_Strings");
216 ndr_print_uint32(ndr, "count", r->count);
217 ndr_print_ptr(ndr, "names", r->names);
220 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
222 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
224 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
225 ndr_print_lsa_String(ndr, "names", &r->names[cntr_names_1]);
235 _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiString(struct ndr_push *ndr, int ndr_flags, const struct lsa_AsciiString *r)
237 if (ndr_flags & NDR_SCALARS) {
238 NDR_CHECK(ndr_push_align(ndr, 4));
239 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
240 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
241 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
243 if (ndr_flags & NDR_BUFFERS) {
245 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m(r->string)));
246 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
247 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m(r->string)));
248 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, strlen_m(r->string), sizeof(uint8_t), CH_DOS));
251 return NDR_ERR_SUCCESS;
254 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiString(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiString *r)
256 uint32_t _ptr_string;
257 TALLOC_CTX *_mem_save_string_0;
258 if (ndr_flags & NDR_SCALARS) {
259 NDR_CHECK(ndr_pull_align(ndr, 4));
260 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
261 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
262 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
264 NDR_PULL_ALLOC(ndr, r->string);
269 if (ndr_flags & NDR_BUFFERS) {
271 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
272 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
273 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
274 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
275 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
276 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
278 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint8_t), CH_DOS));
279 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
282 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size));
285 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length));
288 return NDR_ERR_SUCCESS;
291 _PUBLIC_ void ndr_print_lsa_AsciiString(struct ndr_print *ndr, const char *name, const struct lsa_AsciiString *r)
293 ndr_print_struct(ndr, name, "lsa_AsciiString");
295 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->length);
296 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->size);
297 ndr_print_ptr(ndr, "string", r->string);
300 ndr_print_string(ndr, "string", r->string);
306 _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiStringLarge(struct ndr_push *ndr, int ndr_flags, const struct lsa_AsciiStringLarge *r)
308 if (ndr_flags & NDR_SCALARS) {
309 NDR_CHECK(ndr_push_align(ndr, 4));
310 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
311 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m_term(r->string)));
312 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
314 if (ndr_flags & NDR_BUFFERS) {
316 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m_term(r->string)));
317 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
318 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, strlen_m(r->string)));
319 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->string, strlen_m(r->string), sizeof(uint8_t), CH_DOS));
322 return NDR_ERR_SUCCESS;
325 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiStringLarge(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiStringLarge *r)
327 uint32_t _ptr_string;
328 TALLOC_CTX *_mem_save_string_0;
329 if (ndr_flags & NDR_SCALARS) {
330 NDR_CHECK(ndr_pull_align(ndr, 4));
331 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
332 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
333 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
335 NDR_PULL_ALLOC(ndr, r->string);
340 if (ndr_flags & NDR_BUFFERS) {
342 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
343 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
344 NDR_CHECK(ndr_pull_array_size(ndr, &r->string));
345 NDR_CHECK(ndr_pull_array_length(ndr, &r->string));
346 if (ndr_get_array_length(ndr, &r->string) > ndr_get_array_size(ndr, &r->string)) {
347 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->string), ndr_get_array_length(ndr, &r->string));
349 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->string, ndr_get_array_length(ndr, &r->string), sizeof(uint8_t), CH_DOS));
350 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
353 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->string, r->size));
356 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->string, r->length));
359 return NDR_ERR_SUCCESS;
362 _PUBLIC_ void ndr_print_lsa_AsciiStringLarge(struct ndr_print *ndr, const char *name, const struct lsa_AsciiStringLarge *r)
364 ndr_print_struct(ndr, name, "lsa_AsciiStringLarge");
366 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->length);
367 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m_term(r->string):r->size);
368 ndr_print_ptr(ndr, "string", r->string);
371 ndr_print_string(ndr, "string", r->string);
377 static enum ndr_err_code ndr_push_lsa_LUID(struct ndr_push *ndr, int ndr_flags, const struct lsa_LUID *r)
379 if (ndr_flags & NDR_SCALARS) {
380 NDR_CHECK(ndr_push_align(ndr, 4));
381 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->low));
382 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->high));
384 if (ndr_flags & NDR_BUFFERS) {
386 return NDR_ERR_SUCCESS;
389 static enum ndr_err_code ndr_pull_lsa_LUID(struct ndr_pull *ndr, int ndr_flags, struct lsa_LUID *r)
391 if (ndr_flags & NDR_SCALARS) {
392 NDR_CHECK(ndr_pull_align(ndr, 4));
393 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->low));
394 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->high));
396 if (ndr_flags & NDR_BUFFERS) {
398 return NDR_ERR_SUCCESS;
401 _PUBLIC_ void ndr_print_lsa_LUID(struct ndr_print *ndr, const char *name, const struct lsa_LUID *r)
403 ndr_print_struct(ndr, name, "lsa_LUID");
405 ndr_print_uint32(ndr, "low", r->low);
406 ndr_print_uint32(ndr, "high", r->high);
410 static enum ndr_err_code ndr_push_lsa_PrivEntry(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivEntry *r)
412 if (ndr_flags & NDR_SCALARS) {
413 NDR_CHECK(ndr_push_align(ndr, 4));
414 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
415 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
417 if (ndr_flags & NDR_BUFFERS) {
418 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
420 return NDR_ERR_SUCCESS;
423 static enum ndr_err_code ndr_pull_lsa_PrivEntry(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivEntry *r)
425 if (ndr_flags & NDR_SCALARS) {
426 NDR_CHECK(ndr_pull_align(ndr, 4));
427 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
428 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
430 if (ndr_flags & NDR_BUFFERS) {
431 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
433 return NDR_ERR_SUCCESS;
436 _PUBLIC_ void ndr_print_lsa_PrivEntry(struct ndr_print *ndr, const char *name, const struct lsa_PrivEntry *r)
438 ndr_print_struct(ndr, name, "lsa_PrivEntry");
440 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
441 ndr_print_lsa_LUID(ndr, "luid", &r->luid);
445 static enum ndr_err_code ndr_push_lsa_PrivArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivArray *r)
447 uint32_t cntr_privs_1;
448 if (ndr_flags & NDR_SCALARS) {
449 NDR_CHECK(ndr_push_align(ndr, 4));
450 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
451 NDR_CHECK(ndr_push_unique_ptr(ndr, r->privs));
453 if (ndr_flags & NDR_BUFFERS) {
455 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
456 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
457 NDR_CHECK(ndr_push_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
459 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
460 NDR_CHECK(ndr_push_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
464 return NDR_ERR_SUCCESS;
467 static enum ndr_err_code ndr_pull_lsa_PrivArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivArray *r)
470 uint32_t cntr_privs_1;
471 TALLOC_CTX *_mem_save_privs_0;
472 TALLOC_CTX *_mem_save_privs_1;
473 if (ndr_flags & NDR_SCALARS) {
474 NDR_CHECK(ndr_pull_align(ndr, 4));
475 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
476 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
478 NDR_PULL_ALLOC(ndr, r->privs);
483 if (ndr_flags & NDR_BUFFERS) {
485 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
486 NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
487 NDR_CHECK(ndr_pull_array_size(ndr, &r->privs));
488 NDR_PULL_ALLOC_N(ndr, r->privs, ndr_get_array_size(ndr, &r->privs));
489 _mem_save_privs_1 = NDR_PULL_GET_MEM_CTX(ndr);
490 NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
491 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
492 NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
494 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
495 NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
497 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_1, 0);
498 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
501 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->privs, r->count));
504 return NDR_ERR_SUCCESS;
507 _PUBLIC_ void ndr_print_lsa_PrivArray(struct ndr_print *ndr, const char *name, const struct lsa_PrivArray *r)
509 uint32_t cntr_privs_1;
510 ndr_print_struct(ndr, name, "lsa_PrivArray");
512 ndr_print_uint32(ndr, "count", r->count);
513 ndr_print_ptr(ndr, "privs", r->privs);
516 ndr->print(ndr, "%s: ARRAY(%d)", "privs", r->count);
518 for (cntr_privs_1=0;cntr_privs_1<r->count;cntr_privs_1++) {
520 if (asprintf(&idx_1, "[%d]", cntr_privs_1) != -1) {
521 ndr_print_lsa_PrivEntry(ndr, "privs", &r->privs[cntr_privs_1]);
531 static enum ndr_err_code ndr_push_lsa_QosInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_QosInfo *r)
533 if (ndr_flags & NDR_SCALARS) {
534 NDR_CHECK(ndr_push_align(ndr, 4));
535 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->len));
536 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->impersonation_level));
537 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->context_mode));
538 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->effective_only));
540 if (ndr_flags & NDR_BUFFERS) {
542 return NDR_ERR_SUCCESS;
545 static enum ndr_err_code ndr_pull_lsa_QosInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_QosInfo *r)
547 if (ndr_flags & NDR_SCALARS) {
548 NDR_CHECK(ndr_pull_align(ndr, 4));
549 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->len));
550 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->impersonation_level));
551 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->context_mode));
552 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->effective_only));
554 if (ndr_flags & NDR_BUFFERS) {
556 return NDR_ERR_SUCCESS;
559 _PUBLIC_ void ndr_print_lsa_QosInfo(struct ndr_print *ndr, const char *name, const struct lsa_QosInfo *r)
561 ndr_print_struct(ndr, name, "lsa_QosInfo");
563 ndr_print_uint32(ndr, "len", r->len);
564 ndr_print_uint16(ndr, "impersonation_level", r->impersonation_level);
565 ndr_print_uint8(ndr, "context_mode", r->context_mode);
566 ndr_print_uint8(ndr, "effective_only", r->effective_only);
570 static enum ndr_err_code ndr_push_lsa_ObjectAttribute(struct ndr_push *ndr, int ndr_flags, const struct lsa_ObjectAttribute *r)
572 if (ndr_flags & NDR_SCALARS) {
573 NDR_CHECK(ndr_push_align(ndr, 4));
574 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->len));
575 NDR_CHECK(ndr_push_unique_ptr(ndr, r->root_dir));
576 NDR_CHECK(ndr_push_unique_ptr(ndr, r->object_name));
577 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->attributes));
578 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sec_desc));
579 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sec_qos));
581 if (ndr_flags & NDR_BUFFERS) {
583 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->root_dir));
585 if (r->object_name) {
586 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->object_name, CH_UTF16)));
587 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
588 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->object_name, CH_UTF16)));
589 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->object_name, ndr_charset_length(r->object_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
592 NDR_CHECK(ndr_push_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->sec_desc));
595 NDR_CHECK(ndr_push_lsa_QosInfo(ndr, NDR_SCALARS, r->sec_qos));
598 return NDR_ERR_SUCCESS;
601 static enum ndr_err_code ndr_pull_lsa_ObjectAttribute(struct ndr_pull *ndr, int ndr_flags, struct lsa_ObjectAttribute *r)
603 uint32_t _ptr_root_dir;
604 TALLOC_CTX *_mem_save_root_dir_0;
605 uint32_t _ptr_object_name;
606 TALLOC_CTX *_mem_save_object_name_0;
607 uint32_t _ptr_sec_desc;
608 TALLOC_CTX *_mem_save_sec_desc_0;
609 uint32_t _ptr_sec_qos;
610 TALLOC_CTX *_mem_save_sec_qos_0;
611 if (ndr_flags & NDR_SCALARS) {
612 NDR_CHECK(ndr_pull_align(ndr, 4));
613 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->len));
614 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_root_dir));
616 NDR_PULL_ALLOC(ndr, r->root_dir);
620 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object_name));
621 if (_ptr_object_name) {
622 NDR_PULL_ALLOC(ndr, r->object_name);
624 r->object_name = NULL;
626 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->attributes));
627 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sec_desc));
629 NDR_PULL_ALLOC(ndr, r->sec_desc);
633 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sec_qos));
635 NDR_PULL_ALLOC(ndr, r->sec_qos);
640 if (ndr_flags & NDR_BUFFERS) {
642 _mem_save_root_dir_0 = NDR_PULL_GET_MEM_CTX(ndr);
643 NDR_PULL_SET_MEM_CTX(ndr, r->root_dir, 0);
644 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->root_dir));
645 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_root_dir_0, 0);
647 if (r->object_name) {
648 _mem_save_object_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
649 NDR_PULL_SET_MEM_CTX(ndr, r->object_name, 0);
650 NDR_CHECK(ndr_pull_array_size(ndr, &r->object_name));
651 NDR_CHECK(ndr_pull_array_length(ndr, &r->object_name));
652 if (ndr_get_array_length(ndr, &r->object_name) > ndr_get_array_size(ndr, &r->object_name)) {
653 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->object_name), ndr_get_array_length(ndr, &r->object_name));
655 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t)));
656 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->object_name, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t), CH_UTF16));
657 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_name_0, 0);
660 _mem_save_sec_desc_0 = NDR_PULL_GET_MEM_CTX(ndr);
661 NDR_PULL_SET_MEM_CTX(ndr, r->sec_desc, 0);
662 NDR_CHECK(ndr_pull_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->sec_desc));
663 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_desc_0, 0);
666 _mem_save_sec_qos_0 = NDR_PULL_GET_MEM_CTX(ndr);
667 NDR_PULL_SET_MEM_CTX(ndr, r->sec_qos, 0);
668 NDR_CHECK(ndr_pull_lsa_QosInfo(ndr, NDR_SCALARS, r->sec_qos));
669 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_qos_0, 0);
672 return NDR_ERR_SUCCESS;
675 _PUBLIC_ void ndr_print_lsa_ObjectAttribute(struct ndr_print *ndr, const char *name, const struct lsa_ObjectAttribute *r)
677 ndr_print_struct(ndr, name, "lsa_ObjectAttribute");
679 ndr_print_uint32(ndr, "len", r->len);
680 ndr_print_ptr(ndr, "root_dir", r->root_dir);
683 ndr_print_uint8(ndr, "root_dir", *r->root_dir);
686 ndr_print_ptr(ndr, "object_name", r->object_name);
688 if (r->object_name) {
689 ndr_print_string(ndr, "object_name", r->object_name);
692 ndr_print_uint32(ndr, "attributes", r->attributes);
693 ndr_print_ptr(ndr, "sec_desc", r->sec_desc);
696 ndr_print_security_descriptor(ndr, "sec_desc", r->sec_desc);
699 ndr_print_ptr(ndr, "sec_qos", r->sec_qos);
702 ndr_print_lsa_QosInfo(ndr, "sec_qos", r->sec_qos);
708 _PUBLIC_ enum ndr_err_code ndr_push_lsa_PolicyAccessMask(struct ndr_push *ndr, int ndr_flags, uint32_t r)
710 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
711 return NDR_ERR_SUCCESS;
714 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_PolicyAccessMask(struct ndr_pull *ndr, int ndr_flags, uint32_t *r)
717 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
719 return NDR_ERR_SUCCESS;
722 _PUBLIC_ void ndr_print_lsa_PolicyAccessMask(struct ndr_print *ndr, const char *name, uint32_t r)
724 ndr_print_uint32(ndr, name, r);
726 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_VIEW_LOCAL_INFORMATION", LSA_POLICY_VIEW_LOCAL_INFORMATION, r);
727 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_VIEW_AUDIT_INFORMATION", LSA_POLICY_VIEW_AUDIT_INFORMATION, r);
728 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_GET_PRIVATE_INFORMATION", LSA_POLICY_GET_PRIVATE_INFORMATION, r);
729 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_TRUST_ADMIN", LSA_POLICY_TRUST_ADMIN, r);
730 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_CREATE_ACCOUNT", LSA_POLICY_CREATE_ACCOUNT, r);
731 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_CREATE_SECRET", LSA_POLICY_CREATE_SECRET, r);
732 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_CREATE_PRIVILEGE", LSA_POLICY_CREATE_PRIVILEGE, r);
733 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS", LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS, r);
734 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_SET_AUDIT_REQUIREMENTS", LSA_POLICY_SET_AUDIT_REQUIREMENTS, r);
735 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_AUDIT_LOG_ADMIN", LSA_POLICY_AUDIT_LOG_ADMIN, r);
736 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_SERVER_ADMIN", LSA_POLICY_SERVER_ADMIN, r);
737 ndr_print_bitmap_flag(ndr, sizeof(uint32_t), "LSA_POLICY_LOOKUP_NAMES", LSA_POLICY_LOOKUP_NAMES, r);
741 static enum ndr_err_code ndr_push_lsa_AuditLogInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditLogInfo *r)
743 if (ndr_flags & NDR_SCALARS) {
744 NDR_CHECK(ndr_push_align(ndr, 4));
745 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->percent_full));
746 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->log_size));
747 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->retention_time));
748 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_in_progress));
749 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->time_to_shutdown));
750 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->next_audit_record));
751 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
753 if (ndr_flags & NDR_BUFFERS) {
755 return NDR_ERR_SUCCESS;
758 static enum ndr_err_code ndr_pull_lsa_AuditLogInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditLogInfo *r)
760 if (ndr_flags & NDR_SCALARS) {
761 NDR_CHECK(ndr_pull_align(ndr, 4));
762 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->percent_full));
763 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->log_size));
764 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->retention_time));
765 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_in_progress));
766 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->time_to_shutdown));
767 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->next_audit_record));
768 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
770 if (ndr_flags & NDR_BUFFERS) {
772 return NDR_ERR_SUCCESS;
775 _PUBLIC_ void ndr_print_lsa_AuditLogInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditLogInfo *r)
777 ndr_print_struct(ndr, name, "lsa_AuditLogInfo");
779 ndr_print_uint32(ndr, "percent_full", r->percent_full);
780 ndr_print_uint32(ndr, "log_size", r->log_size);
781 ndr_print_NTTIME(ndr, "retention_time", r->retention_time);
782 ndr_print_uint8(ndr, "shutdown_in_progress", r->shutdown_in_progress);
783 ndr_print_NTTIME(ndr, "time_to_shutdown", r->time_to_shutdown);
784 ndr_print_uint32(ndr, "next_audit_record", r->next_audit_record);
785 ndr_print_uint32(ndr, "unknown", r->unknown);
789 static enum ndr_err_code ndr_push_lsa_PolicyAuditPolicy(struct ndr_push *ndr, int ndr_flags, enum lsa_PolicyAuditPolicy r)
791 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
792 return NDR_ERR_SUCCESS;
795 static enum ndr_err_code ndr_pull_lsa_PolicyAuditPolicy(struct ndr_pull *ndr, int ndr_flags, enum lsa_PolicyAuditPolicy *r)
798 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
800 return NDR_ERR_SUCCESS;
803 _PUBLIC_ void ndr_print_lsa_PolicyAuditPolicy(struct ndr_print *ndr, const char *name, enum lsa_PolicyAuditPolicy r)
805 const char *val = NULL;
808 case LSA_AUDIT_POLICY_NONE: val = "LSA_AUDIT_POLICY_NONE"; break;
809 case LSA_AUDIT_POLICY_SUCCESS: val = "LSA_AUDIT_POLICY_SUCCESS"; break;
810 case LSA_AUDIT_POLICY_FAILURE: val = "LSA_AUDIT_POLICY_FAILURE"; break;
811 case LSA_AUDIT_POLICY_ALL: val = "LSA_AUDIT_POLICY_ALL"; break;
812 case LSA_AUDIT_POLICY_CLEAR: val = "LSA_AUDIT_POLICY_CLEAR"; break;
814 ndr_print_enum(ndr, name, "ENUM", val, r);
817 static enum ndr_err_code ndr_push_lsa_AuditEventsInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditEventsInfo *r)
819 uint32_t cntr_settings_1;
820 if (ndr_flags & NDR_SCALARS) {
821 NDR_CHECK(ndr_push_align(ndr, 4));
822 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->auditing_mode));
823 NDR_CHECK(ndr_push_unique_ptr(ndr, r->settings));
824 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
826 if (ndr_flags & NDR_BUFFERS) {
828 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
829 for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
830 NDR_CHECK(ndr_push_lsa_PolicyAuditPolicy(ndr, NDR_SCALARS, r->settings[cntr_settings_1]));
834 return NDR_ERR_SUCCESS;
837 static enum ndr_err_code ndr_pull_lsa_AuditEventsInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditEventsInfo *r)
839 uint32_t _ptr_settings;
840 uint32_t cntr_settings_1;
841 TALLOC_CTX *_mem_save_settings_0;
842 TALLOC_CTX *_mem_save_settings_1;
843 if (ndr_flags & NDR_SCALARS) {
844 NDR_CHECK(ndr_pull_align(ndr, 4));
845 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->auditing_mode));
846 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_settings));
848 NDR_PULL_ALLOC(ndr, r->settings);
852 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
854 if (ndr_flags & NDR_BUFFERS) {
856 _mem_save_settings_0 = NDR_PULL_GET_MEM_CTX(ndr);
857 NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
858 NDR_CHECK(ndr_pull_array_size(ndr, &r->settings));
859 NDR_PULL_ALLOC_N(ndr, r->settings, ndr_get_array_size(ndr, &r->settings));
860 _mem_save_settings_1 = NDR_PULL_GET_MEM_CTX(ndr);
861 NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
862 for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
863 NDR_CHECK(ndr_pull_lsa_PolicyAuditPolicy(ndr, NDR_SCALARS, &r->settings[cntr_settings_1]));
865 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_1, 0);
866 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_0, 0);
869 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->settings, r->count));
872 return NDR_ERR_SUCCESS;
875 _PUBLIC_ void ndr_print_lsa_AuditEventsInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditEventsInfo *r)
877 uint32_t cntr_settings_1;
878 ndr_print_struct(ndr, name, "lsa_AuditEventsInfo");
880 ndr_print_uint32(ndr, "auditing_mode", r->auditing_mode);
881 ndr_print_ptr(ndr, "settings", r->settings);
884 ndr->print(ndr, "%s: ARRAY(%d)", "settings", r->count);
886 for (cntr_settings_1=0;cntr_settings_1<r->count;cntr_settings_1++) {
888 if (asprintf(&idx_1, "[%d]", cntr_settings_1) != -1) {
889 ndr_print_lsa_PolicyAuditPolicy(ndr, "settings", r->settings[cntr_settings_1]);
896 ndr_print_uint32(ndr, "count", r->count);
900 static enum ndr_err_code ndr_push_lsa_DomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfo *r)
902 if (ndr_flags & NDR_SCALARS) {
903 NDR_CHECK(ndr_push_align(ndr, 4));
904 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
905 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
907 if (ndr_flags & NDR_BUFFERS) {
908 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
910 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
913 return NDR_ERR_SUCCESS;
916 static enum ndr_err_code ndr_pull_lsa_DomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfo *r)
919 TALLOC_CTX *_mem_save_sid_0;
920 if (ndr_flags & NDR_SCALARS) {
921 NDR_CHECK(ndr_pull_align(ndr, 4));
922 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
923 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
925 NDR_PULL_ALLOC(ndr, r->sid);
930 if (ndr_flags & NDR_BUFFERS) {
931 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
933 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
934 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
935 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
936 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
939 return NDR_ERR_SUCCESS;
942 _PUBLIC_ void ndr_print_lsa_DomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfo *r)
944 ndr_print_struct(ndr, name, "lsa_DomainInfo");
946 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
947 ndr_print_ptr(ndr, "sid", r->sid);
950 ndr_print_dom_sid2(ndr, "sid", r->sid);
956 static enum ndr_err_code ndr_push_lsa_PDAccountInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_PDAccountInfo *r)
958 if (ndr_flags & NDR_SCALARS) {
959 NDR_CHECK(ndr_push_align(ndr, 4));
960 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
962 if (ndr_flags & NDR_BUFFERS) {
963 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
965 return NDR_ERR_SUCCESS;
968 static enum ndr_err_code ndr_pull_lsa_PDAccountInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_PDAccountInfo *r)
970 if (ndr_flags & NDR_SCALARS) {
971 NDR_CHECK(ndr_pull_align(ndr, 4));
972 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
974 if (ndr_flags & NDR_BUFFERS) {
975 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
977 return NDR_ERR_SUCCESS;
980 _PUBLIC_ void ndr_print_lsa_PDAccountInfo(struct ndr_print *ndr, const char *name, const struct lsa_PDAccountInfo *r)
982 ndr_print_struct(ndr, name, "lsa_PDAccountInfo");
984 ndr_print_lsa_String(ndr, "name", &r->name);
988 static enum ndr_err_code ndr_push_lsa_ServerRole(struct ndr_push *ndr, int ndr_flags, const struct lsa_ServerRole *r)
990 if (ndr_flags & NDR_SCALARS) {
991 NDR_CHECK(ndr_push_align(ndr, 2));
992 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown));
993 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->role));
995 if (ndr_flags & NDR_BUFFERS) {
997 return NDR_ERR_SUCCESS;
1000 static enum ndr_err_code ndr_pull_lsa_ServerRole(struct ndr_pull *ndr, int ndr_flags, struct lsa_ServerRole *r)
1002 if (ndr_flags & NDR_SCALARS) {
1003 NDR_CHECK(ndr_pull_align(ndr, 2));
1004 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown));
1005 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->role));
1007 if (ndr_flags & NDR_BUFFERS) {
1009 return NDR_ERR_SUCCESS;
1012 _PUBLIC_ void ndr_print_lsa_ServerRole(struct ndr_print *ndr, const char *name, const struct lsa_ServerRole *r)
1014 ndr_print_struct(ndr, name, "lsa_ServerRole");
1016 ndr_print_uint16(ndr, "unknown", r->unknown);
1017 ndr_print_uint16(ndr, "role", r->role);
1021 static enum ndr_err_code ndr_push_lsa_ReplicaSourceInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ReplicaSourceInfo *r)
1023 if (ndr_flags & NDR_SCALARS) {
1024 NDR_CHECK(ndr_push_align(ndr, 4));
1025 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->source));
1026 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account));
1028 if (ndr_flags & NDR_BUFFERS) {
1029 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->source));
1030 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account));
1032 return NDR_ERR_SUCCESS;
1035 static enum ndr_err_code ndr_pull_lsa_ReplicaSourceInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ReplicaSourceInfo *r)
1037 if (ndr_flags & NDR_SCALARS) {
1038 NDR_CHECK(ndr_pull_align(ndr, 4));
1039 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->source));
1040 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account));
1042 if (ndr_flags & NDR_BUFFERS) {
1043 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->source));
1044 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account));
1046 return NDR_ERR_SUCCESS;
1049 _PUBLIC_ void ndr_print_lsa_ReplicaSourceInfo(struct ndr_print *ndr, const char *name, const struct lsa_ReplicaSourceInfo *r)
1051 ndr_print_struct(ndr, name, "lsa_ReplicaSourceInfo");
1053 ndr_print_lsa_String(ndr, "source", &r->source);
1054 ndr_print_lsa_String(ndr, "account", &r->account);
1058 static enum ndr_err_code ndr_push_lsa_DefaultQuotaInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DefaultQuotaInfo *r)
1060 if (ndr_flags & NDR_SCALARS) {
1061 NDR_CHECK(ndr_push_align(ndr, 8));
1062 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->paged_pool));
1063 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->non_paged_pool));
1064 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->min_wss));
1065 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_wss));
1066 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pagefile));
1067 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown));
1069 if (ndr_flags & NDR_BUFFERS) {
1071 return NDR_ERR_SUCCESS;
1074 static enum ndr_err_code ndr_pull_lsa_DefaultQuotaInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DefaultQuotaInfo *r)
1076 if (ndr_flags & NDR_SCALARS) {
1077 NDR_CHECK(ndr_pull_align(ndr, 8));
1078 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->paged_pool));
1079 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->non_paged_pool));
1080 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->min_wss));
1081 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_wss));
1082 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pagefile));
1083 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown));
1085 if (ndr_flags & NDR_BUFFERS) {
1087 return NDR_ERR_SUCCESS;
1090 _PUBLIC_ void ndr_print_lsa_DefaultQuotaInfo(struct ndr_print *ndr, const char *name, const struct lsa_DefaultQuotaInfo *r)
1092 ndr_print_struct(ndr, name, "lsa_DefaultQuotaInfo");
1094 ndr_print_uint32(ndr, "paged_pool", r->paged_pool);
1095 ndr_print_uint32(ndr, "non_paged_pool", r->non_paged_pool);
1096 ndr_print_uint32(ndr, "min_wss", r->min_wss);
1097 ndr_print_uint32(ndr, "max_wss", r->max_wss);
1098 ndr_print_uint32(ndr, "pagefile", r->pagefile);
1099 ndr_print_hyper(ndr, "unknown", r->unknown);
1103 static enum ndr_err_code ndr_push_lsa_ModificationInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ModificationInfo *r)
1105 if (ndr_flags & NDR_SCALARS) {
1106 NDR_CHECK(ndr_push_align(ndr, 8));
1107 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->modified_id));
1108 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->db_create_time));
1110 if (ndr_flags & NDR_BUFFERS) {
1112 return NDR_ERR_SUCCESS;
1115 static enum ndr_err_code ndr_pull_lsa_ModificationInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ModificationInfo *r)
1117 if (ndr_flags & NDR_SCALARS) {
1118 NDR_CHECK(ndr_pull_align(ndr, 8));
1119 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->modified_id));
1120 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->db_create_time));
1122 if (ndr_flags & NDR_BUFFERS) {
1124 return NDR_ERR_SUCCESS;
1127 _PUBLIC_ void ndr_print_lsa_ModificationInfo(struct ndr_print *ndr, const char *name, const struct lsa_ModificationInfo *r)
1129 ndr_print_struct(ndr, name, "lsa_ModificationInfo");
1131 ndr_print_hyper(ndr, "modified_id", r->modified_id);
1132 ndr_print_NTTIME(ndr, "db_create_time", r->db_create_time);
1136 static enum ndr_err_code ndr_push_lsa_AuditFullSetInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditFullSetInfo *r)
1138 if (ndr_flags & NDR_SCALARS) {
1139 NDR_CHECK(ndr_push_align(ndr, 1));
1140 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_on_full));
1142 if (ndr_flags & NDR_BUFFERS) {
1144 return NDR_ERR_SUCCESS;
1147 static enum ndr_err_code ndr_pull_lsa_AuditFullSetInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditFullSetInfo *r)
1149 if (ndr_flags & NDR_SCALARS) {
1150 NDR_CHECK(ndr_pull_align(ndr, 1));
1151 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_on_full));
1153 if (ndr_flags & NDR_BUFFERS) {
1155 return NDR_ERR_SUCCESS;
1158 _PUBLIC_ void ndr_print_lsa_AuditFullSetInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditFullSetInfo *r)
1160 ndr_print_struct(ndr, name, "lsa_AuditFullSetInfo");
1162 ndr_print_uint8(ndr, "shutdown_on_full", r->shutdown_on_full);
1166 static enum ndr_err_code ndr_push_lsa_AuditFullQueryInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditFullQueryInfo *r)
1168 if (ndr_flags & NDR_SCALARS) {
1169 NDR_CHECK(ndr_push_align(ndr, 2));
1170 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown));
1171 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_on_full));
1172 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->log_is_full));
1174 if (ndr_flags & NDR_BUFFERS) {
1176 return NDR_ERR_SUCCESS;
1179 static enum ndr_err_code ndr_pull_lsa_AuditFullQueryInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditFullQueryInfo *r)
1181 if (ndr_flags & NDR_SCALARS) {
1182 NDR_CHECK(ndr_pull_align(ndr, 2));
1183 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown));
1184 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_on_full));
1185 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->log_is_full));
1187 if (ndr_flags & NDR_BUFFERS) {
1189 return NDR_ERR_SUCCESS;
1192 _PUBLIC_ void ndr_print_lsa_AuditFullQueryInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditFullQueryInfo *r)
1194 ndr_print_struct(ndr, name, "lsa_AuditFullQueryInfo");
1196 ndr_print_uint16(ndr, "unknown", r->unknown);
1197 ndr_print_uint8(ndr, "shutdown_on_full", r->shutdown_on_full);
1198 ndr_print_uint8(ndr, "log_is_full", r->log_is_full);
1202 static enum ndr_err_code ndr_push_lsa_DnsDomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DnsDomainInfo *r)
1204 if (ndr_flags & NDR_SCALARS) {
1205 NDR_CHECK(ndr_push_align(ndr, 4));
1206 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1207 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain));
1208 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_forest));
1209 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->domain_guid));
1210 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1212 if (ndr_flags & NDR_BUFFERS) {
1213 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1214 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain));
1215 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_forest));
1216 NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->domain_guid));
1218 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1221 return NDR_ERR_SUCCESS;
1224 static enum ndr_err_code ndr_pull_lsa_DnsDomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DnsDomainInfo *r)
1227 TALLOC_CTX *_mem_save_sid_0;
1228 if (ndr_flags & NDR_SCALARS) {
1229 NDR_CHECK(ndr_pull_align(ndr, 4));
1230 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1231 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain));
1232 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_forest));
1233 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->domain_guid));
1234 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1236 NDR_PULL_ALLOC(ndr, r->sid);
1241 if (ndr_flags & NDR_BUFFERS) {
1242 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1243 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain));
1244 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_forest));
1245 NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->domain_guid));
1247 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1248 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1249 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1250 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1253 return NDR_ERR_SUCCESS;
1256 _PUBLIC_ void ndr_print_lsa_DnsDomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_DnsDomainInfo *r)
1258 ndr_print_struct(ndr, name, "lsa_DnsDomainInfo");
1260 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
1261 ndr_print_lsa_StringLarge(ndr, "dns_domain", &r->dns_domain);
1262 ndr_print_lsa_StringLarge(ndr, "dns_forest", &r->dns_forest);
1263 ndr_print_GUID(ndr, "domain_guid", &r->domain_guid);
1264 ndr_print_ptr(ndr, "sid", r->sid);
1267 ndr_print_dom_sid2(ndr, "sid", r->sid);
1273 static enum ndr_err_code ndr_push_lsa_PolicyInfo(struct ndr_push *ndr, int ndr_flags, enum lsa_PolicyInfo r)
1275 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
1276 return NDR_ERR_SUCCESS;
1279 static enum ndr_err_code ndr_pull_lsa_PolicyInfo(struct ndr_pull *ndr, int ndr_flags, enum lsa_PolicyInfo *r)
1282 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
1284 return NDR_ERR_SUCCESS;
1287 _PUBLIC_ void ndr_print_lsa_PolicyInfo(struct ndr_print *ndr, const char *name, enum lsa_PolicyInfo r)
1289 const char *val = NULL;
1292 case LSA_POLICY_INFO_AUDIT_LOG: val = "LSA_POLICY_INFO_AUDIT_LOG"; break;
1293 case LSA_POLICY_INFO_AUDIT_EVENTS: val = "LSA_POLICY_INFO_AUDIT_EVENTS"; break;
1294 case LSA_POLICY_INFO_DOMAIN: val = "LSA_POLICY_INFO_DOMAIN"; break;
1295 case LSA_POLICY_INFO_PD: val = "LSA_POLICY_INFO_PD"; break;
1296 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: val = "LSA_POLICY_INFO_ACCOUNT_DOMAIN"; break;
1297 case LSA_POLICY_INFO_ROLE: val = "LSA_POLICY_INFO_ROLE"; break;
1298 case LSA_POLICY_INFO_REPLICA: val = "LSA_POLICY_INFO_REPLICA"; break;
1299 case LSA_POLICY_INFO_QUOTA: val = "LSA_POLICY_INFO_QUOTA"; break;
1300 case LSA_POLICY_INFO_DB: val = "LSA_POLICY_INFO_DB"; break;
1301 case LSA_POLICY_INFO_AUDIT_FULL_SET: val = "LSA_POLICY_INFO_AUDIT_FULL_SET"; break;
1302 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: val = "LSA_POLICY_INFO_AUDIT_FULL_QUERY"; break;
1303 case LSA_POLICY_INFO_DNS: val = "LSA_POLICY_INFO_DNS"; break;
1305 ndr_print_enum(ndr, name, "ENUM", val, r);
1308 static enum ndr_err_code ndr_push_lsa_PolicyInformation(struct ndr_push *ndr, int ndr_flags, const union lsa_PolicyInformation *r)
1310 if (ndr_flags & NDR_SCALARS) {
1311 int level = ndr_push_get_switch_value(ndr, r);
1312 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
1314 case LSA_POLICY_INFO_AUDIT_LOG: {
1315 NDR_CHECK(ndr_push_lsa_AuditLogInfo(ndr, NDR_SCALARS, &r->audit_log));
1318 case LSA_POLICY_INFO_AUDIT_EVENTS: {
1319 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr, NDR_SCALARS, &r->audit_events));
1322 case LSA_POLICY_INFO_DOMAIN: {
1323 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domain));
1326 case LSA_POLICY_INFO_PD: {
1327 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr, NDR_SCALARS, &r->pd));
1330 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: {
1331 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->account_domain));
1334 case LSA_POLICY_INFO_ROLE: {
1335 NDR_CHECK(ndr_push_lsa_ServerRole(ndr, NDR_SCALARS, &r->role));
1338 case LSA_POLICY_INFO_REPLICA: {
1339 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr, NDR_SCALARS, &r->replica));
1342 case LSA_POLICY_INFO_QUOTA: {
1343 NDR_CHECK(ndr_push_lsa_DefaultQuotaInfo(ndr, NDR_SCALARS, &r->quota));
1346 case LSA_POLICY_INFO_DB: {
1347 NDR_CHECK(ndr_push_lsa_ModificationInfo(ndr, NDR_SCALARS, &r->db));
1350 case LSA_POLICY_INFO_AUDIT_FULL_SET: {
1351 NDR_CHECK(ndr_push_lsa_AuditFullSetInfo(ndr, NDR_SCALARS, &r->auditfullset));
1354 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: {
1355 NDR_CHECK(ndr_push_lsa_AuditFullQueryInfo(ndr, NDR_SCALARS, &r->auditfullquery));
1358 case LSA_POLICY_INFO_DNS: {
1359 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1363 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1366 if (ndr_flags & NDR_BUFFERS) {
1367 int level = ndr_push_get_switch_value(ndr, r);
1369 case LSA_POLICY_INFO_AUDIT_LOG:
1372 case LSA_POLICY_INFO_AUDIT_EVENTS:
1373 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr, NDR_BUFFERS, &r->audit_events));
1376 case LSA_POLICY_INFO_DOMAIN:
1377 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domain));
1380 case LSA_POLICY_INFO_PD:
1381 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr, NDR_BUFFERS, &r->pd));
1384 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1385 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->account_domain));
1388 case LSA_POLICY_INFO_ROLE:
1391 case LSA_POLICY_INFO_REPLICA:
1392 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr, NDR_BUFFERS, &r->replica));
1395 case LSA_POLICY_INFO_QUOTA:
1398 case LSA_POLICY_INFO_DB:
1401 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1404 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1407 case LSA_POLICY_INFO_DNS:
1408 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1412 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1415 return NDR_ERR_SUCCESS;
1418 static enum ndr_err_code ndr_pull_lsa_PolicyInformation(struct ndr_pull *ndr, int ndr_flags, union lsa_PolicyInformation *r)
1422 level = ndr_pull_get_switch_value(ndr, r);
1423 if (ndr_flags & NDR_SCALARS) {
1424 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
1425 if (_level != level) {
1426 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1429 case LSA_POLICY_INFO_AUDIT_LOG: {
1430 NDR_CHECK(ndr_pull_lsa_AuditLogInfo(ndr, NDR_SCALARS, &r->audit_log));
1433 case LSA_POLICY_INFO_AUDIT_EVENTS: {
1434 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr, NDR_SCALARS, &r->audit_events));
1437 case LSA_POLICY_INFO_DOMAIN: {
1438 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domain));
1441 case LSA_POLICY_INFO_PD: {
1442 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr, NDR_SCALARS, &r->pd));
1445 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: {
1446 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->account_domain));
1449 case LSA_POLICY_INFO_ROLE: {
1450 NDR_CHECK(ndr_pull_lsa_ServerRole(ndr, NDR_SCALARS, &r->role));
1453 case LSA_POLICY_INFO_REPLICA: {
1454 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr, NDR_SCALARS, &r->replica));
1457 case LSA_POLICY_INFO_QUOTA: {
1458 NDR_CHECK(ndr_pull_lsa_DefaultQuotaInfo(ndr, NDR_SCALARS, &r->quota));
1461 case LSA_POLICY_INFO_DB: {
1462 NDR_CHECK(ndr_pull_lsa_ModificationInfo(ndr, NDR_SCALARS, &r->db));
1465 case LSA_POLICY_INFO_AUDIT_FULL_SET: {
1466 NDR_CHECK(ndr_pull_lsa_AuditFullSetInfo(ndr, NDR_SCALARS, &r->auditfullset));
1469 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: {
1470 NDR_CHECK(ndr_pull_lsa_AuditFullQueryInfo(ndr, NDR_SCALARS, &r->auditfullquery));
1473 case LSA_POLICY_INFO_DNS: {
1474 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1478 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1481 if (ndr_flags & NDR_BUFFERS) {
1483 case LSA_POLICY_INFO_AUDIT_LOG:
1486 case LSA_POLICY_INFO_AUDIT_EVENTS:
1487 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr, NDR_BUFFERS, &r->audit_events));
1490 case LSA_POLICY_INFO_DOMAIN:
1491 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domain));
1494 case LSA_POLICY_INFO_PD:
1495 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr, NDR_BUFFERS, &r->pd));
1498 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1499 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->account_domain));
1502 case LSA_POLICY_INFO_ROLE:
1505 case LSA_POLICY_INFO_REPLICA:
1506 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr, NDR_BUFFERS, &r->replica));
1509 case LSA_POLICY_INFO_QUOTA:
1512 case LSA_POLICY_INFO_DB:
1515 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1518 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1521 case LSA_POLICY_INFO_DNS:
1522 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1526 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1529 return NDR_ERR_SUCCESS;
1532 _PUBLIC_ void ndr_print_lsa_PolicyInformation(struct ndr_print *ndr, const char *name, const union lsa_PolicyInformation *r)
1535 level = ndr_print_get_switch_value(ndr, r);
1536 ndr_print_union(ndr, name, level, "lsa_PolicyInformation");
1538 case LSA_POLICY_INFO_AUDIT_LOG:
1539 ndr_print_lsa_AuditLogInfo(ndr, "audit_log", &r->audit_log);
1542 case LSA_POLICY_INFO_AUDIT_EVENTS:
1543 ndr_print_lsa_AuditEventsInfo(ndr, "audit_events", &r->audit_events);
1546 case LSA_POLICY_INFO_DOMAIN:
1547 ndr_print_lsa_DomainInfo(ndr, "domain", &r->domain);
1550 case LSA_POLICY_INFO_PD:
1551 ndr_print_lsa_PDAccountInfo(ndr, "pd", &r->pd);
1554 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1555 ndr_print_lsa_DomainInfo(ndr, "account_domain", &r->account_domain);
1558 case LSA_POLICY_INFO_ROLE:
1559 ndr_print_lsa_ServerRole(ndr, "role", &r->role);
1562 case LSA_POLICY_INFO_REPLICA:
1563 ndr_print_lsa_ReplicaSourceInfo(ndr, "replica", &r->replica);
1566 case LSA_POLICY_INFO_QUOTA:
1567 ndr_print_lsa_DefaultQuotaInfo(ndr, "quota", &r->quota);
1570 case LSA_POLICY_INFO_DB:
1571 ndr_print_lsa_ModificationInfo(ndr, "db", &r->db);
1574 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1575 ndr_print_lsa_AuditFullSetInfo(ndr, "auditfullset", &r->auditfullset);
1578 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1579 ndr_print_lsa_AuditFullQueryInfo(ndr, "auditfullquery", &r->auditfullquery);
1582 case LSA_POLICY_INFO_DNS:
1583 ndr_print_lsa_DnsDomainInfo(ndr, "dns", &r->dns);
1587 ndr_print_bad_level(ndr, name, level);
1591 static enum ndr_err_code ndr_push_lsa_SidPtr(struct ndr_push *ndr, int ndr_flags, const struct lsa_SidPtr *r)
1593 if (ndr_flags & NDR_SCALARS) {
1594 NDR_CHECK(ndr_push_align(ndr, 4));
1595 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1597 if (ndr_flags & NDR_BUFFERS) {
1599 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1602 return NDR_ERR_SUCCESS;
1605 static enum ndr_err_code ndr_pull_lsa_SidPtr(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidPtr *r)
1608 TALLOC_CTX *_mem_save_sid_0;
1609 if (ndr_flags & NDR_SCALARS) {
1610 NDR_CHECK(ndr_pull_align(ndr, 4));
1611 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1613 NDR_PULL_ALLOC(ndr, r->sid);
1618 if (ndr_flags & NDR_BUFFERS) {
1620 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1621 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1622 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1623 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1626 return NDR_ERR_SUCCESS;
1629 _PUBLIC_ void ndr_print_lsa_SidPtr(struct ndr_print *ndr, const char *name, const struct lsa_SidPtr *r)
1631 ndr_print_struct(ndr, name, "lsa_SidPtr");
1633 ndr_print_ptr(ndr, "sid", r->sid);
1636 ndr_print_dom_sid2(ndr, "sid", r->sid);
1642 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SidArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_SidArray *r)
1644 uint32_t cntr_sids_1;
1645 if (ndr_flags & NDR_SCALARS) {
1646 NDR_CHECK(ndr_push_align(ndr, 4));
1647 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
1648 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
1650 if (ndr_flags & NDR_BUFFERS) {
1652 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
1653 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1654 NDR_CHECK(ndr_push_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1656 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1657 NDR_CHECK(ndr_push_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
1661 return NDR_ERR_SUCCESS;
1664 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidArray *r)
1667 uint32_t cntr_sids_1;
1668 TALLOC_CTX *_mem_save_sids_0;
1669 TALLOC_CTX *_mem_save_sids_1;
1670 if (ndr_flags & NDR_SCALARS) {
1671 NDR_CHECK(ndr_pull_align(ndr, 4));
1672 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_sids));
1673 if (r->num_sids < 0 || r->num_sids > 1000) {
1674 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1676 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
1678 NDR_PULL_ALLOC(ndr, r->sids);
1683 if (ndr_flags & NDR_BUFFERS) {
1685 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1686 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1687 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
1688 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
1689 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1690 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1691 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1692 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1694 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1695 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
1697 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
1698 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
1701 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->num_sids));
1704 return NDR_ERR_SUCCESS;
1707 _PUBLIC_ void ndr_print_lsa_SidArray(struct ndr_print *ndr, const char *name, const struct lsa_SidArray *r)
1709 uint32_t cntr_sids_1;
1710 ndr_print_struct(ndr, name, "lsa_SidArray");
1712 ndr_print_uint32(ndr, "num_sids", r->num_sids);
1713 ndr_print_ptr(ndr, "sids", r->sids);
1716 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->num_sids);
1718 for (cntr_sids_1=0;cntr_sids_1<r->num_sids;cntr_sids_1++) {
1720 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
1721 ndr_print_lsa_SidPtr(ndr, "sids", &r->sids[cntr_sids_1]);
1731 static enum ndr_err_code ndr_push_lsa_DomainList(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainList *r)
1733 uint32_t cntr_domains_1;
1734 if (ndr_flags & NDR_SCALARS) {
1735 NDR_CHECK(ndr_push_align(ndr, 4));
1736 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1737 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
1739 if (ndr_flags & NDR_BUFFERS) {
1741 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1742 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1743 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1745 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1746 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1750 return NDR_ERR_SUCCESS;
1753 static enum ndr_err_code ndr_pull_lsa_DomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainList *r)
1755 uint32_t _ptr_domains;
1756 uint32_t cntr_domains_1;
1757 TALLOC_CTX *_mem_save_domains_0;
1758 TALLOC_CTX *_mem_save_domains_1;
1759 if (ndr_flags & NDR_SCALARS) {
1760 NDR_CHECK(ndr_pull_align(ndr, 4));
1761 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1762 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
1764 NDR_PULL_ALLOC(ndr, r->domains);
1769 if (ndr_flags & NDR_BUFFERS) {
1771 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
1772 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1773 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
1774 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
1775 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
1776 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1777 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1778 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1780 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1781 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1783 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
1784 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
1787 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
1790 return NDR_ERR_SUCCESS;
1793 _PUBLIC_ void ndr_print_lsa_DomainList(struct ndr_print *ndr, const char *name, const struct lsa_DomainList *r)
1795 uint32_t cntr_domains_1;
1796 ndr_print_struct(ndr, name, "lsa_DomainList");
1798 ndr_print_uint32(ndr, "count", r->count);
1799 ndr_print_ptr(ndr, "domains", r->domains);
1802 ndr->print(ndr, "%s: ARRAY(%d)", "domains", r->count);
1804 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
1806 if (asprintf(&idx_1, "[%d]", cntr_domains_1) != -1) {
1807 ndr_print_lsa_DomainInfo(ndr, "domains", &r->domains[cntr_domains_1]);
1817 static enum ndr_err_code ndr_push_lsa_SidType(struct ndr_push *ndr, int ndr_flags, enum lsa_SidType r)
1819 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
1820 return NDR_ERR_SUCCESS;
1823 static enum ndr_err_code ndr_pull_lsa_SidType(struct ndr_pull *ndr, int ndr_flags, enum lsa_SidType *r)
1826 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
1828 return NDR_ERR_SUCCESS;
1831 _PUBLIC_ void ndr_print_lsa_SidType(struct ndr_print *ndr, const char *name, enum lsa_SidType r)
1833 const char *val = NULL;
1836 case SID_NAME_USE_NONE: val = "SID_NAME_USE_NONE"; break;
1837 case SID_NAME_USER: val = "SID_NAME_USER"; break;
1838 case SID_NAME_DOM_GRP: val = "SID_NAME_DOM_GRP"; break;
1839 case SID_NAME_DOMAIN: val = "SID_NAME_DOMAIN"; break;
1840 case SID_NAME_ALIAS: val = "SID_NAME_ALIAS"; break;
1841 case SID_NAME_WKN_GRP: val = "SID_NAME_WKN_GRP"; break;
1842 case SID_NAME_DELETED: val = "SID_NAME_DELETED"; break;
1843 case SID_NAME_INVALID: val = "SID_NAME_INVALID"; break;
1844 case SID_NAME_UNKNOWN: val = "SID_NAME_UNKNOWN"; break;
1845 case SID_NAME_COMPUTER: val = "SID_NAME_COMPUTER"; break;
1847 ndr_print_enum(ndr, name, "ENUM", val, r);
1850 static enum ndr_err_code ndr_push_lsa_TranslatedSid(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid *r)
1852 if (ndr_flags & NDR_SCALARS) {
1853 NDR_CHECK(ndr_push_align(ndr, 4));
1854 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
1855 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
1856 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
1858 if (ndr_flags & NDR_BUFFERS) {
1860 return NDR_ERR_SUCCESS;
1863 static enum ndr_err_code ndr_pull_lsa_TranslatedSid(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid *r)
1865 if (ndr_flags & NDR_SCALARS) {
1866 NDR_CHECK(ndr_pull_align(ndr, 4));
1867 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
1868 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
1869 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
1871 if (ndr_flags & NDR_BUFFERS) {
1873 return NDR_ERR_SUCCESS;
1876 _PUBLIC_ void ndr_print_lsa_TranslatedSid(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid *r)
1878 ndr_print_struct(ndr, name, "lsa_TranslatedSid");
1880 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
1881 ndr_print_uint32(ndr, "rid", r->rid);
1882 ndr_print_uint32(ndr, "sid_index", r->sid_index);
1886 static enum ndr_err_code ndr_push_lsa_TransSidArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray *r)
1888 uint32_t cntr_sids_1;
1889 if (ndr_flags & NDR_SCALARS) {
1890 NDR_CHECK(ndr_push_align(ndr, 4));
1891 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1892 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
1894 if (ndr_flags & NDR_BUFFERS) {
1896 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1897 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
1898 NDR_CHECK(ndr_push_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1902 return NDR_ERR_SUCCESS;
1905 static enum ndr_err_code ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray *r)
1908 uint32_t cntr_sids_1;
1909 TALLOC_CTX *_mem_save_sids_0;
1910 TALLOC_CTX *_mem_save_sids_1;
1911 if (ndr_flags & NDR_SCALARS) {
1912 NDR_CHECK(ndr_pull_align(ndr, 4));
1913 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1914 if (r->count < 0 || r->count > 1000) {
1915 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1917 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
1919 NDR_PULL_ALLOC(ndr, r->sids);
1924 if (ndr_flags & NDR_BUFFERS) {
1926 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1927 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1928 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
1929 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
1930 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1931 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1932 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
1933 NDR_CHECK(ndr_pull_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1935 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
1936 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
1939 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
1942 return NDR_ERR_SUCCESS;
1945 _PUBLIC_ void ndr_print_lsa_TransSidArray(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray *r)
1947 uint32_t cntr_sids_1;
1948 ndr_print_struct(ndr, name, "lsa_TransSidArray");
1950 ndr_print_uint32(ndr, "count", r->count);
1951 ndr_print_ptr(ndr, "sids", r->sids);
1954 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->count);
1956 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
1958 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
1959 ndr_print_lsa_TranslatedSid(ndr, "sids", &r->sids[cntr_sids_1]);
1969 static enum ndr_err_code ndr_push_lsa_RefDomainList(struct ndr_push *ndr, int ndr_flags, const struct lsa_RefDomainList *r)
1971 uint32_t cntr_domains_1;
1972 if (ndr_flags & NDR_SCALARS) {
1973 NDR_CHECK(ndr_push_align(ndr, 4));
1974 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1975 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
1976 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_size));
1978 if (ndr_flags & NDR_BUFFERS) {
1980 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1981 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1982 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1984 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1985 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1989 return NDR_ERR_SUCCESS;
1992 static enum ndr_err_code ndr_pull_lsa_RefDomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_RefDomainList *r)
1994 uint32_t _ptr_domains;
1995 uint32_t cntr_domains_1;
1996 TALLOC_CTX *_mem_save_domains_0;
1997 TALLOC_CTX *_mem_save_domains_1;
1998 if (ndr_flags & NDR_SCALARS) {
1999 NDR_CHECK(ndr_pull_align(ndr, 4));
2000 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2001 if (r->count < 0 || r->count > 1000) {
2002 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2004 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
2006 NDR_PULL_ALLOC(ndr, r->domains);
2010 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_size));
2012 if (ndr_flags & NDR_BUFFERS) {
2014 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
2015 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
2016 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
2017 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
2018 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
2019 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
2020 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2021 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
2023 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
2024 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
2026 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
2027 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
2030 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
2033 return NDR_ERR_SUCCESS;
2036 _PUBLIC_ void ndr_print_lsa_RefDomainList(struct ndr_print *ndr, const char *name, const struct lsa_RefDomainList *r)
2038 uint32_t cntr_domains_1;
2039 ndr_print_struct(ndr, name, "lsa_RefDomainList");
2041 ndr_print_uint32(ndr, "count", r->count);
2042 ndr_print_ptr(ndr, "domains", r->domains);
2045 ndr->print(ndr, "%s: ARRAY(%d)", "domains", r->count);
2047 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
2049 if (asprintf(&idx_1, "[%d]", cntr_domains_1) != -1) {
2050 ndr_print_lsa_DomainInfo(ndr, "domains", &r->domains[cntr_domains_1]);
2057 ndr_print_uint32(ndr, "max_size", r->max_size);
2061 static enum ndr_err_code ndr_push_lsa_LookupNamesLevel(struct ndr_push *ndr, int ndr_flags, enum lsa_LookupNamesLevel r)
2063 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
2064 return NDR_ERR_SUCCESS;
2067 static enum ndr_err_code ndr_pull_lsa_LookupNamesLevel(struct ndr_pull *ndr, int ndr_flags, enum lsa_LookupNamesLevel *r)
2070 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
2072 return NDR_ERR_SUCCESS;
2075 _PUBLIC_ void ndr_print_lsa_LookupNamesLevel(struct ndr_print *ndr, const char *name, enum lsa_LookupNamesLevel r)
2077 const char *val = NULL;
2080 case LSA_LOOKUP_NAMES_ALL: val = "LSA_LOOKUP_NAMES_ALL"; break;
2081 case LSA_LOOKUP_NAMES_DOMAINS_ONLY: val = "LSA_LOOKUP_NAMES_DOMAINS_ONLY"; break;
2082 case LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY: val = "LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY"; break;
2083 case LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY: val = "LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY"; break;
2084 case LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY: val = "LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY"; break;
2085 case LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2: val = "LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2"; break;
2087 ndr_print_enum(ndr, name, "ENUM", val, r);
2090 static enum ndr_err_code ndr_push_lsa_TranslatedName(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedName *r)
2092 if (ndr_flags & NDR_SCALARS) {
2093 NDR_CHECK(ndr_push_align(ndr, 4));
2094 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
2095 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
2096 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
2098 if (ndr_flags & NDR_BUFFERS) {
2099 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
2101 return NDR_ERR_SUCCESS;
2104 static enum ndr_err_code ndr_pull_lsa_TranslatedName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName *r)
2106 if (ndr_flags & NDR_SCALARS) {
2107 NDR_CHECK(ndr_pull_align(ndr, 4));
2108 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
2109 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
2110 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
2112 if (ndr_flags & NDR_BUFFERS) {
2113 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
2115 return NDR_ERR_SUCCESS;
2118 _PUBLIC_ void ndr_print_lsa_TranslatedName(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedName *r)
2120 ndr_print_struct(ndr, name, "lsa_TranslatedName");
2122 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
2123 ndr_print_lsa_String(ndr, "name", &r->name);
2124 ndr_print_uint32(ndr, "sid_index", r->sid_index);
2128 static enum ndr_err_code ndr_push_lsa_TransNameArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransNameArray *r)
2130 uint32_t cntr_names_1;
2131 if (ndr_flags & NDR_SCALARS) {
2132 NDR_CHECK(ndr_push_align(ndr, 4));
2133 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2134 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
2136 if (ndr_flags & NDR_BUFFERS) {
2138 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2139 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2140 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
2142 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2143 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
2147 return NDR_ERR_SUCCESS;
2150 static enum ndr_err_code ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray *r)
2152 uint32_t _ptr_names;
2153 uint32_t cntr_names_1;
2154 TALLOC_CTX *_mem_save_names_0;
2155 TALLOC_CTX *_mem_save_names_1;
2156 if (ndr_flags & NDR_SCALARS) {
2157 NDR_CHECK(ndr_pull_align(ndr, 4));
2158 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2159 if (r->count < 0 || r->count > 1000) {
2160 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2162 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
2164 NDR_PULL_ALLOC(ndr, r->names);
2169 if (ndr_flags & NDR_BUFFERS) {
2171 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
2172 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
2173 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
2174 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
2175 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
2176 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
2177 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2178 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
2180 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2181 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
2183 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
2184 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
2187 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
2190 return NDR_ERR_SUCCESS;
2193 _PUBLIC_ void ndr_print_lsa_TransNameArray(struct ndr_print *ndr, const char *name, const struct lsa_TransNameArray *r)
2195 uint32_t cntr_names_1;
2196 ndr_print_struct(ndr, name, "lsa_TransNameArray");
2198 ndr_print_uint32(ndr, "count", r->count);
2199 ndr_print_ptr(ndr, "names", r->names);
2202 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
2204 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
2206 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
2207 ndr_print_lsa_TranslatedName(ndr, "names", &r->names[cntr_names_1]);
2217 static enum ndr_err_code ndr_push_lsa_LUIDAttribute(struct ndr_push *ndr, int ndr_flags, const struct lsa_LUIDAttribute *r)
2219 if (ndr_flags & NDR_SCALARS) {
2220 NDR_CHECK(ndr_push_align(ndr, 4));
2221 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
2222 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->attribute));
2224 if (ndr_flags & NDR_BUFFERS) {
2226 return NDR_ERR_SUCCESS;
2229 static enum ndr_err_code ndr_pull_lsa_LUIDAttribute(struct ndr_pull *ndr, int ndr_flags, struct lsa_LUIDAttribute *r)
2231 if (ndr_flags & NDR_SCALARS) {
2232 NDR_CHECK(ndr_pull_align(ndr, 4));
2233 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
2234 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->attribute));
2236 if (ndr_flags & NDR_BUFFERS) {
2238 return NDR_ERR_SUCCESS;
2241 _PUBLIC_ void ndr_print_lsa_LUIDAttribute(struct ndr_print *ndr, const char *name, const struct lsa_LUIDAttribute *r)
2243 ndr_print_struct(ndr, name, "lsa_LUIDAttribute");
2245 ndr_print_lsa_LUID(ndr, "luid", &r->luid);
2246 ndr_print_uint32(ndr, "attribute", r->attribute);
2250 static enum ndr_err_code ndr_push_lsa_PrivilegeSet(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivilegeSet *r)
2252 uint32_t cntr_set_0;
2253 if (ndr_flags & NDR_SCALARS) {
2254 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2255 NDR_CHECK(ndr_push_align(ndr, 4));
2256 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2257 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
2258 for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
2259 NDR_CHECK(ndr_push_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
2262 if (ndr_flags & NDR_BUFFERS) {
2264 return NDR_ERR_SUCCESS;
2267 static enum ndr_err_code ndr_pull_lsa_PrivilegeSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivilegeSet *r)
2269 uint32_t cntr_set_0;
2270 TALLOC_CTX *_mem_save_set_0;
2271 if (ndr_flags & NDR_SCALARS) {
2272 NDR_CHECK(ndr_pull_array_size(ndr, &r->set));
2273 NDR_CHECK(ndr_pull_align(ndr, 4));
2274 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2275 if (r->count < 0 || r->count > 1000) {
2276 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2278 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
2279 NDR_PULL_ALLOC_N(ndr, r->set, ndr_get_array_size(ndr, &r->set));
2280 _mem_save_set_0 = NDR_PULL_GET_MEM_CTX(ndr);
2281 NDR_PULL_SET_MEM_CTX(ndr, r->set, 0);
2282 for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
2283 NDR_CHECK(ndr_pull_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
2285 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_set_0, 0);
2287 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->set, r->count));
2290 if (ndr_flags & NDR_BUFFERS) {
2292 return NDR_ERR_SUCCESS;
2295 _PUBLIC_ void ndr_print_lsa_PrivilegeSet(struct ndr_print *ndr, const char *name, const struct lsa_PrivilegeSet *r)
2297 uint32_t cntr_set_0;
2298 ndr_print_struct(ndr, name, "lsa_PrivilegeSet");
2300 ndr_print_uint32(ndr, "count", r->count);
2301 ndr_print_uint32(ndr, "unknown", r->unknown);
2302 ndr->print(ndr, "%s: ARRAY(%d)", "set", r->count);
2304 for (cntr_set_0=0;cntr_set_0<r->count;cntr_set_0++) {
2306 if (asprintf(&idx_0, "[%d]", cntr_set_0) != -1) {
2307 ndr_print_lsa_LUIDAttribute(ndr, "set", &r->set[cntr_set_0]);
2315 static enum ndr_err_code ndr_push_lsa_DATA_BUF(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF *r)
2318 uint32_t _flags_save_STRUCT = ndr->flags;
2319 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2320 if (ndr_flags & NDR_SCALARS) {
2321 NDR_CHECK(ndr_push_align(ndr, 4));
2322 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
2323 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2324 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
2326 if (ndr_flags & NDR_BUFFERS) {
2328 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2329 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2330 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
2331 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
2334 ndr->flags = _flags_save_STRUCT;
2336 return NDR_ERR_SUCCESS;
2339 static enum ndr_err_code ndr_pull_lsa_DATA_BUF(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF *r)
2342 TALLOC_CTX *_mem_save_data_0;
2344 uint32_t _flags_save_STRUCT = ndr->flags;
2345 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2346 if (ndr_flags & NDR_SCALARS) {
2347 NDR_CHECK(ndr_pull_align(ndr, 4));
2348 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
2349 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
2350 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
2352 NDR_PULL_ALLOC(ndr, r->data);
2357 if (ndr_flags & NDR_BUFFERS) {
2359 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
2360 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
2361 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
2362 NDR_CHECK(ndr_pull_array_length(ndr, &r->data));
2363 if (ndr_get_array_length(ndr, &r->data) > ndr_get_array_size(ndr, &r->data)) {
2364 return ndr_pull_error(ndr, NDR_ERR_ARRAY_SIZE, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr, &r->data), ndr_get_array_length(ndr, &r->data));
2366 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
2367 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_length(ndr, &r->data)));
2368 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
2371 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->size));
2374 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->data, r->length));
2377 ndr->flags = _flags_save_STRUCT;
2379 return NDR_ERR_SUCCESS;
2382 _PUBLIC_ void ndr_print_lsa_DATA_BUF(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF *r)
2384 ndr_print_struct(ndr, name, "lsa_DATA_BUF");
2386 uint32_t _flags_save_STRUCT = ndr->flags;
2387 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2389 ndr_print_uint32(ndr, "length", r->length);
2390 ndr_print_uint32(ndr, "size", r->size);
2391 ndr_print_ptr(ndr, "data", r->data);
2394 ndr_print_array_uint8(ndr, "data", r->data, r->length);
2398 ndr->flags = _flags_save_STRUCT;
2402 static enum ndr_err_code ndr_push_lsa_DATA_BUF2(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF2 *r)
2405 uint32_t _flags_save_STRUCT = ndr->flags;
2406 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2407 if (ndr_flags & NDR_SCALARS) {
2408 NDR_CHECK(ndr_push_align(ndr, 4));
2409 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2410 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
2412 if (ndr_flags & NDR_BUFFERS) {
2414 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2415 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->size));
2418 ndr->flags = _flags_save_STRUCT;
2420 return NDR_ERR_SUCCESS;
2423 static enum ndr_err_code ndr_pull_lsa_DATA_BUF2(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF2 *r)
2426 TALLOC_CTX *_mem_save_data_0;
2428 uint32_t _flags_save_STRUCT = ndr->flags;
2429 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2430 if (ndr_flags & NDR_SCALARS) {
2431 NDR_CHECK(ndr_pull_align(ndr, 4));
2432 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
2433 if (r->size < 0 || r->size > 65536) {
2434 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2436 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
2438 NDR_PULL_ALLOC(ndr, r->data);
2443 if (ndr_flags & NDR_BUFFERS) {
2445 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
2446 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
2447 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
2448 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
2449 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
2450 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
2453 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->size));
2456 ndr->flags = _flags_save_STRUCT;
2458 return NDR_ERR_SUCCESS;
2461 _PUBLIC_ void ndr_print_lsa_DATA_BUF2(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF2 *r)
2463 ndr_print_struct(ndr, name, "lsa_DATA_BUF2");
2465 uint32_t _flags_save_STRUCT = ndr->flags;
2466 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2468 ndr_print_uint32(ndr, "size", r->size);
2469 ndr_print_ptr(ndr, "data", r->data);
2472 ndr_print_array_uint8(ndr, "data", r->data, r->size);
2476 ndr->flags = _flags_save_STRUCT;
2480 static enum ndr_err_code ndr_push_lsa_TrustDomInfoEnum(struct ndr_push *ndr, int ndr_flags, enum lsa_TrustDomInfoEnum r)
2482 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
2483 return NDR_ERR_SUCCESS;
2486 static enum ndr_err_code ndr_pull_lsa_TrustDomInfoEnum(struct ndr_pull *ndr, int ndr_flags, enum lsa_TrustDomInfoEnum *r)
2489 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
2491 return NDR_ERR_SUCCESS;
2494 _PUBLIC_ void ndr_print_lsa_TrustDomInfoEnum(struct ndr_print *ndr, const char *name, enum lsa_TrustDomInfoEnum r)
2496 const char *val = NULL;
2499 case LSA_TRUSTED_DOMAIN_INFO_NAME: val = "LSA_TRUSTED_DOMAIN_INFO_NAME"; break;
2500 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO"; break;
2501 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: val = "LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET"; break;
2502 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: val = "LSA_TRUSTED_DOMAIN_INFO_PASSWORD"; break;
2503 case LSA_TRUSTED_DOMAIN_INFO_BASIC: val = "LSA_TRUSTED_DOMAIN_INFO_BASIC"; break;
2504 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: val = "LSA_TRUSTED_DOMAIN_INFO_INFO_EX"; break;
2505 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO"; break;
2506 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO"; break;
2507 case LSA_TRUSTED_DOMAIN_INFO_11: val = "LSA_TRUSTED_DOMAIN_INFO_11"; break;
2508 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL: val = "LSA_TRUSTED_DOMAIN_INFO_INFO_ALL"; break;
2510 ndr_print_enum(ndr, name, "ENUM", val, r);
2513 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoName(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoName *r)
2515 if (ndr_flags & NDR_SCALARS) {
2516 NDR_CHECK(ndr_push_align(ndr, 4));
2517 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2519 if (ndr_flags & NDR_BUFFERS) {
2520 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2522 return NDR_ERR_SUCCESS;
2525 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoName *r)
2527 if (ndr_flags & NDR_SCALARS) {
2528 NDR_CHECK(ndr_pull_align(ndr, 4));
2529 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2531 if (ndr_flags & NDR_BUFFERS) {
2532 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2534 return NDR_ERR_SUCCESS;
2537 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoName(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoName *r)
2539 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoName");
2541 ndr_print_lsa_StringLarge(ndr, "netbios_name", &r->netbios_name);
2545 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoPosixOffset(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoPosixOffset *r)
2547 if (ndr_flags & NDR_SCALARS) {
2548 NDR_CHECK(ndr_push_align(ndr, 4));
2549 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->posix_offset));
2551 if (ndr_flags & NDR_BUFFERS) {
2553 return NDR_ERR_SUCCESS;
2556 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoPosixOffset(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoPosixOffset *r)
2558 if (ndr_flags & NDR_SCALARS) {
2559 NDR_CHECK(ndr_pull_align(ndr, 4));
2560 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->posix_offset));
2562 if (ndr_flags & NDR_BUFFERS) {
2564 return NDR_ERR_SUCCESS;
2567 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoPosixOffset(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoPosixOffset *r)
2569 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoPosixOffset");
2571 ndr_print_uint32(ndr, "posix_offset", r->posix_offset);
2575 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoPassword(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoPassword *r)
2577 if (ndr_flags & NDR_SCALARS) {
2578 NDR_CHECK(ndr_push_align(ndr, 4));
2579 NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
2580 NDR_CHECK(ndr_push_unique_ptr(ndr, r->old_password));
2582 if (ndr_flags & NDR_BUFFERS) {
2584 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->password));
2586 if (r->old_password) {
2587 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->old_password));
2590 return NDR_ERR_SUCCESS;
2593 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoPassword(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoPassword *r)
2595 uint32_t _ptr_password;
2596 TALLOC_CTX *_mem_save_password_0;
2597 uint32_t _ptr_old_password;
2598 TALLOC_CTX *_mem_save_old_password_0;
2599 if (ndr_flags & NDR_SCALARS) {
2600 NDR_CHECK(ndr_pull_align(ndr, 4));
2601 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
2602 if (_ptr_password) {
2603 NDR_PULL_ALLOC(ndr, r->password);
2607 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_password));
2608 if (_ptr_old_password) {
2609 NDR_PULL_ALLOC(ndr, r->old_password);
2611 r->old_password = NULL;
2614 if (ndr_flags & NDR_BUFFERS) {
2616 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
2617 NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
2618 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->password));
2619 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
2621 if (r->old_password) {
2622 _mem_save_old_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
2623 NDR_PULL_SET_MEM_CTX(ndr, r->old_password, 0);
2624 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->old_password));
2625 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_password_0, 0);
2628 return NDR_ERR_SUCCESS;
2631 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoPassword(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoPassword *r)
2633 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoPassword");
2635 ndr_print_ptr(ndr, "password", r->password);
2638 ndr_print_lsa_DATA_BUF(ndr, "password", r->password);
2641 ndr_print_ptr(ndr, "old_password", r->old_password);
2643 if (r->old_password) {
2644 ndr_print_lsa_DATA_BUF(ndr, "old_password", r->old_password);
2650 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoBasic(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoBasic *r)
2652 if (ndr_flags & NDR_SCALARS) {
2653 NDR_CHECK(ndr_push_align(ndr, 4));
2654 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->netbios_name));
2655 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
2657 if (ndr_flags & NDR_BUFFERS) {
2658 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->netbios_name));
2660 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2663 return NDR_ERR_SUCCESS;
2666 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoBasic(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoBasic *r)
2669 TALLOC_CTX *_mem_save_sid_0;
2670 if (ndr_flags & NDR_SCALARS) {
2671 NDR_CHECK(ndr_pull_align(ndr, 4));
2672 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->netbios_name));
2673 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
2675 NDR_PULL_ALLOC(ndr, r->sid);
2680 if (ndr_flags & NDR_BUFFERS) {
2681 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->netbios_name));
2683 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
2684 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
2685 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2686 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
2689 return NDR_ERR_SUCCESS;
2692 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoBasic(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoBasic *r)
2694 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoBasic");
2696 ndr_print_lsa_String(ndr, "netbios_name", &r->netbios_name);
2697 ndr_print_ptr(ndr, "sid", r->sid);
2700 ndr_print_dom_sid2(ndr, "sid", r->sid);
2706 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoInfoEx *r)
2708 if (ndr_flags & NDR_SCALARS) {
2709 NDR_CHECK(ndr_push_align(ndr, 4));
2710 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->domain_name));
2711 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2712 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
2713 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->trust_direction));
2714 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->trust_type));
2715 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->trust_attributes));
2717 if (ndr_flags & NDR_BUFFERS) {
2718 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->domain_name));
2719 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2721 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2724 return NDR_ERR_SUCCESS;
2727 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoEx *r)
2730 TALLOC_CTX *_mem_save_sid_0;
2731 if (ndr_flags & NDR_SCALARS) {
2732 NDR_CHECK(ndr_pull_align(ndr, 4));
2733 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->domain_name));
2734 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2735 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
2737 NDR_PULL_ALLOC(ndr, r->sid);
2741 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->trust_direction));
2742 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->trust_type));
2743 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->trust_attributes));
2745 if (ndr_flags & NDR_BUFFERS) {
2746 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->domain_name));
2747 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2749 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
2750 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
2751 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2752 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
2755 return NDR_ERR_SUCCESS;
2758 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoInfoEx(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoInfoEx *r)
2760 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoInfoEx");
2762 ndr_print_lsa_StringLarge(ndr, "domain_name", &r->domain_name);
2763 ndr_print_lsa_StringLarge(ndr, "netbios_name", &r->netbios_name);
2764 ndr_print_ptr(ndr, "sid", r->sid);
2767 ndr_print_dom_sid2(ndr, "sid", r->sid);
2770 ndr_print_uint32(ndr, "trust_direction", r->trust_direction);
2771 ndr_print_uint32(ndr, "trust_type", r->trust_type);
2772 ndr_print_uint32(ndr, "trust_attributes", r->trust_attributes);
2776 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoBuffer(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoBuffer *r)
2778 if (ndr_flags & NDR_SCALARS) {
2779 NDR_CHECK(ndr_push_align(ndr, 8));
2780 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->last_update_time));
2781 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->secret_type));
2782 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data));
2784 if (ndr_flags & NDR_BUFFERS) {
2785 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data));
2787 return NDR_ERR_SUCCESS;
2790 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoBuffer(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoBuffer *r)
2792 if (ndr_flags & NDR_SCALARS) {
2793 NDR_CHECK(ndr_pull_align(ndr, 8));
2794 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->last_update_time));
2795 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->secret_type));
2796 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data));
2798 if (ndr_flags & NDR_BUFFERS) {
2799 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data));
2801 return NDR_ERR_SUCCESS;
2804 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoBuffer(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoBuffer *r)
2806 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoBuffer");
2808 ndr_print_NTTIME_hyper(ndr, "last_update_time", r->last_update_time);
2809 ndr_print_uint32(ndr, "secret_type", r->secret_type);
2810 ndr_print_lsa_DATA_BUF2(ndr, "data", &r->data);
2814 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoAuthInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoAuthInfo *r)
2816 if (ndr_flags & NDR_SCALARS) {
2817 NDR_CHECK(ndr_push_align(ndr, 4));
2818 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->incoming_count));
2819 NDR_CHECK(ndr_push_unique_ptr(ndr, r->incoming_current_auth_info));
2820 NDR_CHECK(ndr_push_unique_ptr(ndr, r->incoming_previous_auth_info));
2821 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->outgoing_count));
2822 NDR_CHECK(ndr_push_unique_ptr(ndr, r->outgoing_current_auth_info));
2823 NDR_CHECK(ndr_push_unique_ptr(ndr, r->outgoing_previous_auth_info));
2825 if (ndr_flags & NDR_BUFFERS) {
2826 if (r->incoming_current_auth_info) {
2827 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_current_auth_info));
2829 if (r->incoming_previous_auth_info) {
2830 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_previous_auth_info));
2832 if (r->outgoing_current_auth_info) {
2833 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_current_auth_info));
2835 if (r->outgoing_previous_auth_info) {
2836 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_previous_auth_info));
2839 return NDR_ERR_SUCCESS;
2842 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoAuthInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoAuthInfo *r)
2844 uint32_t _ptr_incoming_current_auth_info;
2845 TALLOC_CTX *_mem_save_incoming_current_auth_info_0;
2846 uint32_t _ptr_incoming_previous_auth_info;
2847 TALLOC_CTX *_mem_save_incoming_previous_auth_info_0;
2848 uint32_t _ptr_outgoing_current_auth_info;
2849 TALLOC_CTX *_mem_save_outgoing_current_auth_info_0;
2850 uint32_t _ptr_outgoing_previous_auth_info;
2851 TALLOC_CTX *_mem_save_outgoing_previous_auth_info_0;
2852 if (ndr_flags & NDR_SCALARS) {
2853 NDR_CHECK(ndr_pull_align(ndr, 4));
2854 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->incoming_count));
2855 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_incoming_current_auth_info));
2856 if (_ptr_incoming_current_auth_info) {
2857 NDR_PULL_ALLOC(ndr, r->incoming_current_auth_info);
2859 r->incoming_current_auth_info = NULL;
2861 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_incoming_previous_auth_info));
2862 if (_ptr_incoming_previous_auth_info) {
2863 NDR_PULL_ALLOC(ndr, r->incoming_previous_auth_info);
2865 r->incoming_previous_auth_info = NULL;
2867 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->outgoing_count));
2868 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_outgoing_current_auth_info));
2869 if (_ptr_outgoing_current_auth_info) {
2870 NDR_PULL_ALLOC(ndr, r->outgoing_current_auth_info);
2872 r->outgoing_current_auth_info = NULL;
2874 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_outgoing_previous_auth_info));
2875 if (_ptr_outgoing_previous_auth_info) {
2876 NDR_PULL_ALLOC(ndr, r->outgoing_previous_auth_info);
2878 r->outgoing_previous_auth_info = NULL;
2881 if (ndr_flags & NDR_BUFFERS) {
2882 if (r->incoming_current_auth_info) {
2883 _mem_save_incoming_current_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2884 NDR_PULL_SET_MEM_CTX(ndr, r->incoming_current_auth_info, 0);
2885 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_current_auth_info));
2886 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_incoming_current_auth_info_0, 0);
2888 if (r->incoming_previous_auth_info) {
2889 _mem_save_incoming_previous_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2890 NDR_PULL_SET_MEM_CTX(ndr, r->incoming_previous_auth_info, 0);
2891 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_previous_auth_info));
2892 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_incoming_previous_auth_info_0, 0);
2894 if (r->outgoing_current_auth_info) {
2895 _mem_save_outgoing_current_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2896 NDR_PULL_SET_MEM_CTX(ndr, r->outgoing_current_auth_info, 0);
2897 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_current_auth_info));
2898 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_outgoing_current_auth_info_0, 0);
2900 if (r->outgoing_previous_auth_info) {
2901 _mem_save_outgoing_previous_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2902 NDR_PULL_SET_MEM_CTX(ndr, r->outgoing_previous_auth_info, 0);
2903 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_previous_auth_info));
2904 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_outgoing_previous_auth_info_0, 0);
2907 return NDR_ERR_SUCCESS;
2910 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoAuthInfo(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoAuthInfo *r)
2912 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoAuthInfo");
2914 ndr_print_uint32(ndr, "incoming_count", r->incoming_count);
2915 ndr_print_ptr(ndr, "incoming_current_auth_info", r->incoming_current_auth_info);
2917 if (r->incoming_current_auth_info) {
2918 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "incoming_current_auth_info", r->incoming_current_auth_info);
2921 ndr_print_ptr(ndr, "incoming_previous_auth_info", r->incoming_previous_auth_info);
2923 if (r->incoming_previous_auth_info) {
2924 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "incoming_previous_auth_info", r->incoming_previous_auth_info);
2927 ndr_print_uint32(ndr, "outgoing_count", r->outgoing_count);
2928 ndr_print_ptr(ndr, "outgoing_current_auth_info", r->outgoing_current_auth_info);
2930 if (r->outgoing_current_auth_info) {
2931 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "outgoing_current_auth_info", r->outgoing_current_auth_info);
2934 ndr_print_ptr(ndr, "outgoing_previous_auth_info", r->outgoing_previous_auth_info);
2936 if (r->outgoing_previous_auth_info) {
2937 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "outgoing_previous_auth_info", r->outgoing_previous_auth_info);
2943 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoFullInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoFullInfo *r)
2945 if (ndr_flags & NDR_SCALARS) {
2946 NDR_CHECK(ndr_push_align(ndr, 4));
2947 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2948 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2949 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2951 if (ndr_flags & NDR_BUFFERS) {
2952 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2953 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2955 return NDR_ERR_SUCCESS;
2958 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoFullInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoFullInfo *r)
2960 if (ndr_flags & NDR_SCALARS) {
2961 NDR_CHECK(ndr_pull_align(ndr, 4));
2962 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2963 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2964 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2966 if (ndr_flags & NDR_BUFFERS) {
2967 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2968 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2970 return NDR_ERR_SUCCESS;
2973 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoFullInfo(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoFullInfo *r)
2975 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoFullInfo");
2977 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
2978 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
2979 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
2983 static enum ndr_err_code ndr_push_lsa_TrustDomainInfo11(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfo11 *r)
2985 if (ndr_flags & NDR_SCALARS) {
2986 NDR_CHECK(ndr_push_align(ndr, 4));
2987 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2988 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
2990 if (ndr_flags & NDR_BUFFERS) {
2991 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2992 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
2994 return NDR_ERR_SUCCESS;
2997 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfo11(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfo11 *r)
2999 if (ndr_flags & NDR_SCALARS) {
3000 NDR_CHECK(ndr_pull_align(ndr, 4));
3001 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3002 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
3004 if (ndr_flags & NDR_BUFFERS) {
3005 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3006 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
3008 return NDR_ERR_SUCCESS;
3011 _PUBLIC_ void ndr_print_lsa_TrustDomainInfo11(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfo11 *r)
3013 ndr_print_struct(ndr, name, "lsa_TrustDomainInfo11");
3015 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3016 ndr_print_lsa_DATA_BUF2(ndr, "data1", &r->data1);
3020 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoAll(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoInfoAll *r)
3022 if (ndr_flags & NDR_SCALARS) {
3023 NDR_CHECK(ndr_push_align(ndr, 4));
3024 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3025 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
3026 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3027 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3029 if (ndr_flags & NDR_BUFFERS) {
3030 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3031 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
3032 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3034 return NDR_ERR_SUCCESS;
3037 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoAll(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoAll *r)
3039 if (ndr_flags & NDR_SCALARS) {
3040 NDR_CHECK(ndr_pull_align(ndr, 4));
3041 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3042 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
3043 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3044 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3046 if (ndr_flags & NDR_BUFFERS) {
3047 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3048 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
3049 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3051 return NDR_ERR_SUCCESS;
3054 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoInfoAll(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoInfoAll *r)
3056 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoInfoAll");
3058 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3059 ndr_print_lsa_DATA_BUF2(ndr, "data1", &r->data1);
3060 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3061 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
3065 static enum ndr_err_code ndr_push_lsa_TrustedDomainInfo(struct ndr_push *ndr, int ndr_flags, const union lsa_TrustedDomainInfo *r)
3067 if (ndr_flags & NDR_SCALARS) {
3068 int level = ndr_push_get_switch_value(ndr, r);
3069 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, level));
3071 case LSA_TRUSTED_DOMAIN_INFO_NAME: {
3072 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr, NDR_SCALARS, &r->name));
3075 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: {
3076 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3079 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: {
3080 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr, NDR_SCALARS, &r->password));
3083 case LSA_TRUSTED_DOMAIN_INFO_BASIC: {
3084 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr, NDR_SCALARS, &r->info_basic));
3087 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: {
3088 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3091 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: {
3092 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3095 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: {
3096 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr, NDR_SCALARS, &r->full_info));
3099 case LSA_TRUSTED_DOMAIN_INFO_11: {
3100 NDR_CHECK(ndr_push_lsa_TrustDomainInfo11(ndr, NDR_SCALARS, &r->info11));
3103 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL: {
3104 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoAll(ndr, NDR_SCALARS, &r->info_all));
3108 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3111 if (ndr_flags & NDR_BUFFERS) {
3112 int level = ndr_push_get_switch_value(ndr, r);
3114 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3115 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr, NDR_BUFFERS, &r->name));
3118 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3121 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3122 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr, NDR_BUFFERS, &r->password));
3125 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3126 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr, NDR_BUFFERS, &r->info_basic));
3129 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3130 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3133 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3134 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3137 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3138 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr, NDR_BUFFERS, &r->full_info));
3141 case LSA_TRUSTED_DOMAIN_INFO_11:
3142 NDR_CHECK(ndr_push_lsa_TrustDomainInfo11(ndr, NDR_BUFFERS, &r->info11));
3145 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
3146 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoAll(ndr, NDR_BUFFERS, &r->info_all));
3150 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3153 return NDR_ERR_SUCCESS;
3156 static enum ndr_err_code ndr_pull_lsa_TrustedDomainInfo(struct ndr_pull *ndr, int ndr_flags, union lsa_TrustedDomainInfo *r)
3160 level = ndr_pull_get_switch_value(ndr, r);
3161 if (ndr_flags & NDR_SCALARS) {
3162 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
3163 if (_level != level) {
3164 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
3167 case LSA_TRUSTED_DOMAIN_INFO_NAME: {
3168 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr, NDR_SCALARS, &r->name));
3171 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: {
3172 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3175 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: {
3176 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr, NDR_SCALARS, &r->password));
3179 case LSA_TRUSTED_DOMAIN_INFO_BASIC: {
3180 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr, NDR_SCALARS, &r->info_basic));
3183 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: {
3184 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3187 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: {
3188 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3191 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: {
3192 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr, NDR_SCALARS, &r->full_info));
3195 case LSA_TRUSTED_DOMAIN_INFO_11: {
3196 NDR_CHECK(ndr_pull_lsa_TrustDomainInfo11(ndr, NDR_SCALARS, &r->info11));
3199 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL: {
3200 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoAll(ndr, NDR_SCALARS, &r->info_all));
3204 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3207 if (ndr_flags & NDR_BUFFERS) {
3209 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3210 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr, NDR_BUFFERS, &r->name));
3213 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3216 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3217 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr, NDR_BUFFERS, &r->password));
3220 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3221 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr, NDR_BUFFERS, &r->info_basic));
3224 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3225 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3228 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3229 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3232 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3233 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr, NDR_BUFFERS, &r->full_info));
3236 case LSA_TRUSTED_DOMAIN_INFO_11:
3237 NDR_CHECK(ndr_pull_lsa_TrustDomainInfo11(ndr, NDR_BUFFERS, &r->info11));
3240 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
3241 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoAll(ndr, NDR_BUFFERS, &r->info_all));
3245 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3248 return NDR_ERR_SUCCESS;
3251 _PUBLIC_ void ndr_print_lsa_TrustedDomainInfo(struct ndr_print *ndr, const char *name, const union lsa_TrustedDomainInfo *r)
3254 level = ndr_print_get_switch_value(ndr, r);
3255 ndr_print_union(ndr, name, level, "lsa_TrustedDomainInfo");
3257 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3258 ndr_print_lsa_TrustDomainInfoName(ndr, "name", &r->name);
3261 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3262 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3265 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3266 ndr_print_lsa_TrustDomainInfoPassword(ndr, "password", &r->password);
3269 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3270 ndr_print_lsa_TrustDomainInfoBasic(ndr, "info_basic", &r->info_basic);
3273 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3274 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3277 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3278 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
3281 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3282 ndr_print_lsa_TrustDomainInfoFullInfo(ndr, "full_info", &r->full_info);
3285 case LSA_TRUSTED_DOMAIN_INFO_11:
3286 ndr_print_lsa_TrustDomainInfo11(ndr, "info11", &r->info11);
3289 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
3290 ndr_print_lsa_TrustDomainInfoInfoAll(ndr, "info_all", &r->info_all);
3294 ndr_print_bad_level(ndr, name, level);
3298 static enum ndr_err_code ndr_push_lsa_DATA_BUF_PTR(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF_PTR *r)
3300 if (ndr_flags & NDR_SCALARS) {
3301 NDR_CHECK(ndr_push_align(ndr, 4));
3302 NDR_CHECK(ndr_push_unique_ptr(ndr, r->buf));
3304 if (ndr_flags & NDR_BUFFERS) {
3306 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->buf));
3309 return NDR_ERR_SUCCESS;
3312 static enum ndr_err_code ndr_pull_lsa_DATA_BUF_PTR(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF_PTR *r)
3315 TALLOC_CTX *_mem_save_buf_0;
3316 if (ndr_flags & NDR_SCALARS) {
3317 NDR_CHECK(ndr_pull_align(ndr, 4));
3318 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_buf));
3320 NDR_PULL_ALLOC(ndr, r->buf);
3325 if (ndr_flags & NDR_BUFFERS) {
3327 _mem_save_buf_0 = NDR_PULL_GET_MEM_CTX(ndr);
3328 NDR_PULL_SET_MEM_CTX(ndr, r->buf, 0);
3329 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->buf));
3330 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buf_0, 0);
3333 return NDR_ERR_SUCCESS;
3336 _PUBLIC_ void ndr_print_lsa_DATA_BUF_PTR(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF_PTR *r)
3338 ndr_print_struct(ndr, name, "lsa_DATA_BUF_PTR");
3340 ndr_print_ptr(ndr, "buf", r->buf);
3343 ndr_print_lsa_DATA_BUF(ndr, "buf", r->buf);
3349 static enum ndr_err_code ndr_push_lsa_RightSet(struct ndr_push *ndr, int ndr_flags, const struct lsa_RightSet *r)
3351 uint32_t cntr_names_1;
3352 if (ndr_flags & NDR_SCALARS) {
3353 NDR_CHECK(ndr_push_align(ndr, 4));
3354 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3355 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
3357 if (ndr_flags & NDR_BUFFERS) {
3359 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3360 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3361 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3363 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3364 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3368 return NDR_ERR_SUCCESS;
3371 static enum ndr_err_code ndr_pull_lsa_RightSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_RightSet *r)
3373 uint32_t _ptr_names;
3374 uint32_t cntr_names_1;
3375 TALLOC_CTX *_mem_save_names_0;
3376 TALLOC_CTX *_mem_save_names_1;
3377 if (ndr_flags & NDR_SCALARS) {
3378 NDR_CHECK(ndr_pull_align(ndr, 4));
3379 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3380 if (r->count < 0 || r->count > 256) {
3381 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
3383 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
3385 NDR_PULL_ALLOC(ndr, r->names);
3390 if (ndr_flags & NDR_BUFFERS) {
3392 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
3393 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3394 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
3395 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
3396 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
3397 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3398 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3399 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3401 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3402 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3404 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
3405 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
3408 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
3411 return NDR_ERR_SUCCESS;
3414 _PUBLIC_ void ndr_print_lsa_RightSet(struct ndr_print *ndr, const char *name, const struct lsa_RightSet *r)
3416 uint32_t cntr_names_1;
3417 ndr_print_struct(ndr, name, "lsa_RightSet");
3419 ndr_print_uint32(ndr, "count", r->count);
3420 ndr_print_ptr(ndr, "names", r->names);
3423 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
3425 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
3427 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
3428 ndr_print_lsa_StringLarge(ndr, "names", &r->names[cntr_names_1]);
3438 static enum ndr_err_code ndr_push_lsa_DomainListEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainListEx *r)
3440 uint32_t cntr_domains_1;
3441 if (ndr_flags & NDR_SCALARS) {
3442 NDR_CHECK(ndr_push_align(ndr, 4));
3443 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3444 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
3446 if (ndr_flags & NDR_BUFFERS) {
3448 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3449 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3450 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
3452 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3453 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
3457 return NDR_ERR_SUCCESS;
3460 static enum ndr_err_code ndr_pull_lsa_DomainListEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainListEx *r)
3462 uint32_t _ptr_domains;
3463 uint32_t cntr_domains_1;
3464 TALLOC_CTX *_mem_save_domains_0;
3465 TALLOC_CTX *_mem_save_domains_1;
3466 if (ndr_flags & NDR_SCALARS) {
3467 NDR_CHECK(ndr_pull_align(ndr, 4));
3468 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3469 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
3471 NDR_PULL_ALLOC(ndr, r->domains);
3476 if (ndr_flags & NDR_BUFFERS) {
3478 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
3479 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
3480 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
3481 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
3482 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
3483 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
3484 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3485 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
3487 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3488 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
3490 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
3491 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
3494 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
3497 return NDR_ERR_SUCCESS;
3500 _PUBLIC_ void ndr_print_lsa_DomainListEx(struct ndr_print *ndr, const char *name, const struct lsa_DomainListEx *r)
3502 uint32_t cntr_domains_1;
3503 ndr_print_struct(ndr, name, "lsa_DomainListEx");
3505 ndr_print_uint32(ndr, "count", r->count);
3506 ndr_print_ptr(ndr, "domains", r->domains);
3509 ndr->print(ndr, "%s: ARRAY(%d)", "domains", r->count);
3511 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
3513 if (asprintf(&idx_1, "[%d]", cntr_domains_1) != -1) {
3514 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "domains", &r->domains[cntr_domains_1]);
3524 static enum ndr_err_code ndr_push_lsa_DomainInfoKerberos(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfoKerberos *r)
3526 if (ndr_flags & NDR_SCALARS) {
3527 NDR_CHECK(ndr_push_align(ndr, 8));
3528 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enforce_restrictions));
3529 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->service_tkt_lifetime));
3530 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->user_tkt_lifetime));
3531 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->user_tkt_renewaltime));
3532 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->clock_skew));
3533 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown6));
3535 if (ndr_flags & NDR_BUFFERS) {
3537 return NDR_ERR_SUCCESS;
3540 static enum ndr_err_code ndr_pull_lsa_DomainInfoKerberos(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoKerberos *r)
3542 if (ndr_flags & NDR_SCALARS) {
3543 NDR_CHECK(ndr_pull_align(ndr, 8));
3544 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enforce_restrictions));
3545 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->service_tkt_lifetime));
3546 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->user_tkt_lifetime));
3547 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->user_tkt_renewaltime));
3548 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->clock_skew));
3549 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown6));
3551 if (ndr_flags & NDR_BUFFERS) {
3553 return NDR_ERR_SUCCESS;
3556 _PUBLIC_ void ndr_print_lsa_DomainInfoKerberos(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoKerberos *r)
3558 ndr_print_struct(ndr, name, "lsa_DomainInfoKerberos");
3560 ndr_print_uint32(ndr, "enforce_restrictions", r->enforce_restrictions);
3561 ndr_print_hyper(ndr, "service_tkt_lifetime", r->service_tkt_lifetime);
3562 ndr_print_hyper(ndr, "user_tkt_lifetime", r->user_tkt_lifetime);
3563 ndr_print_hyper(ndr, "user_tkt_renewaltime", r->user_tkt_renewaltime);
3564 ndr_print_hyper(ndr, "clock_skew", r->clock_skew);
3565 ndr_print_hyper(ndr, "unknown6", r->unknown6);
3569 static enum ndr_err_code ndr_push_lsa_DomainInfoEfs(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfoEfs *r)
3571 if (ndr_flags & NDR_SCALARS) {
3572 NDR_CHECK(ndr_push_align(ndr, 4));
3573 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->blob_size));
3574 NDR_CHECK(ndr_push_unique_ptr(ndr, r->efs_blob));
3576 if (ndr_flags & NDR_BUFFERS) {
3578 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->blob_size));
3579 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->efs_blob, r->blob_size));
3582 return NDR_ERR_SUCCESS;
3585 static enum ndr_err_code ndr_pull_lsa_DomainInfoEfs(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoEfs *r)
3587 uint32_t _ptr_efs_blob;
3588 TALLOC_CTX *_mem_save_efs_blob_0;
3589 if (ndr_flags & NDR_SCALARS) {
3590 NDR_CHECK(ndr_pull_align(ndr, 4));
3591 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->blob_size));
3592 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_efs_blob));
3593 if (_ptr_efs_blob) {
3594 NDR_PULL_ALLOC(ndr, r->efs_blob);
3599 if (ndr_flags & NDR_BUFFERS) {
3601 _mem_save_efs_blob_0 = NDR_PULL_GET_MEM_CTX(ndr);
3602 NDR_PULL_SET_MEM_CTX(ndr, r->efs_blob, 0);
3603 NDR_CHECK(ndr_pull_array_size(ndr, &r->efs_blob));
3604 NDR_PULL_ALLOC_N(ndr, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob));
3605 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob)));
3606 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_efs_blob_0, 0);
3609 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->efs_blob, r->blob_size));
3612 return NDR_ERR_SUCCESS;
3615 _PUBLIC_ void ndr_print_lsa_DomainInfoEfs(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoEfs *r)
3617 ndr_print_struct(ndr, name, "lsa_DomainInfoEfs");
3619 ndr_print_uint32(ndr, "blob_size", r->blob_size);
3620 ndr_print_ptr(ndr, "efs_blob", r->efs_blob);
3623 ndr_print_array_uint8(ndr, "efs_blob", r->efs_blob, r->blob_size);
3629 static enum ndr_err_code ndr_push_lsa_DomainInformationPolicy(struct ndr_push *ndr, int ndr_flags, const union lsa_DomainInformationPolicy *r)
3631 if (ndr_flags & NDR_SCALARS) {
3632 int level = ndr_push_get_switch_value(ndr, r);
3633 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
3635 case LSA_DOMAIN_INFO_POLICY_EFS: {
3636 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr, NDR_SCALARS, &r->efs_info));
3639 case LSA_DOMAIN_INFO_POLICY_KERBEROS: {
3640 NDR_CHECK(ndr_push_lsa_DomainInfoKerberos(ndr, NDR_SCALARS, &r->kerberos_info));
3644 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3647 if (ndr_flags & NDR_BUFFERS) {
3648 int level = ndr_push_get_switch_value(ndr, r);
3650 case LSA_DOMAIN_INFO_POLICY_EFS:
3651 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr, NDR_BUFFERS, &r->efs_info));
3654 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3658 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3661 return NDR_ERR_SUCCESS;
3664 static enum ndr_err_code ndr_pull_lsa_DomainInformationPolicy(struct ndr_pull *ndr, int ndr_flags, union lsa_DomainInformationPolicy *r)
3668 level = ndr_pull_get_switch_value(ndr, r);
3669 if (ndr_flags & NDR_SCALARS) {
3670 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
3671 if (_level != level) {
3672 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
3675 case LSA_DOMAIN_INFO_POLICY_EFS: {
3676 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr, NDR_SCALARS, &r->efs_info));
3679 case LSA_DOMAIN_INFO_POLICY_KERBEROS: {
3680 NDR_CHECK(ndr_pull_lsa_DomainInfoKerberos(ndr, NDR_SCALARS, &r->kerberos_info));
3684 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3687 if (ndr_flags & NDR_BUFFERS) {
3689 case LSA_DOMAIN_INFO_POLICY_EFS:
3690 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr, NDR_BUFFERS, &r->efs_info));
3693 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3697 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3700 return NDR_ERR_SUCCESS;
3703 _PUBLIC_ void ndr_print_lsa_DomainInformationPolicy(struct ndr_print *ndr, const char *name, const union lsa_DomainInformationPolicy *r)
3706 level = ndr_print_get_switch_value(ndr, r);
3707 ndr_print_union(ndr, name, level, "lsa_DomainInformationPolicy");
3709 case LSA_DOMAIN_INFO_POLICY_EFS:
3710 ndr_print_lsa_DomainInfoEfs(ndr, "efs_info", &r->efs_info);
3713 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3714 ndr_print_lsa_DomainInfoKerberos(ndr, "kerberos_info", &r->kerberos_info);
3718 ndr_print_bad_level(ndr, name, level);
3722 static enum ndr_err_code ndr_push_lsa_TranslatedName2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedName2 *r)
3724 if (ndr_flags & NDR_SCALARS) {
3725 NDR_CHECK(ndr_push_align(ndr, 4));
3726 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
3727 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
3728 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
3729 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
3731 if (ndr_flags & NDR_BUFFERS) {
3732 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
3734 return NDR_ERR_SUCCESS;
3737 static enum ndr_err_code ndr_pull_lsa_TranslatedName2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName2 *r)
3739 if (ndr_flags & NDR_SCALARS) {
3740 NDR_CHECK(ndr_pull_align(ndr, 4));
3741 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
3742 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
3743 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
3744 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
3746 if (ndr_flags & NDR_BUFFERS) {
3747 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
3749 return NDR_ERR_SUCCESS;
3752 _PUBLIC_ void ndr_print_lsa_TranslatedName2(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedName2 *r)
3754 ndr_print_struct(ndr, name, "lsa_TranslatedName2");
3756 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
3757 ndr_print_lsa_String(ndr, "name", &r->name);
3758 ndr_print_uint32(ndr, "sid_index", r->sid_index);
3759 ndr_print_uint32(ndr, "unknown", r->unknown);
3763 static enum ndr_err_code ndr_push_lsa_TransNameArray2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransNameArray2 *r)
3765 uint32_t cntr_names_1;
3766 if (ndr_flags & NDR_SCALARS) {
3767 NDR_CHECK(ndr_push_align(ndr, 4));
3768 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3769 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
3771 if (ndr_flags & NDR_BUFFERS) {
3773 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3774 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3775 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3777 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3778 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3782 return NDR_ERR_SUCCESS;
3785 static enum ndr_err_code ndr_pull_lsa_TransNameArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray2 *r)
3787 uint32_t _ptr_names;
3788 uint32_t cntr_names_1;
3789 TALLOC_CTX *_mem_save_names_0;
3790 TALLOC_CTX *_mem_save_names_1;
3791 if (ndr_flags & NDR_SCALARS) {
3792 NDR_CHECK(ndr_pull_align(ndr, 4));
3793 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3794 if (r->count < 0 || r->count > 1000) {
3795 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
3797 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
3799 NDR_PULL_ALLOC(ndr, r->names);
3804 if (ndr_flags & NDR_BUFFERS) {
3806 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
3807 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3808 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
3809 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
3810 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
3811 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3812 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3813 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3815 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3816 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3818 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
3819 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
3822 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
3825 return NDR_ERR_SUCCESS;
3828 _PUBLIC_ void ndr_print_lsa_TransNameArray2(struct ndr_print *ndr, const char *name, const struct lsa_TransNameArray2 *r)
3830 uint32_t cntr_names_1;
3831 ndr_print_struct(ndr, name, "lsa_TransNameArray2");
3833 ndr_print_uint32(ndr, "count", r->count);
3834 ndr_print_ptr(ndr, "names", r->names);
3837 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
3839 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
3841 if (asprintf(&idx_1, "[%d]", cntr_names_1) != -1) {
3842 ndr_print_lsa_TranslatedName2(ndr, "names", &r->names[cntr_names_1]);
3852 static enum ndr_err_code ndr_push_lsa_TranslatedSid2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid2 *r)
3854 if (ndr_flags & NDR_SCALARS) {
3855 NDR_CHECK(ndr_push_align(ndr, 4));
3856 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
3857 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
3858 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
3859 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
3861 if (ndr_flags & NDR_BUFFERS) {
3863 return NDR_ERR_SUCCESS;
3866 static enum ndr_err_code ndr_pull_lsa_TranslatedSid2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid2 *r)
3868 if (ndr_flags & NDR_SCALARS) {
3869 NDR_CHECK(ndr_pull_align(ndr, 4));
3870 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
3871 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
3872 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
3873 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
3875 if (ndr_flags & NDR_BUFFERS) {
3877 return NDR_ERR_SUCCESS;
3880 _PUBLIC_ void ndr_print_lsa_TranslatedSid2(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid2 *r)
3882 ndr_print_struct(ndr, name, "lsa_TranslatedSid2");
3884 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
3885 ndr_print_uint32(ndr, "rid", r->rid);
3886 ndr_print_uint32(ndr, "sid_index", r->sid_index);
3887 ndr_print_uint32(ndr, "unknown", r->unknown);
3891 static enum ndr_err_code ndr_push_lsa_TransSidArray2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray2 *r)
3893 uint32_t cntr_sids_1;
3894 if (ndr_flags & NDR_SCALARS) {
3895 NDR_CHECK(ndr_push_align(ndr, 4));
3896 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3897 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
3899 if (ndr_flags & NDR_BUFFERS) {
3901 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3902 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3903 NDR_CHECK(ndr_push_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
3907 return NDR_ERR_SUCCESS;
3910 static enum ndr_err_code ndr_pull_lsa_TransSidArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray2 *r)
3913 uint32_t cntr_sids_1;
3914 TALLOC_CTX *_mem_save_sids_0;
3915 TALLOC_CTX *_mem_save_sids_1;
3916 if (ndr_flags & NDR_SCALARS) {
3917 NDR_CHECK(ndr_pull_align(ndr, 4));
3918 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3919 if (r->count < 0 || r->count > 1000) {
3920 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
3922 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
3924 NDR_PULL_ALLOC(ndr, r->sids);
3929 if (ndr_flags & NDR_BUFFERS) {
3931 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
3932 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
3933 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
3934 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
3935 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
3936 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
3937 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3938 NDR_CHECK(ndr_pull_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
3940 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
3941 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
3944 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
3947 return NDR_ERR_SUCCESS;
3950 _PUBLIC_ void ndr_print_lsa_TransSidArray2(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray2 *r)
3952 uint32_t cntr_sids_1;
3953 ndr_print_struct(ndr, name, "lsa_TransSidArray2");
3955 ndr_print_uint32(ndr, "count", r->count);
3956 ndr_print_ptr(ndr, "sids", r->sids);
3959 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->count);
3961 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
3963 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
3964 ndr_print_lsa_TranslatedSid2(ndr, "sids", &r->sids[cntr_sids_1]);
3974 static enum ndr_err_code ndr_push_lsa_TranslatedSid3(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid3 *r)
3976 if (ndr_flags & NDR_SCALARS) {
3977 NDR_CHECK(ndr_push_align(ndr, 4));
3978 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
3979 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
3980 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
3981 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
3983 if (ndr_flags & NDR_BUFFERS) {
3985 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3988 return NDR_ERR_SUCCESS;
3991 static enum ndr_err_code ndr_pull_lsa_TranslatedSid3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid3 *r)
3994 TALLOC_CTX *_mem_save_sid_0;
3995 if (ndr_flags & NDR_SCALARS) {
3996 NDR_CHECK(ndr_pull_align(ndr, 4));
3997 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
3998 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
4000 NDR_PULL_ALLOC(ndr, r->sid);
4004 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
4005 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
4007 if (ndr_flags & NDR_BUFFERS) {
4009 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
4010 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
4011 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
4012 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
4015 return NDR_ERR_SUCCESS;
4018 _PUBLIC_ void ndr_print_lsa_TranslatedSid3(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid3 *r)
4020 ndr_print_struct(ndr, name, "lsa_TranslatedSid3");
4022 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
4023 ndr_print_ptr(ndr, "sid", r->sid);
4026 ndr_print_dom_sid2(ndr, "sid", r->sid);
4029 ndr_print_uint32(ndr, "sid_index", r->sid_index);
4030 ndr_print_uint32(ndr, "unknown", r->unknown);
4034 static enum ndr_err_code ndr_push_lsa_TransSidArray3(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray3 *r)
4036 uint32_t cntr_sids_1;
4037 if (ndr_flags & NDR_SCALARS) {
4038 NDR_CHECK(ndr_push_align(ndr, 4));
4039 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4040 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
4042 if (ndr_flags & NDR_BUFFERS) {
4044 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4045 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4046 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
4048 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4049 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
4053 return NDR_ERR_SUCCESS;
4056 static enum ndr_err_code ndr_pull_lsa_TransSidArray3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray3 *r)
4059 uint32_t cntr_sids_1;
4060 TALLOC_CTX *_mem_save_sids_0;
4061 TALLOC_CTX *_mem_save_sids_1;
4062 if (ndr_flags & NDR_SCALARS) {
4063 NDR_CHECK(ndr_pull_align(ndr, 4));
4064 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4065 if (r->count < 0 || r->count > 1000) {
4066 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4068 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
4070 NDR_PULL_ALLOC(ndr, r->sids);
4075 if (ndr_flags & NDR_BUFFERS) {
4077 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
4078 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
4079 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
4080 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
4081 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
4082 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
4083 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4084 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
4086 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
4087 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
4089 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
4090 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
4093 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
4096 return NDR_ERR_SUCCESS;
4099 _PUBLIC_ void ndr_print_lsa_TransSidArray3(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray3 *r)
4101 uint32_t cntr_sids_1;
4102 ndr_print_struct(ndr, name, "lsa_TransSidArray3");
4104 ndr_print_uint32(ndr, "count", r->count);
4105 ndr_print_ptr(ndr, "sids", r->sids);
4108 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->count);
4110 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
4112 if (asprintf(&idx_1, "[%d]", cntr_sids_1) != -1) {
4113 ndr_print_lsa_TranslatedSid3(ndr, "sids", &r->sids[cntr_sids_1]);
4123 static enum ndr_err_code ndr_push_lsa_ForestTrustBinaryData(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustBinaryData *r)
4125 if (ndr_flags & NDR_SCALARS) {
4126 NDR_CHECK(ndr_push_align(ndr, 4));
4127 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
4128 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
4130 if (ndr_flags & NDR_BUFFERS) {
4132 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
4133 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
4136 return NDR_ERR_SUCCESS;
4139 static enum ndr_err_code ndr_pull_lsa_ForestTrustBinaryData(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustBinaryData *r)
4142 TALLOC_CTX *_mem_save_data_0;
4143 if (ndr_flags & NDR_SCALARS) {
4144 NDR_CHECK(ndr_pull_align(ndr, 4));
4145 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
4146 if (r->length < 0 || r->length > 131072) {
4147 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4149 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
4151 NDR_PULL_ALLOC(ndr, r->data);
4156 if (ndr_flags & NDR_BUFFERS) {
4158 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
4159 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
4160 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
4161 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
4162 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
4163 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
4166 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->length));
4169 return NDR_ERR_SUCCESS;
4172 _PUBLIC_ void ndr_print_lsa_ForestTrustBinaryData(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustBinaryData *r)
4174 ndr_print_struct(ndr, name, "lsa_ForestTrustBinaryData");
4176 ndr_print_uint32(ndr, "length", r->length);
4177 ndr_print_ptr(ndr, "data", r->data);
4180 ndr_print_array_uint8(ndr, "data", r->data, r->length);
4186 static enum ndr_err_code ndr_push_lsa_ForestTrustDomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustDomainInfo *r)
4188 if (ndr_flags & NDR_SCALARS) {
4189 NDR_CHECK(ndr_push_align(ndr, 4));
4190 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domain_sid));
4191 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain_name));
4192 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_domain_name));
4194 if (ndr_flags & NDR_BUFFERS) {
4195 if (r->domain_sid) {
4196 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->domain_sid));
4198 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain_name));
4199 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_domain_name));
4201 return NDR_ERR_SUCCESS;
4204 static enum ndr_err_code ndr_pull_lsa_ForestTrustDomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustDomainInfo *r)
4206 uint32_t _ptr_domain_sid;
4207 TALLOC_CTX *_mem_save_domain_sid_0;
4208 if (ndr_flags & NDR_SCALARS) {
4209 NDR_CHECK(ndr_pull_align(ndr, 4));
4210 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domain_sid));
4211 if (_ptr_domain_sid) {
4212 NDR_PULL_ALLOC(ndr, r->domain_sid);
4214 r->domain_sid = NULL;
4216 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain_name));
4217 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_domain_name));
4219 if (ndr_flags & NDR_BUFFERS) {
4220 if (r->domain_sid) {
4221 _mem_save_domain_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
4222 NDR_PULL_SET_MEM_CTX(ndr, r->domain_sid, 0);
4223 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->domain_sid));
4224 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domain_sid_0, 0);
4226 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain_name));
4227 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_domain_name));
4229 return NDR_ERR_SUCCESS;
4232 _PUBLIC_ void ndr_print_lsa_ForestTrustDomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustDomainInfo *r)
4234 ndr_print_struct(ndr, name, "lsa_ForestTrustDomainInfo");
4236 ndr_print_ptr(ndr, "domain_sid", r->domain_sid);
4238 if (r->domain_sid) {
4239 ndr_print_dom_sid2(ndr, "domain_sid", r->domain_sid);
4242 ndr_print_lsa_StringLarge(ndr, "dns_domain_name", &r->dns_domain_name);
4243 ndr_print_lsa_StringLarge(ndr, "netbios_domain_name", &r->netbios_domain_name);
4247 static enum ndr_err_code ndr_push_lsa_ForestTrustData(struct ndr_push *ndr, int ndr_flags, const union lsa_ForestTrustData *r)
4249 if (ndr_flags & NDR_SCALARS) {
4250 int level = ndr_push_get_switch_value(ndr, r);
4251 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, level));
4253 case LSA_FOREST_TRUST_TOP_LEVEL_NAME: {
4254 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->top_level_name));
4257 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX: {
4258 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->top_level_name_ex));
4261 case LSA_FOREST_TRUST_DOMAIN_INFO: {
4262 NDR_CHECK(ndr_push_lsa_ForestTrustDomainInfo(ndr, NDR_SCALARS, &r->domain_info));
4266 NDR_CHECK(ndr_push_lsa_ForestTrustBinaryData(ndr, NDR_SCALARS, &r->data));
4271 if (ndr_flags & NDR_BUFFERS) {
4272 int level = ndr_push_get_switch_value(ndr, r);
4274 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
4275 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->top_level_name));
4278 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
4279 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->top_level_name_ex));
4282 case LSA_FOREST_TRUST_DOMAIN_INFO:
4283 NDR_CHECK(ndr_push_lsa_ForestTrustDomainInfo(ndr, NDR_BUFFERS, &r->domain_info));
4287 NDR_CHECK(ndr_push_lsa_ForestTrustBinaryData(ndr, NDR_BUFFERS, &r->data));
4292 return NDR_ERR_SUCCESS;
4295 static enum ndr_err_code ndr_pull_lsa_ForestTrustData(struct ndr_pull *ndr, int ndr_flags, union lsa_ForestTrustData *r)
4299 level = ndr_pull_get_switch_value(ndr, r);
4300 if (ndr_flags & NDR_SCALARS) {
4301 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &_level));
4302 if (_level != level) {
4303 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
4306 case LSA_FOREST_TRUST_TOP_LEVEL_NAME: {
4307 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->top_level_name));
4310 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX: {
4311 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->top_level_name_ex));
4314 case LSA_FOREST_TRUST_DOMAIN_INFO: {
4315 NDR_CHECK(ndr_pull_lsa_ForestTrustDomainInfo(ndr, NDR_SCALARS, &r->domain_info));
4319 NDR_CHECK(ndr_pull_lsa_ForestTrustBinaryData(ndr, NDR_SCALARS, &r->data));
4324 if (ndr_flags & NDR_BUFFERS) {
4326 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
4327 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->top_level_name));
4330 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
4331 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->top_level_name_ex));
4334 case LSA_FOREST_TRUST_DOMAIN_INFO:
4335 NDR_CHECK(ndr_pull_lsa_ForestTrustDomainInfo(ndr, NDR_BUFFERS, &r->domain_info));
4339 NDR_CHECK(ndr_pull_lsa_ForestTrustBinaryData(ndr, NDR_BUFFERS, &r->data));
4344 return NDR_ERR_SUCCESS;
4347 _PUBLIC_ void ndr_print_lsa_ForestTrustData(struct ndr_print *ndr, const char *name, const union lsa_ForestTrustData *r)
4350 level = ndr_print_get_switch_value(ndr, r);
4351 ndr_print_union(ndr, name, level, "lsa_ForestTrustData");
4353 case LSA_FOREST_TRUST_TOP_LEVEL_NAME:
4354 ndr_print_lsa_String(ndr, "top_level_name", &r->top_level_name);
4357 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX:
4358 ndr_print_lsa_StringLarge(ndr, "top_level_name_ex", &r->top_level_name_ex);
4361 case LSA_FOREST_TRUST_DOMAIN_INFO:
4362 ndr_print_lsa_ForestTrustDomainInfo(ndr, "domain_info", &r->domain_info);
4366 ndr_print_lsa_ForestTrustBinaryData(ndr, "data", &r->data);
4372 static enum ndr_err_code ndr_push_lsa_ForestTrustRecordType(struct ndr_push *ndr, int ndr_flags, enum lsa_ForestTrustRecordType r)
4374 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
4375 return NDR_ERR_SUCCESS;
4378 static enum ndr_err_code ndr_pull_lsa_ForestTrustRecordType(struct ndr_pull *ndr, int ndr_flags, enum lsa_ForestTrustRecordType *r)
4381 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
4383 return NDR_ERR_SUCCESS;
4386 _PUBLIC_ void ndr_print_lsa_ForestTrustRecordType(struct ndr_print *ndr, const char *name, enum lsa_ForestTrustRecordType r)
4388 const char *val = NULL;
4391 case LSA_FOREST_TRUST_TOP_LEVEL_NAME: val = "LSA_FOREST_TRUST_TOP_LEVEL_NAME"; break;
4392 case LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX: val = "LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX"; break;
4393 case LSA_FOREST_TRUST_DOMAIN_INFO: val = "LSA_FOREST_TRUST_DOMAIN_INFO"; break;
4394 case LSA_FOREST_TRUST_RECORD_TYPE_LAST: val = "LSA_FOREST_TRUST_RECORD_TYPE_LAST"; break;
4396 ndr_print_enum(ndr, name, "ENUM", val, r);
4399 static enum ndr_err_code ndr_push_lsa_ForestTrustRecord(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustRecord *r)
4401 if (ndr_flags & NDR_SCALARS) {
4402 NDR_CHECK(ndr_push_align(ndr, 8));
4403 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->flags));
4404 NDR_CHECK(ndr_push_lsa_ForestTrustRecordType(ndr, NDR_SCALARS, r->level));
4405 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown));
4406 NDR_CHECK(ndr_push_set_switch_value(ndr, &r->forest_trust_data, r->level));
4407 NDR_CHECK(ndr_push_lsa_ForestTrustData(ndr, NDR_SCALARS, &r->forest_trust_data));
4409 if (ndr_flags & NDR_BUFFERS) {
4410 NDR_CHECK(ndr_push_lsa_ForestTrustData(ndr, NDR_BUFFERS, &r->forest_trust_data));
4412 return NDR_ERR_SUCCESS;
4415 static enum ndr_err_code ndr_pull_lsa_ForestTrustRecord(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustRecord *r)
4417 if (ndr_flags & NDR_SCALARS) {
4418 NDR_CHECK(ndr_pull_align(ndr, 8));
4419 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->flags));
4420 NDR_CHECK(ndr_pull_lsa_ForestTrustRecordType(ndr, NDR_SCALARS, &r->level));
4421 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown));
4422 NDR_CHECK(ndr_pull_set_switch_value(ndr, &r->forest_trust_data, r->level));
4423 NDR_CHECK(ndr_pull_lsa_ForestTrustData(ndr, NDR_SCALARS, &r->forest_trust_data));
4425 if (ndr_flags & NDR_BUFFERS) {
4426 NDR_CHECK(ndr_pull_lsa_ForestTrustData(ndr, NDR_BUFFERS, &r->forest_trust_data));
4428 return NDR_ERR_SUCCESS;
4431 _PUBLIC_ void ndr_print_lsa_ForestTrustRecord(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustRecord *r)
4433 ndr_print_struct(ndr, name, "lsa_ForestTrustRecord");
4435 ndr_print_uint32(ndr, "flags", r->flags);
4436 ndr_print_lsa_ForestTrustRecordType(ndr, "level", r->level);
4437 ndr_print_hyper(ndr, "unknown", r->unknown);
4438 ndr_print_set_switch_value(ndr, &r->forest_trust_data, r->level);
4439 ndr_print_lsa_ForestTrustData(ndr, "forest_trust_data", &r->forest_trust_data);
4443 _PUBLIC_ enum ndr_err_code ndr_push_lsa_ForestTrustInformation(struct ndr_push *ndr, int ndr_flags, const struct lsa_ForestTrustInformation *r)
4445 uint32_t cntr_entries_1;
4446 if (ndr_flags & NDR_SCALARS) {
4447 NDR_CHECK(ndr_push_align(ndr, 4));
4448 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4449 NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries));
4451 if (ndr_flags & NDR_BUFFERS) {
4453 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
4454 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4455 NDR_CHECK(ndr_push_unique_ptr(ndr, r->entries[cntr_entries_1]));
4457 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4458 if (r->entries[cntr_entries_1]) {
4459 NDR_CHECK(ndr_push_lsa_ForestTrustRecord(ndr, NDR_SCALARS|NDR_BUFFERS, r->entries[cntr_entries_1]));
4464 return NDR_ERR_SUCCESS;
4467 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_ForestTrustInformation(struct ndr_pull *ndr, int ndr_flags, struct lsa_ForestTrustInformation *r)
4469 uint32_t _ptr_entries;
4470 uint32_t cntr_entries_1;
4471 TALLOC_CTX *_mem_save_entries_0;
4472 TALLOC_CTX *_mem_save_entries_1;
4473 TALLOC_CTX *_mem_save_entries_2;
4474 if (ndr_flags & NDR_SCALARS) {
4475 NDR_CHECK(ndr_pull_align(ndr, 4));
4476 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
4477 if (r->count < 0 || r->count > 4000) {
4478 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4480 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
4482 NDR_PULL_ALLOC(ndr, r->entries);
4487 if (ndr_flags & NDR_BUFFERS) {
4489 _mem_save_entries_0 = NDR_PULL_GET_MEM_CTX(ndr);
4490 NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4491 NDR_CHECK(ndr_pull_array_size(ndr, &r->entries));
4492 NDR_PULL_ALLOC_N(ndr, r->entries, ndr_get_array_size(ndr, &r->entries));
4493 _mem_save_entries_1 = NDR_PULL_GET_MEM_CTX(ndr);
4494 NDR_PULL_SET_MEM_CTX(ndr, r->entries, 0);
4495 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4496 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_entries));
4498 NDR_PULL_ALLOC(ndr, r->entries[cntr_entries_1]);
4500 r->entries[cntr_entries_1] = NULL;
4503 for (cntr_entries_1 = 0; cntr_entries_1 < r->count; cntr_entries_1++) {
4504 if (r->entries[cntr_entries_1]) {
4505 _mem_save_entries_2 = NDR_PULL_GET_MEM_CTX(ndr);
4506 NDR_PULL_SET_MEM_CTX(ndr, r->entries[cntr_entries_1], 0);
4507 NDR_CHECK(ndr_pull_lsa_ForestTrustRecord(ndr, NDR_SCALARS|NDR_BUFFERS, r->entries[cntr_entries_1]));
4508 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_2, 0);
4511 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_1, 0);
4512 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_entries_0, 0);
4515 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->entries, r->count));
4518 return NDR_ERR_SUCCESS;
4521 _PUBLIC_ void ndr_print_lsa_ForestTrustInformation(struct ndr_print *ndr, const char *name, const struct lsa_ForestTrustInformation *r)
4523 uint32_t cntr_entries_1;
4524 ndr_print_struct(ndr, name, "lsa_ForestTrustInformation");
4526 ndr_print_uint32(ndr, "count", r->count);
4527 ndr_print_ptr(ndr, "entries", r->entries);
4530 ndr->print(ndr, "%s: ARRAY(%d)", "entries", r->count);
4532 for (cntr_entries_1=0;cntr_entries_1<r->count;cntr_entries_1++) {
4534 if (asprintf(&idx_1, "[%d]", cntr_entries_1) != -1) {
4535 ndr_print_ptr(ndr, "entries", r->entries[cntr_entries_1]);
4537 if (r->entries[cntr_entries_1]) {
4538 ndr_print_lsa_ForestTrustRecord(ndr, "entries", r->entries[cntr_entries_1]);
4550 static enum ndr_err_code ndr_push_lsa_Close(struct ndr_push *ndr, int flags, const struct lsa_Close *r)
4552 if (flags & NDR_IN) {
4553 if (r->in.handle == NULL) {
4554 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4556 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4558 if (flags & NDR_OUT) {
4559 if (r->out.handle == NULL) {
4560 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4562 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
4563 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4565 return NDR_ERR_SUCCESS;
4568 static enum ndr_err_code ndr_pull_lsa_Close(struct ndr_pull *ndr, int flags, struct lsa_Close *r)
4570 TALLOC_CTX *_mem_save_handle_0;
4571 if (flags & NDR_IN) {
4572 ZERO_STRUCT(r->out);
4574 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4575 NDR_PULL_ALLOC(ndr, r->in.handle);
4577 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4578 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4579 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4580 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4581 NDR_PULL_ALLOC(ndr, r->out.handle);
4582 *r->out.handle = *r->in.handle;
4584 if (flags & NDR_OUT) {
4585 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4586 NDR_PULL_ALLOC(ndr, r->out.handle);
4588 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4589 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
4590 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
4591 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4592 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4594 return NDR_ERR_SUCCESS;
4597 _PUBLIC_ void ndr_print_lsa_Close(struct ndr_print *ndr, const char *name, int flags, const struct lsa_Close *r)
4599 ndr_print_struct(ndr, name, "lsa_Close");
4601 if (flags & NDR_SET_VALUES) {
4602 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4604 if (flags & NDR_IN) {
4605 ndr_print_struct(ndr, "in", "lsa_Close");
4607 ndr_print_ptr(ndr, "handle", r->in.handle);
4609 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4613 if (flags & NDR_OUT) {
4614 ndr_print_struct(ndr, "out", "lsa_Close");
4616 ndr_print_ptr(ndr, "handle", r->out.handle);
4618 ndr_print_policy_handle(ndr, "handle", r->out.handle);
4620 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4626 _PUBLIC_ enum ndr_err_code ndr_push_lsa_Delete(struct ndr_push *ndr, int flags, const struct lsa_Delete *r)
4628 if (flags & NDR_IN) {
4629 if (r->in.handle == NULL) {
4630 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4632 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4634 if (flags & NDR_OUT) {
4635 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4637 return NDR_ERR_SUCCESS;
4640 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_Delete(struct ndr_pull *ndr, int flags, struct lsa_Delete *r)
4642 TALLOC_CTX *_mem_save_handle_0;
4643 if (flags & NDR_IN) {
4644 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4645 NDR_PULL_ALLOC(ndr, r->in.handle);
4647 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4648 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4649 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4650 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4652 if (flags & NDR_OUT) {
4653 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4655 return NDR_ERR_SUCCESS;
4658 _PUBLIC_ void ndr_print_lsa_Delete(struct ndr_print *ndr, const char *name, int flags, const struct lsa_Delete *r)
4660 ndr_print_struct(ndr, name, "lsa_Delete");
4662 if (flags & NDR_SET_VALUES) {
4663 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4665 if (flags & NDR_IN) {
4666 ndr_print_struct(ndr, "in", "lsa_Delete");
4668 ndr_print_ptr(ndr, "handle", r->in.handle);
4670 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4674 if (flags & NDR_OUT) {
4675 ndr_print_struct(ndr, "out", "lsa_Delete");
4677 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4683 _PUBLIC_ enum ndr_err_code ndr_push_lsa_EnumPrivs(struct ndr_push *ndr, int flags, const struct lsa_EnumPrivs *r)
4685 if (flags & NDR_IN) {
4686 if (r->in.handle == NULL) {
4687 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4689 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4690 if (r->in.resume_handle == NULL) {
4691 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4693 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
4694 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_count));
4696 if (flags & NDR_OUT) {
4697 if (r->out.resume_handle == NULL) {
4698 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4700 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
4701 if (r->out.privs == NULL) {
4702 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4704 NDR_CHECK(ndr_push_lsa_PrivArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.privs));
4705 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4707 return NDR_ERR_SUCCESS;
4710 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_EnumPrivs(struct ndr_pull *ndr, int flags, struct lsa_EnumPrivs *r)
4712 TALLOC_CTX *_mem_save_handle_0;
4713 TALLOC_CTX *_mem_save_resume_handle_0;
4714 TALLOC_CTX *_mem_save_privs_0;
4715 if (flags & NDR_IN) {
4716 ZERO_STRUCT(r->out);
4718 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4719 NDR_PULL_ALLOC(ndr, r->in.handle);
4721 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4722 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4723 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4724 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4725 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4726 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
4728 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4729 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
4730 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
4731 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
4732 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_count));
4733 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
4734 *r->out.resume_handle = *r->in.resume_handle;
4735 NDR_PULL_ALLOC(ndr, r->out.privs);
4736 ZERO_STRUCTP(r->out.privs);
4738 if (flags & NDR_OUT) {
4739 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4740 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
4742 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4743 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
4744 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
4745 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
4746 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4747 NDR_PULL_ALLOC(ndr, r->out.privs);
4749 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
4750 NDR_PULL_SET_MEM_CTX(ndr, r->out.privs, LIBNDR_FLAG_REF_ALLOC);
4751 NDR_CHECK(ndr_pull_lsa_PrivArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.privs));
4752 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
4753 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4755 return NDR_ERR_SUCCESS;
4758 _PUBLIC_ void ndr_print_lsa_EnumPrivs(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumPrivs *r)
4760 ndr_print_struct(ndr, name, "lsa_EnumPrivs");
4762 if (flags & NDR_SET_VALUES) {
4763 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4765 if (flags & NDR_IN) {
4766 ndr_print_struct(ndr, "in", "lsa_EnumPrivs");
4768 ndr_print_ptr(ndr, "handle", r->in.handle);
4770 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4772 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
4774 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
4776 ndr_print_uint32(ndr, "max_count", r->in.max_count);
4779 if (flags & NDR_OUT) {
4780 ndr_print_struct(ndr, "out", "lsa_EnumPrivs");
4782 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
4784 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
4786 ndr_print_ptr(ndr, "privs", r->out.privs);
4788 ndr_print_lsa_PrivArray(ndr, "privs", r->out.privs);
4790 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4796 static enum ndr_err_code ndr_push_lsa_QuerySecurity(struct ndr_push *ndr, int flags, const struct lsa_QuerySecurity *r)
4798 if (flags & NDR_IN) {
4799 if (r->in.handle == NULL) {
4800 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4802 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4803 NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
4805 if (flags & NDR_OUT) {
4806 if (r->out.sdbuf == NULL) {
4807 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4809 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.sdbuf));
4810 if (*r->out.sdbuf) {
4811 NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
4813 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4815 return NDR_ERR_SUCCESS;
4818 static enum ndr_err_code ndr_pull_lsa_QuerySecurity(struct ndr_pull *ndr, int flags, struct lsa_QuerySecurity *r)
4820 uint32_t _ptr_sdbuf;
4821 TALLOC_CTX *_mem_save_handle_0;
4822 TALLOC_CTX *_mem_save_sdbuf_0;
4823 TALLOC_CTX *_mem_save_sdbuf_1;
4824 if (flags & NDR_IN) {
4825 ZERO_STRUCT(r->out);
4827 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4828 NDR_PULL_ALLOC(ndr, r->in.handle);
4830 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4831 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4832 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4833 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4834 NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
4835 NDR_PULL_ALLOC(ndr, r->out.sdbuf);
4836 ZERO_STRUCTP(r->out.sdbuf);
4838 if (flags & NDR_OUT) {
4839 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4840 NDR_PULL_ALLOC(ndr, r->out.sdbuf);
4842 _mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
4843 NDR_PULL_SET_MEM_CTX(ndr, r->out.sdbuf, LIBNDR_FLAG_REF_ALLOC);
4844 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sdbuf));
4846 NDR_PULL_ALLOC(ndr, *r->out.sdbuf);
4848 *r->out.sdbuf = NULL;
4850 if (*r->out.sdbuf) {
4851 _mem_save_sdbuf_1 = NDR_PULL_GET_MEM_CTX(ndr);
4852 NDR_PULL_SET_MEM_CTX(ndr, *r->out.sdbuf, 0);
4853 NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.sdbuf));
4854 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_1, 0);
4856 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
4857 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4859 return NDR_ERR_SUCCESS;
4862 _PUBLIC_ void ndr_print_lsa_QuerySecurity(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QuerySecurity *r)
4864 ndr_print_struct(ndr, name, "lsa_QuerySecurity");
4866 if (flags & NDR_SET_VALUES) {
4867 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4869 if (flags & NDR_IN) {
4870 ndr_print_struct(ndr, "in", "lsa_QuerySecurity");
4872 ndr_print_ptr(ndr, "handle", r->in.handle);
4874 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4876 ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
4879 if (flags & NDR_OUT) {
4880 ndr_print_struct(ndr, "out", "lsa_QuerySecurity");
4882 ndr_print_ptr(ndr, "sdbuf", r->out.sdbuf);
4884 ndr_print_ptr(ndr, "sdbuf", *r->out.sdbuf);
4886 if (*r->out.sdbuf) {
4887 ndr_print_sec_desc_buf(ndr, "sdbuf", *r->out.sdbuf);
4891 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4897 static enum ndr_err_code ndr_push_lsa_SetSecObj(struct ndr_push *ndr, int flags, const struct lsa_SetSecObj *r)
4899 if (flags & NDR_IN) {
4900 if (r->in.handle == NULL) {
4901 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4903 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4904 NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
4905 if (r->in.sdbuf == NULL) {
4906 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4908 NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
4910 if (flags & NDR_OUT) {
4911 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4913 return NDR_ERR_SUCCESS;
4916 static enum ndr_err_code ndr_pull_lsa_SetSecObj(struct ndr_pull *ndr, int flags, struct lsa_SetSecObj *r)
4918 TALLOC_CTX *_mem_save_handle_0;
4919 TALLOC_CTX *_mem_save_sdbuf_0;
4920 if (flags & NDR_IN) {
4921 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4922 NDR_PULL_ALLOC(ndr, r->in.handle);
4924 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4925 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4926 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4927 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4928 NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
4929 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4930 NDR_PULL_ALLOC(ndr, r->in.sdbuf);
4932 _mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
4933 NDR_PULL_SET_MEM_CTX(ndr, r->in.sdbuf, LIBNDR_FLAG_REF_ALLOC);
4934 NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sdbuf));
4935 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, LIBNDR_FLAG_REF_ALLOC);
4937 if (flags & NDR_OUT) {
4938 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4940 return NDR_ERR_SUCCESS;
4943 _PUBLIC_ void ndr_print_lsa_SetSecObj(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSecObj *r)
4945 ndr_print_struct(ndr, name, "lsa_SetSecObj");
4947 if (flags & NDR_SET_VALUES) {
4948 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4950 if (flags & NDR_IN) {
4951 ndr_print_struct(ndr, "in", "lsa_SetSecObj");
4953 ndr_print_ptr(ndr, "handle", r->in.handle);
4955 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4957 ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
4958 ndr_print_ptr(ndr, "sdbuf", r->in.sdbuf);
4960 ndr_print_sec_desc_buf(ndr, "sdbuf", r->in.sdbuf);
4964 if (flags & NDR_OUT) {
4965 ndr_print_struct(ndr, "out", "lsa_SetSecObj");
4967 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4973 static enum ndr_err_code ndr_push_lsa_ChangePassword(struct ndr_push *ndr, int flags, const struct lsa_ChangePassword *r)
4975 if (flags & NDR_IN) {
4977 if (flags & NDR_OUT) {
4978 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4980 return NDR_ERR_SUCCESS;
4983 static enum ndr_err_code ndr_pull_lsa_ChangePassword(struct ndr_pull *ndr, int flags, struct lsa_ChangePassword *r)
4985 if (flags & NDR_IN) {
4987 if (flags & NDR_OUT) {
4988 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4990 return NDR_ERR_SUCCESS;
4993 _PUBLIC_ void ndr_print_lsa_ChangePassword(struct ndr_print *ndr, const char *name, int flags, const struct lsa_ChangePassword *r)
4995 ndr_print_struct(ndr, name, "lsa_ChangePassword");
4997 if (flags & NDR_SET_VALUES) {
4998 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5000 if (flags & NDR_IN) {
5001 ndr_print_struct(ndr, "in", "lsa_ChangePassword");
5005 if (flags & NDR_OUT) {
5006 ndr_print_struct(ndr, "out", "lsa_ChangePassword");
5008 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5014 _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenPolicy(struct ndr_push *ndr, int flags, const struct lsa_OpenPolicy *r)
5016 if (flags & NDR_IN) {
5017 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
5018 if (r->in.system_name) {
5019 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->in.system_name));
5021 if (r->in.attr == NULL) {
5022 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5024 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
5025 NDR_CHECK(ndr_push_lsa_PolicyAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
5027 if (flags & NDR_OUT) {
5028 if (r->out.handle == NULL) {
5029 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5031 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
5032 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5034 return NDR_ERR_SUCCESS;
5037 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenPolicy(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy *r)
5039 uint32_t _ptr_system_name;
5040 TALLOC_CTX *_mem_save_system_name_0;
5041 TALLOC_CTX *_mem_save_attr_0;
5042 TALLOC_CTX *_mem_save_handle_0;
5043 if (flags & NDR_IN) {
5044 ZERO_STRUCT(r->out);
5046 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
5047 if (_ptr_system_name) {
5048 NDR_PULL_ALLOC(ndr, r->in.system_name);
5050 r->in.system_name = NULL;
5052 if (r->in.system_name) {
5053 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
5054 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
5055 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->in.system_name));
5056 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
5058 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5059 NDR_PULL_ALLOC(ndr, r->in.attr);
5061 _mem_save_attr_0 = NDR_PULL_GET_MEM_CTX(ndr);
5062 NDR_PULL_SET_MEM_CTX(ndr, r->in.attr, LIBNDR_FLAG_REF_ALLOC);
5063 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
5064 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attr_0, LIBNDR_FLAG_REF_ALLOC);
5065 NDR_CHECK(ndr_pull_lsa_PolicyAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
5066 NDR_PULL_ALLOC(ndr, r->out.handle);
5067 ZERO_STRUCTP(r->out.handle);
5069 if (flags & NDR_OUT) {
5070 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5071 NDR_PULL_ALLOC(ndr, r->out.handle);
5073 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5074 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
5075 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
5076 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5077 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5079 return NDR_ERR_SUCCESS;
5082 _PUBLIC_ void ndr_print_lsa_OpenPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenPolicy *r)
5084 ndr_print_struct(ndr, name, "lsa_OpenPolicy");
5086 if (flags & NDR_SET_VALUES) {
5087 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5089 if (flags & NDR_IN) {
5090 ndr_print_struct(ndr, "in", "lsa_OpenPolicy");
5092 ndr_print_ptr(ndr, "system_name", r->in.system_name);
5094 if (r->in.system_name) {
5095 ndr_print_uint16(ndr, "system_name", *r->in.system_name);
5098 ndr_print_ptr(ndr, "attr", r->in.attr);
5100 ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
5102 ndr_print_lsa_PolicyAccessMask(ndr, "access_mask", r->in.access_mask);
5105 if (flags & NDR_OUT) {
5106 ndr_print_struct(ndr, "out", "lsa_OpenPolicy");
5108 ndr_print_ptr(ndr, "handle", r->out.handle);
5110 ndr_print_policy_handle(ndr, "handle", r->out.handle);
5112 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5118 static enum ndr_err_code ndr_push_lsa_QueryInfoPolicy(struct ndr_push *ndr, int flags, const struct lsa_QueryInfoPolicy *r)
5120 if (flags & NDR_IN) {
5121 if (r->in.handle == NULL) {
5122 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5124 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5125 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
5127 if (flags & NDR_OUT) {
5128 if (r->out.info == NULL) {
5129 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5131 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
5133 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
5134 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
5136 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5138 return NDR_ERR_SUCCESS;
5141 static enum ndr_err_code ndr_pull_lsa_QueryInfoPolicy(struct ndr_pull *ndr, int flags, struct lsa_QueryInfoPolicy *r)
5144 TALLOC_CTX *_mem_save_handle_0;
5145 TALLOC_CTX *_mem_save_info_0;
5146 TALLOC_CTX *_mem_save_info_1;
5147 if (flags & NDR_IN) {
5148 ZERO_STRUCT(r->out);
5150 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5151 NDR_PULL_ALLOC(ndr, r->in.handle);
5153 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5154 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5155 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5156 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5157 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
5158 NDR_PULL_ALLOC(ndr, r->out.info);
5159 ZERO_STRUCTP(r->out.info);
5161 if (flags & NDR_OUT) {
5162 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5163 NDR_PULL_ALLOC(ndr, r->out.info);
5165 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5166 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
5167 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
5169 NDR_PULL_ALLOC(ndr, *r->out.info);
5171 *r->out.info = NULL;
5174 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
5175 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
5176 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
5177 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
5178 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
5180 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5181 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5183 return NDR_ERR_SUCCESS;
5186 _PUBLIC_ void ndr_print_lsa_QueryInfoPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryInfoPolicy *r)
5188 ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy");
5190 if (flags & NDR_SET_VALUES) {
5191 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5193 if (flags & NDR_IN) {
5194 ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy");
5196 ndr_print_ptr(ndr, "handle", r->in.handle);
5198 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5200 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
5203 if (flags & NDR_OUT) {
5204 ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy");
5206 ndr_print_ptr(ndr, "info", r->out.info);
5208 ndr_print_ptr(ndr, "info", *r->out.info);
5211 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
5212 ndr_print_lsa_PolicyInformation(ndr, "info", *r->out.info);
5216 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5222 static enum ndr_err_code ndr_push_lsa_SetInfoPolicy(struct ndr_push *ndr, int flags, const struct lsa_SetInfoPolicy *r)
5224 if (flags & NDR_IN) {
5225 if (r->in.handle == NULL) {
5226 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5228 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5229 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
5230 if (r->in.info == NULL) {
5231 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5233 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
5234 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5236 if (flags & NDR_OUT) {
5237 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5239 return NDR_ERR_SUCCESS;
5242 static enum ndr_err_code ndr_pull_lsa_SetInfoPolicy(struct ndr_pull *ndr, int flags, struct lsa_SetInfoPolicy *r)
5244 TALLOC_CTX *_mem_save_handle_0;
5245 TALLOC_CTX *_mem_save_info_0;
5246 if (flags & NDR_IN) {
5247 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5248 NDR_PULL_ALLOC(ndr, r->in.handle);
5250 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5251 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5252 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5253 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5254 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
5255 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5256 NDR_PULL_ALLOC(ndr, r->in.info);
5258 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5259 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
5260 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
5261 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5262 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5264 if (flags & NDR_OUT) {
5265 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5267 return NDR_ERR_SUCCESS;
5270 _PUBLIC_ void ndr_print_lsa_SetInfoPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInfoPolicy *r)
5272 ndr_print_struct(ndr, name, "lsa_SetInfoPolicy");
5274 if (flags & NDR_SET_VALUES) {
5275 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5277 if (flags & NDR_IN) {
5278 ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy");
5280 ndr_print_ptr(ndr, "handle", r->in.handle);
5282 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5284 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
5285 ndr_print_ptr(ndr, "info", r->in.info);
5287 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
5288 ndr_print_lsa_PolicyInformation(ndr, "info", r->in.info);
5292 if (flags & NDR_OUT) {
5293 ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy");
5295 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5301 static enum ndr_err_code ndr_push_lsa_ClearAuditLog(struct ndr_push *ndr, int flags, const struct lsa_ClearAuditLog *r)
5303 if (flags & NDR_IN) {
5305 if (flags & NDR_OUT) {
5306 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5308 return NDR_ERR_SUCCESS;
5311 static enum ndr_err_code ndr_pull_lsa_ClearAuditLog(struct ndr_pull *ndr, int flags, struct lsa_ClearAuditLog *r)
5313 if (flags & NDR_IN) {
5315 if (flags & NDR_OUT) {
5316 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5318 return NDR_ERR_SUCCESS;
5321 _PUBLIC_ void ndr_print_lsa_ClearAuditLog(struct ndr_print *ndr, const char *name, int flags, const struct lsa_ClearAuditLog *r)
5323 ndr_print_struct(ndr, name, "lsa_ClearAuditLog");
5325 if (flags & NDR_SET_VALUES) {
5326 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5328 if (flags & NDR_IN) {
5329 ndr_print_struct(ndr, "in", "lsa_ClearAuditLog");
5333 if (flags & NDR_OUT) {
5334 ndr_print_struct(ndr, "out", "lsa_ClearAuditLog");
5336 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5342 _PUBLIC_ enum ndr_err_code ndr_push_lsa_CreateAccount(struct ndr_push *ndr, int flags, const struct lsa_CreateAccount *r)
5344 if (flags & NDR_IN) {
5345 if (r->in.handle == NULL) {
5346 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5348 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5349 if (r->in.sid == NULL) {
5350 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5352 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
5353 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
5355 if (flags & NDR_OUT) {
5356 if (r->out.acct_handle == NULL) {
5357 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5359 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
5360 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5362 return NDR_ERR_SUCCESS;
5365 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_CreateAccount(struct ndr_pull *ndr, int flags, struct lsa_CreateAccount *r)
5367 TALLOC_CTX *_mem_save_handle_0;
5368 TALLOC_CTX *_mem_save_sid_0;
5369 TALLOC_CTX *_mem_save_acct_handle_0;
5370 if (flags & NDR_IN) {
5371 ZERO_STRUCT(r->out);
5373 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5374 NDR_PULL_ALLOC(ndr, r->in.handle);
5376 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5377 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5378 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5379 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5380 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5381 NDR_PULL_ALLOC(ndr, r->in.sid);
5383 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
5384 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
5385 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
5386 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
5387 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
5388 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
5389 ZERO_STRUCTP(r->out.acct_handle);
5391 if (flags & NDR_OUT) {
5392 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5393 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
5395 _mem_save_acct_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5396 NDR_PULL_SET_MEM_CTX(ndr, r->out.acct_handle, LIBNDR_FLAG_REF_ALLOC);
5397 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
5398 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_acct_handle_0, LIBNDR_FLAG_REF_ALLOC);
5399 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5401 return NDR_ERR_SUCCESS;
5404 _PUBLIC_ void ndr_print_lsa_CreateAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateAccount *r)
5406 ndr_print_struct(ndr, name, "lsa_CreateAccount");
5408 if (flags & NDR_SET_VALUES) {
5409 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5411 if (flags & NDR_IN) {
5412 ndr_print_struct(ndr, "in", "lsa_CreateAccount");
5414 ndr_print_ptr(ndr, "handle", r->in.handle);
5416 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5418 ndr_print_ptr(ndr, "sid", r->in.sid);
5420 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
5422 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
5425 if (flags & NDR_OUT) {
5426 ndr_print_struct(ndr, "out", "lsa_CreateAccount");
5428 ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
5430 ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
5432 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5438 _PUBLIC_ enum ndr_err_code ndr_push_lsa_EnumAccounts(struct ndr_push *ndr, int flags, const struct lsa_EnumAccounts *r)
5440 if (flags & NDR_IN) {
5441 if (r->in.handle == NULL) {
5442 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5444 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5445 if (r->in.resume_handle == NULL) {
5446 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5448 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
5449 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_entries));
5451 if (flags & NDR_OUT) {
5452 if (r->out.resume_handle == NULL) {
5453 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5455 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
5456 if (r->out.sids == NULL) {
5457 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5459 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
5460 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5462 return NDR_ERR_SUCCESS;
5465 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_EnumAccounts(struct ndr_pull *ndr, int flags, struct lsa_EnumAccounts *r)
5467 TALLOC_CTX *_mem_save_handle_0;
5468 TALLOC_CTX *_mem_save_resume_handle_0;
5469 TALLOC_CTX *_mem_save_sids_0;
5470 if (flags & NDR_IN) {
5471 ZERO_STRUCT(r->out);
5473 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5474 NDR_PULL_ALLOC(ndr, r->in.handle);
5476 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5477 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5478 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5479 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5480 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5481 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
5483 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5484 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5485 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
5486 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5487 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_entries));
5488 if (r->in.num_entries < 0 || r->in.num_entries > 8192) {
5489 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
5491 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5492 *r->out.resume_handle = *r->in.resume_handle;
5493 NDR_PULL_ALLOC(ndr, r->out.sids);
5494 ZERO_STRUCTP(r->out.sids);
5496 if (flags & NDR_OUT) {
5497 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5498 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5500 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5501 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5502 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
5503 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5504 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5505 NDR_PULL_ALLOC(ndr, r->out.sids);
5507 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
5508 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
5509 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
5510 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
5511 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5513 return NDR_ERR_SUCCESS;
5516 _PUBLIC_ void ndr_print_lsa_EnumAccounts(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccounts *r)
5518 ndr_print_struct(ndr, name, "lsa_EnumAccounts");
5520 if (flags & NDR_SET_VALUES) {
5521 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5523 if (flags & NDR_IN) {
5524 ndr_print_struct(ndr, "in", "lsa_EnumAccounts");
5526 ndr_print_ptr(ndr, "handle", r->in.handle);
5528 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5530 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
5532 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
5534 ndr_print_uint32(ndr, "num_entries", r->in.num_entries);
5537 if (flags & NDR_OUT) {
5538 ndr_print_struct(ndr, "out", "lsa_EnumAccounts");
5540 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
5542 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
5544 ndr_print_ptr(ndr, "sids", r->out.sids);
5546 ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
5548 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5554 _PUBLIC_ enum ndr_err_code ndr_push_lsa_CreateTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomain *r)
5556 if (flags & NDR_IN) {
5557 if (r->in.handle == NULL) {
5558 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5560 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5561 if (r->in.info == NULL) {
5562 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5564 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5565 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
5567 if (flags & NDR_OUT) {
5568 if (r->out.trustdom_handle == NULL) {
5569 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5571 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
5572 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5574 return NDR_ERR_SUCCESS;
5577 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_CreateTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomain *r)
5579 TALLOC_CTX *_mem_save_handle_0;
5580 TALLOC_CTX *_mem_save_info_0;
5581 TALLOC_CTX *_mem_save_trustdom_handle_0;
5582 if (flags & NDR_IN) {
5583 ZERO_STRUCT(r->out);
5585 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5586 NDR_PULL_ALLOC(ndr, r->in.handle);
5588 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5589 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5590 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5591 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5592 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5593 NDR_PULL_ALLOC(ndr, r->in.info);
5595 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5596 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
5597 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5598 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5599 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
5600 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
5601 ZERO_STRUCTP(r->out.trustdom_handle);
5603 if (flags & NDR_OUT) {
5604 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5605 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
5607 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5608 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
5609 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
5610 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
5611 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5613 return NDR_ERR_SUCCESS;
5616 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomain *r)
5618 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomain");
5620 if (flags & NDR_SET_VALUES) {
5621 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5623 if (flags & NDR_IN) {
5624 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomain");
5626 ndr_print_ptr(ndr, "handle", r->in.handle);
5628 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5630 ndr_print_ptr(ndr, "info", r->in.info);
5632 ndr_print_lsa_DomainInfo(ndr, "info", r->in.info);
5634 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
5637 if (flags & NDR_OUT) {
5638 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomain");
5640 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
5642 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
5644 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5650 static enum ndr_err_code ndr_push_lsa_EnumTrustDom(struct ndr_push *ndr, int flags, const struct lsa_EnumTrustDom *r)
5652 if (flags & NDR_IN) {
5653 if (r->in.handle == NULL) {
5654 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5656 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5657 if (r->in.resume_handle == NULL) {
5658 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5660 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
5661 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
5663 if (flags & NDR_OUT) {
5664 if (r->out.resume_handle == NULL) {
5665 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5667 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
5668 if (r->out.domains == NULL) {
5669 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5671 NDR_CHECK(ndr_push_lsa_DomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5672 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5674 return NDR_ERR_SUCCESS;
5677 static enum ndr_err_code ndr_pull_lsa_EnumTrustDom(struct ndr_pull *ndr, int flags, struct lsa_EnumTrustDom *r)
5679 TALLOC_CTX *_mem_save_handle_0;
5680 TALLOC_CTX *_mem_save_resume_handle_0;
5681 TALLOC_CTX *_mem_save_domains_0;
5682 if (flags & NDR_IN) {
5683 ZERO_STRUCT(r->out);
5685 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5686 NDR_PULL_ALLOC(ndr, r->in.handle);
5688 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5689 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5690 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5691 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5692 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5693 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
5695 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5696 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5697 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
5698 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5699 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
5700 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5701 *r->out.resume_handle = *r->in.resume_handle;
5702 NDR_PULL_ALLOC(ndr, r->out.domains);
5703 ZERO_STRUCTP(r->out.domains);
5705 if (flags & NDR_OUT) {
5706 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5707 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5709 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5710 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5711 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
5712 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5713 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5714 NDR_PULL_ALLOC(ndr, r->out.domains);
5716 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
5717 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
5718 NDR_CHECK(ndr_pull_lsa_DomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5719 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
5720 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5722 return NDR_ERR_SUCCESS;
5725 _PUBLIC_ void ndr_print_lsa_EnumTrustDom(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumTrustDom *r)
5727 ndr_print_struct(ndr, name, "lsa_EnumTrustDom");
5729 if (flags & NDR_SET_VALUES) {
5730 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5732 if (flags & NDR_IN) {
5733 ndr_print_struct(ndr, "in", "lsa_EnumTrustDom");
5735 ndr_print_ptr(ndr, "handle", r->in.handle);
5737 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5739 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
5741 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
5743 ndr_print_uint32(ndr, "max_size", r->in.max_size);
5746 if (flags & NDR_OUT) {
5747 ndr_print_struct(ndr, "out", "lsa_EnumTrustDom");
5749 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
5751 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
5753 ndr_print_ptr(ndr, "domains", r->out.domains);
5755 ndr_print_lsa_DomainList(ndr, "domains", r->out.domains);
5757 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5763 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames(struct ndr_push *ndr, int flags, const struct lsa_LookupNames *r)
5765 uint32_t cntr_names_0;
5766 if (flags & NDR_IN) {
5767 if (r->in.handle == NULL) {
5768 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5770 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5771 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
5772 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
5773 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5774 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
5776 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5777 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
5779 if (r->in.sids == NULL) {
5780 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5782 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5783 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
5784 if (r->in.count == NULL) {
5785 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5787 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
5789 if (flags & NDR_OUT) {
5790 if (r->out.domains == NULL) {
5791 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5793 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
5794 if (*r->out.domains) {
5795 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
5797 if (r->out.sids == NULL) {
5798 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5800 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
5801 if (r->out.count == NULL) {
5802 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5804 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
5805 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5807 return NDR_ERR_SUCCESS;
5810 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, int flags, struct lsa_LookupNames *r)
5812 uint32_t cntr_names_0;
5813 uint32_t _ptr_domains;
5814 TALLOC_CTX *_mem_save_handle_0;
5815 TALLOC_CTX *_mem_save_names_0;
5816 TALLOC_CTX *_mem_save_domains_0;
5817 TALLOC_CTX *_mem_save_domains_1;
5818 TALLOC_CTX *_mem_save_sids_0;
5819 TALLOC_CTX *_mem_save_count_0;
5820 if (flags & NDR_IN) {
5821 ZERO_STRUCT(r->out);
5823 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5824 NDR_PULL_ALLOC(ndr, r->in.handle);
5826 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5827 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5828 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5829 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5830 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
5831 if (r->in.num_names < 0 || r->in.num_names > 1000) {
5832 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
5834 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
5835 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
5836 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
5837 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
5838 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5839 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
5841 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5842 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
5844 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
5845 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5846 NDR_PULL_ALLOC(ndr, r->in.sids);
5848 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
5849 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
5850 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5851 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
5852 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
5853 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5854 NDR_PULL_ALLOC(ndr, r->in.count);
5856 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
5857 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
5858 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
5859 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
5860 NDR_PULL_ALLOC(ndr, r->out.domains);
5861 ZERO_STRUCTP(r->out.domains);
5862 NDR_PULL_ALLOC(ndr, r->out.sids);
5863 *r->out.sids = *r->in.sids;
5864 NDR_PULL_ALLOC(ndr, r->out.count);
5865 *r->out.count = *r->in.count;
5867 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
5870 if (flags & NDR_OUT) {
5871 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5872 NDR_PULL_ALLOC(ndr, r->out.domains);
5874 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
5875 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
5876 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
5878 NDR_PULL_ALLOC(ndr, *r->out.domains);
5880 *r->out.domains = NULL;
5882 if (*r->out.domains) {
5883 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
5884 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
5885 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
5886 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
5888 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
5889 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5890 NDR_PULL_ALLOC(ndr, r->out.sids);
5892 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
5893 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
5894 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
5895 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
5896 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5897 NDR_PULL_ALLOC(ndr, r->out.count);
5899 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
5900 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
5901 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
5902 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
5903 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5905 return NDR_ERR_SUCCESS;
5908 _PUBLIC_ void ndr_print_lsa_LookupNames(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames *r)
5910 uint32_t cntr_names_0;
5911 ndr_print_struct(ndr, name, "lsa_LookupNames");
5913 if (flags & NDR_SET_VALUES) {
5914 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5916 if (flags & NDR_IN) {
5917 ndr_print_struct(ndr, "in", "lsa_LookupNames");
5919 ndr_print_ptr(ndr, "handle", r->in.handle);
5921 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5923 ndr_print_uint32(ndr, "num_names", r->in.num_names);
5924 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
5926 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
5928 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
5929 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
5934 ndr_print_ptr(ndr, "sids", r->in.sids);
5936 ndr_print_lsa_TransSidArray(ndr, "sids", r->in.sids);
5938 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
5939 ndr_print_ptr(ndr, "count", r->in.count);
5941 ndr_print_uint32(ndr, "count", *r->in.count);
5945 if (flags & NDR_OUT) {
5946 ndr_print_struct(ndr, "out", "lsa_LookupNames");
5948 ndr_print_ptr(ndr, "domains", r->out.domains);
5950 ndr_print_ptr(ndr, "domains", *r->out.domains);
5952 if (*r->out.domains) {
5953 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
5957 ndr_print_ptr(ndr, "sids", r->out.sids);
5959 ndr_print_lsa_TransSidArray(ndr, "sids", r->out.sids);
5961 ndr_print_ptr(ndr, "count", r->out.count);
5963 ndr_print_uint32(ndr, "count", *r->out.count);
5965 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5971 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupSids(struct ndr_push *ndr, int flags, const struct lsa_LookupSids *r)
5973 if (flags & NDR_IN) {
5974 if (r->in.handle == NULL) {
5975 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5977 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5978 if (r->in.sids == NULL) {
5979 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5981 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5982 if (r->in.names == NULL) {
5983 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5985 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
5986 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
5987 if (r->in.count == NULL) {
5988 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5990 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
5992 if (flags & NDR_OUT) {
5993 if (r->out.domains == NULL) {
5994 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5996 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
5997 if (*r->out.domains) {
5998 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
6000 if (r->out.names == NULL) {
6001 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6003 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
6004 if (r->out.count == NULL) {
6005 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6007 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
6008 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6010 return NDR_ERR_SUCCESS;
6013 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupSids(struct ndr_pull *ndr, int flags, struct lsa_LookupSids *r)
6015 uint32_t _ptr_domains;
6016 TALLOC_CTX *_mem_save_handle_0;
6017 TALLOC_CTX *_mem_save_sids_0;
6018 TALLOC_CTX *_mem_save_domains_0;
6019 TALLOC_CTX *_mem_save_domains_1;
6020 TALLOC_CTX *_mem_save_names_0;
6021 TALLOC_CTX *_mem_save_count_0;
6022 if (flags & NDR_IN) {
6023 ZERO_STRUCT(r->out);
6025 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6026 NDR_PULL_ALLOC(ndr, r->in.handle);
6028 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6029 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6030 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6031 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6032 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6033 NDR_PULL_ALLOC(ndr, r->in.sids);
6035 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
6036 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
6037 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
6038 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
6039 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6040 NDR_PULL_ALLOC(ndr, r->in.names);
6042 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
6043 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
6044 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
6045 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
6046 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
6047 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6048 NDR_PULL_ALLOC(ndr, r->in.count);
6050 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
6051 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
6052 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
6053 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
6054 NDR_PULL_ALLOC(ndr, r->out.domains);
6055 ZERO_STRUCTP(r->out.domains);
6056 NDR_PULL_ALLOC(ndr, r->out.names);
6057 *r->out.names = *r->in.names;
6058 NDR_PULL_ALLOC(ndr, r->out.count);
6059 *r->out.count = *r->in.count;
6061 if (flags & NDR_OUT) {
6062 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6063 NDR_PULL_ALLOC(ndr, r->out.domains);
6065 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
6066 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
6067 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
6069 NDR_PULL_ALLOC(ndr, *r->out.domains);
6071 *r->out.domains = NULL;
6073 if (*r->out.domains) {
6074 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
6075 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
6076 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
6077 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
6079 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
6080 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6081 NDR_PULL_ALLOC(ndr, r->out.names);
6083 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
6084 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
6085 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
6086 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
6087 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6088 NDR_PULL_ALLOC(ndr, r->out.count);
6090 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
6091 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
6092 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
6093 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
6094 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6096 return NDR_ERR_SUCCESS;
6099 _PUBLIC_ void ndr_print_lsa_LookupSids(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids *r)
6101 ndr_print_struct(ndr, name, "lsa_LookupSids");
6103 if (flags & NDR_SET_VALUES) {
6104 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6106 if (flags & NDR_IN) {
6107 ndr_print_struct(ndr, "in", "lsa_LookupSids");
6109 ndr_print_ptr(ndr, "handle", r->in.handle);
6111 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6113 ndr_print_ptr(ndr, "sids", r->in.sids);
6115 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
6117 ndr_print_ptr(ndr, "names", r->in.names);
6119 ndr_print_lsa_TransNameArray(ndr, "names", r->in.names);
6121 ndr_print_uint16(ndr, "level", r->in.level);
6122 ndr_print_ptr(ndr, "count", r->in.count);
6124 ndr_print_uint32(ndr, "count", *r->in.count);
6128 if (flags & NDR_OUT) {
6129 ndr_print_struct(ndr, "out", "lsa_LookupSids");
6131 ndr_print_ptr(ndr, "domains", r->out.domains);
6133 ndr_print_ptr(ndr, "domains", *r->out.domains);
6135 if (*r->out.domains) {
6136 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
6140 ndr_print_ptr(ndr, "names", r->out.names);
6142 ndr_print_lsa_TransNameArray(ndr, "names", r->out.names);
6144 ndr_print_ptr(ndr, "count", r->out.count);
6146 ndr_print_uint32(ndr, "count", *r->out.count);
6148 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6154 _PUBLIC_ enum ndr_err_code ndr_push_lsa_CreateSecret(struct ndr_push *ndr, int flags, const struct lsa_CreateSecret *r)
6156 if (flags & NDR_IN) {
6157 if (r->in.handle == NULL) {
6158 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6160 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6161 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
6162 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6164 if (flags & NDR_OUT) {
6165 if (r->out.sec_handle == NULL) {
6166 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6168 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
6169 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6171 return NDR_ERR_SUCCESS;
6174 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_CreateSecret(struct ndr_pull *ndr, int flags, struct lsa_CreateSecret *r)
6176 TALLOC_CTX *_mem_save_handle_0;
6177 TALLOC_CTX *_mem_save_sec_handle_0;
6178 if (flags & NDR_IN) {
6179 ZERO_STRUCT(r->out);
6181 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6182 NDR_PULL_ALLOC(ndr, r->in.handle);
6184 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6185 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6186 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6187 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6188 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
6189 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6190 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
6191 ZERO_STRUCTP(r->out.sec_handle);
6193 if (flags & NDR_OUT) {
6194 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6195 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
6197 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6198 NDR_PULL_SET_MEM_CTX(ndr, r->out.sec_handle, LIBNDR_FLAG_REF_ALLOC);
6199 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
6200 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
6201 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6203 return NDR_ERR_SUCCESS;
6206 _PUBLIC_ void ndr_print_lsa_CreateSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateSecret *r)
6208 ndr_print_struct(ndr, name, "lsa_CreateSecret");
6210 if (flags & NDR_SET_VALUES) {
6211 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6213 if (flags & NDR_IN) {
6214 ndr_print_struct(ndr, "in", "lsa_CreateSecret");
6216 ndr_print_ptr(ndr, "handle", r->in.handle);
6218 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6220 ndr_print_lsa_String(ndr, "name", &r->in.name);
6221 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6224 if (flags & NDR_OUT) {
6225 ndr_print_struct(ndr, "out", "lsa_CreateSecret");
6227 ndr_print_ptr(ndr, "sec_handle", r->out.sec_handle);
6229 ndr_print_policy_handle(ndr, "sec_handle", r->out.sec_handle);
6231 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6237 static enum ndr_err_code ndr_push_lsa_OpenAccount(struct ndr_push *ndr, int flags, const struct lsa_OpenAccount *r)
6239 if (flags & NDR_IN) {
6240 if (r->in.handle == NULL) {
6241 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6243 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6244 if (r->in.sid == NULL) {
6245 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6247 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6248 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6250 if (flags & NDR_OUT) {
6251 if (r->out.acct_handle == NULL) {
6252 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6254 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
6255 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6257 return NDR_ERR_SUCCESS;
6260 static enum ndr_err_code ndr_pull_lsa_OpenAccount(struct ndr_pull *ndr, int flags, struct lsa_OpenAccount *r)
6262 TALLOC_CTX *_mem_save_handle_0;
6263 TALLOC_CTX *_mem_save_sid_0;
6264 TALLOC_CTX *_mem_save_acct_handle_0;
6265 if (flags & NDR_IN) {
6266 ZERO_STRUCT(r->out);
6268 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6269 NDR_PULL_ALLOC(ndr, r->in.handle);
6271 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6272 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6273 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6274 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6275 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6276 NDR_PULL_ALLOC(ndr, r->in.sid);
6278 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6279 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6280 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6281 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6282 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6283 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
6284 ZERO_STRUCTP(r->out.acct_handle);
6286 if (flags & NDR_OUT) {
6287 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6288 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
6290 _mem_save_acct_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6291 NDR_PULL_SET_MEM_CTX(ndr, r->out.acct_handle, LIBNDR_FLAG_REF_ALLOC);
6292 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
6293 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_acct_handle_0, LIBNDR_FLAG_REF_ALLOC);
6294 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6296 return NDR_ERR_SUCCESS;
6299 _PUBLIC_ void ndr_print_lsa_OpenAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenAccount *r)
6301 ndr_print_struct(ndr, name, "lsa_OpenAccount");
6303 if (flags & NDR_SET_VALUES) {
6304 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6306 if (flags & NDR_IN) {
6307 ndr_print_struct(ndr, "in", "lsa_OpenAccount");
6309 ndr_print_ptr(ndr, "handle", r->in.handle);
6311 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6313 ndr_print_ptr(ndr, "sid", r->in.sid);
6315 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6317 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6320 if (flags & NDR_OUT) {
6321 ndr_print_struct(ndr, "out", "lsa_OpenAccount");
6323 ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
6325 ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
6327 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6333 static enum ndr_err_code ndr_push_lsa_EnumPrivsAccount(struct ndr_push *ndr, int flags, const struct lsa_EnumPrivsAccount *r)
6335 if (flags & NDR_IN) {
6336 if (r->in.handle == NULL) {
6337 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6339 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6341 if (flags & NDR_OUT) {
6342 if (r->out.privs == NULL) {
6343 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6345 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.privs));
6346 if (*r->out.privs) {
6347 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, *r->out.privs));
6349 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6351 return NDR_ERR_SUCCESS;
6354 static enum ndr_err_code ndr_pull_lsa_EnumPrivsAccount(struct ndr_pull *ndr, int flags, struct lsa_EnumPrivsAccount *r)
6356 uint32_t _ptr_privs;
6357 TALLOC_CTX *_mem_save_handle_0;
6358 TALLOC_CTX *_mem_save_privs_0;
6359 TALLOC_CTX *_mem_save_privs_1;
6360 if (flags & NDR_IN) {
6361 ZERO_STRUCT(r->out);
6363 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6364 NDR_PULL_ALLOC(ndr, r->in.handle);
6366 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6367 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6368 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6369 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6370 NDR_PULL_ALLOC(ndr, r->out.privs);
6371 ZERO_STRUCTP(r->out.privs);
6373 if (flags & NDR_OUT) {
6374 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6375 NDR_PULL_ALLOC(ndr, r->out.privs);
6377 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
6378 NDR_PULL_SET_MEM_CTX(ndr, r->out.privs, LIBNDR_FLAG_REF_ALLOC);
6379 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
6381 NDR_PULL_ALLOC(ndr, *r->out.privs);
6383 *r->out.privs = NULL;
6385 if (*r->out.privs) {
6386 _mem_save_privs_1 = NDR_PULL_GET_MEM_CTX(ndr);
6387 NDR_PULL_SET_MEM_CTX(ndr, *r->out.privs, 0);
6388 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, *r->out.privs));
6389 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_1, 0);
6391 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
6392 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6394 return NDR_ERR_SUCCESS;
6397 _PUBLIC_ void ndr_print_lsa_EnumPrivsAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumPrivsAccount *r)
6399 ndr_print_struct(ndr, name, "lsa_EnumPrivsAccount");
6401 if (flags & NDR_SET_VALUES) {
6402 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6404 if (flags & NDR_IN) {
6405 ndr_print_struct(ndr, "in", "lsa_EnumPrivsAccount");
6407 ndr_print_ptr(ndr, "handle", r->in.handle);
6409 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6413 if (flags & NDR_OUT) {
6414 ndr_print_struct(ndr, "out", "lsa_EnumPrivsAccount");
6416 ndr_print_ptr(ndr, "privs", r->out.privs);
6418 ndr_print_ptr(ndr, "privs", *r->out.privs);
6420 if (*r->out.privs) {
6421 ndr_print_lsa_PrivilegeSet(ndr, "privs", *r->out.privs);
6425 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6431 static enum ndr_err_code ndr_push_lsa_AddPrivilegesToAccount(struct ndr_push *ndr, int flags, const struct lsa_AddPrivilegesToAccount *r)
6433 if (flags & NDR_IN) {
6434 if (r->in.handle == NULL) {
6435 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6437 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6438 if (r->in.privs == NULL) {
6439 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6441 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
6443 if (flags & NDR_OUT) {
6444 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6446 return NDR_ERR_SUCCESS;
6449 static enum ndr_err_code ndr_pull_lsa_AddPrivilegesToAccount(struct ndr_pull *ndr, int flags, struct lsa_AddPrivilegesToAccount *r)
6451 TALLOC_CTX *_mem_save_handle_0;
6452 TALLOC_CTX *_mem_save_privs_0;
6453 if (flags & NDR_IN) {
6454 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6455 NDR_PULL_ALLOC(ndr, r->in.handle);
6457 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6458 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6459 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6460 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6461 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6462 NDR_PULL_ALLOC(ndr, r->in.privs);
6464 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
6465 NDR_PULL_SET_MEM_CTX(ndr, r->in.privs, LIBNDR_FLAG_REF_ALLOC);
6466 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
6467 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
6469 if (flags & NDR_OUT) {
6470 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6472 return NDR_ERR_SUCCESS;
6475 _PUBLIC_ void ndr_print_lsa_AddPrivilegesToAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_AddPrivilegesToAccount *r)
6477 ndr_print_struct(ndr, name, "lsa_AddPrivilegesToAccount");
6479 if (flags & NDR_SET_VALUES) {
6480 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6482 if (flags & NDR_IN) {
6483 ndr_print_struct(ndr, "in", "lsa_AddPrivilegesToAccount");
6485 ndr_print_ptr(ndr, "handle", r->in.handle);
6487 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6489 ndr_print_ptr(ndr, "privs", r->in.privs);
6491 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->in.privs);
6495 if (flags & NDR_OUT) {
6496 ndr_print_struct(ndr, "out", "lsa_AddPrivilegesToAccount");
6498 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6504 static enum ndr_err_code ndr_push_lsa_RemovePrivilegesFromAccount(struct ndr_push *ndr, int flags, const struct lsa_RemovePrivilegesFromAccount *r)
6506 if (flags & NDR_IN) {
6507 if (r->in.handle == NULL) {
6508 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6510 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6511 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.remove_all));
6512 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.privs));
6514 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
6517 if (flags & NDR_OUT) {
6518 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6520 return NDR_ERR_SUCCESS;
6523 static enum ndr_err_code ndr_pull_lsa_RemovePrivilegesFromAccount(struct ndr_pull *ndr, int flags, struct lsa_RemovePrivilegesFromAccount *r)
6525 uint32_t _ptr_privs;
6526 TALLOC_CTX *_mem_save_handle_0;
6527 TALLOC_CTX *_mem_save_privs_0;
6528 if (flags & NDR_IN) {
6529 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6530 NDR_PULL_ALLOC(ndr, r->in.handle);
6532 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6533 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6534 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6535 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6536 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.remove_all));
6537 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
6539 NDR_PULL_ALLOC(ndr, r->in.privs);
6544 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
6545 NDR_PULL_SET_MEM_CTX(ndr, r->in.privs, 0);
6546 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
6547 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
6550 if (flags & NDR_OUT) {
6551 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6553 return NDR_ERR_SUCCESS;
6556 _PUBLIC_ void ndr_print_lsa_RemovePrivilegesFromAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RemovePrivilegesFromAccount *r)
6558 ndr_print_struct(ndr, name, "lsa_RemovePrivilegesFromAccount");
6560 if (flags & NDR_SET_VALUES) {
6561 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6563 if (flags & NDR_IN) {
6564 ndr_print_struct(ndr, "in", "lsa_RemovePrivilegesFromAccount");
6566 ndr_print_ptr(ndr, "handle", r->in.handle);
6568 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6570 ndr_print_uint8(ndr, "remove_all", r->in.remove_all);
6571 ndr_print_ptr(ndr, "privs", r->in.privs);
6574 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->in.privs);
6579 if (flags & NDR_OUT) {
6580 ndr_print_struct(ndr, "out", "lsa_RemovePrivilegesFromAccount");
6582 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6588 static enum ndr_err_code ndr_push_lsa_GetQuotasForAccount(struct ndr_push *ndr, int flags, const struct lsa_GetQuotasForAccount *r)
6590 if (flags & NDR_IN) {
6592 if (flags & NDR_OUT) {
6593 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6595 return NDR_ERR_SUCCESS;
6598 static enum ndr_err_code ndr_pull_lsa_GetQuotasForAccount(struct ndr_pull *ndr, int flags, struct lsa_GetQuotasForAccount *r)
6600 if (flags & NDR_IN) {
6602 if (flags & NDR_OUT) {
6603 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6605 return NDR_ERR_SUCCESS;
6608 _PUBLIC_ void ndr_print_lsa_GetQuotasForAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetQuotasForAccount *r)
6610 ndr_print_struct(ndr, name, "lsa_GetQuotasForAccount");
6612 if (flags & NDR_SET_VALUES) {
6613 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6615 if (flags & NDR_IN) {
6616 ndr_print_struct(ndr, "in", "lsa_GetQuotasForAccount");
6620 if (flags & NDR_OUT) {
6621 ndr_print_struct(ndr, "out", "lsa_GetQuotasForAccount");
6623 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6629 static enum ndr_err_code ndr_push_lsa_SetQuotasForAccount(struct ndr_push *ndr, int flags, const struct lsa_SetQuotasForAccount *r)
6631 if (flags & NDR_IN) {
6633 if (flags & NDR_OUT) {
6634 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6636 return NDR_ERR_SUCCESS;
6639 static enum ndr_err_code ndr_pull_lsa_SetQuotasForAccount(struct ndr_pull *ndr, int flags, struct lsa_SetQuotasForAccount *r)
6641 if (flags & NDR_IN) {
6643 if (flags & NDR_OUT) {
6644 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6646 return NDR_ERR_SUCCESS;
6649 _PUBLIC_ void ndr_print_lsa_SetQuotasForAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetQuotasForAccount *r)
6651 ndr_print_struct(ndr, name, "lsa_SetQuotasForAccount");
6653 if (flags & NDR_SET_VALUES) {
6654 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6656 if (flags & NDR_IN) {
6657 ndr_print_struct(ndr, "in", "lsa_SetQuotasForAccount");
6661 if (flags & NDR_OUT) {
6662 ndr_print_struct(ndr, "out", "lsa_SetQuotasForAccount");
6664 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6670 static enum ndr_err_code ndr_push_lsa_GetSystemAccessAccount(struct ndr_push *ndr, int flags, const struct lsa_GetSystemAccessAccount *r)
6672 if (flags & NDR_IN) {
6673 if (r->in.handle == NULL) {
6674 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6676 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6678 if (flags & NDR_OUT) {
6679 if (r->out.access_mask == NULL) {
6680 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6682 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.access_mask));
6683 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6685 return NDR_ERR_SUCCESS;
6688 static enum ndr_err_code ndr_pull_lsa_GetSystemAccessAccount(struct ndr_pull *ndr, int flags, struct lsa_GetSystemAccessAccount *r)
6690 TALLOC_CTX *_mem_save_handle_0;
6691 TALLOC_CTX *_mem_save_access_mask_0;
6692 if (flags & NDR_IN) {
6693 ZERO_STRUCT(r->out);
6695 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6696 NDR_PULL_ALLOC(ndr, r->in.handle);
6698 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6699 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6700 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6701 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6702 NDR_PULL_ALLOC(ndr, r->out.access_mask);
6703 ZERO_STRUCTP(r->out.access_mask);
6705 if (flags & NDR_OUT) {
6706 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6707 NDR_PULL_ALLOC(ndr, r->out.access_mask);
6709 _mem_save_access_mask_0 = NDR_PULL_GET_MEM_CTX(ndr);
6710 NDR_PULL_SET_MEM_CTX(ndr, r->out.access_mask, LIBNDR_FLAG_REF_ALLOC);
6711 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.access_mask));
6712 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_access_mask_0, LIBNDR_FLAG_REF_ALLOC);
6713 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6715 return NDR_ERR_SUCCESS;
6718 _PUBLIC_ void ndr_print_lsa_GetSystemAccessAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetSystemAccessAccount *r)
6720 ndr_print_struct(ndr, name, "lsa_GetSystemAccessAccount");
6722 if (flags & NDR_SET_VALUES) {
6723 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6725 if (flags & NDR_IN) {
6726 ndr_print_struct(ndr, "in", "lsa_GetSystemAccessAccount");
6728 ndr_print_ptr(ndr, "handle", r->in.handle);
6730 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6734 if (flags & NDR_OUT) {
6735 ndr_print_struct(ndr, "out", "lsa_GetSystemAccessAccount");
6737 ndr_print_ptr(ndr, "access_mask", r->out.access_mask);
6739 ndr_print_uint32(ndr, "access_mask", *r->out.access_mask);
6741 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6747 static enum ndr_err_code ndr_push_lsa_SetSystemAccessAccount(struct ndr_push *ndr, int flags, const struct lsa_SetSystemAccessAccount *r)
6749 if (flags & NDR_IN) {
6750 if (r->in.handle == NULL) {
6751 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6753 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6754 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6756 if (flags & NDR_OUT) {
6757 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6759 return NDR_ERR_SUCCESS;
6762 static enum ndr_err_code ndr_pull_lsa_SetSystemAccessAccount(struct ndr_pull *ndr, int flags, struct lsa_SetSystemAccessAccount *r)
6764 TALLOC_CTX *_mem_save_handle_0;
6765 if (flags & NDR_IN) {
6766 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6767 NDR_PULL_ALLOC(ndr, r->in.handle);
6769 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6770 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6771 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6772 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6773 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6775 if (flags & NDR_OUT) {
6776 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6778 return NDR_ERR_SUCCESS;
6781 _PUBLIC_ void ndr_print_lsa_SetSystemAccessAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSystemAccessAccount *r)
6783 ndr_print_struct(ndr, name, "lsa_SetSystemAccessAccount");
6785 if (flags & NDR_SET_VALUES) {
6786 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6788 if (flags & NDR_IN) {
6789 ndr_print_struct(ndr, "in", "lsa_SetSystemAccessAccount");
6791 ndr_print_ptr(ndr, "handle", r->in.handle);
6793 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6795 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6798 if (flags & NDR_OUT) {
6799 ndr_print_struct(ndr, "out", "lsa_SetSystemAccessAccount");
6801 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6807 static enum ndr_err_code ndr_push_lsa_OpenTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_OpenTrustedDomain *r)
6809 if (flags & NDR_IN) {
6810 if (r->in.handle == NULL) {
6811 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6813 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6814 if (r->in.sid == NULL) {
6815 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6817 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6818 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6820 if (flags & NDR_OUT) {
6821 if (r->out.trustdom_handle == NULL) {
6822 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6824 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
6825 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6827 return NDR_ERR_SUCCESS;
6830 static enum ndr_err_code ndr_pull_lsa_OpenTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_OpenTrustedDomain *r)
6832 TALLOC_CTX *_mem_save_handle_0;
6833 TALLOC_CTX *_mem_save_sid_0;
6834 TALLOC_CTX *_mem_save_trustdom_handle_0;
6835 if (flags & NDR_IN) {
6836 ZERO_STRUCT(r->out);
6838 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6839 NDR_PULL_ALLOC(ndr, r->in.handle);
6841 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6842 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6843 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6844 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6845 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6846 NDR_PULL_ALLOC(ndr, r->in.sid);
6848 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6849 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6850 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6851 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6852 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6853 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
6854 ZERO_STRUCTP(r->out.trustdom_handle);
6856 if (flags & NDR_OUT) {
6857 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6858 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
6860 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6861 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
6862 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
6863 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
6864 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6866 return NDR_ERR_SUCCESS;
6869 _PUBLIC_ void ndr_print_lsa_OpenTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenTrustedDomain *r)
6871 ndr_print_struct(ndr, name, "lsa_OpenTrustedDomain");
6873 if (flags & NDR_SET_VALUES) {
6874 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6876 if (flags & NDR_IN) {
6877 ndr_print_struct(ndr, "in", "lsa_OpenTrustedDomain");
6879 ndr_print_ptr(ndr, "handle", r->in.handle);
6881 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6883 ndr_print_ptr(ndr, "sid", r->in.sid);
6885 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6887 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6890 if (flags & NDR_OUT) {
6891 ndr_print_struct(ndr, "out", "lsa_OpenTrustedDomain");
6893 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
6895 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
6897 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6903 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfo(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfo *r)
6905 if (flags & NDR_IN) {
6906 if (r->in.trustdom_handle == NULL) {
6907 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6909 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trustdom_handle));
6910 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
6912 if (flags & NDR_OUT) {
6913 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
6915 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
6916 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6918 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6920 return NDR_ERR_SUCCESS;
6923 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfo(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfo *r)
6926 TALLOC_CTX *_mem_save_trustdom_handle_0;
6927 TALLOC_CTX *_mem_save_info_0;
6928 if (flags & NDR_IN) {
6929 ZERO_STRUCT(r->out);
6931 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6932 NDR_PULL_ALLOC(ndr, r->in.trustdom_handle);
6934 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6935 NDR_PULL_SET_MEM_CTX(ndr, r->in.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
6936 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trustdom_handle));
6937 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
6938 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
6940 if (flags & NDR_OUT) {
6941 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
6943 NDR_PULL_ALLOC(ndr, r->out.info);
6948 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6949 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
6950 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
6951 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6952 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
6954 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6956 return NDR_ERR_SUCCESS;
6959 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfo *r)
6961 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfo");
6963 if (flags & NDR_SET_VALUES) {
6964 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6966 if (flags & NDR_IN) {
6967 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfo");
6969 ndr_print_ptr(ndr, "trustdom_handle", r->in.trustdom_handle);
6971 ndr_print_policy_handle(ndr, "trustdom_handle", r->in.trustdom_handle);
6973 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
6976 if (flags & NDR_OUT) {
6977 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfo");
6979 ndr_print_ptr(ndr, "info", r->out.info);
6982 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
6983 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->out.info);
6986 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6992 static enum ndr_err_code ndr_push_lsa_SetInformationTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_SetInformationTrustedDomain *r)
6994 if (flags & NDR_IN) {
6996 if (flags & NDR_OUT) {
6997 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6999 return NDR_ERR_SUCCESS;
7002 static enum ndr_err_code ndr_pull_lsa_SetInformationTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_SetInformationTrustedDomain *r)
7004 if (flags & NDR_IN) {
7006 if (flags & NDR_OUT) {
7007 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7009 return NDR_ERR_SUCCESS;
7012 _PUBLIC_ void ndr_print_lsa_SetInformationTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInformationTrustedDomain *r)
7014 ndr_print_struct(ndr, name, "lsa_SetInformationTrustedDomain");
7016 if (flags & NDR_SET_VALUES) {
7017 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7019 if (flags & NDR_IN) {
7020 ndr_print_struct(ndr, "in", "lsa_SetInformationTrustedDomain");
7024 if (flags & NDR_OUT) {
7025 ndr_print_struct(ndr, "out", "lsa_SetInformationTrustedDomain");
7027 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7033 _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenSecret(struct ndr_push *ndr, int flags, const struct lsa_OpenSecret *r)
7035 if (flags & NDR_IN) {
7036 if (r->in.handle == NULL) {
7037 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7039 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7040 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
7041 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
7043 if (flags & NDR_OUT) {
7044 if (r->out.sec_handle == NULL) {
7045 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7047 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
7048 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7050 return NDR_ERR_SUCCESS;
7053 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenSecret(struct ndr_pull *ndr, int flags, struct lsa_OpenSecret *r)
7055 TALLOC_CTX *_mem_save_handle_0;
7056 TALLOC_CTX *_mem_save_sec_handle_0;
7057 if (flags & NDR_IN) {
7058 ZERO_STRUCT(r->out);
7060 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7061 NDR_PULL_ALLOC(ndr, r->in.handle);
7063 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7064 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7065 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7066 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7067 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
7068 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
7069 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
7070 ZERO_STRUCTP(r->out.sec_handle);
7072 if (flags & NDR_OUT) {
7073 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7074 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
7076 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7077 NDR_PULL_SET_MEM_CTX(ndr, r->out.sec_handle, LIBNDR_FLAG_REF_ALLOC);
7078 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
7079 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
7080 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7082 return NDR_ERR_SUCCESS;
7085 _PUBLIC_ void ndr_print_lsa_OpenSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenSecret *r)
7087 ndr_print_struct(ndr, name, "lsa_OpenSecret");
7089 if (flags & NDR_SET_VALUES) {
7090 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7092 if (flags & NDR_IN) {
7093 ndr_print_struct(ndr, "in", "lsa_OpenSecret");
7095 ndr_print_ptr(ndr, "handle", r->in.handle);
7097 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7099 ndr_print_lsa_String(ndr, "name", &r->in.name);
7100 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
7103 if (flags & NDR_OUT) {
7104 ndr_print_struct(ndr, "out", "lsa_OpenSecret");
7106 ndr_print_ptr(ndr, "sec_handle", r->out.sec_handle);
7108 ndr_print_policy_handle(ndr, "sec_handle", r->out.sec_handle);
7110 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7116 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SetSecret(struct ndr_push *ndr, int flags, const struct lsa_SetSecret *r)
7118 if (flags & NDR_IN) {
7119 if (r->in.sec_handle == NULL) {
7120 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7122 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
7123 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_val));
7124 if (r->in.new_val) {
7125 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7127 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_val));
7128 if (r->in.old_val) {
7129 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7132 if (flags & NDR_OUT) {
7133 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7135 return NDR_ERR_SUCCESS;
7138 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SetSecret(struct ndr_pull *ndr, int flags, struct lsa_SetSecret *r)
7140 uint32_t _ptr_new_val;
7141 uint32_t _ptr_old_val;
7142 TALLOC_CTX *_mem_save_sec_handle_0;
7143 TALLOC_CTX *_mem_save_new_val_0;
7144 TALLOC_CTX *_mem_save_old_val_0;
7145 if (flags & NDR_IN) {
7146 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7147 NDR_PULL_ALLOC(ndr, r->in.sec_handle);
7149 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7150 NDR_PULL_SET_MEM_CTX(ndr, r->in.sec_handle, LIBNDR_FLAG_REF_ALLOC);
7151 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
7152 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
7153 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
7155 NDR_PULL_ALLOC(ndr, r->in.new_val);
7157 r->in.new_val = NULL;
7159 if (r->in.new_val) {
7160 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7161 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_val, 0);
7162 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7163 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
7165 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
7167 NDR_PULL_ALLOC(ndr, r->in.old_val);
7169 r->in.old_val = NULL;
7171 if (r->in.old_val) {
7172 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7173 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_val, 0);
7174 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7175 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
7178 if (flags & NDR_OUT) {
7179 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7181 return NDR_ERR_SUCCESS;
7184 _PUBLIC_ void ndr_print_lsa_SetSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSecret *r)
7186 ndr_print_struct(ndr, name, "lsa_SetSecret");
7188 if (flags & NDR_SET_VALUES) {
7189 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7191 if (flags & NDR_IN) {
7192 ndr_print_struct(ndr, "in", "lsa_SetSecret");
7194 ndr_print_ptr(ndr, "sec_handle", r->in.sec_handle);
7196 ndr_print_policy_handle(ndr, "sec_handle", r->in.sec_handle);
7198 ndr_print_ptr(ndr, "new_val", r->in.new_val);
7200 if (r->in.new_val) {
7201 ndr_print_lsa_DATA_BUF(ndr, "new_val", r->in.new_val);
7204 ndr_print_ptr(ndr, "old_val", r->in.old_val);
7206 if (r->in.old_val) {
7207 ndr_print_lsa_DATA_BUF(ndr, "old_val", r->in.old_val);
7212 if (flags & NDR_OUT) {
7213 ndr_print_struct(ndr, "out", "lsa_SetSecret");
7215 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7221 _PUBLIC_ enum ndr_err_code ndr_push_lsa_QuerySecret(struct ndr_push *ndr, int flags, const struct lsa_QuerySecret *r)
7223 if (flags & NDR_IN) {
7224 if (r->in.sec_handle == NULL) {
7225 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7227 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
7228 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_val));
7229 if (r->in.new_val) {
7230 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7232 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_mtime));
7233 if (r->in.new_mtime) {
7234 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->in.new_mtime));
7236 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_val));
7237 if (r->in.old_val) {
7238 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7240 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_mtime));
7241 if (r->in.old_mtime) {
7242 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->in.old_mtime));
7245 if (flags & NDR_OUT) {
7246 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.new_val));
7247 if (r->out.new_val) {
7248 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.new_val));
7250 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.new_mtime));
7251 if (r->out.new_mtime) {
7252 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->out.new_mtime));
7254 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.old_val));
7255 if (r->out.old_val) {
7256 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.old_val));
7258 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.old_mtime));
7259 if (r->out.old_mtime) {
7260 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->out.old_mtime));
7262 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7264 return NDR_ERR_SUCCESS;
7267 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_QuerySecret(struct ndr_pull *ndr, int flags, struct lsa_QuerySecret *r)
7269 uint32_t _ptr_new_val;
7270 uint32_t _ptr_new_mtime;
7271 uint32_t _ptr_old_val;
7272 uint32_t _ptr_old_mtime;
7273 TALLOC_CTX *_mem_save_sec_handle_0;
7274 TALLOC_CTX *_mem_save_new_val_0;
7275 TALLOC_CTX *_mem_save_new_mtime_0;
7276 TALLOC_CTX *_mem_save_old_val_0;
7277 TALLOC_CTX *_mem_save_old_mtime_0;
7278 if (flags & NDR_IN) {
7279 ZERO_STRUCT(r->out);
7281 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7282 NDR_PULL_ALLOC(ndr, r->in.sec_handle);
7284 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7285 NDR_PULL_SET_MEM_CTX(ndr, r->in.sec_handle, LIBNDR_FLAG_REF_ALLOC);
7286 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
7287 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
7288 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
7290 NDR_PULL_ALLOC(ndr, r->in.new_val);
7292 r->in.new_val = NULL;
7294 if (r->in.new_val) {
7295 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7296 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_val, 0);
7297 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
7298 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
7300 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_mtime));
7301 if (_ptr_new_mtime) {
7302 NDR_PULL_ALLOC(ndr, r->in.new_mtime);
7304 r->in.new_mtime = NULL;
7306 if (r->in.new_mtime) {
7307 _mem_save_new_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
7308 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_mtime, 0);
7309 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->in.new_mtime));
7310 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_mtime_0, 0);
7312 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
7314 NDR_PULL_ALLOC(ndr, r->in.old_val);
7316 r->in.old_val = NULL;
7318 if (r->in.old_val) {
7319 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7320 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_val, 0);
7321 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
7322 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
7324 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_mtime));
7325 if (_ptr_old_mtime) {
7326 NDR_PULL_ALLOC(ndr, r->in.old_mtime);
7328 r->in.old_mtime = NULL;
7330 if (r->in.old_mtime) {
7331 _mem_save_old_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
7332 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_mtime, 0);
7333 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->in.old_mtime));
7334 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_mtime_0, 0);
7337 if (flags & NDR_OUT) {
7338 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
7340 NDR_PULL_ALLOC(ndr, r->out.new_val);
7342 r->out.new_val = NULL;
7344 if (r->out.new_val) {
7345 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7346 NDR_PULL_SET_MEM_CTX(ndr, r->out.new_val, 0);
7347 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.new_val));
7348 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
7350 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_mtime));
7351 if (_ptr_new_mtime) {
7352 NDR_PULL_ALLOC(ndr, r->out.new_mtime);
7354 r->out.new_mtime = NULL;
7356 if (r->out.new_mtime) {
7357 _mem_save_new_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
7358 NDR_PULL_SET_MEM_CTX(ndr, r->out.new_mtime, 0);
7359 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->out.new_mtime));
7360 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_mtime_0, 0);
7362 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
7364 NDR_PULL_ALLOC(ndr, r->out.old_val);
7366 r->out.old_val = NULL;
7368 if (r->out.old_val) {
7369 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
7370 NDR_PULL_SET_MEM_CTX(ndr, r->out.old_val, 0);
7371 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.old_val));
7372 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
7374 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_mtime));
7375 if (_ptr_old_mtime) {
7376 NDR_PULL_ALLOC(ndr, r->out.old_mtime);
7378 r->out.old_mtime = NULL;
7380 if (r->out.old_mtime) {
7381 _mem_save_old_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
7382 NDR_PULL_SET_MEM_CTX(ndr, r->out.old_mtime, 0);
7383 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->out.old_mtime));
7384 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_mtime_0, 0);
7386 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7388 return NDR_ERR_SUCCESS;
7391 _PUBLIC_ void ndr_print_lsa_QuerySecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QuerySecret *r)
7393 ndr_print_struct(ndr, name, "lsa_QuerySecret");
7395 if (flags & NDR_SET_VALUES) {
7396 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7398 if (flags & NDR_IN) {
7399 ndr_print_struct(ndr, "in", "lsa_QuerySecret");
7401 ndr_print_ptr(ndr, "sec_handle", r->in.sec_handle);
7403 ndr_print_policy_handle(ndr, "sec_handle", r->in.sec_handle);
7405 ndr_print_ptr(ndr, "new_val", r->in.new_val);
7407 if (r->in.new_val) {
7408 ndr_print_lsa_DATA_BUF_PTR(ndr, "new_val", r->in.new_val);
7411 ndr_print_ptr(ndr, "new_mtime", r->in.new_mtime);
7413 if (r->in.new_mtime) {
7414 ndr_print_NTTIME_hyper(ndr, "new_mtime", *r->in.new_mtime);
7417 ndr_print_ptr(ndr, "old_val", r->in.old_val);
7419 if (r->in.old_val) {
7420 ndr_print_lsa_DATA_BUF_PTR(ndr, "old_val", r->in.old_val);
7423 ndr_print_ptr(ndr, "old_mtime", r->in.old_mtime);
7425 if (r->in.old_mtime) {
7426 ndr_print_NTTIME_hyper(ndr, "old_mtime", *r->in.old_mtime);
7431 if (flags & NDR_OUT) {
7432 ndr_print_struct(ndr, "out", "lsa_QuerySecret");
7434 ndr_print_ptr(ndr, "new_val", r->out.new_val);
7436 if (r->out.new_val) {
7437 ndr_print_lsa_DATA_BUF_PTR(ndr, "new_val", r->out.new_val);
7440 ndr_print_ptr(ndr, "new_mtime", r->out.new_mtime);
7442 if (r->out.new_mtime) {
7443 ndr_print_NTTIME_hyper(ndr, "new_mtime", *r->out.new_mtime);
7446 ndr_print_ptr(ndr, "old_val", r->out.old_val);
7448 if (r->out.old_val) {
7449 ndr_print_lsa_DATA_BUF_PTR(ndr, "old_val", r->out.old_val);
7452 ndr_print_ptr(ndr, "old_mtime", r->out.old_mtime);
7454 if (r->out.old_mtime) {
7455 ndr_print_NTTIME_hyper(ndr, "old_mtime", *r->out.old_mtime);
7458 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7464 static enum ndr_err_code ndr_push_lsa_LookupPrivValue(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivValue *r)
7466 if (flags & NDR_IN) {
7467 if (r->in.handle == NULL) {
7468 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7470 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7471 if (r->in.name == NULL) {
7472 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7474 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7476 if (flags & NDR_OUT) {
7477 if (r->out.luid == NULL) {
7478 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7480 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, r->out.luid));
7481 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7483 return NDR_ERR_SUCCESS;
7486 static enum ndr_err_code ndr_pull_lsa_LookupPrivValue(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivValue *r)
7488 TALLOC_CTX *_mem_save_handle_0;
7489 TALLOC_CTX *_mem_save_name_0;
7490 TALLOC_CTX *_mem_save_luid_0;
7491 if (flags & NDR_IN) {
7492 ZERO_STRUCT(r->out);
7494 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7495 NDR_PULL_ALLOC(ndr, r->in.handle);
7497 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7498 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7499 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7500 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7501 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7502 NDR_PULL_ALLOC(ndr, r->in.name);
7504 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7505 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
7506 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7507 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
7508 NDR_PULL_ALLOC(ndr, r->out.luid);
7509 ZERO_STRUCTP(r->out.luid);
7511 if (flags & NDR_OUT) {
7512 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7513 NDR_PULL_ALLOC(ndr, r->out.luid);
7515 _mem_save_luid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7516 NDR_PULL_SET_MEM_CTX(ndr, r->out.luid, LIBNDR_FLAG_REF_ALLOC);
7517 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, r->out.luid));
7518 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_luid_0, LIBNDR_FLAG_REF_ALLOC);
7519 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7521 return NDR_ERR_SUCCESS;
7524 _PUBLIC_ void ndr_print_lsa_LookupPrivValue(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivValue *r)
7526 ndr_print_struct(ndr, name, "lsa_LookupPrivValue");
7528 if (flags & NDR_SET_VALUES) {
7529 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7531 if (flags & NDR_IN) {
7532 ndr_print_struct(ndr, "in", "lsa_LookupPrivValue");
7534 ndr_print_ptr(ndr, "handle", r->in.handle);
7536 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7538 ndr_print_ptr(ndr, "name", r->in.name);
7540 ndr_print_lsa_String(ndr, "name", r->in.name);
7544 if (flags & NDR_OUT) {
7545 ndr_print_struct(ndr, "out", "lsa_LookupPrivValue");
7547 ndr_print_ptr(ndr, "luid", r->out.luid);
7549 ndr_print_lsa_LUID(ndr, "luid", r->out.luid);
7551 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7557 static enum ndr_err_code ndr_push_lsa_LookupPrivName(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivName *r)
7559 if (flags & NDR_IN) {
7560 if (r->in.handle == NULL) {
7561 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7563 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7564 if (r->in.luid == NULL) {
7565 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7567 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, r->in.luid));
7569 if (flags & NDR_OUT) {
7570 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.name));
7572 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.name));
7574 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7576 return NDR_ERR_SUCCESS;
7579 static enum ndr_err_code ndr_pull_lsa_LookupPrivName(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivName *r)
7582 TALLOC_CTX *_mem_save_handle_0;
7583 TALLOC_CTX *_mem_save_luid_0;
7584 TALLOC_CTX *_mem_save_name_0;
7585 if (flags & NDR_IN) {
7586 ZERO_STRUCT(r->out);
7588 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7589 NDR_PULL_ALLOC(ndr, r->in.handle);
7591 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7592 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7593 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7594 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7595 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7596 NDR_PULL_ALLOC(ndr, r->in.luid);
7598 _mem_save_luid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7599 NDR_PULL_SET_MEM_CTX(ndr, r->in.luid, LIBNDR_FLAG_REF_ALLOC);
7600 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, r->in.luid));
7601 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_luid_0, LIBNDR_FLAG_REF_ALLOC);
7603 if (flags & NDR_OUT) {
7604 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
7606 NDR_PULL_ALLOC(ndr, r->out.name);
7611 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7612 NDR_PULL_SET_MEM_CTX(ndr, r->out.name, 0);
7613 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.name));
7614 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
7616 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7618 return NDR_ERR_SUCCESS;
7621 _PUBLIC_ void ndr_print_lsa_LookupPrivName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivName *r)
7623 ndr_print_struct(ndr, name, "lsa_LookupPrivName");
7625 if (flags & NDR_SET_VALUES) {
7626 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7628 if (flags & NDR_IN) {
7629 ndr_print_struct(ndr, "in", "lsa_LookupPrivName");
7631 ndr_print_ptr(ndr, "handle", r->in.handle);
7633 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7635 ndr_print_ptr(ndr, "luid", r->in.luid);
7637 ndr_print_lsa_LUID(ndr, "luid", r->in.luid);
7641 if (flags & NDR_OUT) {
7642 ndr_print_struct(ndr, "out", "lsa_LookupPrivName");
7644 ndr_print_ptr(ndr, "name", r->out.name);
7647 ndr_print_lsa_StringLarge(ndr, "name", r->out.name);
7650 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7656 static enum ndr_err_code ndr_push_lsa_LookupPrivDisplayName(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivDisplayName *r)
7658 if (flags & NDR_IN) {
7659 if (r->in.handle == NULL) {
7660 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7662 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7663 if (r->in.name == NULL) {
7664 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7666 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7667 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.language_id));
7668 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.language_id_sys));
7670 if (flags & NDR_OUT) {
7671 if (r->out.disp_name == NULL) {
7672 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7674 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.disp_name));
7675 if (*r->out.disp_name) {
7676 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.disp_name));
7678 if (r->out.returned_language_id == NULL) {
7679 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7681 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->out.returned_language_id));
7682 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7684 return NDR_ERR_SUCCESS;
7687 static enum ndr_err_code ndr_pull_lsa_LookupPrivDisplayName(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivDisplayName *r)
7689 uint32_t _ptr_disp_name;
7690 TALLOC_CTX *_mem_save_handle_0;
7691 TALLOC_CTX *_mem_save_name_0;
7692 TALLOC_CTX *_mem_save_disp_name_0;
7693 TALLOC_CTX *_mem_save_disp_name_1;
7694 TALLOC_CTX *_mem_save_returned_language_id_0;
7695 if (flags & NDR_IN) {
7696 ZERO_STRUCT(r->out);
7698 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7699 NDR_PULL_ALLOC(ndr, r->in.handle);
7701 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7702 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7703 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7704 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7705 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7706 NDR_PULL_ALLOC(ndr, r->in.name);
7708 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7709 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
7710 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7711 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
7712 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.language_id));
7713 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.language_id_sys));
7714 NDR_PULL_ALLOC(ndr, r->out.disp_name);
7715 ZERO_STRUCTP(r->out.disp_name);
7716 NDR_PULL_ALLOC(ndr, r->out.returned_language_id);
7717 ZERO_STRUCTP(r->out.returned_language_id);
7719 if (flags & NDR_OUT) {
7720 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7721 NDR_PULL_ALLOC(ndr, r->out.disp_name);
7723 _mem_save_disp_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7724 NDR_PULL_SET_MEM_CTX(ndr, r->out.disp_name, LIBNDR_FLAG_REF_ALLOC);
7725 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_disp_name));
7726 if (_ptr_disp_name) {
7727 NDR_PULL_ALLOC(ndr, *r->out.disp_name);
7729 *r->out.disp_name = NULL;
7731 if (*r->out.disp_name) {
7732 _mem_save_disp_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
7733 NDR_PULL_SET_MEM_CTX(ndr, *r->out.disp_name, 0);
7734 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.disp_name));
7735 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disp_name_1, 0);
7737 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disp_name_0, LIBNDR_FLAG_REF_ALLOC);
7738 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7739 NDR_PULL_ALLOC(ndr, r->out.returned_language_id);
7741 _mem_save_returned_language_id_0 = NDR_PULL_GET_MEM_CTX(ndr);
7742 NDR_PULL_SET_MEM_CTX(ndr, r->out.returned_language_id, LIBNDR_FLAG_REF_ALLOC);
7743 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->out.returned_language_id));
7744 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_returned_language_id_0, LIBNDR_FLAG_REF_ALLOC);
7745 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7747 return NDR_ERR_SUCCESS;
7750 _PUBLIC_ void ndr_print_lsa_LookupPrivDisplayName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivDisplayName *r)
7752 ndr_print_struct(ndr, name, "lsa_LookupPrivDisplayName");
7754 if (flags & NDR_SET_VALUES) {
7755 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7757 if (flags & NDR_IN) {
7758 ndr_print_struct(ndr, "in", "lsa_LookupPrivDisplayName");
7760 ndr_print_ptr(ndr, "handle", r->in.handle);
7762 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7764 ndr_print_ptr(ndr, "name", r->in.name);
7766 ndr_print_lsa_String(ndr, "name", r->in.name);
7768 ndr_print_uint16(ndr, "language_id", r->in.language_id);
7769 ndr_print_uint16(ndr, "language_id_sys", r->in.language_id_sys);
7772 if (flags & NDR_OUT) {
7773 ndr_print_struct(ndr, "out", "lsa_LookupPrivDisplayName");
7775 ndr_print_ptr(ndr, "disp_name", r->out.disp_name);
7777 ndr_print_ptr(ndr, "disp_name", *r->out.disp_name);
7779 if (*r->out.disp_name) {
7780 ndr_print_lsa_StringLarge(ndr, "disp_name", *r->out.disp_name);
7784 ndr_print_ptr(ndr, "returned_language_id", r->out.returned_language_id);
7786 ndr_print_uint16(ndr, "returned_language_id", *r->out.returned_language_id);
7788 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7794 static enum ndr_err_code ndr_push_lsa_DeleteObject(struct ndr_push *ndr, int flags, const struct lsa_DeleteObject *r)
7796 if (flags & NDR_IN) {
7797 if (r->in.handle == NULL) {
7798 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7800 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7802 if (flags & NDR_OUT) {
7803 if (r->out.handle == NULL) {
7804 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7806 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
7807 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7809 return NDR_ERR_SUCCESS;
7812 static enum ndr_err_code ndr_pull_lsa_DeleteObject(struct ndr_pull *ndr, int flags, struct lsa_DeleteObject *r)
7814 TALLOC_CTX *_mem_save_handle_0;
7815 if (flags & NDR_IN) {
7816 ZERO_STRUCT(r->out);
7818 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7819 NDR_PULL_ALLOC(ndr, r->in.handle);
7821 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7822 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7823 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7824 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7825 NDR_PULL_ALLOC(ndr, r->out.handle);
7826 *r->out.handle = *r->in.handle;
7828 if (flags & NDR_OUT) {
7829 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7830 NDR_PULL_ALLOC(ndr, r->out.handle);
7832 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7833 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
7834 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
7835 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7836 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7838 return NDR_ERR_SUCCESS;
7841 _PUBLIC_ void ndr_print_lsa_DeleteObject(struct ndr_print *ndr, const char *name, int flags, const struct lsa_DeleteObject *r)
7843 ndr_print_struct(ndr, name, "lsa_DeleteObject");
7845 if (flags & NDR_SET_VALUES) {
7846 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7848 if (flags & NDR_IN) {
7849 ndr_print_struct(ndr, "in", "lsa_DeleteObject");
7851 ndr_print_ptr(ndr, "handle", r->in.handle);
7853 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7857 if (flags & NDR_OUT) {
7858 ndr_print_struct(ndr, "out", "lsa_DeleteObject");
7860 ndr_print_ptr(ndr, "handle", r->out.handle);
7862 ndr_print_policy_handle(ndr, "handle", r->out.handle);
7864 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7870 static enum ndr_err_code ndr_push_lsa_EnumAccountsWithUserRight(struct ndr_push *ndr, int flags, const struct lsa_EnumAccountsWithUserRight *r)
7872 if (flags & NDR_IN) {
7873 if (r->in.handle == NULL) {
7874 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7876 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7877 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.name));
7879 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7882 if (flags & NDR_OUT) {
7883 if (r->out.sids == NULL) {
7884 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7886 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
7887 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7889 return NDR_ERR_SUCCESS;
7892 static enum ndr_err_code ndr_pull_lsa_EnumAccountsWithUserRight(struct ndr_pull *ndr, int flags, struct lsa_EnumAccountsWithUserRight *r)
7895 TALLOC_CTX *_mem_save_handle_0;
7896 TALLOC_CTX *_mem_save_name_0;
7897 TALLOC_CTX *_mem_save_sids_0;
7898 if (flags & NDR_IN) {
7899 ZERO_STRUCT(r->out);
7901 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7902 NDR_PULL_ALLOC(ndr, r->in.handle);
7904 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7905 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7906 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7907 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7908 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
7910 NDR_PULL_ALLOC(ndr, r->in.name);
7915 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7916 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, 0);
7917 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7918 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
7920 NDR_PULL_ALLOC(ndr, r->out.sids);
7921 ZERO_STRUCTP(r->out.sids);
7923 if (flags & NDR_OUT) {
7924 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7925 NDR_PULL_ALLOC(ndr, r->out.sids);
7927 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7928 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
7929 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
7930 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
7931 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7933 return NDR_ERR_SUCCESS;
7936 _PUBLIC_ void ndr_print_lsa_EnumAccountsWithUserRight(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccountsWithUserRight *r)
7938 ndr_print_struct(ndr, name, "lsa_EnumAccountsWithUserRight");
7940 if (flags & NDR_SET_VALUES) {
7941 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7943 if (flags & NDR_IN) {
7944 ndr_print_struct(ndr, "in", "lsa_EnumAccountsWithUserRight");
7946 ndr_print_ptr(ndr, "handle", r->in.handle);
7948 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7950 ndr_print_ptr(ndr, "name", r->in.name);
7953 ndr_print_lsa_String(ndr, "name", r->in.name);
7958 if (flags & NDR_OUT) {
7959 ndr_print_struct(ndr, "out", "lsa_EnumAccountsWithUserRight");
7961 ndr_print_ptr(ndr, "sids", r->out.sids);
7963 ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
7965 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7971 static enum ndr_err_code ndr_push_lsa_EnumAccountRights(struct ndr_push *ndr, int flags, const struct lsa_EnumAccountRights *r)
7973 if (flags & NDR_IN) {
7974 if (r->in.handle == NULL) {
7975 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7977 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7978 if (r->in.sid == NULL) {
7979 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7981 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7983 if (flags & NDR_OUT) {
7984 if (r->out.rights == NULL) {
7985 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7987 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rights));
7988 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7990 return NDR_ERR_SUCCESS;
7993 static enum ndr_err_code ndr_pull_lsa_EnumAccountRights(struct ndr_pull *ndr, int flags, struct lsa_EnumAccountRights *r)
7995 TALLOC_CTX *_mem_save_handle_0;
7996 TALLOC_CTX *_mem_save_sid_0;
7997 TALLOC_CTX *_mem_save_rights_0;
7998 if (flags & NDR_IN) {
7999 ZERO_STRUCT(r->out);
8001 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8002 NDR_PULL_ALLOC(ndr, r->in.handle);
8004 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8005 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8006 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8007 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8008 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8009 NDR_PULL_ALLOC(ndr, r->in.sid);
8011 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8012 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8013 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8014 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8015 NDR_PULL_ALLOC(ndr, r->out.rights);
8016 ZERO_STRUCTP(r->out.rights);
8018 if (flags & NDR_OUT) {
8019 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8020 NDR_PULL_ALLOC(ndr, r->out.rights);
8022 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
8023 NDR_PULL_SET_MEM_CTX(ndr, r->out.rights, LIBNDR_FLAG_REF_ALLOC);
8024 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rights));
8025 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
8026 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8028 return NDR_ERR_SUCCESS;
8031 _PUBLIC_ void ndr_print_lsa_EnumAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccountRights *r)
8033 ndr_print_struct(ndr, name, "lsa_EnumAccountRights");
8035 if (flags & NDR_SET_VALUES) {
8036 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8038 if (flags & NDR_IN) {
8039 ndr_print_struct(ndr, "in", "lsa_EnumAccountRights");
8041 ndr_print_ptr(ndr, "handle", r->in.handle);
8043 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8045 ndr_print_ptr(ndr, "sid", r->in.sid);
8047 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8051 if (flags & NDR_OUT) {
8052 ndr_print_struct(ndr, "out", "lsa_EnumAccountRights");
8054 ndr_print_ptr(ndr, "rights", r->out.rights);
8056 ndr_print_lsa_RightSet(ndr, "rights", r->out.rights);
8058 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8064 static enum ndr_err_code ndr_push_lsa_AddAccountRights(struct ndr_push *ndr, int flags, const struct lsa_AddAccountRights *r)
8066 if (flags & NDR_IN) {
8067 if (r->in.handle == NULL) {
8068 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8070 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8071 if (r->in.sid == NULL) {
8072 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8074 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8075 if (r->in.rights == NULL) {
8076 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8078 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8080 if (flags & NDR_OUT) {
8081 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8083 return NDR_ERR_SUCCESS;
8086 static enum ndr_err_code ndr_pull_lsa_AddAccountRights(struct ndr_pull *ndr, int flags, struct lsa_AddAccountRights *r)
8088 TALLOC_CTX *_mem_save_handle_0;
8089 TALLOC_CTX *_mem_save_sid_0;
8090 TALLOC_CTX *_mem_save_rights_0;
8091 if (flags & NDR_IN) {
8092 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8093 NDR_PULL_ALLOC(ndr, r->in.handle);
8095 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8096 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8097 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8098 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8099 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8100 NDR_PULL_ALLOC(ndr, r->in.sid);
8102 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8103 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8104 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8105 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8106 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8107 NDR_PULL_ALLOC(ndr, r->in.rights);
8109 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
8110 NDR_PULL_SET_MEM_CTX(ndr, r->in.rights, LIBNDR_FLAG_REF_ALLOC);
8111 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8112 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
8114 if (flags & NDR_OUT) {
8115 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8117 return NDR_ERR_SUCCESS;
8120 _PUBLIC_ void ndr_print_lsa_AddAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_AddAccountRights *r)
8122 ndr_print_struct(ndr, name, "lsa_AddAccountRights");
8124 if (flags & NDR_SET_VALUES) {
8125 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8127 if (flags & NDR_IN) {
8128 ndr_print_struct(ndr, "in", "lsa_AddAccountRights");
8130 ndr_print_ptr(ndr, "handle", r->in.handle);
8132 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8134 ndr_print_ptr(ndr, "sid", r->in.sid);
8136 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8138 ndr_print_ptr(ndr, "rights", r->in.rights);
8140 ndr_print_lsa_RightSet(ndr, "rights", r->in.rights);
8144 if (flags & NDR_OUT) {
8145 ndr_print_struct(ndr, "out", "lsa_AddAccountRights");
8147 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8153 static enum ndr_err_code ndr_push_lsa_RemoveAccountRights(struct ndr_push *ndr, int flags, const struct lsa_RemoveAccountRights *r)
8155 if (flags & NDR_IN) {
8156 if (r->in.handle == NULL) {
8157 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8159 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8160 if (r->in.sid == NULL) {
8161 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8163 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8164 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.remove_all));
8165 if (r->in.rights == NULL) {
8166 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8168 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8170 if (flags & NDR_OUT) {
8171 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8173 return NDR_ERR_SUCCESS;
8176 static enum ndr_err_code ndr_pull_lsa_RemoveAccountRights(struct ndr_pull *ndr, int flags, struct lsa_RemoveAccountRights *r)
8178 TALLOC_CTX *_mem_save_handle_0;
8179 TALLOC_CTX *_mem_save_sid_0;
8180 TALLOC_CTX *_mem_save_rights_0;
8181 if (flags & NDR_IN) {
8182 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8183 NDR_PULL_ALLOC(ndr, r->in.handle);
8185 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8186 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8187 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8188 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8189 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8190 NDR_PULL_ALLOC(ndr, r->in.sid);
8192 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8193 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
8194 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
8195 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
8196 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.remove_all));
8197 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8198 NDR_PULL_ALLOC(ndr, r->in.rights);
8200 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
8201 NDR_PULL_SET_MEM_CTX(ndr, r->in.rights, LIBNDR_FLAG_REF_ALLOC);
8202 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
8203 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
8205 if (flags & NDR_OUT) {
8206 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8208 return NDR_ERR_SUCCESS;
8211 _PUBLIC_ void ndr_print_lsa_RemoveAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RemoveAccountRights *r)
8213 ndr_print_struct(ndr, name, "lsa_RemoveAccountRights");
8215 if (flags & NDR_SET_VALUES) {
8216 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8218 if (flags & NDR_IN) {
8219 ndr_print_struct(ndr, "in", "lsa_RemoveAccountRights");
8221 ndr_print_ptr(ndr, "handle", r->in.handle);
8223 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8225 ndr_print_ptr(ndr, "sid", r->in.sid);
8227 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
8229 ndr_print_uint8(ndr, "remove_all", r->in.remove_all);
8230 ndr_print_ptr(ndr, "rights", r->in.rights);
8232 ndr_print_lsa_RightSet(ndr, "rights", r->in.rights);
8236 if (flags & NDR_OUT) {
8237 ndr_print_struct(ndr, "out", "lsa_RemoveAccountRights");
8239 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8245 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfoBySid(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfoBySid *r)
8247 if (flags & NDR_IN) {
8248 if (r->in.handle == NULL) {
8249 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8251 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8252 if (r->in.dom_sid == NULL) {
8253 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8255 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
8256 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
8258 if (flags & NDR_OUT) {
8259 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
8261 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
8262 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8264 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8266 return NDR_ERR_SUCCESS;
8269 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfoBySid(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfoBySid *r)
8272 TALLOC_CTX *_mem_save_handle_0;
8273 TALLOC_CTX *_mem_save_dom_sid_0;
8274 TALLOC_CTX *_mem_save_info_0;
8275 if (flags & NDR_IN) {
8276 ZERO_STRUCT(r->out);
8278 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8279 NDR_PULL_ALLOC(ndr, r->in.handle);
8281 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8282 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8283 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8284 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8285 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8286 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
8288 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8289 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
8290 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
8291 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
8292 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8294 if (flags & NDR_OUT) {
8295 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8297 NDR_PULL_ALLOC(ndr, r->out.info);
8302 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8303 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
8304 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
8305 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8306 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
8308 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8310 return NDR_ERR_SUCCESS;
8313 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfoBySid(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfoBySid *r)
8315 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfoBySid");
8317 if (flags & NDR_SET_VALUES) {
8318 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8320 if (flags & NDR_IN) {
8321 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfoBySid");
8323 ndr_print_ptr(ndr, "handle", r->in.handle);
8325 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8327 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
8329 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
8331 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
8334 if (flags & NDR_OUT) {
8335 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfoBySid");
8337 ndr_print_ptr(ndr, "info", r->out.info);
8340 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
8341 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->out.info);
8344 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8350 static enum ndr_err_code ndr_push_lsa_SetTrustedDomainInfo(struct ndr_push *ndr, int flags, const struct lsa_SetTrustedDomainInfo *r)
8352 if (flags & NDR_IN) {
8354 if (flags & NDR_OUT) {
8355 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8357 return NDR_ERR_SUCCESS;
8360 static enum ndr_err_code ndr_pull_lsa_SetTrustedDomainInfo(struct ndr_pull *ndr, int flags, struct lsa_SetTrustedDomainInfo *r)
8362 if (flags & NDR_IN) {
8364 if (flags & NDR_OUT) {
8365 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8367 return NDR_ERR_SUCCESS;
8370 _PUBLIC_ void ndr_print_lsa_SetTrustedDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetTrustedDomainInfo *r)
8372 ndr_print_struct(ndr, name, "lsa_SetTrustedDomainInfo");
8374 if (flags & NDR_SET_VALUES) {
8375 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8377 if (flags & NDR_IN) {
8378 ndr_print_struct(ndr, "in", "lsa_SetTrustedDomainInfo");
8382 if (flags & NDR_OUT) {
8383 ndr_print_struct(ndr, "out", "lsa_SetTrustedDomainInfo");
8385 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8391 static enum ndr_err_code ndr_push_lsa_DeleteTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_DeleteTrustedDomain *r)
8393 if (flags & NDR_IN) {
8394 if (r->in.handle == NULL) {
8395 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8397 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8398 if (r->in.dom_sid == NULL) {
8399 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8401 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
8403 if (flags & NDR_OUT) {
8404 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8406 return NDR_ERR_SUCCESS;
8409 static enum ndr_err_code ndr_pull_lsa_DeleteTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_DeleteTrustedDomain *r)
8411 TALLOC_CTX *_mem_save_handle_0;
8412 TALLOC_CTX *_mem_save_dom_sid_0;
8413 if (flags & NDR_IN) {
8414 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8415 NDR_PULL_ALLOC(ndr, r->in.handle);
8417 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8418 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8419 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8420 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8421 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8422 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
8424 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
8425 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
8426 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
8427 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
8429 if (flags & NDR_OUT) {
8430 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8432 return NDR_ERR_SUCCESS;
8435 _PUBLIC_ void ndr_print_lsa_DeleteTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_DeleteTrustedDomain *r)
8437 ndr_print_struct(ndr, name, "lsa_DeleteTrustedDomain");
8439 if (flags & NDR_SET_VALUES) {
8440 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8442 if (flags & NDR_IN) {
8443 ndr_print_struct(ndr, "in", "lsa_DeleteTrustedDomain");
8445 ndr_print_ptr(ndr, "handle", r->in.handle);
8447 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8449 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
8451 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
8455 if (flags & NDR_OUT) {
8456 ndr_print_struct(ndr, "out", "lsa_DeleteTrustedDomain");
8458 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8464 static enum ndr_err_code ndr_push_lsa_StorePrivateData(struct ndr_push *ndr, int flags, const struct lsa_StorePrivateData *r)
8466 if (flags & NDR_IN) {
8468 if (flags & NDR_OUT) {
8469 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8471 return NDR_ERR_SUCCESS;
8474 static enum ndr_err_code ndr_pull_lsa_StorePrivateData(struct ndr_pull *ndr, int flags, struct lsa_StorePrivateData *r)
8476 if (flags & NDR_IN) {
8478 if (flags & NDR_OUT) {
8479 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8481 return NDR_ERR_SUCCESS;
8484 _PUBLIC_ void ndr_print_lsa_StorePrivateData(struct ndr_print *ndr, const char *name, int flags, const struct lsa_StorePrivateData *r)
8486 ndr_print_struct(ndr, name, "lsa_StorePrivateData");
8488 if (flags & NDR_SET_VALUES) {
8489 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8491 if (flags & NDR_IN) {
8492 ndr_print_struct(ndr, "in", "lsa_StorePrivateData");
8496 if (flags & NDR_OUT) {
8497 ndr_print_struct(ndr, "out", "lsa_StorePrivateData");
8499 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8505 static enum ndr_err_code ndr_push_lsa_RetrievePrivateData(struct ndr_push *ndr, int flags, const struct lsa_RetrievePrivateData *r)
8507 if (flags & NDR_IN) {
8509 if (flags & NDR_OUT) {
8510 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8512 return NDR_ERR_SUCCESS;
8515 static enum ndr_err_code ndr_pull_lsa_RetrievePrivateData(struct ndr_pull *ndr, int flags, struct lsa_RetrievePrivateData *r)
8517 if (flags & NDR_IN) {
8519 if (flags & NDR_OUT) {
8520 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8522 return NDR_ERR_SUCCESS;
8525 _PUBLIC_ void ndr_print_lsa_RetrievePrivateData(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RetrievePrivateData *r)
8527 ndr_print_struct(ndr, name, "lsa_RetrievePrivateData");
8529 if (flags & NDR_SET_VALUES) {
8530 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8532 if (flags & NDR_IN) {
8533 ndr_print_struct(ndr, "in", "lsa_RetrievePrivateData");
8537 if (flags & NDR_OUT) {
8538 ndr_print_struct(ndr, "out", "lsa_RetrievePrivateData");
8540 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8546 _PUBLIC_ enum ndr_err_code ndr_push_lsa_OpenPolicy2(struct ndr_push *ndr, int flags, const struct lsa_OpenPolicy2 *r)
8548 if (flags & NDR_IN) {
8549 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
8550 if (r->in.system_name) {
8551 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
8552 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
8553 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
8554 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8556 if (r->in.attr == NULL) {
8557 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8559 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
8560 NDR_CHECK(ndr_push_lsa_PolicyAccessMask(ndr, NDR_SCALARS, r->in.access_mask));
8562 if (flags & NDR_OUT) {
8563 if (r->out.handle == NULL) {
8564 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8566 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
8567 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8569 return NDR_ERR_SUCCESS;
8572 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy2 *r)
8574 uint32_t _ptr_system_name;
8575 TALLOC_CTX *_mem_save_system_name_0;
8576 TALLOC_CTX *_mem_save_attr_0;
8577 TALLOC_CTX *_mem_save_handle_0;
8578 if (flags & NDR_IN) {
8579 ZERO_STRUCT(r->out);
8581 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
8582 if (_ptr_system_name) {
8583 NDR_PULL_ALLOC(ndr, r->in.system_name);
8585 r->in.system_name = NULL;
8587 if (r->in.system_name) {
8588 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8589 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
8590 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
8591 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
8592 if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
8593 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.system_name), ndr_get_array_length(ndr, &r->in.system_name));
8595 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
8596 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
8597 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
8599 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8600 NDR_PULL_ALLOC(ndr, r->in.attr);
8602 _mem_save_attr_0 = NDR_PULL_GET_MEM_CTX(ndr);
8603 NDR_PULL_SET_MEM_CTX(ndr, r->in.attr, LIBNDR_FLAG_REF_ALLOC);
8604 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
8605 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attr_0, LIBNDR_FLAG_REF_ALLOC);
8606 NDR_CHECK(ndr_pull_lsa_PolicyAccessMask(ndr, NDR_SCALARS, &r->in.access_mask));
8607 NDR_PULL_ALLOC(ndr, r->out.handle);
8608 ZERO_STRUCTP(r->out.handle);
8610 if (flags & NDR_OUT) {
8611 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8612 NDR_PULL_ALLOC(ndr, r->out.handle);
8614 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8615 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
8616 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
8617 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8618 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8620 return NDR_ERR_SUCCESS;
8623 _PUBLIC_ void ndr_print_lsa_OpenPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenPolicy2 *r)
8625 ndr_print_struct(ndr, name, "lsa_OpenPolicy2");
8627 if (flags & NDR_SET_VALUES) {
8628 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8630 if (flags & NDR_IN) {
8631 ndr_print_struct(ndr, "in", "lsa_OpenPolicy2");
8633 ndr_print_ptr(ndr, "system_name", r->in.system_name);
8635 if (r->in.system_name) {
8636 ndr_print_string(ndr, "system_name", r->in.system_name);
8639 ndr_print_ptr(ndr, "attr", r->in.attr);
8641 ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
8643 ndr_print_lsa_PolicyAccessMask(ndr, "access_mask", r->in.access_mask);
8646 if (flags & NDR_OUT) {
8647 ndr_print_struct(ndr, "out", "lsa_OpenPolicy2");
8649 ndr_print_ptr(ndr, "handle", r->out.handle);
8651 ndr_print_policy_handle(ndr, "handle", r->out.handle);
8653 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8659 static enum ndr_err_code ndr_push_lsa_GetUserName(struct ndr_push *ndr, int flags, const struct lsa_GetUserName *r)
8661 if (flags & NDR_IN) {
8662 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
8663 if (r->in.system_name) {
8664 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
8665 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
8666 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
8667 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->in.system_name, ndr_charset_length(r->in.system_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
8669 if (r->in.account_name == NULL) {
8670 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8672 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.account_name));
8673 if (*r->in.account_name) {
8674 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.account_name));
8676 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.authority_name));
8677 if (r->in.authority_name) {
8678 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->in.authority_name));
8679 if (*r->in.authority_name) {
8680 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.authority_name));
8684 if (flags & NDR_OUT) {
8685 if (r->out.account_name == NULL) {
8686 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8688 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.account_name));
8689 if (*r->out.account_name) {
8690 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.account_name));
8692 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.authority_name));
8693 if (r->out.authority_name) {
8694 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.authority_name));
8695 if (*r->out.authority_name) {
8696 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.authority_name));
8699 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8701 return NDR_ERR_SUCCESS;
8704 static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flags, struct lsa_GetUserName *r)
8706 uint32_t _ptr_system_name;
8707 uint32_t _ptr_account_name;
8708 uint32_t _ptr_authority_name;
8709 TALLOC_CTX *_mem_save_system_name_0;
8710 TALLOC_CTX *_mem_save_account_name_0;
8711 TALLOC_CTX *_mem_save_account_name_1;
8712 TALLOC_CTX *_mem_save_authority_name_0;
8713 TALLOC_CTX *_mem_save_authority_name_1;
8714 if (flags & NDR_IN) {
8715 ZERO_STRUCT(r->out);
8717 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
8718 if (_ptr_system_name) {
8719 NDR_PULL_ALLOC(ndr, r->in.system_name);
8721 r->in.system_name = NULL;
8723 if (r->in.system_name) {
8724 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8725 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
8726 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
8727 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
8728 if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
8729 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.system_name), ndr_get_array_length(ndr, &r->in.system_name));
8731 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
8732 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->in.system_name, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t), CH_UTF16));
8733 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
8735 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8736 NDR_PULL_ALLOC(ndr, r->in.account_name);
8738 _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8739 NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, LIBNDR_FLAG_REF_ALLOC);
8740 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
8741 if (_ptr_account_name) {
8742 NDR_PULL_ALLOC(ndr, *r->in.account_name);
8744 *r->in.account_name = NULL;
8746 if (*r->in.account_name) {
8747 _mem_save_account_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
8748 NDR_PULL_SET_MEM_CTX(ndr, *r->in.account_name, 0);
8749 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.account_name));
8750 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_1, 0);
8752 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
8753 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
8754 if (_ptr_authority_name) {
8755 NDR_PULL_ALLOC(ndr, r->in.authority_name);
8757 r->in.authority_name = NULL;
8759 if (r->in.authority_name) {
8760 _mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8761 NDR_PULL_SET_MEM_CTX(ndr, r->in.authority_name, 0);
8762 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
8763 if (_ptr_authority_name) {
8764 NDR_PULL_ALLOC(ndr, *r->in.authority_name);
8766 *r->in.authority_name = NULL;
8768 if (*r->in.authority_name) {
8769 _mem_save_authority_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
8770 NDR_PULL_SET_MEM_CTX(ndr, *r->in.authority_name, 0);
8771 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->in.authority_name));
8772 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_1, 0);
8774 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
8776 NDR_PULL_ALLOC(ndr, r->out.account_name);
8777 *r->out.account_name = *r->in.account_name;
8779 if (flags & NDR_OUT) {
8780 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8781 NDR_PULL_ALLOC(ndr, r->out.account_name);
8783 _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8784 NDR_PULL_SET_MEM_CTX(ndr, r->out.account_name, LIBNDR_FLAG_REF_ALLOC);
8785 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
8786 if (_ptr_account_name) {
8787 NDR_PULL_ALLOC(ndr, *r->out.account_name);
8789 *r->out.account_name = NULL;
8791 if (*r->out.account_name) {
8792 _mem_save_account_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
8793 NDR_PULL_SET_MEM_CTX(ndr, *r->out.account_name, 0);
8794 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.account_name));
8795 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_1, 0);
8797 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, LIBNDR_FLAG_REF_ALLOC);
8798 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
8799 if (_ptr_authority_name) {
8800 NDR_PULL_ALLOC(ndr, r->out.authority_name);
8802 r->out.authority_name = NULL;
8804 if (r->out.authority_name) {
8805 _mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8806 NDR_PULL_SET_MEM_CTX(ndr, r->out.authority_name, 0);
8807 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
8808 if (_ptr_authority_name) {
8809 NDR_PULL_ALLOC(ndr, *r->out.authority_name);
8811 *r->out.authority_name = NULL;
8813 if (*r->out.authority_name) {
8814 _mem_save_authority_name_1 = NDR_PULL_GET_MEM_CTX(ndr);
8815 NDR_PULL_SET_MEM_CTX(ndr, *r->out.authority_name, 0);
8816 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.authority_name));
8817 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_1, 0);
8819 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
8821 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8823 return NDR_ERR_SUCCESS;
8826 _PUBLIC_ void ndr_print_lsa_GetUserName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetUserName *r)
8828 ndr_print_struct(ndr, name, "lsa_GetUserName");
8830 if (flags & NDR_SET_VALUES) {
8831 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8833 if (flags & NDR_IN) {
8834 ndr_print_struct(ndr, "in", "lsa_GetUserName");
8836 ndr_print_ptr(ndr, "system_name", r->in.system_name);
8838 if (r->in.system_name) {
8839 ndr_print_string(ndr, "system_name", r->in.system_name);
8842 ndr_print_ptr(ndr, "account_name", r->in.account_name);
8844 ndr_print_ptr(ndr, "account_name", *r->in.account_name);
8846 if (*r->in.account_name) {
8847 ndr_print_lsa_String(ndr, "account_name", *r->in.account_name);
8851 ndr_print_ptr(ndr, "authority_name", r->in.authority_name);
8853 if (r->in.authority_name) {
8854 ndr_print_ptr(ndr, "authority_name", *r->in.authority_name);
8856 if (*r->in.authority_name) {
8857 ndr_print_lsa_String(ndr, "authority_name", *r->in.authority_name);
8864 if (flags & NDR_OUT) {
8865 ndr_print_struct(ndr, "out", "lsa_GetUserName");
8867 ndr_print_ptr(ndr, "account_name", r->out.account_name);
8869 ndr_print_ptr(ndr, "account_name", *r->out.account_name);
8871 if (*r->out.account_name) {
8872 ndr_print_lsa_String(ndr, "account_name", *r->out.account_name);
8876 ndr_print_ptr(ndr, "authority_name", r->out.authority_name);
8878 if (r->out.authority_name) {
8879 ndr_print_ptr(ndr, "authority_name", *r->out.authority_name);
8881 if (*r->out.authority_name) {
8882 ndr_print_lsa_String(ndr, "authority_name", *r->out.authority_name);
8887 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8893 static enum ndr_err_code ndr_push_lsa_QueryInfoPolicy2(struct ndr_push *ndr, int flags, const struct lsa_QueryInfoPolicy2 *r)
8895 if (flags & NDR_IN) {
8896 if (r->in.handle == NULL) {
8897 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8899 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8900 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
8902 if (flags & NDR_OUT) {
8903 if (r->out.info == NULL) {
8904 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8906 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.info));
8908 NDR_CHECK(ndr_push_set_switch_value(ndr, *r->out.info, r->in.level));
8909 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8911 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8913 return NDR_ERR_SUCCESS;
8916 static enum ndr_err_code ndr_pull_lsa_QueryInfoPolicy2(struct ndr_pull *ndr, int flags, struct lsa_QueryInfoPolicy2 *r)
8919 TALLOC_CTX *_mem_save_handle_0;
8920 TALLOC_CTX *_mem_save_info_0;
8921 TALLOC_CTX *_mem_save_info_1;
8922 if (flags & NDR_IN) {
8923 ZERO_STRUCT(r->out);
8925 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8926 NDR_PULL_ALLOC(ndr, r->in.handle);
8928 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8929 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8930 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8931 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8932 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
8933 NDR_PULL_ALLOC(ndr, r->out.info);
8934 ZERO_STRUCTP(r->out.info);
8936 if (flags & NDR_OUT) {
8937 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8938 NDR_PULL_ALLOC(ndr, r->out.info);
8940 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8941 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
8942 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8944 NDR_PULL_ALLOC(ndr, *r->out.info);
8946 *r->out.info = NULL;
8949 _mem_save_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
8950 NDR_PULL_SET_MEM_CTX(ndr, *r->out.info, 0);
8951 NDR_CHECK(ndr_pull_set_switch_value(ndr, *r->out.info, r->in.level));
8952 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.info));
8953 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_1, 0);
8955 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
8956 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8958 return NDR_ERR_SUCCESS;
8961 _PUBLIC_ void ndr_print_lsa_QueryInfoPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryInfoPolicy2 *r)
8963 ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy2");
8965 if (flags & NDR_SET_VALUES) {
8966 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8968 if (flags & NDR_IN) {
8969 ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy2");
8971 ndr_print_ptr(ndr, "handle", r->in.handle);
8973 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8975 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
8978 if (flags & NDR_OUT) {
8979 ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy2");
8981 ndr_print_ptr(ndr, "info", r->out.info);
8983 ndr_print_ptr(ndr, "info", *r->out.info);
8986 ndr_print_set_switch_value(ndr, *r->out.info, r->in.level);
8987 ndr_print_lsa_PolicyInformation(ndr, "info", *r->out.info);
8991 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8997 static enum ndr_err_code ndr_push_lsa_SetInfoPolicy2(struct ndr_push *ndr, int flags, const struct lsa_SetInfoPolicy2 *r)
8999 if (flags & NDR_IN) {
9000 if (r->in.handle == NULL) {
9001 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9003 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9004 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
9005 if (r->in.info == NULL) {
9006 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9008 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9009 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9011 if (flags & NDR_OUT) {
9012 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9014 return NDR_ERR_SUCCESS;
9017 static enum ndr_err_code ndr_pull_lsa_SetInfoPolicy2(struct ndr_pull *ndr, int flags, struct lsa_SetInfoPolicy2 *r)
9019 TALLOC_CTX *_mem_save_handle_0;
9020 TALLOC_CTX *_mem_save_info_0;
9021 if (flags & NDR_IN) {
9022 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9023 NDR_PULL_ALLOC(ndr, r->in.handle);
9025 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9026 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9027 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9028 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9029 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
9030 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9031 NDR_PULL_ALLOC(ndr, r->in.info);
9033 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9034 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
9035 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9036 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9037 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9039 if (flags & NDR_OUT) {
9040 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9042 return NDR_ERR_SUCCESS;
9045 _PUBLIC_ void ndr_print_lsa_SetInfoPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInfoPolicy2 *r)
9047 ndr_print_struct(ndr, name, "lsa_SetInfoPolicy2");
9049 if (flags & NDR_SET_VALUES) {
9050 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9052 if (flags & NDR_IN) {
9053 ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy2");
9055 ndr_print_ptr(ndr, "handle", r->in.handle);
9057 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9059 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
9060 ndr_print_ptr(ndr, "info", r->in.info);
9062 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9063 ndr_print_lsa_PolicyInformation(ndr, "info", r->in.info);
9067 if (flags & NDR_OUT) {
9068 ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy2");
9070 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9076 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfoByName(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfoByName *r)
9078 if (flags & NDR_IN) {
9079 if (r->in.handle == NULL) {
9080 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9082 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9083 if (r->in.trusted_domain == NULL) {
9084 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9086 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain));
9087 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
9089 if (flags & NDR_OUT) {
9090 if (r->out.info == NULL) {
9091 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9093 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
9094 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9095 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9097 return NDR_ERR_SUCCESS;
9100 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfoByName(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfoByName *r)
9102 TALLOC_CTX *_mem_save_handle_0;
9103 TALLOC_CTX *_mem_save_trusted_domain_0;
9104 TALLOC_CTX *_mem_save_info_0;
9105 if (flags & NDR_IN) {
9106 ZERO_STRUCT(r->out);
9108 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9109 NDR_PULL_ALLOC(ndr, r->in.handle);
9111 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9112 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9113 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9114 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9115 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9116 NDR_PULL_ALLOC(ndr, r->in.trusted_domain);
9118 _mem_save_trusted_domain_0 = NDR_PULL_GET_MEM_CTX(ndr);
9119 NDR_PULL_SET_MEM_CTX(ndr, r->in.trusted_domain, LIBNDR_FLAG_REF_ALLOC);
9120 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain));
9121 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trusted_domain_0, LIBNDR_FLAG_REF_ALLOC);
9122 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
9123 NDR_PULL_ALLOC(ndr, r->out.info);
9124 ZERO_STRUCTP(r->out.info);
9126 if (flags & NDR_OUT) {
9127 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9128 NDR_PULL_ALLOC(ndr, r->out.info);
9130 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9131 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, LIBNDR_FLAG_REF_ALLOC);
9132 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
9133 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9134 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
9135 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9137 return NDR_ERR_SUCCESS;
9140 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfoByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfoByName *r)
9142 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfoByName");
9144 if (flags & NDR_SET_VALUES) {
9145 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9147 if (flags & NDR_IN) {
9148 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfoByName");
9150 ndr_print_ptr(ndr, "handle", r->in.handle);
9152 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9154 ndr_print_ptr(ndr, "trusted_domain", r->in.trusted_domain);
9156 ndr_print_lsa_String(ndr, "trusted_domain", r->in.trusted_domain);
9158 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
9161 if (flags & NDR_OUT) {
9162 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfoByName");
9164 ndr_print_ptr(ndr, "info", r->out.info);
9166 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
9167 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->out.info);
9169 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9175 static enum ndr_err_code ndr_push_lsa_SetTrustedDomainInfoByName(struct ndr_push *ndr, int flags, const struct lsa_SetTrustedDomainInfoByName *r)
9177 if (flags & NDR_IN) {
9178 if (r->in.handle == NULL) {
9179 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9181 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9182 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
9183 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
9184 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
9186 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9187 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9190 if (flags & NDR_OUT) {
9191 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9193 return NDR_ERR_SUCCESS;
9196 static enum ndr_err_code ndr_pull_lsa_SetTrustedDomainInfoByName(struct ndr_pull *ndr, int flags, struct lsa_SetTrustedDomainInfoByName *r)
9199 TALLOC_CTX *_mem_save_handle_0;
9200 TALLOC_CTX *_mem_save_info_0;
9201 if (flags & NDR_IN) {
9202 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9203 NDR_PULL_ALLOC(ndr, r->in.handle);
9205 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9206 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9207 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9208 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9209 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
9210 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
9211 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9213 NDR_PULL_ALLOC(ndr, r->in.info);
9218 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9219 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
9220 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9221 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9222 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
9225 if (flags & NDR_OUT) {
9226 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9228 return NDR_ERR_SUCCESS;
9231 _PUBLIC_ void ndr_print_lsa_SetTrustedDomainInfoByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetTrustedDomainInfoByName *r)
9233 ndr_print_struct(ndr, name, "lsa_SetTrustedDomainInfoByName");
9235 if (flags & NDR_SET_VALUES) {
9236 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9238 if (flags & NDR_IN) {
9239 ndr_print_struct(ndr, "in", "lsa_SetTrustedDomainInfoByName");
9241 ndr_print_ptr(ndr, "handle", r->in.handle);
9243 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9245 ndr_print_lsa_String(ndr, "trusted_domain", &r->in.trusted_domain);
9246 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
9247 ndr_print_ptr(ndr, "info", r->in.info);
9250 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9251 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->in.info);
9256 if (flags & NDR_OUT) {
9257 ndr_print_struct(ndr, "out", "lsa_SetTrustedDomainInfoByName");
9259 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9265 static enum ndr_err_code ndr_push_lsa_EnumTrustedDomainsEx(struct ndr_push *ndr, int flags, const struct lsa_EnumTrustedDomainsEx *r)
9267 if (flags & NDR_IN) {
9268 if (r->in.handle == NULL) {
9269 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9271 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9272 if (r->in.resume_handle == NULL) {
9273 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9275 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
9276 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
9278 if (flags & NDR_OUT) {
9279 if (r->out.resume_handle == NULL) {
9280 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9282 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
9283 if (r->out.domains == NULL) {
9284 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9286 NDR_CHECK(ndr_push_lsa_DomainListEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9287 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9289 return NDR_ERR_SUCCESS;
9292 static enum ndr_err_code ndr_pull_lsa_EnumTrustedDomainsEx(struct ndr_pull *ndr, int flags, struct lsa_EnumTrustedDomainsEx *r)
9294 TALLOC_CTX *_mem_save_handle_0;
9295 TALLOC_CTX *_mem_save_resume_handle_0;
9296 TALLOC_CTX *_mem_save_domains_0;
9297 if (flags & NDR_IN) {
9298 ZERO_STRUCT(r->out);
9300 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9301 NDR_PULL_ALLOC(ndr, r->in.handle);
9303 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9304 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9305 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9306 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9307 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9308 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
9310 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9311 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
9312 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
9313 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
9314 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
9315 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
9316 *r->out.resume_handle = *r->in.resume_handle;
9317 NDR_PULL_ALLOC(ndr, r->out.domains);
9318 ZERO_STRUCTP(r->out.domains);
9320 if (flags & NDR_OUT) {
9321 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9322 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
9324 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9325 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
9326 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
9327 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
9328 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9329 NDR_PULL_ALLOC(ndr, r->out.domains);
9331 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
9332 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
9333 NDR_CHECK(ndr_pull_lsa_DomainListEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9334 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
9335 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9337 return NDR_ERR_SUCCESS;
9340 _PUBLIC_ void ndr_print_lsa_EnumTrustedDomainsEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumTrustedDomainsEx *r)
9342 ndr_print_struct(ndr, name, "lsa_EnumTrustedDomainsEx");
9344 if (flags & NDR_SET_VALUES) {
9345 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9347 if (flags & NDR_IN) {
9348 ndr_print_struct(ndr, "in", "lsa_EnumTrustedDomainsEx");
9350 ndr_print_ptr(ndr, "handle", r->in.handle);
9352 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9354 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
9356 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
9358 ndr_print_uint32(ndr, "max_size", r->in.max_size);
9361 if (flags & NDR_OUT) {
9362 ndr_print_struct(ndr, "out", "lsa_EnumTrustedDomainsEx");
9364 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
9366 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
9368 ndr_print_ptr(ndr, "domains", r->out.domains);
9370 ndr_print_lsa_DomainListEx(ndr, "domains", r->out.domains);
9372 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9378 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomainEx(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomainEx *r)
9380 if (flags & NDR_IN) {
9382 if (flags & NDR_OUT) {
9383 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9385 return NDR_ERR_SUCCESS;
9388 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomainEx(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomainEx *r)
9390 if (flags & NDR_IN) {
9392 if (flags & NDR_OUT) {
9393 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9395 return NDR_ERR_SUCCESS;
9398 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomainEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomainEx *r)
9400 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomainEx");
9402 if (flags & NDR_SET_VALUES) {
9403 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9405 if (flags & NDR_IN) {
9406 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomainEx");
9410 if (flags & NDR_OUT) {
9411 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomainEx");
9413 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9419 static enum ndr_err_code ndr_push_lsa_CloseTrustedDomainEx(struct ndr_push *ndr, int flags, const struct lsa_CloseTrustedDomainEx *r)
9421 if (flags & NDR_IN) {
9422 if (r->in.handle == NULL) {
9423 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9425 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9427 if (flags & NDR_OUT) {
9428 if (r->out.handle == NULL) {
9429 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9431 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
9432 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9434 return NDR_ERR_SUCCESS;
9437 static enum ndr_err_code ndr_pull_lsa_CloseTrustedDomainEx(struct ndr_pull *ndr, int flags, struct lsa_CloseTrustedDomainEx *r)
9439 TALLOC_CTX *_mem_save_handle_0;
9440 if (flags & NDR_IN) {
9441 ZERO_STRUCT(r->out);
9443 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9444 NDR_PULL_ALLOC(ndr, r->in.handle);
9446 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9447 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9448 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9449 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9450 NDR_PULL_ALLOC(ndr, r->out.handle);
9451 *r->out.handle = *r->in.handle;
9453 if (flags & NDR_OUT) {
9454 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9455 NDR_PULL_ALLOC(ndr, r->out.handle);
9457 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9458 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
9459 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
9460 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9461 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9463 return NDR_ERR_SUCCESS;
9466 _PUBLIC_ void ndr_print_lsa_CloseTrustedDomainEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CloseTrustedDomainEx *r)
9468 ndr_print_struct(ndr, name, "lsa_CloseTrustedDomainEx");
9470 if (flags & NDR_SET_VALUES) {
9471 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9473 if (flags & NDR_IN) {
9474 ndr_print_struct(ndr, "in", "lsa_CloseTrustedDomainEx");
9476 ndr_print_ptr(ndr, "handle", r->in.handle);
9478 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9482 if (flags & NDR_OUT) {
9483 ndr_print_struct(ndr, "out", "lsa_CloseTrustedDomainEx");
9485 ndr_print_ptr(ndr, "handle", r->out.handle);
9487 ndr_print_policy_handle(ndr, "handle", r->out.handle);
9489 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9495 static enum ndr_err_code ndr_push_lsa_QueryDomainInformationPolicy(struct ndr_push *ndr, int flags, const struct lsa_QueryDomainInformationPolicy *r)
9497 if (flags & NDR_IN) {
9498 if (r->in.handle == NULL) {
9499 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9501 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9502 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9504 if (flags & NDR_OUT) {
9505 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
9507 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
9508 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9510 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9512 return NDR_ERR_SUCCESS;
9515 static enum ndr_err_code ndr_pull_lsa_QueryDomainInformationPolicy(struct ndr_pull *ndr, int flags, struct lsa_QueryDomainInformationPolicy *r)
9518 TALLOC_CTX *_mem_save_handle_0;
9519 TALLOC_CTX *_mem_save_info_0;
9520 if (flags & NDR_IN) {
9521 ZERO_STRUCT(r->out);
9523 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9524 NDR_PULL_ALLOC(ndr, r->in.handle);
9526 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9527 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9528 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9529 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9530 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9532 if (flags & NDR_OUT) {
9533 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9535 NDR_PULL_ALLOC(ndr, r->out.info);
9540 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9541 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
9542 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
9543 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
9544 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
9546 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9548 return NDR_ERR_SUCCESS;
9551 _PUBLIC_ void ndr_print_lsa_QueryDomainInformationPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryDomainInformationPolicy *r)
9553 ndr_print_struct(ndr, name, "lsa_QueryDomainInformationPolicy");
9555 if (flags & NDR_SET_VALUES) {
9556 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9558 if (flags & NDR_IN) {
9559 ndr_print_struct(ndr, "in", "lsa_QueryDomainInformationPolicy");
9561 ndr_print_ptr(ndr, "handle", r->in.handle);
9563 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9565 ndr_print_uint16(ndr, "level", r->in.level);
9568 if (flags & NDR_OUT) {
9569 ndr_print_struct(ndr, "out", "lsa_QueryDomainInformationPolicy");
9571 ndr_print_ptr(ndr, "info", r->out.info);
9574 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
9575 ndr_print_lsa_DomainInformationPolicy(ndr, "info", r->out.info);
9578 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9584 static enum ndr_err_code ndr_push_lsa_SetDomainInformationPolicy(struct ndr_push *ndr, int flags, const struct lsa_SetDomainInformationPolicy *r)
9586 if (flags & NDR_IN) {
9587 if (r->in.handle == NULL) {
9588 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9590 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9591 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9592 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
9594 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
9595 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9598 if (flags & NDR_OUT) {
9599 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9601 return NDR_ERR_SUCCESS;
9604 static enum ndr_err_code ndr_pull_lsa_SetDomainInformationPolicy(struct ndr_pull *ndr, int flags, struct lsa_SetDomainInformationPolicy *r)
9607 TALLOC_CTX *_mem_save_handle_0;
9608 TALLOC_CTX *_mem_save_info_0;
9609 if (flags & NDR_IN) {
9610 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9611 NDR_PULL_ALLOC(ndr, r->in.handle);
9613 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9614 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9615 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9616 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9617 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9618 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
9620 NDR_PULL_ALLOC(ndr, r->in.info);
9625 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
9626 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
9627 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
9628 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
9629 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
9632 if (flags & NDR_OUT) {
9633 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9635 return NDR_ERR_SUCCESS;
9638 _PUBLIC_ void ndr_print_lsa_SetDomainInformationPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetDomainInformationPolicy *r)
9640 ndr_print_struct(ndr, name, "lsa_SetDomainInformationPolicy");
9642 if (flags & NDR_SET_VALUES) {
9643 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9645 if (flags & NDR_IN) {
9646 ndr_print_struct(ndr, "in", "lsa_SetDomainInformationPolicy");
9648 ndr_print_ptr(ndr, "handle", r->in.handle);
9650 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9652 ndr_print_uint16(ndr, "level", r->in.level);
9653 ndr_print_ptr(ndr, "info", r->in.info);
9656 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
9657 ndr_print_lsa_DomainInformationPolicy(ndr, "info", r->in.info);
9662 if (flags & NDR_OUT) {
9663 ndr_print_struct(ndr, "out", "lsa_SetDomainInformationPolicy");
9665 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9671 static enum ndr_err_code ndr_push_lsa_OpenTrustedDomainByName(struct ndr_push *ndr, int flags, const struct lsa_OpenTrustedDomainByName *r)
9673 if (flags & NDR_IN) {
9674 if (r->in.handle == NULL) {
9675 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9677 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9678 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
9679 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
9681 if (flags & NDR_OUT) {
9682 if (r->out.trustdom_handle == NULL) {
9683 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9685 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
9686 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9688 return NDR_ERR_SUCCESS;
9691 static enum ndr_err_code ndr_pull_lsa_OpenTrustedDomainByName(struct ndr_pull *ndr, int flags, struct lsa_OpenTrustedDomainByName *r)
9693 TALLOC_CTX *_mem_save_handle_0;
9694 TALLOC_CTX *_mem_save_trustdom_handle_0;
9695 if (flags & NDR_IN) {
9696 ZERO_STRUCT(r->out);
9698 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9699 NDR_PULL_ALLOC(ndr, r->in.handle);
9701 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9702 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9703 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9704 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9705 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
9706 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
9707 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
9708 ZERO_STRUCTP(r->out.trustdom_handle);
9710 if (flags & NDR_OUT) {
9711 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9712 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
9714 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9715 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
9716 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
9717 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
9718 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9720 return NDR_ERR_SUCCESS;
9723 _PUBLIC_ void ndr_print_lsa_OpenTrustedDomainByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenTrustedDomainByName *r)
9725 ndr_print_struct(ndr, name, "lsa_OpenTrustedDomainByName");
9727 if (flags & NDR_SET_VALUES) {
9728 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9730 if (flags & NDR_IN) {
9731 ndr_print_struct(ndr, "in", "lsa_OpenTrustedDomainByName");
9733 ndr_print_ptr(ndr, "handle", r->in.handle);
9735 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9737 ndr_print_lsa_String(ndr, "name", &r->in.name);
9738 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
9741 if (flags & NDR_OUT) {
9742 ndr_print_struct(ndr, "out", "lsa_OpenTrustedDomainByName");
9744 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
9746 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
9748 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9754 static enum ndr_err_code ndr_push_lsa_TestCall(struct ndr_push *ndr, int flags, const struct lsa_TestCall *r)
9756 if (flags & NDR_IN) {
9758 if (flags & NDR_OUT) {
9759 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9761 return NDR_ERR_SUCCESS;
9764 static enum ndr_err_code ndr_pull_lsa_TestCall(struct ndr_pull *ndr, int flags, struct lsa_TestCall *r)
9766 if (flags & NDR_IN) {
9768 if (flags & NDR_OUT) {
9769 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9771 return NDR_ERR_SUCCESS;
9774 _PUBLIC_ void ndr_print_lsa_TestCall(struct ndr_print *ndr, const char *name, int flags, const struct lsa_TestCall *r)
9776 ndr_print_struct(ndr, name, "lsa_TestCall");
9778 if (flags & NDR_SET_VALUES) {
9779 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9781 if (flags & NDR_IN) {
9782 ndr_print_struct(ndr, "in", "lsa_TestCall");
9786 if (flags & NDR_OUT) {
9787 ndr_print_struct(ndr, "out", "lsa_TestCall");
9789 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9795 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupSids2(struct ndr_push *ndr, int flags, const struct lsa_LookupSids2 *r)
9797 if (flags & NDR_IN) {
9798 if (r->in.handle == NULL) {
9799 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9801 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9802 if (r->in.sids == NULL) {
9803 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9805 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9806 if (r->in.names == NULL) {
9807 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9809 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
9810 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9811 if (r->in.count == NULL) {
9812 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9814 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
9815 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
9816 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
9818 if (flags & NDR_OUT) {
9819 if (r->out.domains == NULL) {
9820 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9822 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
9823 if (*r->out.domains) {
9824 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
9826 if (r->out.names == NULL) {
9827 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9829 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
9830 if (r->out.count == NULL) {
9831 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9833 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
9834 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9836 return NDR_ERR_SUCCESS;
9839 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupSids2(struct ndr_pull *ndr, int flags, struct lsa_LookupSids2 *r)
9841 uint32_t _ptr_domains;
9842 TALLOC_CTX *_mem_save_handle_0;
9843 TALLOC_CTX *_mem_save_sids_0;
9844 TALLOC_CTX *_mem_save_domains_0;
9845 TALLOC_CTX *_mem_save_domains_1;
9846 TALLOC_CTX *_mem_save_names_0;
9847 TALLOC_CTX *_mem_save_count_0;
9848 if (flags & NDR_IN) {
9849 ZERO_STRUCT(r->out);
9851 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9852 NDR_PULL_ALLOC(ndr, r->in.handle);
9854 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9855 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9856 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9857 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9858 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9859 NDR_PULL_ALLOC(ndr, r->in.sids);
9861 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9862 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
9863 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9864 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
9865 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9866 NDR_PULL_ALLOC(ndr, r->in.names);
9868 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
9869 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
9870 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
9871 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
9872 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9873 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9874 NDR_PULL_ALLOC(ndr, r->in.count);
9876 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9877 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
9878 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
9879 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9880 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
9881 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
9882 NDR_PULL_ALLOC(ndr, r->out.domains);
9883 ZERO_STRUCTP(r->out.domains);
9884 NDR_PULL_ALLOC(ndr, r->out.names);
9885 *r->out.names = *r->in.names;
9886 NDR_PULL_ALLOC(ndr, r->out.count);
9887 *r->out.count = *r->in.count;
9889 if (flags & NDR_OUT) {
9890 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9891 NDR_PULL_ALLOC(ndr, r->out.domains);
9893 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
9894 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
9895 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
9897 NDR_PULL_ALLOC(ndr, *r->out.domains);
9899 *r->out.domains = NULL;
9901 if (*r->out.domains) {
9902 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
9903 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
9904 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
9905 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
9907 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
9908 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9909 NDR_PULL_ALLOC(ndr, r->out.names);
9911 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
9912 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
9913 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
9914 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
9915 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9916 NDR_PULL_ALLOC(ndr, r->out.count);
9918 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9919 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
9920 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
9921 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9922 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9924 return NDR_ERR_SUCCESS;
9927 _PUBLIC_ void ndr_print_lsa_LookupSids2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids2 *r)
9929 ndr_print_struct(ndr, name, "lsa_LookupSids2");
9931 if (flags & NDR_SET_VALUES) {
9932 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9934 if (flags & NDR_IN) {
9935 ndr_print_struct(ndr, "in", "lsa_LookupSids2");
9937 ndr_print_ptr(ndr, "handle", r->in.handle);
9939 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9941 ndr_print_ptr(ndr, "sids", r->in.sids);
9943 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
9945 ndr_print_ptr(ndr, "names", r->in.names);
9947 ndr_print_lsa_TransNameArray2(ndr, "names", r->in.names);
9949 ndr_print_uint16(ndr, "level", r->in.level);
9950 ndr_print_ptr(ndr, "count", r->in.count);
9952 ndr_print_uint32(ndr, "count", *r->in.count);
9954 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
9955 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
9958 if (flags & NDR_OUT) {
9959 ndr_print_struct(ndr, "out", "lsa_LookupSids2");
9961 ndr_print_ptr(ndr, "domains", r->out.domains);
9963 ndr_print_ptr(ndr, "domains", *r->out.domains);
9965 if (*r->out.domains) {
9966 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
9970 ndr_print_ptr(ndr, "names", r->out.names);
9972 ndr_print_lsa_TransNameArray2(ndr, "names", r->out.names);
9974 ndr_print_ptr(ndr, "count", r->out.count);
9976 ndr_print_uint32(ndr, "count", *r->out.count);
9978 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9984 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames2(struct ndr_push *ndr, int flags, const struct lsa_LookupNames2 *r)
9986 uint32_t cntr_names_0;
9987 if (flags & NDR_IN) {
9988 if (r->in.handle == NULL) {
9989 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9991 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9992 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
9993 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
9994 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9995 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
9997 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9998 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10000 if (r->in.sids == NULL) {
10001 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10003 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10004 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
10005 if (r->in.count == NULL) {
10006 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10008 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
10009 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
10010 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
10012 if (flags & NDR_OUT) {
10013 if (r->out.domains == NULL) {
10014 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10016 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
10017 if (*r->out.domains) {
10018 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10020 if (r->out.sids == NULL) {
10021 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10023 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10024 if (r->out.count == NULL) {
10025 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10027 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
10028 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10030 return NDR_ERR_SUCCESS;
10033 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames2(struct ndr_pull *ndr, int flags, struct lsa_LookupNames2 *r)
10035 uint32_t cntr_names_0;
10036 uint32_t _ptr_domains;
10037 TALLOC_CTX *_mem_save_handle_0;
10038 TALLOC_CTX *_mem_save_names_0;
10039 TALLOC_CTX *_mem_save_domains_0;
10040 TALLOC_CTX *_mem_save_domains_1;
10041 TALLOC_CTX *_mem_save_sids_0;
10042 TALLOC_CTX *_mem_save_count_0;
10043 if (flags & NDR_IN) {
10044 ZERO_STRUCT(r->out);
10046 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10047 NDR_PULL_ALLOC(ndr, r->in.handle);
10049 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10050 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10051 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
10052 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10053 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
10054 if (r->in.num_names < 0 || r->in.num_names > 1000) {
10055 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
10057 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
10058 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
10059 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10060 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
10061 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10062 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10064 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10065 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10067 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
10068 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10069 NDR_PULL_ALLOC(ndr, r->in.sids);
10071 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10072 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10073 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10074 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10075 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
10076 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10077 NDR_PULL_ALLOC(ndr, r->in.count);
10079 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10080 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
10081 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
10082 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10083 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
10084 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
10085 NDR_PULL_ALLOC(ndr, r->out.domains);
10086 ZERO_STRUCTP(r->out.domains);
10087 NDR_PULL_ALLOC(ndr, r->out.sids);
10088 *r->out.sids = *r->in.sids;
10089 NDR_PULL_ALLOC(ndr, r->out.count);
10090 *r->out.count = *r->in.count;
10092 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
10095 if (flags & NDR_OUT) {
10096 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10097 NDR_PULL_ALLOC(ndr, r->out.domains);
10099 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10100 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
10101 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
10102 if (_ptr_domains) {
10103 NDR_PULL_ALLOC(ndr, *r->out.domains);
10105 *r->out.domains = NULL;
10107 if (*r->out.domains) {
10108 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
10109 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
10110 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10111 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
10113 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
10114 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10115 NDR_PULL_ALLOC(ndr, r->out.sids);
10117 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10118 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
10119 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10120 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10121 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10122 NDR_PULL_ALLOC(ndr, r->out.count);
10124 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10125 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
10126 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
10127 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10128 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10130 return NDR_ERR_SUCCESS;
10133 _PUBLIC_ void ndr_print_lsa_LookupNames2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames2 *r)
10135 uint32_t cntr_names_0;
10136 ndr_print_struct(ndr, name, "lsa_LookupNames2");
10138 if (flags & NDR_SET_VALUES) {
10139 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10141 if (flags & NDR_IN) {
10142 ndr_print_struct(ndr, "in", "lsa_LookupNames2");
10144 ndr_print_ptr(ndr, "handle", r->in.handle);
10146 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10148 ndr_print_uint32(ndr, "num_names", r->in.num_names);
10149 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
10151 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
10153 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
10154 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
10159 ndr_print_ptr(ndr, "sids", r->in.sids);
10161 ndr_print_lsa_TransSidArray2(ndr, "sids", r->in.sids);
10163 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
10164 ndr_print_ptr(ndr, "count", r->in.count);
10166 ndr_print_uint32(ndr, "count", *r->in.count);
10168 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
10169 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
10172 if (flags & NDR_OUT) {
10173 ndr_print_struct(ndr, "out", "lsa_LookupNames2");
10175 ndr_print_ptr(ndr, "domains", r->out.domains);
10177 ndr_print_ptr(ndr, "domains", *r->out.domains);
10179 if (*r->out.domains) {
10180 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
10184 ndr_print_ptr(ndr, "sids", r->out.sids);
10186 ndr_print_lsa_TransSidArray2(ndr, "sids", r->out.sids);
10188 ndr_print_ptr(ndr, "count", r->out.count);
10190 ndr_print_uint32(ndr, "count", *r->out.count);
10192 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10198 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomainEx2(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomainEx2 *r)
10200 if (flags & NDR_IN) {
10202 if (flags & NDR_OUT) {
10203 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10205 return NDR_ERR_SUCCESS;
10208 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomainEx2(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomainEx2 *r)
10210 if (flags & NDR_IN) {
10212 if (flags & NDR_OUT) {
10213 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10215 return NDR_ERR_SUCCESS;
10218 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomainEx2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomainEx2 *r)
10220 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomainEx2");
10222 if (flags & NDR_SET_VALUES) {
10223 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10225 if (flags & NDR_IN) {
10226 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomainEx2");
10230 if (flags & NDR_OUT) {
10231 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomainEx2");
10233 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10239 static enum ndr_err_code ndr_push_lsa_CREDRWRITE(struct ndr_push *ndr, int flags, const struct lsa_CREDRWRITE *r)
10241 if (flags & NDR_IN) {
10243 if (flags & NDR_OUT) {
10244 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10246 return NDR_ERR_SUCCESS;
10249 static enum ndr_err_code ndr_pull_lsa_CREDRWRITE(struct ndr_pull *ndr, int flags, struct lsa_CREDRWRITE *r)
10251 if (flags & NDR_IN) {
10253 if (flags & NDR_OUT) {
10254 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10256 return NDR_ERR_SUCCESS;
10259 _PUBLIC_ void ndr_print_lsa_CREDRWRITE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRWRITE *r)
10261 ndr_print_struct(ndr, name, "lsa_CREDRWRITE");
10263 if (flags & NDR_SET_VALUES) {
10264 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10266 if (flags & NDR_IN) {
10267 ndr_print_struct(ndr, "in", "lsa_CREDRWRITE");
10271 if (flags & NDR_OUT) {
10272 ndr_print_struct(ndr, "out", "lsa_CREDRWRITE");
10274 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10280 static enum ndr_err_code ndr_push_lsa_CREDRREAD(struct ndr_push *ndr, int flags, const struct lsa_CREDRREAD *r)
10282 if (flags & NDR_IN) {
10284 if (flags & NDR_OUT) {
10285 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10287 return NDR_ERR_SUCCESS;
10290 static enum ndr_err_code ndr_pull_lsa_CREDRREAD(struct ndr_pull *ndr, int flags, struct lsa_CREDRREAD *r)
10292 if (flags & NDR_IN) {
10294 if (flags & NDR_OUT) {
10295 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10297 return NDR_ERR_SUCCESS;
10300 _PUBLIC_ void ndr_print_lsa_CREDRREAD(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRREAD *r)
10302 ndr_print_struct(ndr, name, "lsa_CREDRREAD");
10304 if (flags & NDR_SET_VALUES) {
10305 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10307 if (flags & NDR_IN) {
10308 ndr_print_struct(ndr, "in", "lsa_CREDRREAD");
10312 if (flags & NDR_OUT) {
10313 ndr_print_struct(ndr, "out", "lsa_CREDRREAD");
10315 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10321 static enum ndr_err_code ndr_push_lsa_CREDRENUMERATE(struct ndr_push *ndr, int flags, const struct lsa_CREDRENUMERATE *r)
10323 if (flags & NDR_IN) {
10325 if (flags & NDR_OUT) {
10326 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10328 return NDR_ERR_SUCCESS;
10331 static enum ndr_err_code ndr_pull_lsa_CREDRENUMERATE(struct ndr_pull *ndr, int flags, struct lsa_CREDRENUMERATE *r)
10333 if (flags & NDR_IN) {
10335 if (flags & NDR_OUT) {
10336 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10338 return NDR_ERR_SUCCESS;
10341 _PUBLIC_ void ndr_print_lsa_CREDRENUMERATE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRENUMERATE *r)
10343 ndr_print_struct(ndr, name, "lsa_CREDRENUMERATE");
10345 if (flags & NDR_SET_VALUES) {
10346 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10348 if (flags & NDR_IN) {
10349 ndr_print_struct(ndr, "in", "lsa_CREDRENUMERATE");
10353 if (flags & NDR_OUT) {
10354 ndr_print_struct(ndr, "out", "lsa_CREDRENUMERATE");
10356 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10362 static enum ndr_err_code ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_push *ndr, int flags, const struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
10364 if (flags & NDR_IN) {
10366 if (flags & NDR_OUT) {
10367 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10369 return NDR_ERR_SUCCESS;
10372 static enum ndr_err_code ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_pull *ndr, int flags, struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
10374 if (flags & NDR_IN) {
10376 if (flags & NDR_OUT) {
10377 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10379 return NDR_ERR_SUCCESS;
10382 _PUBLIC_ void ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
10384 ndr_print_struct(ndr, name, "lsa_CREDRWRITEDOMAINCREDENTIALS");
10386 if (flags & NDR_SET_VALUES) {
10387 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10389 if (flags & NDR_IN) {
10390 ndr_print_struct(ndr, "in", "lsa_CREDRWRITEDOMAINCREDENTIALS");
10394 if (flags & NDR_OUT) {
10395 ndr_print_struct(ndr, "out", "lsa_CREDRWRITEDOMAINCREDENTIALS");
10397 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10403 static enum ndr_err_code ndr_push_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_push *ndr, int flags, const struct lsa_CREDRREADDOMAINCREDENTIALS *r)
10405 if (flags & NDR_IN) {
10407 if (flags & NDR_OUT) {
10408 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10410 return NDR_ERR_SUCCESS;
10413 static enum ndr_err_code ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_pull *ndr, int flags, struct lsa_CREDRREADDOMAINCREDENTIALS *r)
10415 if (flags & NDR_IN) {
10417 if (flags & NDR_OUT) {
10418 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10420 return NDR_ERR_SUCCESS;
10423 _PUBLIC_ void ndr_print_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRREADDOMAINCREDENTIALS *r)
10425 ndr_print_struct(ndr, name, "lsa_CREDRREADDOMAINCREDENTIALS");
10427 if (flags & NDR_SET_VALUES) {
10428 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10430 if (flags & NDR_IN) {
10431 ndr_print_struct(ndr, "in", "lsa_CREDRREADDOMAINCREDENTIALS");
10435 if (flags & NDR_OUT) {
10436 ndr_print_struct(ndr, "out", "lsa_CREDRREADDOMAINCREDENTIALS");
10438 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10444 static enum ndr_err_code ndr_push_lsa_CREDRDELETE(struct ndr_push *ndr, int flags, const struct lsa_CREDRDELETE *r)
10446 if (flags & NDR_IN) {
10448 if (flags & NDR_OUT) {
10449 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10451 return NDR_ERR_SUCCESS;
10454 static enum ndr_err_code ndr_pull_lsa_CREDRDELETE(struct ndr_pull *ndr, int flags, struct lsa_CREDRDELETE *r)
10456 if (flags & NDR_IN) {
10458 if (flags & NDR_OUT) {
10459 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10461 return NDR_ERR_SUCCESS;
10464 _PUBLIC_ void ndr_print_lsa_CREDRDELETE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRDELETE *r)
10466 ndr_print_struct(ndr, name, "lsa_CREDRDELETE");
10468 if (flags & NDR_SET_VALUES) {
10469 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10471 if (flags & NDR_IN) {
10472 ndr_print_struct(ndr, "in", "lsa_CREDRDELETE");
10476 if (flags & NDR_OUT) {
10477 ndr_print_struct(ndr, "out", "lsa_CREDRDELETE");
10479 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10485 static enum ndr_err_code ndr_push_lsa_CREDRGETTARGETINFO(struct ndr_push *ndr, int flags, const struct lsa_CREDRGETTARGETINFO *r)
10487 if (flags & NDR_IN) {
10489 if (flags & NDR_OUT) {
10490 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10492 return NDR_ERR_SUCCESS;
10495 static enum ndr_err_code ndr_pull_lsa_CREDRGETTARGETINFO(struct ndr_pull *ndr, int flags, struct lsa_CREDRGETTARGETINFO *r)
10497 if (flags & NDR_IN) {
10499 if (flags & NDR_OUT) {
10500 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10502 return NDR_ERR_SUCCESS;
10505 _PUBLIC_ void ndr_print_lsa_CREDRGETTARGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRGETTARGETINFO *r)
10507 ndr_print_struct(ndr, name, "lsa_CREDRGETTARGETINFO");
10509 if (flags & NDR_SET_VALUES) {
10510 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10512 if (flags & NDR_IN) {
10513 ndr_print_struct(ndr, "in", "lsa_CREDRGETTARGETINFO");
10517 if (flags & NDR_OUT) {
10518 ndr_print_struct(ndr, "out", "lsa_CREDRGETTARGETINFO");
10520 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10526 static enum ndr_err_code ndr_push_lsa_CREDRPROFILELOADED(struct ndr_push *ndr, int flags, const struct lsa_CREDRPROFILELOADED *r)
10528 if (flags & NDR_IN) {
10530 if (flags & NDR_OUT) {
10531 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10533 return NDR_ERR_SUCCESS;
10536 static enum ndr_err_code ndr_pull_lsa_CREDRPROFILELOADED(struct ndr_pull *ndr, int flags, struct lsa_CREDRPROFILELOADED *r)
10538 if (flags & NDR_IN) {
10540 if (flags & NDR_OUT) {
10541 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10543 return NDR_ERR_SUCCESS;
10546 _PUBLIC_ void ndr_print_lsa_CREDRPROFILELOADED(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRPROFILELOADED *r)
10548 ndr_print_struct(ndr, name, "lsa_CREDRPROFILELOADED");
10550 if (flags & NDR_SET_VALUES) {
10551 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10553 if (flags & NDR_IN) {
10554 ndr_print_struct(ndr, "in", "lsa_CREDRPROFILELOADED");
10558 if (flags & NDR_OUT) {
10559 ndr_print_struct(ndr, "out", "lsa_CREDRPROFILELOADED");
10561 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10567 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupNames3(struct ndr_push *ndr, int flags, const struct lsa_LookupNames3 *r)
10569 uint32_t cntr_names_0;
10570 if (flags & NDR_IN) {
10571 if (r->in.handle == NULL) {
10572 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10574 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
10575 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
10576 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
10577 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10578 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10580 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10581 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10583 if (r->in.sids == NULL) {
10584 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10586 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10587 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
10588 if (r->in.count == NULL) {
10589 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10591 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
10592 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
10593 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
10595 if (flags & NDR_OUT) {
10596 if (r->out.domains == NULL) {
10597 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10599 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
10600 if (*r->out.domains) {
10601 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10603 if (r->out.sids == NULL) {
10604 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10606 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10607 if (r->out.count == NULL) {
10608 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10610 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
10611 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10613 return NDR_ERR_SUCCESS;
10616 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupNames3(struct ndr_pull *ndr, int flags, struct lsa_LookupNames3 *r)
10618 uint32_t cntr_names_0;
10619 uint32_t _ptr_domains;
10620 TALLOC_CTX *_mem_save_handle_0;
10621 TALLOC_CTX *_mem_save_names_0;
10622 TALLOC_CTX *_mem_save_domains_0;
10623 TALLOC_CTX *_mem_save_domains_1;
10624 TALLOC_CTX *_mem_save_sids_0;
10625 TALLOC_CTX *_mem_save_count_0;
10626 if (flags & NDR_IN) {
10627 ZERO_STRUCT(r->out);
10629 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10630 NDR_PULL_ALLOC(ndr, r->in.handle);
10632 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10633 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10634 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
10635 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10636 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
10637 if (r->in.num_names < 0 || r->in.num_names > 1000) {
10638 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
10640 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
10641 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
10642 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10643 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
10644 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10645 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10647 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10648 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10650 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
10651 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10652 NDR_PULL_ALLOC(ndr, r->in.sids);
10654 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10655 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10656 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10657 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10658 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
10659 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10660 NDR_PULL_ALLOC(ndr, r->in.count);
10662 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10663 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
10664 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
10665 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10666 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
10667 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
10668 NDR_PULL_ALLOC(ndr, r->out.domains);
10669 ZERO_STRUCTP(r->out.domains);
10670 NDR_PULL_ALLOC(ndr, r->out.sids);
10671 *r->out.sids = *r->in.sids;
10672 NDR_PULL_ALLOC(ndr, r->out.count);
10673 *r->out.count = *r->in.count;
10675 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
10678 if (flags & NDR_OUT) {
10679 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10680 NDR_PULL_ALLOC(ndr, r->out.domains);
10682 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10683 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
10684 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
10685 if (_ptr_domains) {
10686 NDR_PULL_ALLOC(ndr, *r->out.domains);
10688 *r->out.domains = NULL;
10690 if (*r->out.domains) {
10691 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
10692 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
10693 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
10694 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
10696 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
10697 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10698 NDR_PULL_ALLOC(ndr, r->out.sids);
10700 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10701 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
10702 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10703 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10704 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10705 NDR_PULL_ALLOC(ndr, r->out.count);
10707 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10708 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
10709 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
10710 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10711 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10713 return NDR_ERR_SUCCESS;
10716 _PUBLIC_ void ndr_print_lsa_LookupNames3(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames3 *r)
10718 uint32_t cntr_names_0;
10719 ndr_print_struct(ndr, name, "lsa_LookupNames3");
10721 if (flags & NDR_SET_VALUES) {
10722 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10724 if (flags & NDR_IN) {
10725 ndr_print_struct(ndr, "in", "lsa_LookupNames3");
10727 ndr_print_ptr(ndr, "handle", r->in.handle);
10729 ndr_print_policy_handle(ndr, "handle", r->in.handle);
10731 ndr_print_uint32(ndr, "num_names", r->in.num_names);
10732 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
10734 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
10736 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
10737 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
10742 ndr_print_ptr(ndr, "sids", r->in.sids);
10744 ndr_print_lsa_TransSidArray3(ndr, "sids", r->in.sids);
10746 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
10747 ndr_print_ptr(ndr, "count", r->in.count);
10749 ndr_print_uint32(ndr, "count", *r->in.count);
10751 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
10752 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
10755 if (flags & NDR_OUT) {
10756 ndr_print_struct(ndr, "out", "lsa_LookupNames3");
10758 ndr_print_ptr(ndr, "domains", r->out.domains);
10760 ndr_print_ptr(ndr, "domains", *r->out.domains);
10762 if (*r->out.domains) {
10763 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
10767 ndr_print_ptr(ndr, "sids", r->out.sids);
10769 ndr_print_lsa_TransSidArray3(ndr, "sids", r->out.sids);
10771 ndr_print_ptr(ndr, "count", r->out.count);
10773 ndr_print_uint32(ndr, "count", *r->out.count);
10775 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10781 static enum ndr_err_code ndr_push_lsa_CREDRGETSESSIONTYPES(struct ndr_push *ndr, int flags, const struct lsa_CREDRGETSESSIONTYPES *r)
10783 if (flags & NDR_IN) {
10785 if (flags & NDR_OUT) {
10786 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10788 return NDR_ERR_SUCCESS;
10791 static enum ndr_err_code ndr_pull_lsa_CREDRGETSESSIONTYPES(struct ndr_pull *ndr, int flags, struct lsa_CREDRGETSESSIONTYPES *r)
10793 if (flags & NDR_IN) {
10795 if (flags & NDR_OUT) {
10796 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10798 return NDR_ERR_SUCCESS;
10801 _PUBLIC_ void ndr_print_lsa_CREDRGETSESSIONTYPES(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRGETSESSIONTYPES *r)
10803 ndr_print_struct(ndr, name, "lsa_CREDRGETSESSIONTYPES");
10805 if (flags & NDR_SET_VALUES) {
10806 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10808 if (flags & NDR_IN) {
10809 ndr_print_struct(ndr, "in", "lsa_CREDRGETSESSIONTYPES");
10813 if (flags & NDR_OUT) {
10814 ndr_print_struct(ndr, "out", "lsa_CREDRGETSESSIONTYPES");
10816 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10822 static enum ndr_err_code ndr_push_lsa_LSARREGISTERAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARREGISTERAUDITEVENT *r)
10824 if (flags & NDR_IN) {
10826 if (flags & NDR_OUT) {
10827 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10829 return NDR_ERR_SUCCESS;
10832 static enum ndr_err_code ndr_pull_lsa_LSARREGISTERAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARREGISTERAUDITEVENT *r)
10834 if (flags & NDR_IN) {
10836 if (flags & NDR_OUT) {
10837 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10839 return NDR_ERR_SUCCESS;
10842 _PUBLIC_ void ndr_print_lsa_LSARREGISTERAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARREGISTERAUDITEVENT *r)
10844 ndr_print_struct(ndr, name, "lsa_LSARREGISTERAUDITEVENT");
10846 if (flags & NDR_SET_VALUES) {
10847 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10849 if (flags & NDR_IN) {
10850 ndr_print_struct(ndr, "in", "lsa_LSARREGISTERAUDITEVENT");
10854 if (flags & NDR_OUT) {
10855 ndr_print_struct(ndr, "out", "lsa_LSARREGISTERAUDITEVENT");
10857 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10863 static enum ndr_err_code ndr_push_lsa_LSARGENAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARGENAUDITEVENT *r)
10865 if (flags & NDR_IN) {
10867 if (flags & NDR_OUT) {
10868 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10870 return NDR_ERR_SUCCESS;
10873 static enum ndr_err_code ndr_pull_lsa_LSARGENAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARGENAUDITEVENT *r)
10875 if (flags & NDR_IN) {
10877 if (flags & NDR_OUT) {
10878 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10880 return NDR_ERR_SUCCESS;
10883 _PUBLIC_ void ndr_print_lsa_LSARGENAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARGENAUDITEVENT *r)
10885 ndr_print_struct(ndr, name, "lsa_LSARGENAUDITEVENT");
10887 if (flags & NDR_SET_VALUES) {
10888 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10890 if (flags & NDR_IN) {
10891 ndr_print_struct(ndr, "in", "lsa_LSARGENAUDITEVENT");
10895 if (flags & NDR_OUT) {
10896 ndr_print_struct(ndr, "out", "lsa_LSARGENAUDITEVENT");
10898 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10904 static enum ndr_err_code ndr_push_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARUNREGISTERAUDITEVENT *r)
10906 if (flags & NDR_IN) {
10908 if (flags & NDR_OUT) {
10909 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10911 return NDR_ERR_SUCCESS;
10914 static enum ndr_err_code ndr_pull_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARUNREGISTERAUDITEVENT *r)
10916 if (flags & NDR_IN) {
10918 if (flags & NDR_OUT) {
10919 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10921 return NDR_ERR_SUCCESS;
10924 _PUBLIC_ void ndr_print_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARUNREGISTERAUDITEVENT *r)
10926 ndr_print_struct(ndr, name, "lsa_LSARUNREGISTERAUDITEVENT");
10928 if (flags & NDR_SET_VALUES) {
10929 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10931 if (flags & NDR_IN) {
10932 ndr_print_struct(ndr, "in", "lsa_LSARUNREGISTERAUDITEVENT");
10936 if (flags & NDR_OUT) {
10937 ndr_print_struct(ndr, "out", "lsa_LSARUNREGISTERAUDITEVENT");
10939 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10945 static enum ndr_err_code ndr_push_lsa_lsaRQueryForestTrustInformation(struct ndr_push *ndr, int flags, const struct lsa_lsaRQueryForestTrustInformation *r)
10947 if (flags & NDR_IN) {
10948 if (r->in.handle == NULL) {
10949 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10951 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
10952 if (r->in.trusted_domain_name == NULL) {
10953 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10955 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain_name));
10956 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.unknown));
10958 if (flags & NDR_OUT) {
10959 if (r->out.forest_trust_info == NULL) {
10960 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10962 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.forest_trust_info));
10963 if (*r->out.forest_trust_info) {
10964 NDR_CHECK(ndr_push_lsa_ForestTrustInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.forest_trust_info));
10966 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10968 return NDR_ERR_SUCCESS;
10971 static enum ndr_err_code ndr_pull_lsa_lsaRQueryForestTrustInformation(struct ndr_pull *ndr, int flags, struct lsa_lsaRQueryForestTrustInformation *r)
10973 uint32_t _ptr_forest_trust_info;
10974 TALLOC_CTX *_mem_save_handle_0;
10975 TALLOC_CTX *_mem_save_trusted_domain_name_0;
10976 TALLOC_CTX *_mem_save_forest_trust_info_0;
10977 TALLOC_CTX *_mem_save_forest_trust_info_1;
10978 if (flags & NDR_IN) {
10979 ZERO_STRUCT(r->out);
10981 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10982 NDR_PULL_ALLOC(ndr, r->in.handle);
10984 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
10985 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
10986 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
10987 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
10988 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10989 NDR_PULL_ALLOC(ndr, r->in.trusted_domain_name);
10991 _mem_save_trusted_domain_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
10992 NDR_PULL_SET_MEM_CTX(ndr, r->in.trusted_domain_name, LIBNDR_FLAG_REF_ALLOC);
10993 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trusted_domain_name));
10994 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trusted_domain_name_0, LIBNDR_FLAG_REF_ALLOC);
10995 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.unknown));
10996 NDR_PULL_ALLOC(ndr, r->out.forest_trust_info);
10997 ZERO_STRUCTP(r->out.forest_trust_info);
10999 if (flags & NDR_OUT) {
11000 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11001 NDR_PULL_ALLOC(ndr, r->out.forest_trust_info);
11003 _mem_save_forest_trust_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
11004 NDR_PULL_SET_MEM_CTX(ndr, r->out.forest_trust_info, LIBNDR_FLAG_REF_ALLOC);
11005 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_forest_trust_info));
11006 if (_ptr_forest_trust_info) {
11007 NDR_PULL_ALLOC(ndr, *r->out.forest_trust_info);
11009 *r->out.forest_trust_info = NULL;
11011 if (*r->out.forest_trust_info) {
11012 _mem_save_forest_trust_info_1 = NDR_PULL_GET_MEM_CTX(ndr);
11013 NDR_PULL_SET_MEM_CTX(ndr, *r->out.forest_trust_info, 0);
11014 NDR_CHECK(ndr_pull_lsa_ForestTrustInformation(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.forest_trust_info));
11015 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_forest_trust_info_1, 0);
11017 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_forest_trust_info_0, LIBNDR_FLAG_REF_ALLOC);
11018 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11020 return NDR_ERR_SUCCESS;
11023 _PUBLIC_ void ndr_print_lsa_lsaRQueryForestTrustInformation(struct ndr_print *ndr, const char *name, int flags, const struct lsa_lsaRQueryForestTrustInformation *r)
11025 ndr_print_struct(ndr, name, "lsa_lsaRQueryForestTrustInformation");
11027 if (flags & NDR_SET_VALUES) {
11028 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11030 if (flags & NDR_IN) {
11031 ndr_print_struct(ndr, "in", "lsa_lsaRQueryForestTrustInformation");
11033 ndr_print_ptr(ndr, "handle", r->in.handle);
11035 ndr_print_policy_handle(ndr, "handle", r->in.handle);
11037 ndr_print_ptr(ndr, "trusted_domain_name", r->in.trusted_domain_name);
11039 ndr_print_lsa_String(ndr, "trusted_domain_name", r->in.trusted_domain_name);
11041 ndr_print_uint16(ndr, "unknown", r->in.unknown);
11044 if (flags & NDR_OUT) {
11045 ndr_print_struct(ndr, "out", "lsa_lsaRQueryForestTrustInformation");
11047 ndr_print_ptr(ndr, "forest_trust_info", r->out.forest_trust_info);
11049 ndr_print_ptr(ndr, "forest_trust_info", *r->out.forest_trust_info);
11051 if (*r->out.forest_trust_info) {
11052 ndr_print_lsa_ForestTrustInformation(ndr, "forest_trust_info", *r->out.forest_trust_info);
11056 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11062 static enum ndr_err_code ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_push *ndr, int flags, const struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
11064 if (flags & NDR_IN) {
11066 if (flags & NDR_OUT) {
11067 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11069 return NDR_ERR_SUCCESS;
11072 static enum ndr_err_code ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_pull *ndr, int flags, struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
11074 if (flags & NDR_IN) {
11076 if (flags & NDR_OUT) {
11077 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11079 return NDR_ERR_SUCCESS;
11082 _PUBLIC_ void ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
11084 ndr_print_struct(ndr, name, "lsa_LSARSETFORESTTRUSTINFORMATION");
11086 if (flags & NDR_SET_VALUES) {
11087 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11089 if (flags & NDR_IN) {
11090 ndr_print_struct(ndr, "in", "lsa_LSARSETFORESTTRUSTINFORMATION");
11094 if (flags & NDR_OUT) {
11095 ndr_print_struct(ndr, "out", "lsa_LSARSETFORESTTRUSTINFORMATION");
11097 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11103 static enum ndr_err_code ndr_push_lsa_CREDRRENAME(struct ndr_push *ndr, int flags, const struct lsa_CREDRRENAME *r)
11105 if (flags & NDR_IN) {
11107 if (flags & NDR_OUT) {
11108 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11110 return NDR_ERR_SUCCESS;
11113 static enum ndr_err_code ndr_pull_lsa_CREDRRENAME(struct ndr_pull *ndr, int flags, struct lsa_CREDRRENAME *r)
11115 if (flags & NDR_IN) {
11117 if (flags & NDR_OUT) {
11118 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11120 return NDR_ERR_SUCCESS;
11123 _PUBLIC_ void ndr_print_lsa_CREDRRENAME(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRRENAME *r)
11125 ndr_print_struct(ndr, name, "lsa_CREDRRENAME");
11127 if (flags & NDR_SET_VALUES) {
11128 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11130 if (flags & NDR_IN) {
11131 ndr_print_struct(ndr, "in", "lsa_CREDRRENAME");
11135 if (flags & NDR_OUT) {
11136 ndr_print_struct(ndr, "out", "lsa_CREDRRENAME");
11138 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11144 _PUBLIC_ enum ndr_err_code ndr_push_lsa_LookupSids3(struct ndr_push *ndr, int flags, const struct lsa_LookupSids3 *r)
11146 if (flags & NDR_IN) {
11147 if (r->in.sids == NULL) {
11148 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11150 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
11151 if (r->in.names == NULL) {
11152 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11154 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
11155 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
11156 if (r->in.count == NULL) {
11157 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11159 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
11160 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
11161 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
11163 if (flags & NDR_OUT) {
11164 if (r->out.domains == NULL) {
11165 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11167 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
11168 if (*r->out.domains) {
11169 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
11171 if (r->out.names == NULL) {
11172 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11174 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
11175 if (r->out.count == NULL) {
11176 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11178 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
11179 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11181 return NDR_ERR_SUCCESS;
11184 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_LookupSids3(struct ndr_pull *ndr, int flags, struct lsa_LookupSids3 *r)
11186 uint32_t _ptr_domains;
11187 TALLOC_CTX *_mem_save_sids_0;
11188 TALLOC_CTX *_mem_save_domains_0;
11189 TALLOC_CTX *_mem_save_domains_1;
11190 TALLOC_CTX *_mem_save_names_0;
11191 TALLOC_CTX *_mem_save_count_0;
11192 if (flags & NDR_IN) {
11193 ZERO_STRUCT(r->out);
11195 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11196 NDR_PULL_ALLOC(ndr, r->in.sids);
11198 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
11199 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
11200 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
11201 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
11202 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11203 NDR_PULL_ALLOC(ndr, r->in.names);
11205 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
11206 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
11207 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
11208 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
11209 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
11210 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11211 NDR_PULL_ALLOC(ndr, r->in.count);
11213 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
11214 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
11215 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
11216 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
11217 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
11218 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
11219 NDR_PULL_ALLOC(ndr, r->out.domains);
11220 ZERO_STRUCTP(r->out.domains);
11221 NDR_PULL_ALLOC(ndr, r->out.names);
11222 *r->out.names = *r->in.names;
11223 NDR_PULL_ALLOC(ndr, r->out.count);
11224 *r->out.count = *r->in.count;
11226 if (flags & NDR_OUT) {
11227 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11228 NDR_PULL_ALLOC(ndr, r->out.domains);
11230 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
11231 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
11232 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
11233 if (_ptr_domains) {
11234 NDR_PULL_ALLOC(ndr, *r->out.domains);
11236 *r->out.domains = NULL;
11238 if (*r->out.domains) {
11239 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
11240 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
11241 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
11242 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
11244 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
11245 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11246 NDR_PULL_ALLOC(ndr, r->out.names);
11248 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
11249 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
11250 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
11251 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
11252 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11253 NDR_PULL_ALLOC(ndr, r->out.count);
11255 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
11256 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
11257 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
11258 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
11259 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11261 return NDR_ERR_SUCCESS;
11264 _PUBLIC_ void ndr_print_lsa_LookupSids3(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids3 *r)
11266 ndr_print_struct(ndr, name, "lsa_LookupSids3");
11268 if (flags & NDR_SET_VALUES) {
11269 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11271 if (flags & NDR_IN) {
11272 ndr_print_struct(ndr, "in", "lsa_LookupSids3");
11274 ndr_print_ptr(ndr, "sids", r->in.sids);
11276 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
11278 ndr_print_ptr(ndr, "names", r->in.names);
11280 ndr_print_lsa_TransNameArray2(ndr, "names", r->in.names);
11282 ndr_print_uint16(ndr, "level", r->in.level);
11283 ndr_print_ptr(ndr, "count", r->in.count);
11285 ndr_print_uint32(ndr, "count", *r->in.count);
11287 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
11288 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
11291 if (flags & NDR_OUT) {
11292 ndr_print_struct(ndr, "out", "lsa_LookupSids3");
11294 ndr_print_ptr(ndr, "domains", r->out.domains);
11296 ndr_print_ptr(ndr, "domains", *r->out.domains);
11298 if (*r->out.domains) {
11299 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
11303 ndr_print_ptr(ndr, "names", r->out.names);
11305 ndr_print_lsa_TransNameArray2(ndr, "names", r->out.names);
11307 ndr_print_ptr(ndr, "count", r->out.count);
11309 ndr_print_uint32(ndr, "count", *r->out.count);
11311 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11317 static enum ndr_err_code ndr_push_lsa_LookupNames4(struct ndr_push *ndr, int flags, const struct lsa_LookupNames4 *r)
11319 uint32_t cntr_names_0;
11320 if (flags & NDR_IN) {
11321 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
11322 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
11323 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11324 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
11326 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11327 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
11329 if (r->in.sids == NULL) {
11330 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11332 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
11333 NDR_CHECK(ndr_push_lsa_LookupNamesLevel(ndr, NDR_SCALARS, r->in.level));
11334 if (r->in.count == NULL) {
11335 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11337 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
11338 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
11339 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
11341 if (flags & NDR_OUT) {
11342 if (r->out.domains == NULL) {
11343 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11345 NDR_CHECK(ndr_push_unique_ptr(ndr, *r->out.domains));
11346 if (*r->out.domains) {
11347 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
11349 if (r->out.sids == NULL) {
11350 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11352 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
11353 if (r->out.count == NULL) {
11354 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
11356 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
11357 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11359 return NDR_ERR_SUCCESS;
11362 static enum ndr_err_code ndr_pull_lsa_LookupNames4(struct ndr_pull *ndr, int flags, struct lsa_LookupNames4 *r)
11364 uint32_t cntr_names_0;
11365 uint32_t _ptr_domains;
11366 TALLOC_CTX *_mem_save_names_0;
11367 TALLOC_CTX *_mem_save_domains_0;
11368 TALLOC_CTX *_mem_save_domains_1;
11369 TALLOC_CTX *_mem_save_sids_0;
11370 TALLOC_CTX *_mem_save_count_0;
11371 if (flags & NDR_IN) {
11372 ZERO_STRUCT(r->out);
11374 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
11375 if (r->in.num_names < 0 || r->in.num_names > 1000) {
11376 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
11378 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
11379 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
11380 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
11381 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
11382 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11383 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
11385 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
11386 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
11388 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
11389 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11390 NDR_PULL_ALLOC(ndr, r->in.sids);
11392 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
11393 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
11394 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
11395 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
11396 NDR_CHECK(ndr_pull_lsa_LookupNamesLevel(ndr, NDR_SCALARS, &r->in.level));
11397 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11398 NDR_PULL_ALLOC(ndr, r->in.count);
11400 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
11401 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
11402 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
11403 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
11404 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
11405 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
11406 NDR_PULL_ALLOC(ndr, r->out.domains);
11407 ZERO_STRUCTP(r->out.domains);
11408 NDR_PULL_ALLOC(ndr, r->out.sids);
11409 *r->out.sids = *r->in.sids;
11410 NDR_PULL_ALLOC(ndr, r->out.count);
11411 *r->out.count = *r->in.count;
11413 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
11416 if (flags & NDR_OUT) {
11417 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11418 NDR_PULL_ALLOC(ndr, r->out.domains);
11420 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
11421 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
11422 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
11423 if (_ptr_domains) {
11424 NDR_PULL_ALLOC(ndr, *r->out.domains);
11426 *r->out.domains = NULL;
11428 if (*r->out.domains) {
11429 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
11430 NDR_PULL_SET_MEM_CTX(ndr, *r->out.domains, 0);
11431 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, *r->out.domains));
11432 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
11434 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
11435 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11436 NDR_PULL_ALLOC(ndr, r->out.sids);
11438 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
11439 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
11440 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
11441 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
11442 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
11443 NDR_PULL_ALLOC(ndr, r->out.count);
11445 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
11446 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
11447 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
11448 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
11449 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11451 return NDR_ERR_SUCCESS;
11454 _PUBLIC_ void ndr_print_lsa_LookupNames4(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames4 *r)
11456 uint32_t cntr_names_0;
11457 ndr_print_struct(ndr, name, "lsa_LookupNames4");
11459 if (flags & NDR_SET_VALUES) {
11460 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11462 if (flags & NDR_IN) {
11463 ndr_print_struct(ndr, "in", "lsa_LookupNames4");
11465 ndr_print_uint32(ndr, "num_names", r->in.num_names);
11466 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
11468 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
11470 if (asprintf(&idx_0, "[%d]", cntr_names_0) != -1) {
11471 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
11476 ndr_print_ptr(ndr, "sids", r->in.sids);
11478 ndr_print_lsa_TransSidArray3(ndr, "sids", r->in.sids);
11480 ndr_print_lsa_LookupNamesLevel(ndr, "level", r->in.level);
11481 ndr_print_ptr(ndr, "count", r->in.count);
11483 ndr_print_uint32(ndr, "count", *r->in.count);
11485 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
11486 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
11489 if (flags & NDR_OUT) {
11490 ndr_print_struct(ndr, "out", "lsa_LookupNames4");
11492 ndr_print_ptr(ndr, "domains", r->out.domains);
11494 ndr_print_ptr(ndr, "domains", *r->out.domains);
11496 if (*r->out.domains) {
11497 ndr_print_lsa_RefDomainList(ndr, "domains", *r->out.domains);
11501 ndr_print_ptr(ndr, "sids", r->out.sids);
11503 ndr_print_lsa_TransSidArray3(ndr, "sids", r->out.sids);
11505 ndr_print_ptr(ndr, "count", r->out.count);
11507 ndr_print_uint32(ndr, "count", *r->out.count);
11509 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11515 static enum ndr_err_code ndr_push_lsa_LSAROPENPOLICYSCE(struct ndr_push *ndr, int flags, const struct lsa_LSAROPENPOLICYSCE *r)
11517 if (flags & NDR_IN) {
11519 if (flags & NDR_OUT) {
11520 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11522 return NDR_ERR_SUCCESS;
11525 static enum ndr_err_code ndr_pull_lsa_LSAROPENPOLICYSCE(struct ndr_pull *ndr, int flags, struct lsa_LSAROPENPOLICYSCE *r)
11527 if (flags & NDR_IN) {
11529 if (flags & NDR_OUT) {
11530 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11532 return NDR_ERR_SUCCESS;
11535 _PUBLIC_ void ndr_print_lsa_LSAROPENPOLICYSCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSAROPENPOLICYSCE *r)
11537 ndr_print_struct(ndr, name, "lsa_LSAROPENPOLICYSCE");
11539 if (flags & NDR_SET_VALUES) {
11540 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11542 if (flags & NDR_IN) {
11543 ndr_print_struct(ndr, "in", "lsa_LSAROPENPOLICYSCE");
11547 if (flags & NDR_OUT) {
11548 ndr_print_struct(ndr, "out", "lsa_LSAROPENPOLICYSCE");
11550 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11556 static enum ndr_err_code ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_push *ndr, int flags, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
11558 if (flags & NDR_IN) {
11560 if (flags & NDR_OUT) {
11561 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11563 return NDR_ERR_SUCCESS;
11566 static enum ndr_err_code ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_pull *ndr, int flags, struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
11568 if (flags & NDR_IN) {
11570 if (flags & NDR_OUT) {
11571 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11573 return NDR_ERR_SUCCESS;
11576 _PUBLIC_ void ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
11578 ndr_print_struct(ndr, name, "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
11580 if (flags & NDR_SET_VALUES) {
11581 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11583 if (flags & NDR_IN) {
11584 ndr_print_struct(ndr, "in", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
11588 if (flags & NDR_OUT) {
11589 ndr_print_struct(ndr, "out", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
11591 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11597 static enum ndr_err_code ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_push *ndr, int flags, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
11599 if (flags & NDR_IN) {
11601 if (flags & NDR_OUT) {
11602 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11604 return NDR_ERR_SUCCESS;
11607 static enum ndr_err_code ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_pull *ndr, int flags, struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
11609 if (flags & NDR_IN) {
11611 if (flags & NDR_OUT) {
11612 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11614 return NDR_ERR_SUCCESS;
11617 _PUBLIC_ void ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
11619 ndr_print_struct(ndr, name, "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
11621 if (flags & NDR_SET_VALUES) {
11622 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11624 if (flags & NDR_IN) {
11625 ndr_print_struct(ndr, "in", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
11629 if (flags & NDR_OUT) {
11630 ndr_print_struct(ndr, "out", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
11632 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11638 static enum ndr_err_code ndr_push_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARADTREPORTSECURITYEVENT *r)
11640 if (flags & NDR_IN) {
11642 if (flags & NDR_OUT) {
11643 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
11645 return NDR_ERR_SUCCESS;
11648 static enum ndr_err_code ndr_pull_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARADTREPORTSECURITYEVENT *r)
11650 if (flags & NDR_IN) {
11652 if (flags & NDR_OUT) {
11653 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
11655 return NDR_ERR_SUCCESS;
11658 _PUBLIC_ void ndr_print_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTREPORTSECURITYEVENT *r)
11660 ndr_print_struct(ndr, name, "lsa_LSARADTREPORTSECURITYEVENT");
11662 if (flags & NDR_SET_VALUES) {
11663 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
11665 if (flags & NDR_IN) {
11666 ndr_print_struct(ndr, "in", "lsa_LSARADTREPORTSECURITYEVENT");
11670 if (flags & NDR_OUT) {
11671 ndr_print_struct(ndr, "out", "lsa_LSARADTREPORTSECURITYEVENT");
11673 ndr_print_NTSTATUS(ndr, "result", r->out.result);
11679 static const struct ndr_interface_call lsarpc_calls[] = {
11682 sizeof(struct lsa_Close),
11683 (ndr_push_flags_fn_t) ndr_push_lsa_Close,
11684 (ndr_pull_flags_fn_t) ndr_pull_lsa_Close,
11685 (ndr_print_function_t) ndr_print_lsa_Close,
11690 sizeof(struct lsa_Delete),
11691 (ndr_push_flags_fn_t) ndr_push_lsa_Delete,
11692 (ndr_pull_flags_fn_t) ndr_pull_lsa_Delete,
11693 (ndr_print_function_t) ndr_print_lsa_Delete,
11698 sizeof(struct lsa_EnumPrivs),
11699 (ndr_push_flags_fn_t) ndr_push_lsa_EnumPrivs,
11700 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumPrivs,
11701 (ndr_print_function_t) ndr_print_lsa_EnumPrivs,
11705 "lsa_QuerySecurity",
11706 sizeof(struct lsa_QuerySecurity),
11707 (ndr_push_flags_fn_t) ndr_push_lsa_QuerySecurity,
11708 (ndr_pull_flags_fn_t) ndr_pull_lsa_QuerySecurity,
11709 (ndr_print_function_t) ndr_print_lsa_QuerySecurity,
11714 sizeof(struct lsa_SetSecObj),
11715 (ndr_push_flags_fn_t) ndr_push_lsa_SetSecObj,
11716 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSecObj,
11717 (ndr_print_function_t) ndr_print_lsa_SetSecObj,
11721 "lsa_ChangePassword",
11722 sizeof(struct lsa_ChangePassword),
11723 (ndr_push_flags_fn_t) ndr_push_lsa_ChangePassword,
11724 (ndr_pull_flags_fn_t) ndr_pull_lsa_ChangePassword,
11725 (ndr_print_function_t) ndr_print_lsa_ChangePassword,
11730 sizeof(struct lsa_OpenPolicy),
11731 (ndr_push_flags_fn_t) ndr_push_lsa_OpenPolicy,
11732 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenPolicy,
11733 (ndr_print_function_t) ndr_print_lsa_OpenPolicy,
11737 "lsa_QueryInfoPolicy",
11738 sizeof(struct lsa_QueryInfoPolicy),
11739 (ndr_push_flags_fn_t) ndr_push_lsa_QueryInfoPolicy,
11740 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryInfoPolicy,
11741 (ndr_print_function_t) ndr_print_lsa_QueryInfoPolicy,
11745 "lsa_SetInfoPolicy",
11746 sizeof(struct lsa_SetInfoPolicy),
11747 (ndr_push_flags_fn_t) ndr_push_lsa_SetInfoPolicy,
11748 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInfoPolicy,
11749 (ndr_print_function_t) ndr_print_lsa_SetInfoPolicy,
11753 "lsa_ClearAuditLog",
11754 sizeof(struct lsa_ClearAuditLog),
11755 (ndr_push_flags_fn_t) ndr_push_lsa_ClearAuditLog,
11756 (ndr_pull_flags_fn_t) ndr_pull_lsa_ClearAuditLog,
11757 (ndr_print_function_t) ndr_print_lsa_ClearAuditLog,
11761 "lsa_CreateAccount",
11762 sizeof(struct lsa_CreateAccount),
11763 (ndr_push_flags_fn_t) ndr_push_lsa_CreateAccount,
11764 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateAccount,
11765 (ndr_print_function_t) ndr_print_lsa_CreateAccount,
11769 "lsa_EnumAccounts",
11770 sizeof(struct lsa_EnumAccounts),
11771 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccounts,
11772 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccounts,
11773 (ndr_print_function_t) ndr_print_lsa_EnumAccounts,
11777 "lsa_CreateTrustedDomain",
11778 sizeof(struct lsa_CreateTrustedDomain),
11779 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomain,
11780 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomain,
11781 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomain,
11785 "lsa_EnumTrustDom",
11786 sizeof(struct lsa_EnumTrustDom),
11787 (ndr_push_flags_fn_t) ndr_push_lsa_EnumTrustDom,
11788 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumTrustDom,
11789 (ndr_print_function_t) ndr_print_lsa_EnumTrustDom,
11794 sizeof(struct lsa_LookupNames),
11795 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames,
11796 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames,
11797 (ndr_print_function_t) ndr_print_lsa_LookupNames,
11802 sizeof(struct lsa_LookupSids),
11803 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids,
11804 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids,
11805 (ndr_print_function_t) ndr_print_lsa_LookupSids,
11809 "lsa_CreateSecret",
11810 sizeof(struct lsa_CreateSecret),
11811 (ndr_push_flags_fn_t) ndr_push_lsa_CreateSecret,
11812 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateSecret,
11813 (ndr_print_function_t) ndr_print_lsa_CreateSecret,
11818 sizeof(struct lsa_OpenAccount),
11819 (ndr_push_flags_fn_t) ndr_push_lsa_OpenAccount,
11820 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenAccount,
11821 (ndr_print_function_t) ndr_print_lsa_OpenAccount,
11825 "lsa_EnumPrivsAccount",
11826 sizeof(struct lsa_EnumPrivsAccount),
11827 (ndr_push_flags_fn_t) ndr_push_lsa_EnumPrivsAccount,
11828 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumPrivsAccount,
11829 (ndr_print_function_t) ndr_print_lsa_EnumPrivsAccount,
11833 "lsa_AddPrivilegesToAccount",
11834 sizeof(struct lsa_AddPrivilegesToAccount),
11835 (ndr_push_flags_fn_t) ndr_push_lsa_AddPrivilegesToAccount,
11836 (ndr_pull_flags_fn_t) ndr_pull_lsa_AddPrivilegesToAccount,
11837 (ndr_print_function_t) ndr_print_lsa_AddPrivilegesToAccount,
11841 "lsa_RemovePrivilegesFromAccount",
11842 sizeof(struct lsa_RemovePrivilegesFromAccount),
11843 (ndr_push_flags_fn_t) ndr_push_lsa_RemovePrivilegesFromAccount,
11844 (ndr_pull_flags_fn_t) ndr_pull_lsa_RemovePrivilegesFromAccount,
11845 (ndr_print_function_t) ndr_print_lsa_RemovePrivilegesFromAccount,
11849 "lsa_GetQuotasForAccount",
11850 sizeof(struct lsa_GetQuotasForAccount),
11851 (ndr_push_flags_fn_t) ndr_push_lsa_GetQuotasForAccount,
11852 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetQuotasForAccount,
11853 (ndr_print_function_t) ndr_print_lsa_GetQuotasForAccount,
11857 "lsa_SetQuotasForAccount",
11858 sizeof(struct lsa_SetQuotasForAccount),
11859 (ndr_push_flags_fn_t) ndr_push_lsa_SetQuotasForAccount,
11860 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetQuotasForAccount,
11861 (ndr_print_function_t) ndr_print_lsa_SetQuotasForAccount,
11865 "lsa_GetSystemAccessAccount",
11866 sizeof(struct lsa_GetSystemAccessAccount),
11867 (ndr_push_flags_fn_t) ndr_push_lsa_GetSystemAccessAccount,
11868 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetSystemAccessAccount,
11869 (ndr_print_function_t) ndr_print_lsa_GetSystemAccessAccount,
11873 "lsa_SetSystemAccessAccount",
11874 sizeof(struct lsa_SetSystemAccessAccount),
11875 (ndr_push_flags_fn_t) ndr_push_lsa_SetSystemAccessAccount,
11876 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSystemAccessAccount,
11877 (ndr_print_function_t) ndr_print_lsa_SetSystemAccessAccount,
11881 "lsa_OpenTrustedDomain",
11882 sizeof(struct lsa_OpenTrustedDomain),
11883 (ndr_push_flags_fn_t) ndr_push_lsa_OpenTrustedDomain,
11884 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenTrustedDomain,
11885 (ndr_print_function_t) ndr_print_lsa_OpenTrustedDomain,
11889 "lsa_QueryTrustedDomainInfo",
11890 sizeof(struct lsa_QueryTrustedDomainInfo),
11891 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfo,
11892 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfo,
11893 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfo,
11897 "lsa_SetInformationTrustedDomain",
11898 sizeof(struct lsa_SetInformationTrustedDomain),
11899 (ndr_push_flags_fn_t) ndr_push_lsa_SetInformationTrustedDomain,
11900 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInformationTrustedDomain,
11901 (ndr_print_function_t) ndr_print_lsa_SetInformationTrustedDomain,
11906 sizeof(struct lsa_OpenSecret),
11907 (ndr_push_flags_fn_t) ndr_push_lsa_OpenSecret,
11908 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenSecret,
11909 (ndr_print_function_t) ndr_print_lsa_OpenSecret,
11914 sizeof(struct lsa_SetSecret),
11915 (ndr_push_flags_fn_t) ndr_push_lsa_SetSecret,
11916 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSecret,
11917 (ndr_print_function_t) ndr_print_lsa_SetSecret,
11922 sizeof(struct lsa_QuerySecret),
11923 (ndr_push_flags_fn_t) ndr_push_lsa_QuerySecret,
11924 (ndr_pull_flags_fn_t) ndr_pull_lsa_QuerySecret,
11925 (ndr_print_function_t) ndr_print_lsa_QuerySecret,
11929 "lsa_LookupPrivValue",
11930 sizeof(struct lsa_LookupPrivValue),
11931 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivValue,
11932 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivValue,
11933 (ndr_print_function_t) ndr_print_lsa_LookupPrivValue,
11937 "lsa_LookupPrivName",
11938 sizeof(struct lsa_LookupPrivName),
11939 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivName,
11940 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivName,
11941 (ndr_print_function_t) ndr_print_lsa_LookupPrivName,
11945 "lsa_LookupPrivDisplayName",
11946 sizeof(struct lsa_LookupPrivDisplayName),
11947 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivDisplayName,
11948 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivDisplayName,
11949 (ndr_print_function_t) ndr_print_lsa_LookupPrivDisplayName,
11953 "lsa_DeleteObject",
11954 sizeof(struct lsa_DeleteObject),
11955 (ndr_push_flags_fn_t) ndr_push_lsa_DeleteObject,
11956 (ndr_pull_flags_fn_t) ndr_pull_lsa_DeleteObject,
11957 (ndr_print_function_t) ndr_print_lsa_DeleteObject,
11961 "lsa_EnumAccountsWithUserRight",
11962 sizeof(struct lsa_EnumAccountsWithUserRight),
11963 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccountsWithUserRight,
11964 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccountsWithUserRight,
11965 (ndr_print_function_t) ndr_print_lsa_EnumAccountsWithUserRight,
11969 "lsa_EnumAccountRights",
11970 sizeof(struct lsa_EnumAccountRights),
11971 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccountRights,
11972 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccountRights,
11973 (ndr_print_function_t) ndr_print_lsa_EnumAccountRights,
11977 "lsa_AddAccountRights",
11978 sizeof(struct lsa_AddAccountRights),
11979 (ndr_push_flags_fn_t) ndr_push_lsa_AddAccountRights,
11980 (ndr_pull_flags_fn_t) ndr_pull_lsa_AddAccountRights,
11981 (ndr_print_function_t) ndr_print_lsa_AddAccountRights,
11985 "lsa_RemoveAccountRights",
11986 sizeof(struct lsa_RemoveAccountRights),
11987 (ndr_push_flags_fn_t) ndr_push_lsa_RemoveAccountRights,
11988 (ndr_pull_flags_fn_t) ndr_pull_lsa_RemoveAccountRights,
11989 (ndr_print_function_t) ndr_print_lsa_RemoveAccountRights,
11993 "lsa_QueryTrustedDomainInfoBySid",
11994 sizeof(struct lsa_QueryTrustedDomainInfoBySid),
11995 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfoBySid,
11996 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfoBySid,
11997 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfoBySid,
12001 "lsa_SetTrustedDomainInfo",
12002 sizeof(struct lsa_SetTrustedDomainInfo),
12003 (ndr_push_flags_fn_t) ndr_push_lsa_SetTrustedDomainInfo,
12004 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetTrustedDomainInfo,
12005 (ndr_print_function_t) ndr_print_lsa_SetTrustedDomainInfo,
12009 "lsa_DeleteTrustedDomain",
12010 sizeof(struct lsa_DeleteTrustedDomain),
12011 (ndr_push_flags_fn_t) ndr_push_lsa_DeleteTrustedDomain,
12012 (ndr_pull_flags_fn_t) ndr_pull_lsa_DeleteTrustedDomain,
12013 (ndr_print_function_t) ndr_print_lsa_DeleteTrustedDomain,
12017 "lsa_StorePrivateData",
12018 sizeof(struct lsa_StorePrivateData),
12019 (ndr_push_flags_fn_t) ndr_push_lsa_StorePrivateData,
12020 (ndr_pull_flags_fn_t) ndr_pull_lsa_StorePrivateData,
12021 (ndr_print_function_t) ndr_print_lsa_StorePrivateData,
12025 "lsa_RetrievePrivateData",
12026 sizeof(struct lsa_RetrievePrivateData),
12027 (ndr_push_flags_fn_t) ndr_push_lsa_RetrievePrivateData,
12028 (ndr_pull_flags_fn_t) ndr_pull_lsa_RetrievePrivateData,
12029 (ndr_print_function_t) ndr_print_lsa_RetrievePrivateData,
12034 sizeof(struct lsa_OpenPolicy2),
12035 (ndr_push_flags_fn_t) ndr_push_lsa_OpenPolicy2,
12036 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenPolicy2,
12037 (ndr_print_function_t) ndr_print_lsa_OpenPolicy2,
12042 sizeof(struct lsa_GetUserName),
12043 (ndr_push_flags_fn_t) ndr_push_lsa_GetUserName,
12044 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetUserName,
12045 (ndr_print_function_t) ndr_print_lsa_GetUserName,
12049 "lsa_QueryInfoPolicy2",
12050 sizeof(struct lsa_QueryInfoPolicy2),
12051 (ndr_push_flags_fn_t) ndr_push_lsa_QueryInfoPolicy2,
12052 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryInfoPolicy2,
12053 (ndr_print_function_t) ndr_print_lsa_QueryInfoPolicy2,
12057 "lsa_SetInfoPolicy2",
12058 sizeof(struct lsa_SetInfoPolicy2),
12059 (ndr_push_flags_fn_t) ndr_push_lsa_SetInfoPolicy2,
12060 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInfoPolicy2,
12061 (ndr_print_function_t) ndr_print_lsa_SetInfoPolicy2,
12065 "lsa_QueryTrustedDomainInfoByName",
12066 sizeof(struct lsa_QueryTrustedDomainInfoByName),
12067 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfoByName,
12068 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfoByName,
12069 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfoByName,
12073 "lsa_SetTrustedDomainInfoByName",
12074 sizeof(struct lsa_SetTrustedDomainInfoByName),
12075 (ndr_push_flags_fn_t) ndr_push_lsa_SetTrustedDomainInfoByName,
12076 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetTrustedDomainInfoByName,
12077 (ndr_print_function_t) ndr_print_lsa_SetTrustedDomainInfoByName,
12081 "lsa_EnumTrustedDomainsEx",
12082 sizeof(struct lsa_EnumTrustedDomainsEx),
12083 (ndr_push_flags_fn_t) ndr_push_lsa_EnumTrustedDomainsEx,
12084 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumTrustedDomainsEx,
12085 (ndr_print_function_t) ndr_print_lsa_EnumTrustedDomainsEx,
12089 "lsa_CreateTrustedDomainEx",
12090 sizeof(struct lsa_CreateTrustedDomainEx),
12091 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomainEx,
12092 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomainEx,
12093 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomainEx,
12097 "lsa_CloseTrustedDomainEx",
12098 sizeof(struct lsa_CloseTrustedDomainEx),
12099 (ndr_push_flags_fn_t) ndr_push_lsa_CloseTrustedDomainEx,
12100 (ndr_pull_flags_fn_t) ndr_pull_lsa_CloseTrustedDomainEx,
12101 (ndr_print_function_t) ndr_print_lsa_CloseTrustedDomainEx,
12105 "lsa_QueryDomainInformationPolicy",
12106 sizeof(struct lsa_QueryDomainInformationPolicy),
12107 (ndr_push_flags_fn_t) ndr_push_lsa_QueryDomainInformationPolicy,
12108 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryDomainInformationPolicy,
12109 (ndr_print_function_t) ndr_print_lsa_QueryDomainInformationPolicy,
12113 "lsa_SetDomainInformationPolicy",
12114 sizeof(struct lsa_SetDomainInformationPolicy),
12115 (ndr_push_flags_fn_t) ndr_push_lsa_SetDomainInformationPolicy,
12116 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetDomainInformationPolicy,
12117 (ndr_print_function_t) ndr_print_lsa_SetDomainInformationPolicy,
12121 "lsa_OpenTrustedDomainByName",
12122 sizeof(struct lsa_OpenTrustedDomainByName),
12123 (ndr_push_flags_fn_t) ndr_push_lsa_OpenTrustedDomainByName,
12124 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenTrustedDomainByName,
12125 (ndr_print_function_t) ndr_print_lsa_OpenTrustedDomainByName,
12130 sizeof(struct lsa_TestCall),
12131 (ndr_push_flags_fn_t) ndr_push_lsa_TestCall,
12132 (ndr_pull_flags_fn_t) ndr_pull_lsa_TestCall,
12133 (ndr_print_function_t) ndr_print_lsa_TestCall,
12138 sizeof(struct lsa_LookupSids2),
12139 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids2,
12140 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids2,
12141 (ndr_print_function_t) ndr_print_lsa_LookupSids2,
12145 "lsa_LookupNames2",
12146 sizeof(struct lsa_LookupNames2),
12147 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames2,
12148 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames2,
12149 (ndr_print_function_t) ndr_print_lsa_LookupNames2,
12153 "lsa_CreateTrustedDomainEx2",
12154 sizeof(struct lsa_CreateTrustedDomainEx2),
12155 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomainEx2,
12156 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomainEx2,
12157 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomainEx2,
12162 sizeof(struct lsa_CREDRWRITE),
12163 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRWRITE,
12164 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRWRITE,
12165 (ndr_print_function_t) ndr_print_lsa_CREDRWRITE,
12170 sizeof(struct lsa_CREDRREAD),
12171 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRREAD,
12172 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRREAD,
12173 (ndr_print_function_t) ndr_print_lsa_CREDRREAD,
12177 "lsa_CREDRENUMERATE",
12178 sizeof(struct lsa_CREDRENUMERATE),
12179 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRENUMERATE,
12180 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRENUMERATE,
12181 (ndr_print_function_t) ndr_print_lsa_CREDRENUMERATE,
12185 "lsa_CREDRWRITEDOMAINCREDENTIALS",
12186 sizeof(struct lsa_CREDRWRITEDOMAINCREDENTIALS),
12187 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS,
12188 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS,
12189 (ndr_print_function_t) ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS,
12193 "lsa_CREDRREADDOMAINCREDENTIALS",
12194 sizeof(struct lsa_CREDRREADDOMAINCREDENTIALS),
12195 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRREADDOMAINCREDENTIALS,
12196 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS,
12197 (ndr_print_function_t) ndr_print_lsa_CREDRREADDOMAINCREDENTIALS,
12202 sizeof(struct lsa_CREDRDELETE),
12203 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRDELETE,
12204 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRDELETE,
12205 (ndr_print_function_t) ndr_print_lsa_CREDRDELETE,
12209 "lsa_CREDRGETTARGETINFO",
12210 sizeof(struct lsa_CREDRGETTARGETINFO),
12211 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRGETTARGETINFO,
12212 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRGETTARGETINFO,
12213 (ndr_print_function_t) ndr_print_lsa_CREDRGETTARGETINFO,
12217 "lsa_CREDRPROFILELOADED",
12218 sizeof(struct lsa_CREDRPROFILELOADED),
12219 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRPROFILELOADED,
12220 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRPROFILELOADED,
12221 (ndr_print_function_t) ndr_print_lsa_CREDRPROFILELOADED,
12225 "lsa_LookupNames3",
12226 sizeof(struct lsa_LookupNames3),
12227 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames3,
12228 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames3,
12229 (ndr_print_function_t) ndr_print_lsa_LookupNames3,
12233 "lsa_CREDRGETSESSIONTYPES",
12234 sizeof(struct lsa_CREDRGETSESSIONTYPES),
12235 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRGETSESSIONTYPES,
12236 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRGETSESSIONTYPES,
12237 (ndr_print_function_t) ndr_print_lsa_CREDRGETSESSIONTYPES,
12241 "lsa_LSARREGISTERAUDITEVENT",
12242 sizeof(struct lsa_LSARREGISTERAUDITEVENT),
12243 (ndr_push_flags_fn_t) ndr_push_lsa_LSARREGISTERAUDITEVENT,
12244 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARREGISTERAUDITEVENT,
12245 (ndr_print_function_t) ndr_print_lsa_LSARREGISTERAUDITEVENT,
12249 "lsa_LSARGENAUDITEVENT",
12250 sizeof(struct lsa_LSARGENAUDITEVENT),
12251 (ndr_push_flags_fn_t) ndr_push_lsa_LSARGENAUDITEVENT,
12252 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARGENAUDITEVENT,
12253 (ndr_print_function_t) ndr_print_lsa_LSARGENAUDITEVENT,
12257 "lsa_LSARUNREGISTERAUDITEVENT",
12258 sizeof(struct lsa_LSARUNREGISTERAUDITEVENT),
12259 (ndr_push_flags_fn_t) ndr_push_lsa_LSARUNREGISTERAUDITEVENT,
12260 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARUNREGISTERAUDITEVENT,
12261 (ndr_print_function_t) ndr_print_lsa_LSARUNREGISTERAUDITEVENT,
12265 "lsa_lsaRQueryForestTrustInformation",
12266 sizeof(struct lsa_lsaRQueryForestTrustInformation),
12267 (ndr_push_flags_fn_t) ndr_push_lsa_lsaRQueryForestTrustInformation,
12268 (ndr_pull_flags_fn_t) ndr_pull_lsa_lsaRQueryForestTrustInformation,
12269 (ndr_print_function_t) ndr_print_lsa_lsaRQueryForestTrustInformation,
12273 "lsa_LSARSETFORESTTRUSTINFORMATION",
12274 sizeof(struct lsa_LSARSETFORESTTRUSTINFORMATION),
12275 (ndr_push_flags_fn_t) ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION,
12276 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION,
12277 (ndr_print_function_t) ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION,
12282 sizeof(struct lsa_CREDRRENAME),
12283 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRRENAME,
12284 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRRENAME,
12285 (ndr_print_function_t) ndr_print_lsa_CREDRRENAME,
12290 sizeof(struct lsa_LookupSids3),
12291 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids3,
12292 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids3,
12293 (ndr_print_function_t) ndr_print_lsa_LookupSids3,
12297 "lsa_LookupNames4",
12298 sizeof(struct lsa_LookupNames4),
12299 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames4,
12300 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames4,
12301 (ndr_print_function_t) ndr_print_lsa_LookupNames4,
12305 "lsa_LSAROPENPOLICYSCE",
12306 sizeof(struct lsa_LSAROPENPOLICYSCE),
12307 (ndr_push_flags_fn_t) ndr_push_lsa_LSAROPENPOLICYSCE,
12308 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSAROPENPOLICYSCE,
12309 (ndr_print_function_t) ndr_print_lsa_LSAROPENPOLICYSCE,
12313 "lsa_LSARADTREGISTERSECURITYEVENTSOURCE",
12314 sizeof(struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE),
12315 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
12316 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
12317 (ndr_print_function_t) ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
12321 "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE",
12322 sizeof(struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE),
12323 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
12324 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
12325 (ndr_print_function_t) ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
12329 "lsa_LSARADTREPORTSECURITYEVENT",
12330 sizeof(struct lsa_LSARADTREPORTSECURITYEVENT),
12331 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTREPORTSECURITYEVENT,
12332 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTREPORTSECURITYEVENT,
12333 (ndr_print_function_t) ndr_print_lsa_LSARADTREPORTSECURITYEVENT,
12336 { NULL, 0, NULL, NULL, NULL, false }
12339 static const char * const lsarpc_endpoint_strings[] = {
12340 "ncacn_np:[\\pipe\\lsarpc]",
12341 "ncacn_np:[\\pipe\\netlogon]",
12342 "ncacn_np:[\\pipe\\lsass]",
12347 static const struct ndr_interface_string_array lsarpc_endpoints = {
12349 .names = lsarpc_endpoint_strings
12352 static const char * const lsarpc_authservice_strings[] = {
12356 static const struct ndr_interface_string_array lsarpc_authservices = {
12358 .names = lsarpc_authservice_strings
12362 const struct ndr_interface_table ndr_table_lsarpc = {
12365 {0x12345778,0x1234,0xabcd,{0xef,0x00},{0x01,0x23,0x45,0x67,0x89,0xab}},
12368 .helpstring = NDR_LSARPC_HELPSTRING,
12370 .calls = lsarpc_calls,
12371 .endpoints = &lsarpc_endpoints,
12372 .authservices = &lsarpc_authservices