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(r->string) + 1)));
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(r->string) + 1) / 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(r->string) + 1):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 asprintf(&idx_1, "[%d]", cntr_names_1);
226 ndr_print_lsa_String(ndr, "names", &r->names[cntr_names_1]);
236 _PUBLIC_ enum ndr_err_code ndr_push_lsa_AsciiString(struct ndr_push *ndr, int ndr_flags, const struct lsa_AsciiString *r)
238 if (ndr_flags & NDR_SCALARS) {
239 NDR_CHECK(ndr_push_align(ndr, 4));
240 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
241 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, strlen_m(r->string)));
243 uint32_t _flags_save_string = ndr->flags;
244 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_SIZE4|LIBNDR_FLAG_STR_LEN4);
245 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
246 ndr->flags = _flags_save_string;
249 if (ndr_flags & NDR_BUFFERS) {
251 uint32_t _flags_save_string = ndr->flags;
252 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_SIZE4|LIBNDR_FLAG_STR_LEN4);
254 NDR_CHECK(ndr_push_string(ndr, NDR_SCALARS, r->string));
256 ndr->flags = _flags_save_string;
259 return NDR_ERR_SUCCESS;
262 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_AsciiString(struct ndr_pull *ndr, int ndr_flags, struct lsa_AsciiString *r)
264 uint32_t _ptr_string;
265 TALLOC_CTX *_mem_save_string_0;
266 if (ndr_flags & NDR_SCALARS) {
267 NDR_CHECK(ndr_pull_align(ndr, 4));
268 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->length));
269 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
271 uint32_t _flags_save_string = ndr->flags;
272 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_SIZE4|LIBNDR_FLAG_STR_LEN4);
273 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
275 NDR_PULL_ALLOC(ndr, r->string);
279 ndr->flags = _flags_save_string;
282 if (ndr_flags & NDR_BUFFERS) {
284 uint32_t _flags_save_string = ndr->flags;
285 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_SIZE4|LIBNDR_FLAG_STR_LEN4);
287 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
288 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
289 NDR_CHECK(ndr_pull_string(ndr, NDR_SCALARS, &r->string));
290 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
292 ndr->flags = _flags_save_string;
295 return NDR_ERR_SUCCESS;
298 _PUBLIC_ void ndr_print_lsa_AsciiString(struct ndr_print *ndr, const char *name, const struct lsa_AsciiString *r)
300 ndr_print_struct(ndr, name, "lsa_AsciiString");
302 ndr_print_uint16(ndr, "length", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->length);
303 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?strlen_m(r->string):r->size);
304 ndr_print_ptr(ndr, "string", r->string);
307 ndr_print_string(ndr, "string", r->string);
313 static enum ndr_err_code ndr_push_lsa_LUID(struct ndr_push *ndr, int ndr_flags, const struct lsa_LUID *r)
315 if (ndr_flags & NDR_SCALARS) {
316 NDR_CHECK(ndr_push_align(ndr, 4));
317 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->low));
318 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->high));
320 if (ndr_flags & NDR_BUFFERS) {
322 return NDR_ERR_SUCCESS;
325 static enum ndr_err_code ndr_pull_lsa_LUID(struct ndr_pull *ndr, int ndr_flags, struct lsa_LUID *r)
327 if (ndr_flags & NDR_SCALARS) {
328 NDR_CHECK(ndr_pull_align(ndr, 4));
329 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->low));
330 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->high));
332 if (ndr_flags & NDR_BUFFERS) {
334 return NDR_ERR_SUCCESS;
337 _PUBLIC_ void ndr_print_lsa_LUID(struct ndr_print *ndr, const char *name, const struct lsa_LUID *r)
339 ndr_print_struct(ndr, name, "lsa_LUID");
341 ndr_print_uint32(ndr, "low", r->low);
342 ndr_print_uint32(ndr, "high", r->high);
346 static enum ndr_err_code ndr_push_lsa_PrivEntry(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivEntry *r)
348 if (ndr_flags & NDR_SCALARS) {
349 NDR_CHECK(ndr_push_align(ndr, 4));
350 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
351 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
353 if (ndr_flags & NDR_BUFFERS) {
354 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
356 return NDR_ERR_SUCCESS;
359 static enum ndr_err_code ndr_pull_lsa_PrivEntry(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivEntry *r)
361 if (ndr_flags & NDR_SCALARS) {
362 NDR_CHECK(ndr_pull_align(ndr, 4));
363 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
364 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
366 if (ndr_flags & NDR_BUFFERS) {
367 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
369 return NDR_ERR_SUCCESS;
372 _PUBLIC_ void ndr_print_lsa_PrivEntry(struct ndr_print *ndr, const char *name, const struct lsa_PrivEntry *r)
374 ndr_print_struct(ndr, name, "lsa_PrivEntry");
376 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
377 ndr_print_lsa_LUID(ndr, "luid", &r->luid);
381 static enum ndr_err_code ndr_push_lsa_PrivArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivArray *r)
383 uint32_t cntr_privs_1;
384 if (ndr_flags & NDR_SCALARS) {
385 NDR_CHECK(ndr_push_align(ndr, 4));
386 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
387 NDR_CHECK(ndr_push_unique_ptr(ndr, r->privs));
389 if (ndr_flags & NDR_BUFFERS) {
391 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
392 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
393 NDR_CHECK(ndr_push_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
395 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
396 NDR_CHECK(ndr_push_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
400 return NDR_ERR_SUCCESS;
403 static enum ndr_err_code ndr_pull_lsa_PrivArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivArray *r)
406 uint32_t cntr_privs_1;
407 TALLOC_CTX *_mem_save_privs_0;
408 TALLOC_CTX *_mem_save_privs_1;
409 if (ndr_flags & NDR_SCALARS) {
410 NDR_CHECK(ndr_pull_align(ndr, 4));
411 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
412 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
414 NDR_PULL_ALLOC(ndr, r->privs);
419 if (ndr_flags & NDR_BUFFERS) {
421 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
422 NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
423 NDR_CHECK(ndr_pull_array_size(ndr, &r->privs));
424 NDR_PULL_ALLOC_N(ndr, r->privs, ndr_get_array_size(ndr, &r->privs));
425 _mem_save_privs_1 = NDR_PULL_GET_MEM_CTX(ndr);
426 NDR_PULL_SET_MEM_CTX(ndr, r->privs, 0);
427 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
428 NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_SCALARS, &r->privs[cntr_privs_1]));
430 for (cntr_privs_1 = 0; cntr_privs_1 < r->count; cntr_privs_1++) {
431 NDR_CHECK(ndr_pull_lsa_PrivEntry(ndr, NDR_BUFFERS, &r->privs[cntr_privs_1]));
433 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_1, 0);
434 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
437 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->privs, r->count));
440 return NDR_ERR_SUCCESS;
443 _PUBLIC_ void ndr_print_lsa_PrivArray(struct ndr_print *ndr, const char *name, const struct lsa_PrivArray *r)
445 uint32_t cntr_privs_1;
446 ndr_print_struct(ndr, name, "lsa_PrivArray");
448 ndr_print_uint32(ndr, "count", r->count);
449 ndr_print_ptr(ndr, "privs", r->privs);
452 ndr->print(ndr, "%s: ARRAY(%d)", "privs", r->count);
454 for (cntr_privs_1=0;cntr_privs_1<r->count;cntr_privs_1++) {
456 asprintf(&idx_1, "[%d]", cntr_privs_1);
458 ndr_print_lsa_PrivEntry(ndr, "privs", &r->privs[cntr_privs_1]);
468 static enum ndr_err_code ndr_push_lsa_QosInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_QosInfo *r)
470 if (ndr_flags & NDR_SCALARS) {
471 NDR_CHECK(ndr_push_align(ndr, 4));
472 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->len));
473 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->impersonation_level));
474 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->context_mode));
475 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->effective_only));
477 if (ndr_flags & NDR_BUFFERS) {
479 return NDR_ERR_SUCCESS;
482 static enum ndr_err_code ndr_pull_lsa_QosInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_QosInfo *r)
484 if (ndr_flags & NDR_SCALARS) {
485 NDR_CHECK(ndr_pull_align(ndr, 4));
486 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->len));
487 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->impersonation_level));
488 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->context_mode));
489 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->effective_only));
491 if (ndr_flags & NDR_BUFFERS) {
493 return NDR_ERR_SUCCESS;
496 _PUBLIC_ void ndr_print_lsa_QosInfo(struct ndr_print *ndr, const char *name, const struct lsa_QosInfo *r)
498 ndr_print_struct(ndr, name, "lsa_QosInfo");
500 ndr_print_uint32(ndr, "len", r->len);
501 ndr_print_uint16(ndr, "impersonation_level", r->impersonation_level);
502 ndr_print_uint8(ndr, "context_mode", r->context_mode);
503 ndr_print_uint8(ndr, "effective_only", r->effective_only);
507 static enum ndr_err_code ndr_push_lsa_ObjectAttribute(struct ndr_push *ndr, int ndr_flags, const struct lsa_ObjectAttribute *r)
509 if (ndr_flags & NDR_SCALARS) {
510 NDR_CHECK(ndr_push_align(ndr, 4));
511 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->len));
512 NDR_CHECK(ndr_push_unique_ptr(ndr, r->root_dir));
513 NDR_CHECK(ndr_push_unique_ptr(ndr, r->object_name));
514 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->attributes));
515 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sec_desc));
516 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sec_qos));
518 if (ndr_flags & NDR_BUFFERS) {
520 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, *r->root_dir));
522 if (r->object_name) {
523 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->object_name, CH_UTF16)));
524 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
525 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->object_name, CH_UTF16)));
526 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->object_name, ndr_charset_length(r->object_name, CH_UTF16), sizeof(uint16_t), CH_UTF16));
529 NDR_CHECK(ndr_push_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->sec_desc));
532 NDR_CHECK(ndr_push_lsa_QosInfo(ndr, NDR_SCALARS, r->sec_qos));
535 return NDR_ERR_SUCCESS;
538 static enum ndr_err_code ndr_pull_lsa_ObjectAttribute(struct ndr_pull *ndr, int ndr_flags, struct lsa_ObjectAttribute *r)
540 uint32_t _ptr_root_dir;
541 TALLOC_CTX *_mem_save_root_dir_0;
542 uint32_t _ptr_object_name;
543 TALLOC_CTX *_mem_save_object_name_0;
544 uint32_t _ptr_sec_desc;
545 TALLOC_CTX *_mem_save_sec_desc_0;
546 uint32_t _ptr_sec_qos;
547 TALLOC_CTX *_mem_save_sec_qos_0;
548 if (ndr_flags & NDR_SCALARS) {
549 NDR_CHECK(ndr_pull_align(ndr, 4));
550 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->len));
551 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_root_dir));
553 NDR_PULL_ALLOC(ndr, r->root_dir);
557 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_object_name));
558 if (_ptr_object_name) {
559 NDR_PULL_ALLOC(ndr, r->object_name);
561 r->object_name = NULL;
563 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->attributes));
564 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sec_desc));
566 NDR_PULL_ALLOC(ndr, r->sec_desc);
570 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sec_qos));
572 NDR_PULL_ALLOC(ndr, r->sec_qos);
577 if (ndr_flags & NDR_BUFFERS) {
579 _mem_save_root_dir_0 = NDR_PULL_GET_MEM_CTX(ndr);
580 NDR_PULL_SET_MEM_CTX(ndr, r->root_dir, 0);
581 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, r->root_dir));
582 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_root_dir_0, 0);
584 if (r->object_name) {
585 _mem_save_object_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
586 NDR_PULL_SET_MEM_CTX(ndr, r->object_name, 0);
587 NDR_CHECK(ndr_pull_array_size(ndr, &r->object_name));
588 NDR_CHECK(ndr_pull_array_length(ndr, &r->object_name));
589 if (ndr_get_array_length(ndr, &r->object_name) > ndr_get_array_size(ndr, &r->object_name)) {
590 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));
592 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t)));
593 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->object_name, ndr_get_array_length(ndr, &r->object_name), sizeof(uint16_t), CH_UTF16));
594 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_object_name_0, 0);
597 _mem_save_sec_desc_0 = NDR_PULL_GET_MEM_CTX(ndr);
598 NDR_PULL_SET_MEM_CTX(ndr, r->sec_desc, 0);
599 NDR_CHECK(ndr_pull_security_descriptor(ndr, NDR_SCALARS|NDR_BUFFERS, r->sec_desc));
600 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_desc_0, 0);
603 _mem_save_sec_qos_0 = NDR_PULL_GET_MEM_CTX(ndr);
604 NDR_PULL_SET_MEM_CTX(ndr, r->sec_qos, 0);
605 NDR_CHECK(ndr_pull_lsa_QosInfo(ndr, NDR_SCALARS, r->sec_qos));
606 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_qos_0, 0);
609 return NDR_ERR_SUCCESS;
612 _PUBLIC_ void ndr_print_lsa_ObjectAttribute(struct ndr_print *ndr, const char *name, const struct lsa_ObjectAttribute *r)
614 ndr_print_struct(ndr, name, "lsa_ObjectAttribute");
616 ndr_print_uint32(ndr, "len", r->len);
617 ndr_print_ptr(ndr, "root_dir", r->root_dir);
620 ndr_print_uint8(ndr, "root_dir", *r->root_dir);
623 ndr_print_ptr(ndr, "object_name", r->object_name);
625 if (r->object_name) {
626 ndr_print_string(ndr, "object_name", r->object_name);
629 ndr_print_uint32(ndr, "attributes", r->attributes);
630 ndr_print_ptr(ndr, "sec_desc", r->sec_desc);
633 ndr_print_security_descriptor(ndr, "sec_desc", r->sec_desc);
636 ndr_print_ptr(ndr, "sec_qos", r->sec_qos);
639 ndr_print_lsa_QosInfo(ndr, "sec_qos", r->sec_qos);
645 static enum ndr_err_code ndr_push_lsa_AuditLogInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditLogInfo *r)
647 if (ndr_flags & NDR_SCALARS) {
648 NDR_CHECK(ndr_push_align(ndr, 4));
649 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->percent_full));
650 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->log_size));
651 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->retention_time));
652 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_in_progress));
653 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->time_to_shutdown));
654 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->next_audit_record));
655 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
657 if (ndr_flags & NDR_BUFFERS) {
659 return NDR_ERR_SUCCESS;
662 static enum ndr_err_code ndr_pull_lsa_AuditLogInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditLogInfo *r)
664 if (ndr_flags & NDR_SCALARS) {
665 NDR_CHECK(ndr_pull_align(ndr, 4));
666 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->percent_full));
667 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->log_size));
668 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->retention_time));
669 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_in_progress));
670 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->time_to_shutdown));
671 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->next_audit_record));
672 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
674 if (ndr_flags & NDR_BUFFERS) {
676 return NDR_ERR_SUCCESS;
679 _PUBLIC_ void ndr_print_lsa_AuditLogInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditLogInfo *r)
681 ndr_print_struct(ndr, name, "lsa_AuditLogInfo");
683 ndr_print_uint32(ndr, "percent_full", r->percent_full);
684 ndr_print_uint32(ndr, "log_size", r->log_size);
685 ndr_print_NTTIME(ndr, "retention_time", r->retention_time);
686 ndr_print_uint8(ndr, "shutdown_in_progress", r->shutdown_in_progress);
687 ndr_print_NTTIME(ndr, "time_to_shutdown", r->time_to_shutdown);
688 ndr_print_uint32(ndr, "next_audit_record", r->next_audit_record);
689 ndr_print_uint32(ndr, "unknown", r->unknown);
693 static enum ndr_err_code ndr_push_lsa_AuditEventsInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditEventsInfo *r)
695 uint32_t cntr_settings_1;
696 if (ndr_flags & NDR_SCALARS) {
697 NDR_CHECK(ndr_push_align(ndr, 4));
698 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->auditing_mode));
699 NDR_CHECK(ndr_push_unique_ptr(ndr, r->settings));
700 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
702 if (ndr_flags & NDR_BUFFERS) {
704 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
705 for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
706 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->settings[cntr_settings_1]));
710 return NDR_ERR_SUCCESS;
713 static enum ndr_err_code ndr_pull_lsa_AuditEventsInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditEventsInfo *r)
715 uint32_t _ptr_settings;
716 uint32_t cntr_settings_1;
717 TALLOC_CTX *_mem_save_settings_0;
718 TALLOC_CTX *_mem_save_settings_1;
719 if (ndr_flags & NDR_SCALARS) {
720 NDR_CHECK(ndr_pull_align(ndr, 4));
721 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->auditing_mode));
722 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_settings));
724 NDR_PULL_ALLOC(ndr, r->settings);
728 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
730 if (ndr_flags & NDR_BUFFERS) {
732 _mem_save_settings_0 = NDR_PULL_GET_MEM_CTX(ndr);
733 NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
734 NDR_CHECK(ndr_pull_array_size(ndr, &r->settings));
735 NDR_PULL_ALLOC_N(ndr, r->settings, ndr_get_array_size(ndr, &r->settings));
736 _mem_save_settings_1 = NDR_PULL_GET_MEM_CTX(ndr);
737 NDR_PULL_SET_MEM_CTX(ndr, r->settings, 0);
738 for (cntr_settings_1 = 0; cntr_settings_1 < r->count; cntr_settings_1++) {
739 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->settings[cntr_settings_1]));
741 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_1, 0);
742 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_settings_0, 0);
745 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->settings, r->count));
748 return NDR_ERR_SUCCESS;
751 _PUBLIC_ void ndr_print_lsa_AuditEventsInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditEventsInfo *r)
753 uint32_t cntr_settings_1;
754 ndr_print_struct(ndr, name, "lsa_AuditEventsInfo");
756 ndr_print_uint32(ndr, "auditing_mode", r->auditing_mode);
757 ndr_print_ptr(ndr, "settings", r->settings);
760 ndr->print(ndr, "%s: ARRAY(%d)", "settings", r->count);
762 for (cntr_settings_1=0;cntr_settings_1<r->count;cntr_settings_1++) {
764 asprintf(&idx_1, "[%d]", cntr_settings_1);
766 ndr_print_uint32(ndr, "settings", r->settings[cntr_settings_1]);
773 ndr_print_uint32(ndr, "count", r->count);
777 static enum ndr_err_code ndr_push_lsa_DomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfo *r)
779 if (ndr_flags & NDR_SCALARS) {
780 NDR_CHECK(ndr_push_align(ndr, 4));
781 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
782 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
784 if (ndr_flags & NDR_BUFFERS) {
785 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
787 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
790 return NDR_ERR_SUCCESS;
793 static enum ndr_err_code ndr_pull_lsa_DomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfo *r)
796 TALLOC_CTX *_mem_save_sid_0;
797 if (ndr_flags & NDR_SCALARS) {
798 NDR_CHECK(ndr_pull_align(ndr, 4));
799 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
800 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
802 NDR_PULL_ALLOC(ndr, r->sid);
807 if (ndr_flags & NDR_BUFFERS) {
808 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
810 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
811 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
812 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
813 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
816 return NDR_ERR_SUCCESS;
819 _PUBLIC_ void ndr_print_lsa_DomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfo *r)
821 ndr_print_struct(ndr, name, "lsa_DomainInfo");
823 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
824 ndr_print_ptr(ndr, "sid", r->sid);
827 ndr_print_dom_sid2(ndr, "sid", r->sid);
833 static enum ndr_err_code ndr_push_lsa_PDAccountInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_PDAccountInfo *r)
835 if (ndr_flags & NDR_SCALARS) {
836 NDR_CHECK(ndr_push_align(ndr, 4));
837 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
839 if (ndr_flags & NDR_BUFFERS) {
840 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
842 return NDR_ERR_SUCCESS;
845 static enum ndr_err_code ndr_pull_lsa_PDAccountInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_PDAccountInfo *r)
847 if (ndr_flags & NDR_SCALARS) {
848 NDR_CHECK(ndr_pull_align(ndr, 4));
849 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
851 if (ndr_flags & NDR_BUFFERS) {
852 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
854 return NDR_ERR_SUCCESS;
857 _PUBLIC_ void ndr_print_lsa_PDAccountInfo(struct ndr_print *ndr, const char *name, const struct lsa_PDAccountInfo *r)
859 ndr_print_struct(ndr, name, "lsa_PDAccountInfo");
861 ndr_print_lsa_String(ndr, "name", &r->name);
865 static enum ndr_err_code ndr_push_lsa_ServerRole(struct ndr_push *ndr, int ndr_flags, const struct lsa_ServerRole *r)
867 if (ndr_flags & NDR_SCALARS) {
868 NDR_CHECK(ndr_push_align(ndr, 2));
869 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown));
870 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->role));
872 if (ndr_flags & NDR_BUFFERS) {
874 return NDR_ERR_SUCCESS;
877 static enum ndr_err_code ndr_pull_lsa_ServerRole(struct ndr_pull *ndr, int ndr_flags, struct lsa_ServerRole *r)
879 if (ndr_flags & NDR_SCALARS) {
880 NDR_CHECK(ndr_pull_align(ndr, 2));
881 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown));
882 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->role));
884 if (ndr_flags & NDR_BUFFERS) {
886 return NDR_ERR_SUCCESS;
889 _PUBLIC_ void ndr_print_lsa_ServerRole(struct ndr_print *ndr, const char *name, const struct lsa_ServerRole *r)
891 ndr_print_struct(ndr, name, "lsa_ServerRole");
893 ndr_print_uint16(ndr, "unknown", r->unknown);
894 ndr_print_uint16(ndr, "role", r->role);
898 static enum ndr_err_code ndr_push_lsa_ReplicaSourceInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ReplicaSourceInfo *r)
900 if (ndr_flags & NDR_SCALARS) {
901 NDR_CHECK(ndr_push_align(ndr, 4));
902 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->source));
903 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->account));
905 if (ndr_flags & NDR_BUFFERS) {
906 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->source));
907 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->account));
909 return NDR_ERR_SUCCESS;
912 static enum ndr_err_code ndr_pull_lsa_ReplicaSourceInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ReplicaSourceInfo *r)
914 if (ndr_flags & NDR_SCALARS) {
915 NDR_CHECK(ndr_pull_align(ndr, 4));
916 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->source));
917 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->account));
919 if (ndr_flags & NDR_BUFFERS) {
920 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->source));
921 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->account));
923 return NDR_ERR_SUCCESS;
926 _PUBLIC_ void ndr_print_lsa_ReplicaSourceInfo(struct ndr_print *ndr, const char *name, const struct lsa_ReplicaSourceInfo *r)
928 ndr_print_struct(ndr, name, "lsa_ReplicaSourceInfo");
930 ndr_print_lsa_String(ndr, "source", &r->source);
931 ndr_print_lsa_String(ndr, "account", &r->account);
935 static enum ndr_err_code ndr_push_lsa_DefaultQuotaInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DefaultQuotaInfo *r)
937 if (ndr_flags & NDR_SCALARS) {
938 NDR_CHECK(ndr_push_align(ndr, 8));
939 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->paged_pool));
940 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->non_paged_pool));
941 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->min_wss));
942 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_wss));
943 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->pagefile));
944 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown));
946 if (ndr_flags & NDR_BUFFERS) {
948 return NDR_ERR_SUCCESS;
951 static enum ndr_err_code ndr_pull_lsa_DefaultQuotaInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DefaultQuotaInfo *r)
953 if (ndr_flags & NDR_SCALARS) {
954 NDR_CHECK(ndr_pull_align(ndr, 8));
955 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->paged_pool));
956 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->non_paged_pool));
957 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->min_wss));
958 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_wss));
959 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->pagefile));
960 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown));
962 if (ndr_flags & NDR_BUFFERS) {
964 return NDR_ERR_SUCCESS;
967 _PUBLIC_ void ndr_print_lsa_DefaultQuotaInfo(struct ndr_print *ndr, const char *name, const struct lsa_DefaultQuotaInfo *r)
969 ndr_print_struct(ndr, name, "lsa_DefaultQuotaInfo");
971 ndr_print_uint32(ndr, "paged_pool", r->paged_pool);
972 ndr_print_uint32(ndr, "non_paged_pool", r->non_paged_pool);
973 ndr_print_uint32(ndr, "min_wss", r->min_wss);
974 ndr_print_uint32(ndr, "max_wss", r->max_wss);
975 ndr_print_uint32(ndr, "pagefile", r->pagefile);
976 ndr_print_hyper(ndr, "unknown", r->unknown);
980 static enum ndr_err_code ndr_push_lsa_ModificationInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_ModificationInfo *r)
982 if (ndr_flags & NDR_SCALARS) {
983 NDR_CHECK(ndr_push_align(ndr, 8));
984 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->modified_id));
985 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->db_create_time));
987 if (ndr_flags & NDR_BUFFERS) {
989 return NDR_ERR_SUCCESS;
992 static enum ndr_err_code ndr_pull_lsa_ModificationInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_ModificationInfo *r)
994 if (ndr_flags & NDR_SCALARS) {
995 NDR_CHECK(ndr_pull_align(ndr, 8));
996 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->modified_id));
997 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->db_create_time));
999 if (ndr_flags & NDR_BUFFERS) {
1001 return NDR_ERR_SUCCESS;
1004 _PUBLIC_ void ndr_print_lsa_ModificationInfo(struct ndr_print *ndr, const char *name, const struct lsa_ModificationInfo *r)
1006 ndr_print_struct(ndr, name, "lsa_ModificationInfo");
1008 ndr_print_hyper(ndr, "modified_id", r->modified_id);
1009 ndr_print_NTTIME(ndr, "db_create_time", r->db_create_time);
1013 static enum ndr_err_code ndr_push_lsa_AuditFullSetInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditFullSetInfo *r)
1015 if (ndr_flags & NDR_SCALARS) {
1016 NDR_CHECK(ndr_push_align(ndr, 1));
1017 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_on_full));
1019 if (ndr_flags & NDR_BUFFERS) {
1021 return NDR_ERR_SUCCESS;
1024 static enum ndr_err_code ndr_pull_lsa_AuditFullSetInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditFullSetInfo *r)
1026 if (ndr_flags & NDR_SCALARS) {
1027 NDR_CHECK(ndr_pull_align(ndr, 1));
1028 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_on_full));
1030 if (ndr_flags & NDR_BUFFERS) {
1032 return NDR_ERR_SUCCESS;
1035 _PUBLIC_ void ndr_print_lsa_AuditFullSetInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditFullSetInfo *r)
1037 ndr_print_struct(ndr, name, "lsa_AuditFullSetInfo");
1039 ndr_print_uint8(ndr, "shutdown_on_full", r->shutdown_on_full);
1043 static enum ndr_err_code ndr_push_lsa_AuditFullQueryInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_AuditFullQueryInfo *r)
1045 if (ndr_flags & NDR_SCALARS) {
1046 NDR_CHECK(ndr_push_align(ndr, 2));
1047 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown));
1048 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->shutdown_on_full));
1049 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->log_is_full));
1051 if (ndr_flags & NDR_BUFFERS) {
1053 return NDR_ERR_SUCCESS;
1056 static enum ndr_err_code ndr_pull_lsa_AuditFullQueryInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_AuditFullQueryInfo *r)
1058 if (ndr_flags & NDR_SCALARS) {
1059 NDR_CHECK(ndr_pull_align(ndr, 2));
1060 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown));
1061 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->shutdown_on_full));
1062 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->log_is_full));
1064 if (ndr_flags & NDR_BUFFERS) {
1066 return NDR_ERR_SUCCESS;
1069 _PUBLIC_ void ndr_print_lsa_AuditFullQueryInfo(struct ndr_print *ndr, const char *name, const struct lsa_AuditFullQueryInfo *r)
1071 ndr_print_struct(ndr, name, "lsa_AuditFullQueryInfo");
1073 ndr_print_uint16(ndr, "unknown", r->unknown);
1074 ndr_print_uint8(ndr, "shutdown_on_full", r->shutdown_on_full);
1075 ndr_print_uint8(ndr, "log_is_full", r->log_is_full);
1079 static enum ndr_err_code ndr_push_lsa_DnsDomainInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_DnsDomainInfo *r)
1081 if (ndr_flags & NDR_SCALARS) {
1082 NDR_CHECK(ndr_push_align(ndr, 4));
1083 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1084 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain));
1085 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_forest));
1086 NDR_CHECK(ndr_push_GUID(ndr, NDR_SCALARS, &r->domain_guid));
1087 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1089 if (ndr_flags & NDR_BUFFERS) {
1090 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1091 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain));
1092 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_forest));
1093 NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->domain_guid));
1095 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1098 return NDR_ERR_SUCCESS;
1101 static enum ndr_err_code ndr_pull_lsa_DnsDomainInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_DnsDomainInfo *r)
1104 TALLOC_CTX *_mem_save_sid_0;
1105 if (ndr_flags & NDR_SCALARS) {
1106 NDR_CHECK(ndr_pull_align(ndr, 4));
1107 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->name));
1108 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_domain));
1109 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->dns_forest));
1110 NDR_CHECK(ndr_pull_GUID(ndr, NDR_SCALARS, &r->domain_guid));
1111 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1113 NDR_PULL_ALLOC(ndr, r->sid);
1118 if (ndr_flags & NDR_BUFFERS) {
1119 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->name));
1120 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_domain));
1121 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->dns_forest));
1122 NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->domain_guid));
1124 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1125 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1126 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1127 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1130 return NDR_ERR_SUCCESS;
1133 _PUBLIC_ void ndr_print_lsa_DnsDomainInfo(struct ndr_print *ndr, const char *name, const struct lsa_DnsDomainInfo *r)
1135 ndr_print_struct(ndr, name, "lsa_DnsDomainInfo");
1137 ndr_print_lsa_StringLarge(ndr, "name", &r->name);
1138 ndr_print_lsa_StringLarge(ndr, "dns_domain", &r->dns_domain);
1139 ndr_print_lsa_StringLarge(ndr, "dns_forest", &r->dns_forest);
1140 ndr_print_GUID(ndr, "domain_guid", &r->domain_guid);
1141 ndr_print_ptr(ndr, "sid", r->sid);
1144 ndr_print_dom_sid2(ndr, "sid", r->sid);
1150 static enum ndr_err_code ndr_push_lsa_PolicyInfo(struct ndr_push *ndr, int ndr_flags, enum lsa_PolicyInfo r)
1152 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
1153 return NDR_ERR_SUCCESS;
1156 static enum ndr_err_code ndr_pull_lsa_PolicyInfo(struct ndr_pull *ndr, int ndr_flags, enum lsa_PolicyInfo *r)
1159 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
1161 return NDR_ERR_SUCCESS;
1164 _PUBLIC_ void ndr_print_lsa_PolicyInfo(struct ndr_print *ndr, const char *name, enum lsa_PolicyInfo r)
1166 const char *val = NULL;
1169 case LSA_POLICY_INFO_AUDIT_LOG: val = "LSA_POLICY_INFO_AUDIT_LOG"; break;
1170 case LSA_POLICY_INFO_AUDIT_EVENTS: val = "LSA_POLICY_INFO_AUDIT_EVENTS"; break;
1171 case LSA_POLICY_INFO_DOMAIN: val = "LSA_POLICY_INFO_DOMAIN"; break;
1172 case LSA_POLICY_INFO_PD: val = "LSA_POLICY_INFO_PD"; break;
1173 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: val = "LSA_POLICY_INFO_ACCOUNT_DOMAIN"; break;
1174 case LSA_POLICY_INFO_ROLE: val = "LSA_POLICY_INFO_ROLE"; break;
1175 case LSA_POLICY_INFO_REPLICA: val = "LSA_POLICY_INFO_REPLICA"; break;
1176 case LSA_POLICY_INFO_QUOTA: val = "LSA_POLICY_INFO_QUOTA"; break;
1177 case LSA_POLICY_INFO_DB: val = "LSA_POLICY_INFO_DB"; break;
1178 case LSA_POLICY_INFO_AUDIT_FULL_SET: val = "LSA_POLICY_INFO_AUDIT_FULL_SET"; break;
1179 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: val = "LSA_POLICY_INFO_AUDIT_FULL_QUERY"; break;
1180 case LSA_POLICY_INFO_DNS: val = "LSA_POLICY_INFO_DNS"; break;
1182 ndr_print_enum(ndr, name, "ENUM", val, r);
1185 static enum ndr_err_code ndr_push_lsa_PolicyInformation(struct ndr_push *ndr, int ndr_flags, const union lsa_PolicyInformation *r)
1187 if (ndr_flags & NDR_SCALARS) {
1188 int level = ndr_push_get_switch_value(ndr, r);
1189 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
1191 case LSA_POLICY_INFO_AUDIT_LOG:
1192 NDR_CHECK(ndr_push_lsa_AuditLogInfo(ndr, NDR_SCALARS, &r->audit_log));
1195 case LSA_POLICY_INFO_AUDIT_EVENTS:
1196 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr, NDR_SCALARS, &r->audit_events));
1199 case LSA_POLICY_INFO_DOMAIN:
1200 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domain));
1203 case LSA_POLICY_INFO_PD:
1204 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr, NDR_SCALARS, &r->pd));
1207 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1208 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->account_domain));
1211 case LSA_POLICY_INFO_ROLE:
1212 NDR_CHECK(ndr_push_lsa_ServerRole(ndr, NDR_SCALARS, &r->role));
1215 case LSA_POLICY_INFO_REPLICA:
1216 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr, NDR_SCALARS, &r->replica));
1219 case LSA_POLICY_INFO_QUOTA:
1220 NDR_CHECK(ndr_push_lsa_DefaultQuotaInfo(ndr, NDR_SCALARS, &r->quota));
1223 case LSA_POLICY_INFO_DB:
1224 NDR_CHECK(ndr_push_lsa_ModificationInfo(ndr, NDR_SCALARS, &r->db));
1227 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1228 NDR_CHECK(ndr_push_lsa_AuditFullSetInfo(ndr, NDR_SCALARS, &r->auditfullset));
1231 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1232 NDR_CHECK(ndr_push_lsa_AuditFullQueryInfo(ndr, NDR_SCALARS, &r->auditfullquery));
1235 case LSA_POLICY_INFO_DNS:
1236 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1240 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1243 if (ndr_flags & NDR_BUFFERS) {
1244 int level = ndr_push_get_switch_value(ndr, r);
1246 case LSA_POLICY_INFO_AUDIT_LOG:
1249 case LSA_POLICY_INFO_AUDIT_EVENTS:
1250 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr, NDR_BUFFERS, &r->audit_events));
1253 case LSA_POLICY_INFO_DOMAIN:
1254 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domain));
1257 case LSA_POLICY_INFO_PD:
1258 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr, NDR_BUFFERS, &r->pd));
1261 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1262 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->account_domain));
1265 case LSA_POLICY_INFO_ROLE:
1268 case LSA_POLICY_INFO_REPLICA:
1269 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr, NDR_BUFFERS, &r->replica));
1272 case LSA_POLICY_INFO_QUOTA:
1275 case LSA_POLICY_INFO_DB:
1278 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1281 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1284 case LSA_POLICY_INFO_DNS:
1285 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1289 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1292 return NDR_ERR_SUCCESS;
1295 static enum ndr_err_code ndr_pull_lsa_PolicyInformation(struct ndr_pull *ndr, int ndr_flags, union lsa_PolicyInformation *r)
1299 level = ndr_pull_get_switch_value(ndr, r);
1300 if (ndr_flags & NDR_SCALARS) {
1301 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
1302 if (_level != level) {
1303 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
1306 case LSA_POLICY_INFO_AUDIT_LOG: {
1307 NDR_CHECK(ndr_pull_lsa_AuditLogInfo(ndr, NDR_SCALARS, &r->audit_log));
1310 case LSA_POLICY_INFO_AUDIT_EVENTS: {
1311 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr, NDR_SCALARS, &r->audit_events));
1314 case LSA_POLICY_INFO_DOMAIN: {
1315 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domain));
1318 case LSA_POLICY_INFO_PD: {
1319 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr, NDR_SCALARS, &r->pd));
1322 case LSA_POLICY_INFO_ACCOUNT_DOMAIN: {
1323 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->account_domain));
1326 case LSA_POLICY_INFO_ROLE: {
1327 NDR_CHECK(ndr_pull_lsa_ServerRole(ndr, NDR_SCALARS, &r->role));
1330 case LSA_POLICY_INFO_REPLICA: {
1331 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr, NDR_SCALARS, &r->replica));
1334 case LSA_POLICY_INFO_QUOTA: {
1335 NDR_CHECK(ndr_pull_lsa_DefaultQuotaInfo(ndr, NDR_SCALARS, &r->quota));
1338 case LSA_POLICY_INFO_DB: {
1339 NDR_CHECK(ndr_pull_lsa_ModificationInfo(ndr, NDR_SCALARS, &r->db));
1342 case LSA_POLICY_INFO_AUDIT_FULL_SET: {
1343 NDR_CHECK(ndr_pull_lsa_AuditFullSetInfo(ndr, NDR_SCALARS, &r->auditfullset));
1346 case LSA_POLICY_INFO_AUDIT_FULL_QUERY: {
1347 NDR_CHECK(ndr_pull_lsa_AuditFullQueryInfo(ndr, NDR_SCALARS, &r->auditfullquery));
1350 case LSA_POLICY_INFO_DNS: {
1351 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_SCALARS, &r->dns));
1355 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1358 if (ndr_flags & NDR_BUFFERS) {
1360 case LSA_POLICY_INFO_AUDIT_LOG:
1363 case LSA_POLICY_INFO_AUDIT_EVENTS:
1364 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr, NDR_BUFFERS, &r->audit_events));
1367 case LSA_POLICY_INFO_DOMAIN:
1368 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domain));
1371 case LSA_POLICY_INFO_PD:
1372 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr, NDR_BUFFERS, &r->pd));
1375 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1376 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->account_domain));
1379 case LSA_POLICY_INFO_ROLE:
1382 case LSA_POLICY_INFO_REPLICA:
1383 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr, NDR_BUFFERS, &r->replica));
1386 case LSA_POLICY_INFO_QUOTA:
1389 case LSA_POLICY_INFO_DB:
1392 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1395 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1398 case LSA_POLICY_INFO_DNS:
1399 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr, NDR_BUFFERS, &r->dns));
1403 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
1406 return NDR_ERR_SUCCESS;
1409 _PUBLIC_ void ndr_print_lsa_PolicyInformation(struct ndr_print *ndr, const char *name, const union lsa_PolicyInformation *r)
1412 level = ndr_print_get_switch_value(ndr, r);
1413 ndr_print_union(ndr, name, level, "lsa_PolicyInformation");
1415 case LSA_POLICY_INFO_AUDIT_LOG:
1416 ndr_print_lsa_AuditLogInfo(ndr, "audit_log", &r->audit_log);
1419 case LSA_POLICY_INFO_AUDIT_EVENTS:
1420 ndr_print_lsa_AuditEventsInfo(ndr, "audit_events", &r->audit_events);
1423 case LSA_POLICY_INFO_DOMAIN:
1424 ndr_print_lsa_DomainInfo(ndr, "domain", &r->domain);
1427 case LSA_POLICY_INFO_PD:
1428 ndr_print_lsa_PDAccountInfo(ndr, "pd", &r->pd);
1431 case LSA_POLICY_INFO_ACCOUNT_DOMAIN:
1432 ndr_print_lsa_DomainInfo(ndr, "account_domain", &r->account_domain);
1435 case LSA_POLICY_INFO_ROLE:
1436 ndr_print_lsa_ServerRole(ndr, "role", &r->role);
1439 case LSA_POLICY_INFO_REPLICA:
1440 ndr_print_lsa_ReplicaSourceInfo(ndr, "replica", &r->replica);
1443 case LSA_POLICY_INFO_QUOTA:
1444 ndr_print_lsa_DefaultQuotaInfo(ndr, "quota", &r->quota);
1447 case LSA_POLICY_INFO_DB:
1448 ndr_print_lsa_ModificationInfo(ndr, "db", &r->db);
1451 case LSA_POLICY_INFO_AUDIT_FULL_SET:
1452 ndr_print_lsa_AuditFullSetInfo(ndr, "auditfullset", &r->auditfullset);
1455 case LSA_POLICY_INFO_AUDIT_FULL_QUERY:
1456 ndr_print_lsa_AuditFullQueryInfo(ndr, "auditfullquery", &r->auditfullquery);
1459 case LSA_POLICY_INFO_DNS:
1460 ndr_print_lsa_DnsDomainInfo(ndr, "dns", &r->dns);
1464 ndr_print_bad_level(ndr, name, level);
1468 static enum ndr_err_code ndr_push_lsa_SidPtr(struct ndr_push *ndr, int ndr_flags, const struct lsa_SidPtr *r)
1470 if (ndr_flags & NDR_SCALARS) {
1471 NDR_CHECK(ndr_push_align(ndr, 4));
1472 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
1474 if (ndr_flags & NDR_BUFFERS) {
1476 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1479 return NDR_ERR_SUCCESS;
1482 static enum ndr_err_code ndr_pull_lsa_SidPtr(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidPtr *r)
1485 TALLOC_CTX *_mem_save_sid_0;
1486 if (ndr_flags & NDR_SCALARS) {
1487 NDR_CHECK(ndr_pull_align(ndr, 4));
1488 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
1490 NDR_PULL_ALLOC(ndr, r->sid);
1495 if (ndr_flags & NDR_BUFFERS) {
1497 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
1498 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
1499 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
1500 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
1503 return NDR_ERR_SUCCESS;
1506 _PUBLIC_ void ndr_print_lsa_SidPtr(struct ndr_print *ndr, const char *name, const struct lsa_SidPtr *r)
1508 ndr_print_struct(ndr, name, "lsa_SidPtr");
1510 ndr_print_ptr(ndr, "sid", r->sid);
1513 ndr_print_dom_sid2(ndr, "sid", r->sid);
1519 _PUBLIC_ enum ndr_err_code ndr_push_lsa_SidArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_SidArray *r)
1521 uint32_t cntr_sids_1;
1522 if (ndr_flags & NDR_SCALARS) {
1523 NDR_CHECK(ndr_push_align(ndr, 4));
1524 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
1525 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
1527 if (ndr_flags & NDR_BUFFERS) {
1529 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_sids));
1530 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1531 NDR_CHECK(ndr_push_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1533 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1534 NDR_CHECK(ndr_push_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
1538 return NDR_ERR_SUCCESS;
1541 _PUBLIC_ enum ndr_err_code ndr_pull_lsa_SidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_SidArray *r)
1544 uint32_t cntr_sids_1;
1545 TALLOC_CTX *_mem_save_sids_0;
1546 TALLOC_CTX *_mem_save_sids_1;
1547 if (ndr_flags & NDR_SCALARS) {
1548 NDR_CHECK(ndr_pull_align(ndr, 4));
1549 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_sids));
1550 if (r->num_sids < 0 || r->num_sids > 1000) {
1551 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1553 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
1555 NDR_PULL_ALLOC(ndr, r->sids);
1560 if (ndr_flags & NDR_BUFFERS) {
1562 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1563 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1564 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
1565 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
1566 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1567 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1568 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1569 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1571 for (cntr_sids_1 = 0; cntr_sids_1 < r->num_sids; cntr_sids_1++) {
1572 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
1574 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
1575 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
1578 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->num_sids));
1581 return NDR_ERR_SUCCESS;
1584 _PUBLIC_ void ndr_print_lsa_SidArray(struct ndr_print *ndr, const char *name, const struct lsa_SidArray *r)
1586 uint32_t cntr_sids_1;
1587 ndr_print_struct(ndr, name, "lsa_SidArray");
1589 ndr_print_uint32(ndr, "num_sids", r->num_sids);
1590 ndr_print_ptr(ndr, "sids", r->sids);
1593 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->num_sids);
1595 for (cntr_sids_1=0;cntr_sids_1<r->num_sids;cntr_sids_1++) {
1597 asprintf(&idx_1, "[%d]", cntr_sids_1);
1599 ndr_print_lsa_SidPtr(ndr, "sids", &r->sids[cntr_sids_1]);
1609 static enum ndr_err_code ndr_push_lsa_DomainList(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainList *r)
1611 uint32_t cntr_domains_1;
1612 if (ndr_flags & NDR_SCALARS) {
1613 NDR_CHECK(ndr_push_align(ndr, 4));
1614 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1615 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
1617 if (ndr_flags & NDR_BUFFERS) {
1619 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1620 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1621 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1623 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1624 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1628 return NDR_ERR_SUCCESS;
1631 static enum ndr_err_code ndr_pull_lsa_DomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainList *r)
1633 uint32_t _ptr_domains;
1634 uint32_t cntr_domains_1;
1635 TALLOC_CTX *_mem_save_domains_0;
1636 TALLOC_CTX *_mem_save_domains_1;
1637 if (ndr_flags & NDR_SCALARS) {
1638 NDR_CHECK(ndr_pull_align(ndr, 4));
1639 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1640 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
1642 NDR_PULL_ALLOC(ndr, r->domains);
1647 if (ndr_flags & NDR_BUFFERS) {
1649 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
1650 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1651 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
1652 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
1653 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
1654 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1655 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1656 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1658 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1659 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1661 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
1662 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
1665 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
1668 return NDR_ERR_SUCCESS;
1671 _PUBLIC_ void ndr_print_lsa_DomainList(struct ndr_print *ndr, const char *name, const struct lsa_DomainList *r)
1673 uint32_t cntr_domains_1;
1674 ndr_print_struct(ndr, name, "lsa_DomainList");
1676 ndr_print_uint32(ndr, "count", r->count);
1677 ndr_print_ptr(ndr, "domains", r->domains);
1680 ndr->print(ndr, "%s: ARRAY(%d)", "domains", r->count);
1682 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
1684 asprintf(&idx_1, "[%d]", cntr_domains_1);
1686 ndr_print_lsa_DomainInfo(ndr, "domains", &r->domains[cntr_domains_1]);
1696 static enum ndr_err_code ndr_push_lsa_SidType(struct ndr_push *ndr, int ndr_flags, enum lsa_SidType r)
1698 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
1699 return NDR_ERR_SUCCESS;
1702 static enum ndr_err_code ndr_pull_lsa_SidType(struct ndr_pull *ndr, int ndr_flags, enum lsa_SidType *r)
1705 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
1707 return NDR_ERR_SUCCESS;
1710 _PUBLIC_ void ndr_print_lsa_SidType(struct ndr_print *ndr, const char *name, enum lsa_SidType r)
1712 const char *val = NULL;
1715 case SID_NAME_USE_NONE: val = "SID_NAME_USE_NONE"; break;
1716 case SID_NAME_USER: val = "SID_NAME_USER"; break;
1717 case SID_NAME_DOM_GRP: val = "SID_NAME_DOM_GRP"; break;
1718 case SID_NAME_DOMAIN: val = "SID_NAME_DOMAIN"; break;
1719 case SID_NAME_ALIAS: val = "SID_NAME_ALIAS"; break;
1720 case SID_NAME_WKN_GRP: val = "SID_NAME_WKN_GRP"; break;
1721 case SID_NAME_DELETED: val = "SID_NAME_DELETED"; break;
1722 case SID_NAME_INVALID: val = "SID_NAME_INVALID"; break;
1723 case SID_NAME_UNKNOWN: val = "SID_NAME_UNKNOWN"; break;
1724 case SID_NAME_COMPUTER: val = "SID_NAME_COMPUTER"; break;
1726 ndr_print_enum(ndr, name, "ENUM", val, r);
1729 static enum ndr_err_code ndr_push_lsa_TranslatedSid(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid *r)
1731 if (ndr_flags & NDR_SCALARS) {
1732 NDR_CHECK(ndr_push_align(ndr, 4));
1733 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
1734 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
1735 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
1737 if (ndr_flags & NDR_BUFFERS) {
1739 return NDR_ERR_SUCCESS;
1742 static enum ndr_err_code ndr_pull_lsa_TranslatedSid(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid *r)
1744 if (ndr_flags & NDR_SCALARS) {
1745 NDR_CHECK(ndr_pull_align(ndr, 4));
1746 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
1747 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
1748 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
1750 if (ndr_flags & NDR_BUFFERS) {
1752 return NDR_ERR_SUCCESS;
1755 _PUBLIC_ void ndr_print_lsa_TranslatedSid(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid *r)
1757 ndr_print_struct(ndr, name, "lsa_TranslatedSid");
1759 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
1760 ndr_print_uint32(ndr, "rid", r->rid);
1761 ndr_print_uint32(ndr, "sid_index", r->sid_index);
1765 static enum ndr_err_code ndr_push_lsa_TransSidArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray *r)
1767 uint32_t cntr_sids_1;
1768 if (ndr_flags & NDR_SCALARS) {
1769 NDR_CHECK(ndr_push_align(ndr, 4));
1770 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1771 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
1773 if (ndr_flags & NDR_BUFFERS) {
1775 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1776 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
1777 NDR_CHECK(ndr_push_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1781 return NDR_ERR_SUCCESS;
1784 static enum ndr_err_code ndr_pull_lsa_TransSidArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray *r)
1787 uint32_t cntr_sids_1;
1788 TALLOC_CTX *_mem_save_sids_0;
1789 TALLOC_CTX *_mem_save_sids_1;
1790 if (ndr_flags & NDR_SCALARS) {
1791 NDR_CHECK(ndr_pull_align(ndr, 4));
1792 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1793 if (r->count < 0 || r->count > 1000) {
1794 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1796 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
1798 NDR_PULL_ALLOC(ndr, r->sids);
1803 if (ndr_flags & NDR_BUFFERS) {
1805 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
1806 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1807 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
1808 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
1809 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
1810 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
1811 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
1812 NDR_CHECK(ndr_pull_lsa_TranslatedSid(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
1814 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
1815 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
1818 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
1821 return NDR_ERR_SUCCESS;
1824 _PUBLIC_ void ndr_print_lsa_TransSidArray(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray *r)
1826 uint32_t cntr_sids_1;
1827 ndr_print_struct(ndr, name, "lsa_TransSidArray");
1829 ndr_print_uint32(ndr, "count", r->count);
1830 ndr_print_ptr(ndr, "sids", r->sids);
1833 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->count);
1835 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
1837 asprintf(&idx_1, "[%d]", cntr_sids_1);
1839 ndr_print_lsa_TranslatedSid(ndr, "sids", &r->sids[cntr_sids_1]);
1849 static enum ndr_err_code ndr_push_lsa_RefDomainList(struct ndr_push *ndr, int ndr_flags, const struct lsa_RefDomainList *r)
1851 uint32_t cntr_domains_1;
1852 if (ndr_flags & NDR_SCALARS) {
1853 NDR_CHECK(ndr_push_align(ndr, 4));
1854 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1855 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
1856 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->max_size));
1858 if (ndr_flags & NDR_BUFFERS) {
1860 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1861 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1862 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1864 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1865 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1869 return NDR_ERR_SUCCESS;
1872 static enum ndr_err_code ndr_pull_lsa_RefDomainList(struct ndr_pull *ndr, int ndr_flags, struct lsa_RefDomainList *r)
1874 uint32_t _ptr_domains;
1875 uint32_t cntr_domains_1;
1876 TALLOC_CTX *_mem_save_domains_0;
1877 TALLOC_CTX *_mem_save_domains_1;
1878 if (ndr_flags & NDR_SCALARS) {
1879 NDR_CHECK(ndr_pull_align(ndr, 4));
1880 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
1881 if (r->count < 0 || r->count > 1000) {
1882 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
1884 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
1886 NDR_PULL_ALLOC(ndr, r->domains);
1890 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->max_size));
1892 if (ndr_flags & NDR_BUFFERS) {
1894 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
1895 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1896 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
1897 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
1898 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
1899 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
1900 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1901 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
1903 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
1904 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
1906 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
1907 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
1910 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
1913 return NDR_ERR_SUCCESS;
1916 _PUBLIC_ void ndr_print_lsa_RefDomainList(struct ndr_print *ndr, const char *name, const struct lsa_RefDomainList *r)
1918 uint32_t cntr_domains_1;
1919 ndr_print_struct(ndr, name, "lsa_RefDomainList");
1921 ndr_print_uint32(ndr, "count", r->count);
1922 ndr_print_ptr(ndr, "domains", r->domains);
1925 ndr->print(ndr, "%s: ARRAY(%d)", "domains", r->count);
1927 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
1929 asprintf(&idx_1, "[%d]", cntr_domains_1);
1931 ndr_print_lsa_DomainInfo(ndr, "domains", &r->domains[cntr_domains_1]);
1938 ndr_print_uint32(ndr, "max_size", r->max_size);
1942 static enum ndr_err_code ndr_push_lsa_TranslatedName(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedName *r)
1944 if (ndr_flags & NDR_SCALARS) {
1945 NDR_CHECK(ndr_push_align(ndr, 4));
1946 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
1947 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
1948 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
1950 if (ndr_flags & NDR_BUFFERS) {
1951 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
1953 return NDR_ERR_SUCCESS;
1956 static enum ndr_err_code ndr_pull_lsa_TranslatedName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName *r)
1958 if (ndr_flags & NDR_SCALARS) {
1959 NDR_CHECK(ndr_pull_align(ndr, 4));
1960 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
1961 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
1962 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
1964 if (ndr_flags & NDR_BUFFERS) {
1965 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
1967 return NDR_ERR_SUCCESS;
1970 _PUBLIC_ void ndr_print_lsa_TranslatedName(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedName *r)
1972 ndr_print_struct(ndr, name, "lsa_TranslatedName");
1974 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
1975 ndr_print_lsa_String(ndr, "name", &r->name);
1976 ndr_print_uint32(ndr, "sid_index", r->sid_index);
1980 static enum ndr_err_code ndr_push_lsa_TransNameArray(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransNameArray *r)
1982 uint32_t cntr_names_1;
1983 if (ndr_flags & NDR_SCALARS) {
1984 NDR_CHECK(ndr_push_align(ndr, 4));
1985 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1986 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
1988 if (ndr_flags & NDR_BUFFERS) {
1990 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
1991 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
1992 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
1994 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
1995 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
1999 return NDR_ERR_SUCCESS;
2002 static enum ndr_err_code ndr_pull_lsa_TransNameArray(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray *r)
2004 uint32_t _ptr_names;
2005 uint32_t cntr_names_1;
2006 TALLOC_CTX *_mem_save_names_0;
2007 TALLOC_CTX *_mem_save_names_1;
2008 if (ndr_flags & NDR_SCALARS) {
2009 NDR_CHECK(ndr_pull_align(ndr, 4));
2010 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2011 if (r->count < 0 || r->count > 1000) {
2012 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2014 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
2016 NDR_PULL_ALLOC(ndr, r->names);
2021 if (ndr_flags & NDR_BUFFERS) {
2023 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
2024 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
2025 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
2026 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
2027 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
2028 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
2029 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2030 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
2032 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
2033 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
2035 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
2036 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
2039 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
2042 return NDR_ERR_SUCCESS;
2045 _PUBLIC_ void ndr_print_lsa_TransNameArray(struct ndr_print *ndr, const char *name, const struct lsa_TransNameArray *r)
2047 uint32_t cntr_names_1;
2048 ndr_print_struct(ndr, name, "lsa_TransNameArray");
2050 ndr_print_uint32(ndr, "count", r->count);
2051 ndr_print_ptr(ndr, "names", r->names);
2054 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
2056 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
2058 asprintf(&idx_1, "[%d]", cntr_names_1);
2060 ndr_print_lsa_TranslatedName(ndr, "names", &r->names[cntr_names_1]);
2070 static enum ndr_err_code ndr_push_lsa_LUIDAttribute(struct ndr_push *ndr, int ndr_flags, const struct lsa_LUIDAttribute *r)
2072 if (ndr_flags & NDR_SCALARS) {
2073 NDR_CHECK(ndr_push_align(ndr, 4));
2074 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
2075 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->attribute));
2077 if (ndr_flags & NDR_BUFFERS) {
2079 return NDR_ERR_SUCCESS;
2082 static enum ndr_err_code ndr_pull_lsa_LUIDAttribute(struct ndr_pull *ndr, int ndr_flags, struct lsa_LUIDAttribute *r)
2084 if (ndr_flags & NDR_SCALARS) {
2085 NDR_CHECK(ndr_pull_align(ndr, 4));
2086 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, &r->luid));
2087 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->attribute));
2089 if (ndr_flags & NDR_BUFFERS) {
2091 return NDR_ERR_SUCCESS;
2094 _PUBLIC_ void ndr_print_lsa_LUIDAttribute(struct ndr_print *ndr, const char *name, const struct lsa_LUIDAttribute *r)
2096 ndr_print_struct(ndr, name, "lsa_LUIDAttribute");
2098 ndr_print_lsa_LUID(ndr, "luid", &r->luid);
2099 ndr_print_uint32(ndr, "attribute", r->attribute);
2103 static enum ndr_err_code ndr_push_lsa_PrivilegeSet(struct ndr_push *ndr, int ndr_flags, const struct lsa_PrivilegeSet *r)
2105 uint32_t cntr_set_0;
2106 if (ndr_flags & NDR_SCALARS) {
2107 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2108 NDR_CHECK(ndr_push_align(ndr, 4));
2109 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
2110 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
2111 for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
2112 NDR_CHECK(ndr_push_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
2115 if (ndr_flags & NDR_BUFFERS) {
2117 return NDR_ERR_SUCCESS;
2120 static enum ndr_err_code ndr_pull_lsa_PrivilegeSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_PrivilegeSet *r)
2122 uint32_t cntr_set_0;
2123 TALLOC_CTX *_mem_save_set_0;
2124 if (ndr_flags & NDR_SCALARS) {
2125 NDR_CHECK(ndr_pull_array_size(ndr, &r->set));
2126 NDR_CHECK(ndr_pull_align(ndr, 4));
2127 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
2128 if (r->count < 0 || r->count > 1000) {
2129 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2131 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
2132 NDR_PULL_ALLOC_N(ndr, r->set, ndr_get_array_size(ndr, &r->set));
2133 _mem_save_set_0 = NDR_PULL_GET_MEM_CTX(ndr);
2134 NDR_PULL_SET_MEM_CTX(ndr, r->set, 0);
2135 for (cntr_set_0 = 0; cntr_set_0 < r->count; cntr_set_0++) {
2136 NDR_CHECK(ndr_pull_lsa_LUIDAttribute(ndr, NDR_SCALARS, &r->set[cntr_set_0]));
2138 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_set_0, 0);
2140 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->set, r->count));
2143 if (ndr_flags & NDR_BUFFERS) {
2145 return NDR_ERR_SUCCESS;
2148 _PUBLIC_ void ndr_print_lsa_PrivilegeSet(struct ndr_print *ndr, const char *name, const struct lsa_PrivilegeSet *r)
2150 uint32_t cntr_set_0;
2151 ndr_print_struct(ndr, name, "lsa_PrivilegeSet");
2153 ndr_print_uint32(ndr, "count", r->count);
2154 ndr_print_uint32(ndr, "unknown", r->unknown);
2155 ndr->print(ndr, "%s: ARRAY(%d)", "set", r->count);
2157 for (cntr_set_0=0;cntr_set_0<r->count;cntr_set_0++) {
2159 asprintf(&idx_0, "[%d]", cntr_set_0);
2161 ndr_print_lsa_LUIDAttribute(ndr, "set", &r->set[cntr_set_0]);
2169 static enum ndr_err_code ndr_push_lsa_DATA_BUF(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF *r)
2172 uint32_t _flags_save_STRUCT = ndr->flags;
2173 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2174 if (ndr_flags & NDR_SCALARS) {
2175 NDR_CHECK(ndr_push_align(ndr, 4));
2176 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
2177 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2178 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
2180 if (ndr_flags & NDR_BUFFERS) {
2182 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2183 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
2184 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->length));
2185 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->length));
2188 ndr->flags = _flags_save_STRUCT;
2190 return NDR_ERR_SUCCESS;
2193 static enum ndr_err_code ndr_pull_lsa_DATA_BUF(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF *r)
2196 TALLOC_CTX *_mem_save_data_0;
2198 uint32_t _flags_save_STRUCT = ndr->flags;
2199 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2200 if (ndr_flags & NDR_SCALARS) {
2201 NDR_CHECK(ndr_pull_align(ndr, 4));
2202 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->length));
2203 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
2204 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
2206 NDR_PULL_ALLOC(ndr, r->data);
2211 if (ndr_flags & NDR_BUFFERS) {
2213 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
2214 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
2215 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
2216 NDR_CHECK(ndr_pull_array_length(ndr, &r->data));
2217 if (ndr_get_array_length(ndr, &r->data) > ndr_get_array_size(ndr, &r->data)) {
2218 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));
2220 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
2221 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_length(ndr, &r->data)));
2222 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
2225 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->size));
2228 NDR_CHECK(ndr_check_array_length(ndr, (void*)&r->data, r->length));
2231 ndr->flags = _flags_save_STRUCT;
2233 return NDR_ERR_SUCCESS;
2236 _PUBLIC_ void ndr_print_lsa_DATA_BUF(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF *r)
2238 ndr_print_struct(ndr, name, "lsa_DATA_BUF");
2240 uint32_t _flags_save_STRUCT = ndr->flags;
2241 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2243 ndr_print_uint32(ndr, "length", r->length);
2244 ndr_print_uint32(ndr, "size", r->size);
2245 ndr_print_ptr(ndr, "data", r->data);
2248 ndr_print_array_uint8(ndr, "data", r->data, r->length);
2252 ndr->flags = _flags_save_STRUCT;
2256 static enum ndr_err_code ndr_push_lsa_DATA_BUF2(struct ndr_push *ndr, int ndr_flags, const struct lsa_DATA_BUF2 *r)
2259 uint32_t _flags_save_STRUCT = ndr->flags;
2260 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2261 if (ndr_flags & NDR_SCALARS) {
2262 NDR_CHECK(ndr_push_align(ndr, 4));
2263 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2264 NDR_CHECK(ndr_push_unique_ptr(ndr, r->data));
2266 if (ndr_flags & NDR_BUFFERS) {
2268 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->size));
2269 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->data, r->size));
2272 ndr->flags = _flags_save_STRUCT;
2274 return NDR_ERR_SUCCESS;
2277 static enum ndr_err_code ndr_pull_lsa_DATA_BUF2(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF2 *r)
2280 TALLOC_CTX *_mem_save_data_0;
2282 uint32_t _flags_save_STRUCT = ndr->flags;
2283 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2284 if (ndr_flags & NDR_SCALARS) {
2285 NDR_CHECK(ndr_pull_align(ndr, 4));
2286 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->size));
2287 if (r->size < 0 || r->size > 65536) {
2288 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
2290 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_data));
2292 NDR_PULL_ALLOC(ndr, r->data);
2297 if (ndr_flags & NDR_BUFFERS) {
2299 _mem_save_data_0 = NDR_PULL_GET_MEM_CTX(ndr);
2300 NDR_PULL_SET_MEM_CTX(ndr, r->data, 0);
2301 NDR_CHECK(ndr_pull_array_size(ndr, &r->data));
2302 NDR_PULL_ALLOC_N(ndr, r->data, ndr_get_array_size(ndr, &r->data));
2303 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->data, ndr_get_array_size(ndr, &r->data)));
2304 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_data_0, 0);
2307 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->data, r->size));
2310 ndr->flags = _flags_save_STRUCT;
2312 return NDR_ERR_SUCCESS;
2315 _PUBLIC_ void ndr_print_lsa_DATA_BUF2(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF2 *r)
2317 ndr_print_struct(ndr, name, "lsa_DATA_BUF2");
2319 uint32_t _flags_save_STRUCT = ndr->flags;
2320 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
2322 ndr_print_uint32(ndr, "size", r->size);
2323 ndr_print_ptr(ndr, "data", r->data);
2326 ndr_print_array_uint8(ndr, "data", r->data, r->size);
2330 ndr->flags = _flags_save_STRUCT;
2334 static enum ndr_err_code ndr_push_lsa_TrustDomInfoEnum(struct ndr_push *ndr, int ndr_flags, enum lsa_TrustDomInfoEnum r)
2336 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r));
2337 return NDR_ERR_SUCCESS;
2340 static enum ndr_err_code ndr_pull_lsa_TrustDomInfoEnum(struct ndr_pull *ndr, int ndr_flags, enum lsa_TrustDomInfoEnum *r)
2343 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &v));
2345 return NDR_ERR_SUCCESS;
2348 _PUBLIC_ void ndr_print_lsa_TrustDomInfoEnum(struct ndr_print *ndr, const char *name, enum lsa_TrustDomInfoEnum r)
2350 const char *val = NULL;
2353 case LSA_TRUSTED_DOMAIN_INFO_NAME: val = "LSA_TRUSTED_DOMAIN_INFO_NAME"; break;
2354 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO"; break;
2355 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: val = "LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET"; break;
2356 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: val = "LSA_TRUSTED_DOMAIN_INFO_PASSWORD"; break;
2357 case LSA_TRUSTED_DOMAIN_INFO_BASIC: val = "LSA_TRUSTED_DOMAIN_INFO_BASIC"; break;
2358 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: val = "LSA_TRUSTED_DOMAIN_INFO_INFO_EX"; break;
2359 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO"; break;
2360 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: val = "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO"; break;
2361 case LSA_TRUSTED_DOMAIN_INFO_11: val = "LSA_TRUSTED_DOMAIN_INFO_11"; break;
2362 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL: val = "LSA_TRUSTED_DOMAIN_INFO_INFO_ALL"; break;
2364 ndr_print_enum(ndr, name, "ENUM", val, r);
2367 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoName(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoName *r)
2369 if (ndr_flags & NDR_SCALARS) {
2370 NDR_CHECK(ndr_push_align(ndr, 4));
2371 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2373 if (ndr_flags & NDR_BUFFERS) {
2374 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2376 return NDR_ERR_SUCCESS;
2379 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoName(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoName *r)
2381 if (ndr_flags & NDR_SCALARS) {
2382 NDR_CHECK(ndr_pull_align(ndr, 4));
2383 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2385 if (ndr_flags & NDR_BUFFERS) {
2386 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2388 return NDR_ERR_SUCCESS;
2391 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoName(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoName *r)
2393 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoName");
2395 ndr_print_lsa_StringLarge(ndr, "netbios_name", &r->netbios_name);
2399 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoPosixOffset(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoPosixOffset *r)
2401 if (ndr_flags & NDR_SCALARS) {
2402 NDR_CHECK(ndr_push_align(ndr, 4));
2403 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->posix_offset));
2405 if (ndr_flags & NDR_BUFFERS) {
2407 return NDR_ERR_SUCCESS;
2410 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoPosixOffset(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoPosixOffset *r)
2412 if (ndr_flags & NDR_SCALARS) {
2413 NDR_CHECK(ndr_pull_align(ndr, 4));
2414 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->posix_offset));
2416 if (ndr_flags & NDR_BUFFERS) {
2418 return NDR_ERR_SUCCESS;
2421 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoPosixOffset(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoPosixOffset *r)
2423 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoPosixOffset");
2425 ndr_print_uint32(ndr, "posix_offset", r->posix_offset);
2429 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoPassword(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoPassword *r)
2431 if (ndr_flags & NDR_SCALARS) {
2432 NDR_CHECK(ndr_push_align(ndr, 4));
2433 NDR_CHECK(ndr_push_unique_ptr(ndr, r->password));
2434 NDR_CHECK(ndr_push_unique_ptr(ndr, r->old_password));
2436 if (ndr_flags & NDR_BUFFERS) {
2438 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->password));
2440 if (r->old_password) {
2441 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->old_password));
2444 return NDR_ERR_SUCCESS;
2447 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoPassword(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoPassword *r)
2449 uint32_t _ptr_password;
2450 TALLOC_CTX *_mem_save_password_0;
2451 uint32_t _ptr_old_password;
2452 TALLOC_CTX *_mem_save_old_password_0;
2453 if (ndr_flags & NDR_SCALARS) {
2454 NDR_CHECK(ndr_pull_align(ndr, 4));
2455 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_password));
2456 if (_ptr_password) {
2457 NDR_PULL_ALLOC(ndr, r->password);
2461 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_password));
2462 if (_ptr_old_password) {
2463 NDR_PULL_ALLOC(ndr, r->old_password);
2465 r->old_password = NULL;
2468 if (ndr_flags & NDR_BUFFERS) {
2470 _mem_save_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
2471 NDR_PULL_SET_MEM_CTX(ndr, r->password, 0);
2472 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->password));
2473 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_password_0, 0);
2475 if (r->old_password) {
2476 _mem_save_old_password_0 = NDR_PULL_GET_MEM_CTX(ndr);
2477 NDR_PULL_SET_MEM_CTX(ndr, r->old_password, 0);
2478 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->old_password));
2479 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_password_0, 0);
2482 return NDR_ERR_SUCCESS;
2485 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoPassword(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoPassword *r)
2487 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoPassword");
2489 ndr_print_ptr(ndr, "password", r->password);
2492 ndr_print_lsa_DATA_BUF(ndr, "password", r->password);
2495 ndr_print_ptr(ndr, "old_password", r->old_password);
2497 if (r->old_password) {
2498 ndr_print_lsa_DATA_BUF(ndr, "old_password", r->old_password);
2504 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoBasic(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoBasic *r)
2506 if (ndr_flags & NDR_SCALARS) {
2507 NDR_CHECK(ndr_push_align(ndr, 4));
2508 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->netbios_name));
2509 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
2511 if (ndr_flags & NDR_BUFFERS) {
2512 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->netbios_name));
2514 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2517 return NDR_ERR_SUCCESS;
2520 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoBasic(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoBasic *r)
2523 TALLOC_CTX *_mem_save_sid_0;
2524 if (ndr_flags & NDR_SCALARS) {
2525 NDR_CHECK(ndr_pull_align(ndr, 4));
2526 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->netbios_name));
2527 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
2529 NDR_PULL_ALLOC(ndr, r->sid);
2534 if (ndr_flags & NDR_BUFFERS) {
2535 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->netbios_name));
2537 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
2538 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
2539 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2540 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
2543 return NDR_ERR_SUCCESS;
2546 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoBasic(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoBasic *r)
2548 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoBasic");
2550 ndr_print_lsa_String(ndr, "netbios_name", &r->netbios_name);
2551 ndr_print_ptr(ndr, "sid", r->sid);
2554 ndr_print_dom_sid2(ndr, "sid", r->sid);
2560 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoInfoEx *r)
2562 if (ndr_flags & NDR_SCALARS) {
2563 NDR_CHECK(ndr_push_align(ndr, 4));
2564 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->domain_name));
2565 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2566 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
2567 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->trust_direction));
2568 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->trust_type));
2569 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->trust_attributes));
2571 if (ndr_flags & NDR_BUFFERS) {
2572 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->domain_name));
2573 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2575 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2578 return NDR_ERR_SUCCESS;
2581 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoEx *r)
2584 TALLOC_CTX *_mem_save_sid_0;
2585 if (ndr_flags & NDR_SCALARS) {
2586 NDR_CHECK(ndr_pull_align(ndr, 4));
2587 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->domain_name));
2588 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->netbios_name));
2589 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
2591 NDR_PULL_ALLOC(ndr, r->sid);
2595 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->trust_direction));
2596 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->trust_type));
2597 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->trust_attributes));
2599 if (ndr_flags & NDR_BUFFERS) {
2600 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->domain_name));
2601 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->netbios_name));
2603 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
2604 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
2605 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
2606 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
2609 return NDR_ERR_SUCCESS;
2612 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoInfoEx(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoInfoEx *r)
2614 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoInfoEx");
2616 ndr_print_lsa_StringLarge(ndr, "domain_name", &r->domain_name);
2617 ndr_print_lsa_StringLarge(ndr, "netbios_name", &r->netbios_name);
2618 ndr_print_ptr(ndr, "sid", r->sid);
2621 ndr_print_dom_sid2(ndr, "sid", r->sid);
2624 ndr_print_uint32(ndr, "trust_direction", r->trust_direction);
2625 ndr_print_uint32(ndr, "trust_type", r->trust_type);
2626 ndr_print_uint32(ndr, "trust_attributes", r->trust_attributes);
2630 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoBuffer(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoBuffer *r)
2632 if (ndr_flags & NDR_SCALARS) {
2633 NDR_CHECK(ndr_push_align(ndr, 8));
2634 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, r->last_update_time));
2635 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->secret_type));
2636 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data));
2638 if (ndr_flags & NDR_BUFFERS) {
2639 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data));
2641 return NDR_ERR_SUCCESS;
2644 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoBuffer(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoBuffer *r)
2646 if (ndr_flags & NDR_SCALARS) {
2647 NDR_CHECK(ndr_pull_align(ndr, 8));
2648 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, &r->last_update_time));
2649 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->secret_type));
2650 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data));
2652 if (ndr_flags & NDR_BUFFERS) {
2653 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data));
2655 return NDR_ERR_SUCCESS;
2658 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoBuffer(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoBuffer *r)
2660 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoBuffer");
2662 ndr_print_NTTIME_hyper(ndr, "last_update_time", r->last_update_time);
2663 ndr_print_uint32(ndr, "secret_type", r->secret_type);
2664 ndr_print_lsa_DATA_BUF2(ndr, "data", &r->data);
2668 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoAuthInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoAuthInfo *r)
2670 if (ndr_flags & NDR_SCALARS) {
2671 NDR_CHECK(ndr_push_align(ndr, 4));
2672 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->incoming_count));
2673 NDR_CHECK(ndr_push_unique_ptr(ndr, r->incoming_current_auth_info));
2674 NDR_CHECK(ndr_push_unique_ptr(ndr, r->incoming_previous_auth_info));
2675 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->outgoing_count));
2676 NDR_CHECK(ndr_push_unique_ptr(ndr, r->outgoing_current_auth_info));
2677 NDR_CHECK(ndr_push_unique_ptr(ndr, r->outgoing_previous_auth_info));
2679 if (ndr_flags & NDR_BUFFERS) {
2680 if (r->incoming_current_auth_info) {
2681 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_current_auth_info));
2683 if (r->incoming_previous_auth_info) {
2684 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_previous_auth_info));
2686 if (r->outgoing_current_auth_info) {
2687 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_current_auth_info));
2689 if (r->outgoing_previous_auth_info) {
2690 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_previous_auth_info));
2693 return NDR_ERR_SUCCESS;
2696 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoAuthInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoAuthInfo *r)
2698 uint32_t _ptr_incoming_current_auth_info;
2699 TALLOC_CTX *_mem_save_incoming_current_auth_info_0;
2700 uint32_t _ptr_incoming_previous_auth_info;
2701 TALLOC_CTX *_mem_save_incoming_previous_auth_info_0;
2702 uint32_t _ptr_outgoing_current_auth_info;
2703 TALLOC_CTX *_mem_save_outgoing_current_auth_info_0;
2704 uint32_t _ptr_outgoing_previous_auth_info;
2705 TALLOC_CTX *_mem_save_outgoing_previous_auth_info_0;
2706 if (ndr_flags & NDR_SCALARS) {
2707 NDR_CHECK(ndr_pull_align(ndr, 4));
2708 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->incoming_count));
2709 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_incoming_current_auth_info));
2710 if (_ptr_incoming_current_auth_info) {
2711 NDR_PULL_ALLOC(ndr, r->incoming_current_auth_info);
2713 r->incoming_current_auth_info = NULL;
2715 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_incoming_previous_auth_info));
2716 if (_ptr_incoming_previous_auth_info) {
2717 NDR_PULL_ALLOC(ndr, r->incoming_previous_auth_info);
2719 r->incoming_previous_auth_info = NULL;
2721 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->outgoing_count));
2722 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_outgoing_current_auth_info));
2723 if (_ptr_outgoing_current_auth_info) {
2724 NDR_PULL_ALLOC(ndr, r->outgoing_current_auth_info);
2726 r->outgoing_current_auth_info = NULL;
2728 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_outgoing_previous_auth_info));
2729 if (_ptr_outgoing_previous_auth_info) {
2730 NDR_PULL_ALLOC(ndr, r->outgoing_previous_auth_info);
2732 r->outgoing_previous_auth_info = NULL;
2735 if (ndr_flags & NDR_BUFFERS) {
2736 if (r->incoming_current_auth_info) {
2737 _mem_save_incoming_current_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2738 NDR_PULL_SET_MEM_CTX(ndr, r->incoming_current_auth_info, 0);
2739 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_current_auth_info));
2740 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_incoming_current_auth_info_0, 0);
2742 if (r->incoming_previous_auth_info) {
2743 _mem_save_incoming_previous_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2744 NDR_PULL_SET_MEM_CTX(ndr, r->incoming_previous_auth_info, 0);
2745 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->incoming_previous_auth_info));
2746 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_incoming_previous_auth_info_0, 0);
2748 if (r->outgoing_current_auth_info) {
2749 _mem_save_outgoing_current_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2750 NDR_PULL_SET_MEM_CTX(ndr, r->outgoing_current_auth_info, 0);
2751 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_current_auth_info));
2752 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_outgoing_current_auth_info_0, 0);
2754 if (r->outgoing_previous_auth_info) {
2755 _mem_save_outgoing_previous_auth_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
2756 NDR_PULL_SET_MEM_CTX(ndr, r->outgoing_previous_auth_info, 0);
2757 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr, NDR_SCALARS|NDR_BUFFERS, r->outgoing_previous_auth_info));
2758 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_outgoing_previous_auth_info_0, 0);
2761 return NDR_ERR_SUCCESS;
2764 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoAuthInfo(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoAuthInfo *r)
2766 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoAuthInfo");
2768 ndr_print_uint32(ndr, "incoming_count", r->incoming_count);
2769 ndr_print_ptr(ndr, "incoming_current_auth_info", r->incoming_current_auth_info);
2771 if (r->incoming_current_auth_info) {
2772 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "incoming_current_auth_info", r->incoming_current_auth_info);
2775 ndr_print_ptr(ndr, "incoming_previous_auth_info", r->incoming_previous_auth_info);
2777 if (r->incoming_previous_auth_info) {
2778 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "incoming_previous_auth_info", r->incoming_previous_auth_info);
2781 ndr_print_uint32(ndr, "outgoing_count", r->outgoing_count);
2782 ndr_print_ptr(ndr, "outgoing_current_auth_info", r->outgoing_current_auth_info);
2784 if (r->outgoing_current_auth_info) {
2785 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "outgoing_current_auth_info", r->outgoing_current_auth_info);
2788 ndr_print_ptr(ndr, "outgoing_previous_auth_info", r->outgoing_previous_auth_info);
2790 if (r->outgoing_previous_auth_info) {
2791 ndr_print_lsa_TrustDomainInfoBuffer(ndr, "outgoing_previous_auth_info", r->outgoing_previous_auth_info);
2797 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoFullInfo(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoFullInfo *r)
2799 if (ndr_flags & NDR_SCALARS) {
2800 NDR_CHECK(ndr_push_align(ndr, 4));
2801 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2802 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2803 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2805 if (ndr_flags & NDR_BUFFERS) {
2806 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2807 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2809 return NDR_ERR_SUCCESS;
2812 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoFullInfo(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoFullInfo *r)
2814 if (ndr_flags & NDR_SCALARS) {
2815 NDR_CHECK(ndr_pull_align(ndr, 4));
2816 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2817 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2818 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2820 if (ndr_flags & NDR_BUFFERS) {
2821 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2822 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2824 return NDR_ERR_SUCCESS;
2827 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoFullInfo(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoFullInfo *r)
2829 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoFullInfo");
2831 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
2832 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
2833 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
2837 static enum ndr_err_code ndr_push_lsa_TrustDomainInfo11(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfo11 *r)
2839 if (ndr_flags & NDR_SCALARS) {
2840 NDR_CHECK(ndr_push_align(ndr, 4));
2841 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2842 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
2844 if (ndr_flags & NDR_BUFFERS) {
2845 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2846 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
2848 return NDR_ERR_SUCCESS;
2851 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfo11(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfo11 *r)
2853 if (ndr_flags & NDR_SCALARS) {
2854 NDR_CHECK(ndr_pull_align(ndr, 4));
2855 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2856 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
2858 if (ndr_flags & NDR_BUFFERS) {
2859 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2860 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
2862 return NDR_ERR_SUCCESS;
2865 _PUBLIC_ void ndr_print_lsa_TrustDomainInfo11(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfo11 *r)
2867 ndr_print_struct(ndr, name, "lsa_TrustDomainInfo11");
2869 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
2870 ndr_print_lsa_DATA_BUF2(ndr, "data1", &r->data1);
2874 static enum ndr_err_code ndr_push_lsa_TrustDomainInfoInfoAll(struct ndr_push *ndr, int ndr_flags, const struct lsa_TrustDomainInfoInfoAll *r)
2876 if (ndr_flags & NDR_SCALARS) {
2877 NDR_CHECK(ndr_push_align(ndr, 4));
2878 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2879 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
2880 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2881 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2883 if (ndr_flags & NDR_BUFFERS) {
2884 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2885 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
2886 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2888 return NDR_ERR_SUCCESS;
2891 static enum ndr_err_code ndr_pull_lsa_TrustDomainInfoInfoAll(struct ndr_pull *ndr, int ndr_flags, struct lsa_TrustDomainInfoInfoAll *r)
2893 if (ndr_flags & NDR_SCALARS) {
2894 NDR_CHECK(ndr_pull_align(ndr, 4));
2895 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2896 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_SCALARS, &r->data1));
2897 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2898 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2900 if (ndr_flags & NDR_BUFFERS) {
2901 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2902 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr, NDR_BUFFERS, &r->data1));
2903 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2905 return NDR_ERR_SUCCESS;
2908 _PUBLIC_ void ndr_print_lsa_TrustDomainInfoInfoAll(struct ndr_print *ndr, const char *name, const struct lsa_TrustDomainInfoInfoAll *r)
2910 ndr_print_struct(ndr, name, "lsa_TrustDomainInfoInfoAll");
2912 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
2913 ndr_print_lsa_DATA_BUF2(ndr, "data1", &r->data1);
2914 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
2915 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
2919 static enum ndr_err_code ndr_push_lsa_TrustedDomainInfo(struct ndr_push *ndr, int ndr_flags, const union lsa_TrustedDomainInfo *r)
2921 if (ndr_flags & NDR_SCALARS) {
2922 int level = ndr_push_get_switch_value(ndr, r);
2923 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, level));
2925 case LSA_TRUSTED_DOMAIN_INFO_NAME:
2926 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr, NDR_SCALARS, &r->name));
2929 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
2930 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
2933 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
2934 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr, NDR_SCALARS, &r->password));
2937 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
2938 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr, NDR_SCALARS, &r->info_basic));
2941 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
2942 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
2945 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
2946 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
2949 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
2950 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr, NDR_SCALARS, &r->full_info));
2953 case LSA_TRUSTED_DOMAIN_INFO_11:
2954 NDR_CHECK(ndr_push_lsa_TrustDomainInfo11(ndr, NDR_SCALARS, &r->info11));
2957 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
2958 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoAll(ndr, NDR_SCALARS, &r->info_all));
2962 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
2965 if (ndr_flags & NDR_BUFFERS) {
2966 int level = ndr_push_get_switch_value(ndr, r);
2968 case LSA_TRUSTED_DOMAIN_INFO_NAME:
2969 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr, NDR_BUFFERS, &r->name));
2972 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
2975 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
2976 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr, NDR_BUFFERS, &r->password));
2979 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
2980 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr, NDR_BUFFERS, &r->info_basic));
2983 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
2984 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
2987 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
2988 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
2991 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
2992 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr, NDR_BUFFERS, &r->full_info));
2995 case LSA_TRUSTED_DOMAIN_INFO_11:
2996 NDR_CHECK(ndr_push_lsa_TrustDomainInfo11(ndr, NDR_BUFFERS, &r->info11));
2999 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
3000 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoAll(ndr, NDR_BUFFERS, &r->info_all));
3004 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3007 return NDR_ERR_SUCCESS;
3010 static enum ndr_err_code ndr_pull_lsa_TrustedDomainInfo(struct ndr_pull *ndr, int ndr_flags, union lsa_TrustedDomainInfo *r)
3014 level = ndr_pull_get_switch_value(ndr, r);
3015 if (ndr_flags & NDR_SCALARS) {
3016 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
3017 if (_level != level) {
3018 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
3021 case LSA_TRUSTED_DOMAIN_INFO_NAME: {
3022 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr, NDR_SCALARS, &r->name));
3025 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET: {
3026 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr, NDR_SCALARS, &r->posix_offset));
3029 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD: {
3030 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr, NDR_SCALARS, &r->password));
3033 case LSA_TRUSTED_DOMAIN_INFO_BASIC: {
3034 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr, NDR_SCALARS, &r->info_basic));
3037 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX: {
3038 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->info_ex));
3041 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO: {
3042 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_SCALARS, &r->auth_info));
3045 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO: {
3046 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr, NDR_SCALARS, &r->full_info));
3049 case LSA_TRUSTED_DOMAIN_INFO_11: {
3050 NDR_CHECK(ndr_pull_lsa_TrustDomainInfo11(ndr, NDR_SCALARS, &r->info11));
3053 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL: {
3054 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoAll(ndr, NDR_SCALARS, &r->info_all));
3058 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3061 if (ndr_flags & NDR_BUFFERS) {
3063 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3064 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr, NDR_BUFFERS, &r->name));
3067 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3070 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3071 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr, NDR_BUFFERS, &r->password));
3074 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3075 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr, NDR_BUFFERS, &r->info_basic));
3078 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3079 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->info_ex));
3082 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3083 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr, NDR_BUFFERS, &r->auth_info));
3086 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3087 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr, NDR_BUFFERS, &r->full_info));
3090 case LSA_TRUSTED_DOMAIN_INFO_11:
3091 NDR_CHECK(ndr_pull_lsa_TrustDomainInfo11(ndr, NDR_BUFFERS, &r->info11));
3094 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
3095 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoAll(ndr, NDR_BUFFERS, &r->info_all));
3099 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3102 return NDR_ERR_SUCCESS;
3105 _PUBLIC_ void ndr_print_lsa_TrustedDomainInfo(struct ndr_print *ndr, const char *name, const union lsa_TrustedDomainInfo *r)
3108 level = ndr_print_get_switch_value(ndr, r);
3109 ndr_print_union(ndr, name, level, "lsa_TrustedDomainInfo");
3111 case LSA_TRUSTED_DOMAIN_INFO_NAME:
3112 ndr_print_lsa_TrustDomainInfoName(ndr, "name", &r->name);
3115 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET:
3116 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr, "posix_offset", &r->posix_offset);
3119 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD:
3120 ndr_print_lsa_TrustDomainInfoPassword(ndr, "password", &r->password);
3123 case LSA_TRUSTED_DOMAIN_INFO_BASIC:
3124 ndr_print_lsa_TrustDomainInfoBasic(ndr, "info_basic", &r->info_basic);
3127 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX:
3128 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "info_ex", &r->info_ex);
3131 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO:
3132 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr, "auth_info", &r->auth_info);
3135 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO:
3136 ndr_print_lsa_TrustDomainInfoFullInfo(ndr, "full_info", &r->full_info);
3139 case LSA_TRUSTED_DOMAIN_INFO_11:
3140 ndr_print_lsa_TrustDomainInfo11(ndr, "info11", &r->info11);
3143 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL:
3144 ndr_print_lsa_TrustDomainInfoInfoAll(ndr, "info_all", &r->info_all);
3148 ndr_print_bad_level(ndr, name, level);
3152 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)
3154 if (ndr_flags & NDR_SCALARS) {
3155 NDR_CHECK(ndr_push_align(ndr, 4));
3156 NDR_CHECK(ndr_push_unique_ptr(ndr, r->buf));
3158 if (ndr_flags & NDR_BUFFERS) {
3160 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->buf));
3163 return NDR_ERR_SUCCESS;
3166 static enum ndr_err_code ndr_pull_lsa_DATA_BUF_PTR(struct ndr_pull *ndr, int ndr_flags, struct lsa_DATA_BUF_PTR *r)
3169 TALLOC_CTX *_mem_save_buf_0;
3170 if (ndr_flags & NDR_SCALARS) {
3171 NDR_CHECK(ndr_pull_align(ndr, 4));
3172 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_buf));
3174 NDR_PULL_ALLOC(ndr, r->buf);
3179 if (ndr_flags & NDR_BUFFERS) {
3181 _mem_save_buf_0 = NDR_PULL_GET_MEM_CTX(ndr);
3182 NDR_PULL_SET_MEM_CTX(ndr, r->buf, 0);
3183 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->buf));
3184 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buf_0, 0);
3187 return NDR_ERR_SUCCESS;
3190 _PUBLIC_ void ndr_print_lsa_DATA_BUF_PTR(struct ndr_print *ndr, const char *name, const struct lsa_DATA_BUF_PTR *r)
3192 ndr_print_struct(ndr, name, "lsa_DATA_BUF_PTR");
3194 ndr_print_ptr(ndr, "buf", r->buf);
3197 ndr_print_lsa_DATA_BUF(ndr, "buf", r->buf);
3203 static enum ndr_err_code ndr_push_lsa_RightSet(struct ndr_push *ndr, int ndr_flags, const struct lsa_RightSet *r)
3205 uint32_t cntr_names_1;
3206 if (ndr_flags & NDR_SCALARS) {
3207 NDR_CHECK(ndr_push_align(ndr, 4));
3208 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3209 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
3211 if (ndr_flags & NDR_BUFFERS) {
3213 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3214 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3215 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3217 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3218 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3222 return NDR_ERR_SUCCESS;
3225 static enum ndr_err_code ndr_pull_lsa_RightSet(struct ndr_pull *ndr, int ndr_flags, struct lsa_RightSet *r)
3227 uint32_t _ptr_names;
3228 uint32_t cntr_names_1;
3229 TALLOC_CTX *_mem_save_names_0;
3230 TALLOC_CTX *_mem_save_names_1;
3231 if (ndr_flags & NDR_SCALARS) {
3232 NDR_CHECK(ndr_pull_align(ndr, 4));
3233 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3234 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
3236 NDR_PULL_ALLOC(ndr, r->names);
3241 if (ndr_flags & NDR_BUFFERS) {
3243 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
3244 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3245 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
3246 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
3247 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
3248 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3249 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3250 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3252 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3253 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3255 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
3256 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
3259 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
3262 return NDR_ERR_SUCCESS;
3265 _PUBLIC_ void ndr_print_lsa_RightSet(struct ndr_print *ndr, const char *name, const struct lsa_RightSet *r)
3267 uint32_t cntr_names_1;
3268 ndr_print_struct(ndr, name, "lsa_RightSet");
3270 ndr_print_uint32(ndr, "count", r->count);
3271 ndr_print_ptr(ndr, "names", r->names);
3274 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
3276 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
3278 asprintf(&idx_1, "[%d]", cntr_names_1);
3280 ndr_print_lsa_StringLarge(ndr, "names", &r->names[cntr_names_1]);
3290 static enum ndr_err_code ndr_push_lsa_StringPointer(struct ndr_push *ndr, int ndr_flags, const struct lsa_StringPointer *r)
3292 if (ndr_flags & NDR_SCALARS) {
3293 NDR_CHECK(ndr_push_align(ndr, 4));
3294 NDR_CHECK(ndr_push_unique_ptr(ndr, r->string));
3296 if (ndr_flags & NDR_BUFFERS) {
3298 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->string));
3301 return NDR_ERR_SUCCESS;
3304 static enum ndr_err_code ndr_pull_lsa_StringPointer(struct ndr_pull *ndr, int ndr_flags, struct lsa_StringPointer *r)
3306 uint32_t _ptr_string;
3307 TALLOC_CTX *_mem_save_string_0;
3308 if (ndr_flags & NDR_SCALARS) {
3309 NDR_CHECK(ndr_pull_align(ndr, 4));
3310 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_string));
3312 NDR_PULL_ALLOC(ndr, r->string);
3317 if (ndr_flags & NDR_BUFFERS) {
3319 _mem_save_string_0 = NDR_PULL_GET_MEM_CTX(ndr);
3320 NDR_PULL_SET_MEM_CTX(ndr, r->string, 0);
3321 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->string));
3322 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_string_0, 0);
3325 return NDR_ERR_SUCCESS;
3328 _PUBLIC_ void ndr_print_lsa_StringPointer(struct ndr_print *ndr, const char *name, const struct lsa_StringPointer *r)
3330 ndr_print_struct(ndr, name, "lsa_StringPointer");
3332 ndr_print_ptr(ndr, "string", r->string);
3335 ndr_print_lsa_String(ndr, "string", r->string);
3341 static enum ndr_err_code ndr_push_lsa_DomainListEx(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainListEx *r)
3343 uint32_t cntr_domains_1;
3344 if (ndr_flags & NDR_SCALARS) {
3345 NDR_CHECK(ndr_push_align(ndr, 4));
3346 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3347 NDR_CHECK(ndr_push_unique_ptr(ndr, r->domains));
3349 if (ndr_flags & NDR_BUFFERS) {
3351 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3352 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3353 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
3355 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3356 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
3360 return NDR_ERR_SUCCESS;
3363 static enum ndr_err_code ndr_pull_lsa_DomainListEx(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainListEx *r)
3365 uint32_t _ptr_domains;
3366 uint32_t cntr_domains_1;
3367 TALLOC_CTX *_mem_save_domains_0;
3368 TALLOC_CTX *_mem_save_domains_1;
3369 if (ndr_flags & NDR_SCALARS) {
3370 NDR_CHECK(ndr_pull_align(ndr, 4));
3371 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3372 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
3374 NDR_PULL_ALLOC(ndr, r->domains);
3379 if (ndr_flags & NDR_BUFFERS) {
3381 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
3382 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
3383 NDR_CHECK(ndr_pull_array_size(ndr, &r->domains));
3384 NDR_PULL_ALLOC_N(ndr, r->domains, ndr_get_array_size(ndr, &r->domains));
3385 _mem_save_domains_1 = NDR_PULL_GET_MEM_CTX(ndr);
3386 NDR_PULL_SET_MEM_CTX(ndr, r->domains, 0);
3387 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3388 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_SCALARS, &r->domains[cntr_domains_1]));
3390 for (cntr_domains_1 = 0; cntr_domains_1 < r->count; cntr_domains_1++) {
3391 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr, NDR_BUFFERS, &r->domains[cntr_domains_1]));
3393 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_1, 0);
3394 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
3397 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->domains, r->count));
3400 return NDR_ERR_SUCCESS;
3403 _PUBLIC_ void ndr_print_lsa_DomainListEx(struct ndr_print *ndr, const char *name, const struct lsa_DomainListEx *r)
3405 uint32_t cntr_domains_1;
3406 ndr_print_struct(ndr, name, "lsa_DomainListEx");
3408 ndr_print_uint32(ndr, "count", r->count);
3409 ndr_print_ptr(ndr, "domains", r->domains);
3412 ndr->print(ndr, "%s: ARRAY(%d)", "domains", r->count);
3414 for (cntr_domains_1=0;cntr_domains_1<r->count;cntr_domains_1++) {
3416 asprintf(&idx_1, "[%d]", cntr_domains_1);
3418 ndr_print_lsa_TrustDomainInfoInfoEx(ndr, "domains", &r->domains[cntr_domains_1]);
3428 static enum ndr_err_code ndr_push_lsa_DomainInfoKerberos(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfoKerberos *r)
3430 if (ndr_flags & NDR_SCALARS) {
3431 NDR_CHECK(ndr_push_align(ndr, 8));
3432 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->enforce_restrictions));
3433 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->service_tkt_lifetime));
3434 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->user_tkt_lifetime));
3435 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->user_tkt_renewaltime));
3436 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->clock_skew));
3437 NDR_CHECK(ndr_push_hyper(ndr, NDR_SCALARS, r->unknown6));
3439 if (ndr_flags & NDR_BUFFERS) {
3441 return NDR_ERR_SUCCESS;
3444 static enum ndr_err_code ndr_pull_lsa_DomainInfoKerberos(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoKerberos *r)
3446 if (ndr_flags & NDR_SCALARS) {
3447 NDR_CHECK(ndr_pull_align(ndr, 8));
3448 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->enforce_restrictions));
3449 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->service_tkt_lifetime));
3450 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->user_tkt_lifetime));
3451 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->user_tkt_renewaltime));
3452 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->clock_skew));
3453 NDR_CHECK(ndr_pull_hyper(ndr, NDR_SCALARS, &r->unknown6));
3455 if (ndr_flags & NDR_BUFFERS) {
3457 return NDR_ERR_SUCCESS;
3460 _PUBLIC_ void ndr_print_lsa_DomainInfoKerberos(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoKerberos *r)
3462 ndr_print_struct(ndr, name, "lsa_DomainInfoKerberos");
3464 ndr_print_uint32(ndr, "enforce_restrictions", r->enforce_restrictions);
3465 ndr_print_hyper(ndr, "service_tkt_lifetime", r->service_tkt_lifetime);
3466 ndr_print_hyper(ndr, "user_tkt_lifetime", r->user_tkt_lifetime);
3467 ndr_print_hyper(ndr, "user_tkt_renewaltime", r->user_tkt_renewaltime);
3468 ndr_print_hyper(ndr, "clock_skew", r->clock_skew);
3469 ndr_print_hyper(ndr, "unknown6", r->unknown6);
3473 static enum ndr_err_code ndr_push_lsa_DomainInfoEfs(struct ndr_push *ndr, int ndr_flags, const struct lsa_DomainInfoEfs *r)
3475 if (ndr_flags & NDR_SCALARS) {
3476 NDR_CHECK(ndr_push_align(ndr, 4));
3477 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->blob_size));
3478 NDR_CHECK(ndr_push_unique_ptr(ndr, r->efs_blob));
3480 if (ndr_flags & NDR_BUFFERS) {
3482 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->blob_size));
3483 NDR_CHECK(ndr_push_array_uint8(ndr, NDR_SCALARS, r->efs_blob, r->blob_size));
3486 return NDR_ERR_SUCCESS;
3489 static enum ndr_err_code ndr_pull_lsa_DomainInfoEfs(struct ndr_pull *ndr, int ndr_flags, struct lsa_DomainInfoEfs *r)
3491 uint32_t _ptr_efs_blob;
3492 TALLOC_CTX *_mem_save_efs_blob_0;
3493 if (ndr_flags & NDR_SCALARS) {
3494 NDR_CHECK(ndr_pull_align(ndr, 4));
3495 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->blob_size));
3496 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_efs_blob));
3497 if (_ptr_efs_blob) {
3498 NDR_PULL_ALLOC(ndr, r->efs_blob);
3503 if (ndr_flags & NDR_BUFFERS) {
3505 _mem_save_efs_blob_0 = NDR_PULL_GET_MEM_CTX(ndr);
3506 NDR_PULL_SET_MEM_CTX(ndr, r->efs_blob, 0);
3507 NDR_CHECK(ndr_pull_array_size(ndr, &r->efs_blob));
3508 NDR_PULL_ALLOC_N(ndr, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob));
3509 NDR_CHECK(ndr_pull_array_uint8(ndr, NDR_SCALARS, r->efs_blob, ndr_get_array_size(ndr, &r->efs_blob)));
3510 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_efs_blob_0, 0);
3513 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->efs_blob, r->blob_size));
3516 return NDR_ERR_SUCCESS;
3519 _PUBLIC_ void ndr_print_lsa_DomainInfoEfs(struct ndr_print *ndr, const char *name, const struct lsa_DomainInfoEfs *r)
3521 ndr_print_struct(ndr, name, "lsa_DomainInfoEfs");
3523 ndr_print_uint32(ndr, "blob_size", r->blob_size);
3524 ndr_print_ptr(ndr, "efs_blob", r->efs_blob);
3527 ndr_print_array_uint8(ndr, "efs_blob", r->efs_blob, r->blob_size);
3533 static enum ndr_err_code ndr_push_lsa_DomainInformationPolicy(struct ndr_push *ndr, int ndr_flags, const union lsa_DomainInformationPolicy *r)
3535 if (ndr_flags & NDR_SCALARS) {
3536 int level = ndr_push_get_switch_value(ndr, r);
3537 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, level));
3539 case LSA_DOMAIN_INFO_POLICY_EFS:
3540 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr, NDR_SCALARS, &r->efs_info));
3543 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3544 NDR_CHECK(ndr_push_lsa_DomainInfoKerberos(ndr, NDR_SCALARS, &r->kerberos_info));
3548 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3551 if (ndr_flags & NDR_BUFFERS) {
3552 int level = ndr_push_get_switch_value(ndr, r);
3554 case LSA_DOMAIN_INFO_POLICY_EFS:
3555 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr, NDR_BUFFERS, &r->efs_info));
3558 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3562 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3565 return NDR_ERR_SUCCESS;
3568 static enum ndr_err_code ndr_pull_lsa_DomainInformationPolicy(struct ndr_pull *ndr, int ndr_flags, union lsa_DomainInformationPolicy *r)
3572 level = ndr_pull_get_switch_value(ndr, r);
3573 if (ndr_flags & NDR_SCALARS) {
3574 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &_level));
3575 if (_level != level) {
3576 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u for r", _level);
3579 case LSA_DOMAIN_INFO_POLICY_EFS: {
3580 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr, NDR_SCALARS, &r->efs_info));
3583 case LSA_DOMAIN_INFO_POLICY_KERBEROS: {
3584 NDR_CHECK(ndr_pull_lsa_DomainInfoKerberos(ndr, NDR_SCALARS, &r->kerberos_info));
3588 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3591 if (ndr_flags & NDR_BUFFERS) {
3593 case LSA_DOMAIN_INFO_POLICY_EFS:
3594 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr, NDR_BUFFERS, &r->efs_info));
3597 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3601 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
3604 return NDR_ERR_SUCCESS;
3607 _PUBLIC_ void ndr_print_lsa_DomainInformationPolicy(struct ndr_print *ndr, const char *name, const union lsa_DomainInformationPolicy *r)
3610 level = ndr_print_get_switch_value(ndr, r);
3611 ndr_print_union(ndr, name, level, "lsa_DomainInformationPolicy");
3613 case LSA_DOMAIN_INFO_POLICY_EFS:
3614 ndr_print_lsa_DomainInfoEfs(ndr, "efs_info", &r->efs_info);
3617 case LSA_DOMAIN_INFO_POLICY_KERBEROS:
3618 ndr_print_lsa_DomainInfoKerberos(ndr, "kerberos_info", &r->kerberos_info);
3622 ndr_print_bad_level(ndr, name, level);
3626 static enum ndr_err_code ndr_push_lsa_TranslatedName2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedName2 *r)
3628 if (ndr_flags & NDR_SCALARS) {
3629 NDR_CHECK(ndr_push_align(ndr, 4));
3630 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
3631 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->name));
3632 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
3633 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
3635 if (ndr_flags & NDR_BUFFERS) {
3636 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->name));
3638 return NDR_ERR_SUCCESS;
3641 static enum ndr_err_code ndr_pull_lsa_TranslatedName2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedName2 *r)
3643 if (ndr_flags & NDR_SCALARS) {
3644 NDR_CHECK(ndr_pull_align(ndr, 4));
3645 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
3646 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->name));
3647 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
3648 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
3650 if (ndr_flags & NDR_BUFFERS) {
3651 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->name));
3653 return NDR_ERR_SUCCESS;
3656 _PUBLIC_ void ndr_print_lsa_TranslatedName2(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedName2 *r)
3658 ndr_print_struct(ndr, name, "lsa_TranslatedName2");
3660 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
3661 ndr_print_lsa_String(ndr, "name", &r->name);
3662 ndr_print_uint32(ndr, "sid_index", r->sid_index);
3663 ndr_print_uint32(ndr, "unknown", r->unknown);
3667 static enum ndr_err_code ndr_push_lsa_TransNameArray2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransNameArray2 *r)
3669 uint32_t cntr_names_1;
3670 if (ndr_flags & NDR_SCALARS) {
3671 NDR_CHECK(ndr_push_align(ndr, 4));
3672 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3673 NDR_CHECK(ndr_push_unique_ptr(ndr, r->names));
3675 if (ndr_flags & NDR_BUFFERS) {
3677 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3678 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3679 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3681 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3682 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3686 return NDR_ERR_SUCCESS;
3689 static enum ndr_err_code ndr_pull_lsa_TransNameArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransNameArray2 *r)
3691 uint32_t _ptr_names;
3692 uint32_t cntr_names_1;
3693 TALLOC_CTX *_mem_save_names_0;
3694 TALLOC_CTX *_mem_save_names_1;
3695 if (ndr_flags & NDR_SCALARS) {
3696 NDR_CHECK(ndr_pull_align(ndr, 4));
3697 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3698 if (r->count < 0 || r->count > 1000) {
3699 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
3701 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_names));
3703 NDR_PULL_ALLOC(ndr, r->names);
3708 if (ndr_flags & NDR_BUFFERS) {
3710 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
3711 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3712 NDR_CHECK(ndr_pull_array_size(ndr, &r->names));
3713 NDR_PULL_ALLOC_N(ndr, r->names, ndr_get_array_size(ndr, &r->names));
3714 _mem_save_names_1 = NDR_PULL_GET_MEM_CTX(ndr);
3715 NDR_PULL_SET_MEM_CTX(ndr, r->names, 0);
3716 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3717 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_SCALARS, &r->names[cntr_names_1]));
3719 for (cntr_names_1 = 0; cntr_names_1 < r->count; cntr_names_1++) {
3720 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr, NDR_BUFFERS, &r->names[cntr_names_1]));
3722 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_1, 0);
3723 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
3726 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->names, r->count));
3729 return NDR_ERR_SUCCESS;
3732 _PUBLIC_ void ndr_print_lsa_TransNameArray2(struct ndr_print *ndr, const char *name, const struct lsa_TransNameArray2 *r)
3734 uint32_t cntr_names_1;
3735 ndr_print_struct(ndr, name, "lsa_TransNameArray2");
3737 ndr_print_uint32(ndr, "count", r->count);
3738 ndr_print_ptr(ndr, "names", r->names);
3741 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->count);
3743 for (cntr_names_1=0;cntr_names_1<r->count;cntr_names_1++) {
3745 asprintf(&idx_1, "[%d]", cntr_names_1);
3747 ndr_print_lsa_TranslatedName2(ndr, "names", &r->names[cntr_names_1]);
3757 static enum ndr_err_code ndr_push_lsa_TranslatedSid2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid2 *r)
3759 if (ndr_flags & NDR_SCALARS) {
3760 NDR_CHECK(ndr_push_align(ndr, 4));
3761 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
3762 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->rid));
3763 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
3764 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
3766 if (ndr_flags & NDR_BUFFERS) {
3768 return NDR_ERR_SUCCESS;
3771 static enum ndr_err_code ndr_pull_lsa_TranslatedSid2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid2 *r)
3773 if (ndr_flags & NDR_SCALARS) {
3774 NDR_CHECK(ndr_pull_align(ndr, 4));
3775 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
3776 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->rid));
3777 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
3778 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
3780 if (ndr_flags & NDR_BUFFERS) {
3782 return NDR_ERR_SUCCESS;
3785 _PUBLIC_ void ndr_print_lsa_TranslatedSid2(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid2 *r)
3787 ndr_print_struct(ndr, name, "lsa_TranslatedSid2");
3789 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
3790 ndr_print_uint32(ndr, "rid", r->rid);
3791 ndr_print_uint32(ndr, "sid_index", r->sid_index);
3792 ndr_print_uint32(ndr, "unknown", r->unknown);
3796 static enum ndr_err_code ndr_push_lsa_TransSidArray2(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray2 *r)
3798 uint32_t cntr_sids_1;
3799 if (ndr_flags & NDR_SCALARS) {
3800 NDR_CHECK(ndr_push_align(ndr, 4));
3801 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3802 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
3804 if (ndr_flags & NDR_BUFFERS) {
3806 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3807 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3808 NDR_CHECK(ndr_push_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
3812 return NDR_ERR_SUCCESS;
3815 static enum ndr_err_code ndr_pull_lsa_TransSidArray2(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray2 *r)
3818 uint32_t cntr_sids_1;
3819 TALLOC_CTX *_mem_save_sids_0;
3820 TALLOC_CTX *_mem_save_sids_1;
3821 if (ndr_flags & NDR_SCALARS) {
3822 NDR_CHECK(ndr_pull_align(ndr, 4));
3823 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3824 if (r->count < 0 || r->count > 1000) {
3825 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
3827 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
3829 NDR_PULL_ALLOC(ndr, r->sids);
3834 if (ndr_flags & NDR_BUFFERS) {
3836 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
3837 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
3838 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
3839 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
3840 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
3841 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
3842 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3843 NDR_CHECK(ndr_pull_lsa_TranslatedSid2(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
3845 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
3846 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
3849 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
3852 return NDR_ERR_SUCCESS;
3855 _PUBLIC_ void ndr_print_lsa_TransSidArray2(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray2 *r)
3857 uint32_t cntr_sids_1;
3858 ndr_print_struct(ndr, name, "lsa_TransSidArray2");
3860 ndr_print_uint32(ndr, "count", r->count);
3861 ndr_print_ptr(ndr, "sids", r->sids);
3864 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->count);
3866 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
3868 asprintf(&idx_1, "[%d]", cntr_sids_1);
3870 ndr_print_lsa_TranslatedSid2(ndr, "sids", &r->sids[cntr_sids_1]);
3880 static enum ndr_err_code ndr_push_lsa_TranslatedSid3(struct ndr_push *ndr, int ndr_flags, const struct lsa_TranslatedSid3 *r)
3882 if (ndr_flags & NDR_SCALARS) {
3883 NDR_CHECK(ndr_push_align(ndr, 4));
3884 NDR_CHECK(ndr_push_lsa_SidType(ndr, NDR_SCALARS, r->sid_type));
3885 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sid));
3886 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->sid_index));
3887 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown));
3889 if (ndr_flags & NDR_BUFFERS) {
3891 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3894 return NDR_ERR_SUCCESS;
3897 static enum ndr_err_code ndr_pull_lsa_TranslatedSid3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TranslatedSid3 *r)
3900 TALLOC_CTX *_mem_save_sid_0;
3901 if (ndr_flags & NDR_SCALARS) {
3902 NDR_CHECK(ndr_pull_align(ndr, 4));
3903 NDR_CHECK(ndr_pull_lsa_SidType(ndr, NDR_SCALARS, &r->sid_type));
3904 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sid));
3906 NDR_PULL_ALLOC(ndr, r->sid);
3910 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->sid_index));
3911 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown));
3913 if (ndr_flags & NDR_BUFFERS) {
3915 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
3916 NDR_PULL_SET_MEM_CTX(ndr, r->sid, 0);
3917 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->sid));
3918 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, 0);
3921 return NDR_ERR_SUCCESS;
3924 _PUBLIC_ void ndr_print_lsa_TranslatedSid3(struct ndr_print *ndr, const char *name, const struct lsa_TranslatedSid3 *r)
3926 ndr_print_struct(ndr, name, "lsa_TranslatedSid3");
3928 ndr_print_lsa_SidType(ndr, "sid_type", r->sid_type);
3929 ndr_print_ptr(ndr, "sid", r->sid);
3932 ndr_print_dom_sid2(ndr, "sid", r->sid);
3935 ndr_print_uint32(ndr, "sid_index", r->sid_index);
3936 ndr_print_uint32(ndr, "unknown", r->unknown);
3940 static enum ndr_err_code ndr_push_lsa_TransSidArray3(struct ndr_push *ndr, int ndr_flags, const struct lsa_TransSidArray3 *r)
3942 uint32_t cntr_sids_1;
3943 if (ndr_flags & NDR_SCALARS) {
3944 NDR_CHECK(ndr_push_align(ndr, 4));
3945 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3946 NDR_CHECK(ndr_push_unique_ptr(ndr, r->sids));
3948 if (ndr_flags & NDR_BUFFERS) {
3950 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->count));
3951 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3952 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
3954 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3955 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
3959 return NDR_ERR_SUCCESS;
3962 static enum ndr_err_code ndr_pull_lsa_TransSidArray3(struct ndr_pull *ndr, int ndr_flags, struct lsa_TransSidArray3 *r)
3965 uint32_t cntr_sids_1;
3966 TALLOC_CTX *_mem_save_sids_0;
3967 TALLOC_CTX *_mem_save_sids_1;
3968 if (ndr_flags & NDR_SCALARS) {
3969 NDR_CHECK(ndr_pull_align(ndr, 4));
3970 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->count));
3971 if (r->count < 0 || r->count > 1000) {
3972 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
3974 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sids));
3976 NDR_PULL_ALLOC(ndr, r->sids);
3981 if (ndr_flags & NDR_BUFFERS) {
3983 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
3984 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
3985 NDR_CHECK(ndr_pull_array_size(ndr, &r->sids));
3986 NDR_PULL_ALLOC_N(ndr, r->sids, ndr_get_array_size(ndr, &r->sids));
3987 _mem_save_sids_1 = NDR_PULL_GET_MEM_CTX(ndr);
3988 NDR_PULL_SET_MEM_CTX(ndr, r->sids, 0);
3989 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3990 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_SCALARS, &r->sids[cntr_sids_1]));
3992 for (cntr_sids_1 = 0; cntr_sids_1 < r->count; cntr_sids_1++) {
3993 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr, NDR_BUFFERS, &r->sids[cntr_sids_1]));
3995 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_1, 0);
3996 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, 0);
3999 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->sids, r->count));
4002 return NDR_ERR_SUCCESS;
4005 _PUBLIC_ void ndr_print_lsa_TransSidArray3(struct ndr_print *ndr, const char *name, const struct lsa_TransSidArray3 *r)
4007 uint32_t cntr_sids_1;
4008 ndr_print_struct(ndr, name, "lsa_TransSidArray3");
4010 ndr_print_uint32(ndr, "count", r->count);
4011 ndr_print_ptr(ndr, "sids", r->sids);
4014 ndr->print(ndr, "%s: ARRAY(%d)", "sids", r->count);
4016 for (cntr_sids_1=0;cntr_sids_1<r->count;cntr_sids_1++) {
4018 asprintf(&idx_1, "[%d]", cntr_sids_1);
4020 ndr_print_lsa_TranslatedSid3(ndr, "sids", &r->sids[cntr_sids_1]);
4030 static enum ndr_err_code ndr_push_lsa_Close(struct ndr_push *ndr, int flags, const struct lsa_Close *r)
4032 if (flags & NDR_IN) {
4033 if (r->in.handle == NULL) {
4034 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4036 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4038 if (flags & NDR_OUT) {
4039 if (r->out.handle == NULL) {
4040 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4042 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
4043 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4045 return NDR_ERR_SUCCESS;
4048 static enum ndr_err_code ndr_pull_lsa_Close(struct ndr_pull *ndr, int flags, struct lsa_Close *r)
4050 TALLOC_CTX *_mem_save_handle_0;
4051 if (flags & NDR_IN) {
4052 ZERO_STRUCT(r->out);
4054 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4055 NDR_PULL_ALLOC(ndr, r->in.handle);
4057 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4058 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4059 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4060 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4061 NDR_PULL_ALLOC(ndr, r->out.handle);
4062 *r->out.handle = *r->in.handle;
4064 if (flags & NDR_OUT) {
4065 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4066 NDR_PULL_ALLOC(ndr, r->out.handle);
4068 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4069 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
4070 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
4071 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4072 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4074 return NDR_ERR_SUCCESS;
4077 _PUBLIC_ void ndr_print_lsa_Close(struct ndr_print *ndr, const char *name, int flags, const struct lsa_Close *r)
4079 ndr_print_struct(ndr, name, "lsa_Close");
4081 if (flags & NDR_SET_VALUES) {
4082 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4084 if (flags & NDR_IN) {
4085 ndr_print_struct(ndr, "in", "lsa_Close");
4087 ndr_print_ptr(ndr, "handle", r->in.handle);
4089 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4093 if (flags & NDR_OUT) {
4094 ndr_print_struct(ndr, "out", "lsa_Close");
4096 ndr_print_ptr(ndr, "handle", r->out.handle);
4098 ndr_print_policy_handle(ndr, "handle", r->out.handle);
4100 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4106 static enum ndr_err_code ndr_push_lsa_Delete(struct ndr_push *ndr, int flags, const struct lsa_Delete *r)
4108 if (flags & NDR_IN) {
4109 if (r->in.handle == NULL) {
4110 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4112 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4114 if (flags & NDR_OUT) {
4115 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4117 return NDR_ERR_SUCCESS;
4120 static enum ndr_err_code ndr_pull_lsa_Delete(struct ndr_pull *ndr, int flags, struct lsa_Delete *r)
4122 TALLOC_CTX *_mem_save_handle_0;
4123 if (flags & NDR_IN) {
4124 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4125 NDR_PULL_ALLOC(ndr, r->in.handle);
4127 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4128 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4129 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4130 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4132 if (flags & NDR_OUT) {
4133 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4135 return NDR_ERR_SUCCESS;
4138 _PUBLIC_ void ndr_print_lsa_Delete(struct ndr_print *ndr, const char *name, int flags, const struct lsa_Delete *r)
4140 ndr_print_struct(ndr, name, "lsa_Delete");
4142 if (flags & NDR_SET_VALUES) {
4143 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4145 if (flags & NDR_IN) {
4146 ndr_print_struct(ndr, "in", "lsa_Delete");
4148 ndr_print_ptr(ndr, "handle", r->in.handle);
4150 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4154 if (flags & NDR_OUT) {
4155 ndr_print_struct(ndr, "out", "lsa_Delete");
4157 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4163 static enum ndr_err_code ndr_push_lsa_EnumPrivs(struct ndr_push *ndr, int flags, const struct lsa_EnumPrivs *r)
4165 if (flags & NDR_IN) {
4166 if (r->in.handle == NULL) {
4167 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4169 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4170 if (r->in.resume_handle == NULL) {
4171 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4173 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
4174 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_count));
4176 if (flags & NDR_OUT) {
4177 if (r->out.resume_handle == NULL) {
4178 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4180 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
4181 if (r->out.privs == NULL) {
4182 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4184 NDR_CHECK(ndr_push_lsa_PrivArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.privs));
4185 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4187 return NDR_ERR_SUCCESS;
4190 static enum ndr_err_code ndr_pull_lsa_EnumPrivs(struct ndr_pull *ndr, int flags, struct lsa_EnumPrivs *r)
4192 TALLOC_CTX *_mem_save_handle_0;
4193 TALLOC_CTX *_mem_save_resume_handle_0;
4194 TALLOC_CTX *_mem_save_privs_0;
4195 if (flags & NDR_IN) {
4196 ZERO_STRUCT(r->out);
4198 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4199 NDR_PULL_ALLOC(ndr, r->in.handle);
4201 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4202 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4203 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4204 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4205 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4206 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
4208 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4209 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
4210 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
4211 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
4212 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_count));
4213 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
4214 *r->out.resume_handle = *r->in.resume_handle;
4215 NDR_PULL_ALLOC(ndr, r->out.privs);
4216 ZERO_STRUCTP(r->out.privs);
4218 if (flags & NDR_OUT) {
4219 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4220 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
4222 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4223 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
4224 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
4225 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
4226 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4227 NDR_PULL_ALLOC(ndr, r->out.privs);
4229 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
4230 NDR_PULL_SET_MEM_CTX(ndr, r->out.privs, LIBNDR_FLAG_REF_ALLOC);
4231 NDR_CHECK(ndr_pull_lsa_PrivArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.privs));
4232 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
4233 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4235 return NDR_ERR_SUCCESS;
4238 _PUBLIC_ void ndr_print_lsa_EnumPrivs(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumPrivs *r)
4240 ndr_print_struct(ndr, name, "lsa_EnumPrivs");
4242 if (flags & NDR_SET_VALUES) {
4243 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4245 if (flags & NDR_IN) {
4246 ndr_print_struct(ndr, "in", "lsa_EnumPrivs");
4248 ndr_print_ptr(ndr, "handle", r->in.handle);
4250 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4252 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
4254 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
4256 ndr_print_uint32(ndr, "max_count", r->in.max_count);
4259 if (flags & NDR_OUT) {
4260 ndr_print_struct(ndr, "out", "lsa_EnumPrivs");
4262 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
4264 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
4266 ndr_print_ptr(ndr, "privs", r->out.privs);
4268 ndr_print_lsa_PrivArray(ndr, "privs", r->out.privs);
4270 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4276 static enum ndr_err_code ndr_push_lsa_QuerySecurity(struct ndr_push *ndr, int flags, const struct lsa_QuerySecurity *r)
4278 if (flags & NDR_IN) {
4279 if (r->in.handle == NULL) {
4280 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4282 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4283 NDR_CHECK(ndr_push_security_secinfo(ndr, NDR_SCALARS, r->in.sec_info));
4285 if (flags & NDR_OUT) {
4286 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.sdbuf));
4288 NDR_CHECK(ndr_push_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sdbuf));
4290 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4292 return NDR_ERR_SUCCESS;
4295 static enum ndr_err_code ndr_pull_lsa_QuerySecurity(struct ndr_pull *ndr, int flags, struct lsa_QuerySecurity *r)
4297 uint32_t _ptr_sdbuf;
4298 TALLOC_CTX *_mem_save_handle_0;
4299 TALLOC_CTX *_mem_save_sdbuf_0;
4300 if (flags & NDR_IN) {
4301 ZERO_STRUCT(r->out);
4303 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4304 NDR_PULL_ALLOC(ndr, r->in.handle);
4306 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4307 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4308 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4309 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4310 NDR_CHECK(ndr_pull_security_secinfo(ndr, NDR_SCALARS, &r->in.sec_info));
4312 if (flags & NDR_OUT) {
4313 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_sdbuf));
4315 NDR_PULL_ALLOC(ndr, r->out.sdbuf);
4317 r->out.sdbuf = NULL;
4320 _mem_save_sdbuf_0 = NDR_PULL_GET_MEM_CTX(ndr);
4321 NDR_PULL_SET_MEM_CTX(ndr, r->out.sdbuf, 0);
4322 NDR_CHECK(ndr_pull_sec_desc_buf(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sdbuf));
4323 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sdbuf_0, 0);
4325 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4327 return NDR_ERR_SUCCESS;
4330 _PUBLIC_ void ndr_print_lsa_QuerySecurity(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QuerySecurity *r)
4332 ndr_print_struct(ndr, name, "lsa_QuerySecurity");
4334 if (flags & NDR_SET_VALUES) {
4335 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4337 if (flags & NDR_IN) {
4338 ndr_print_struct(ndr, "in", "lsa_QuerySecurity");
4340 ndr_print_ptr(ndr, "handle", r->in.handle);
4342 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4344 ndr_print_security_secinfo(ndr, "sec_info", r->in.sec_info);
4347 if (flags & NDR_OUT) {
4348 ndr_print_struct(ndr, "out", "lsa_QuerySecurity");
4350 ndr_print_ptr(ndr, "sdbuf", r->out.sdbuf);
4353 ndr_print_sec_desc_buf(ndr, "sdbuf", r->out.sdbuf);
4356 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4362 static enum ndr_err_code ndr_push_lsa_SetSecObj(struct ndr_push *ndr, int flags, const struct lsa_SetSecObj *r)
4364 if (flags & NDR_IN) {
4366 if (flags & NDR_OUT) {
4367 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4369 return NDR_ERR_SUCCESS;
4372 static enum ndr_err_code ndr_pull_lsa_SetSecObj(struct ndr_pull *ndr, int flags, struct lsa_SetSecObj *r)
4374 if (flags & NDR_IN) {
4376 if (flags & NDR_OUT) {
4377 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4379 return NDR_ERR_SUCCESS;
4382 _PUBLIC_ void ndr_print_lsa_SetSecObj(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSecObj *r)
4384 ndr_print_struct(ndr, name, "lsa_SetSecObj");
4386 if (flags & NDR_SET_VALUES) {
4387 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4389 if (flags & NDR_IN) {
4390 ndr_print_struct(ndr, "in", "lsa_SetSecObj");
4394 if (flags & NDR_OUT) {
4395 ndr_print_struct(ndr, "out", "lsa_SetSecObj");
4397 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4403 static enum ndr_err_code ndr_push_lsa_ChangePassword(struct ndr_push *ndr, int flags, const struct lsa_ChangePassword *r)
4405 if (flags & NDR_IN) {
4407 if (flags & NDR_OUT) {
4408 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4410 return NDR_ERR_SUCCESS;
4413 static enum ndr_err_code ndr_pull_lsa_ChangePassword(struct ndr_pull *ndr, int flags, struct lsa_ChangePassword *r)
4415 if (flags & NDR_IN) {
4417 if (flags & NDR_OUT) {
4418 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4420 return NDR_ERR_SUCCESS;
4423 _PUBLIC_ void ndr_print_lsa_ChangePassword(struct ndr_print *ndr, const char *name, int flags, const struct lsa_ChangePassword *r)
4425 ndr_print_struct(ndr, name, "lsa_ChangePassword");
4427 if (flags & NDR_SET_VALUES) {
4428 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4430 if (flags & NDR_IN) {
4431 ndr_print_struct(ndr, "in", "lsa_ChangePassword");
4435 if (flags & NDR_OUT) {
4436 ndr_print_struct(ndr, "out", "lsa_ChangePassword");
4438 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4444 static enum ndr_err_code ndr_push_lsa_OpenPolicy(struct ndr_push *ndr, int flags, const struct lsa_OpenPolicy *r)
4446 if (flags & NDR_IN) {
4447 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
4448 if (r->in.system_name) {
4449 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->in.system_name));
4451 if (r->in.attr == NULL) {
4452 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4454 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
4455 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
4457 if (flags & NDR_OUT) {
4458 if (r->out.handle == NULL) {
4459 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4461 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
4462 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4464 return NDR_ERR_SUCCESS;
4467 static enum ndr_err_code ndr_pull_lsa_OpenPolicy(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy *r)
4469 uint32_t _ptr_system_name;
4470 TALLOC_CTX *_mem_save_system_name_0;
4471 TALLOC_CTX *_mem_save_attr_0;
4472 TALLOC_CTX *_mem_save_handle_0;
4473 if (flags & NDR_IN) {
4474 ZERO_STRUCT(r->out);
4476 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
4477 if (_ptr_system_name) {
4478 NDR_PULL_ALLOC(ndr, r->in.system_name);
4480 r->in.system_name = NULL;
4482 if (r->in.system_name) {
4483 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
4484 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
4485 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->in.system_name));
4486 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
4488 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4489 NDR_PULL_ALLOC(ndr, r->in.attr);
4491 _mem_save_attr_0 = NDR_PULL_GET_MEM_CTX(ndr);
4492 NDR_PULL_SET_MEM_CTX(ndr, r->in.attr, LIBNDR_FLAG_REF_ALLOC);
4493 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
4494 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attr_0, LIBNDR_FLAG_REF_ALLOC);
4495 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
4496 NDR_PULL_ALLOC(ndr, r->out.handle);
4497 ZERO_STRUCTP(r->out.handle);
4499 if (flags & NDR_OUT) {
4500 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4501 NDR_PULL_ALLOC(ndr, r->out.handle);
4503 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4504 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
4505 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
4506 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4507 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4509 return NDR_ERR_SUCCESS;
4512 _PUBLIC_ void ndr_print_lsa_OpenPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenPolicy *r)
4514 ndr_print_struct(ndr, name, "lsa_OpenPolicy");
4516 if (flags & NDR_SET_VALUES) {
4517 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4519 if (flags & NDR_IN) {
4520 ndr_print_struct(ndr, "in", "lsa_OpenPolicy");
4522 ndr_print_ptr(ndr, "system_name", r->in.system_name);
4524 if (r->in.system_name) {
4525 ndr_print_uint16(ndr, "system_name", *r->in.system_name);
4528 ndr_print_ptr(ndr, "attr", r->in.attr);
4530 ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
4532 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
4535 if (flags & NDR_OUT) {
4536 ndr_print_struct(ndr, "out", "lsa_OpenPolicy");
4538 ndr_print_ptr(ndr, "handle", r->out.handle);
4540 ndr_print_policy_handle(ndr, "handle", r->out.handle);
4542 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4548 static enum ndr_err_code ndr_push_lsa_QueryInfoPolicy(struct ndr_push *ndr, int flags, const struct lsa_QueryInfoPolicy *r)
4550 if (flags & NDR_IN) {
4551 if (r->in.handle == NULL) {
4552 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4554 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4555 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
4557 if (flags & NDR_OUT) {
4558 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
4560 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
4561 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
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_QueryInfoPolicy(struct ndr_pull *ndr, int flags, struct lsa_QueryInfoPolicy *r)
4571 TALLOC_CTX *_mem_save_handle_0;
4572 TALLOC_CTX *_mem_save_info_0;
4573 if (flags & NDR_IN) {
4574 ZERO_STRUCT(r->out);
4576 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4577 NDR_PULL_ALLOC(ndr, r->in.handle);
4579 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4580 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4581 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4582 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4583 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
4585 if (flags & NDR_OUT) {
4586 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
4588 NDR_PULL_ALLOC(ndr, r->out.info);
4593 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
4594 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
4595 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
4596 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
4597 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
4599 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4601 return NDR_ERR_SUCCESS;
4604 _PUBLIC_ void ndr_print_lsa_QueryInfoPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryInfoPolicy *r)
4606 ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy");
4608 if (flags & NDR_SET_VALUES) {
4609 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4611 if (flags & NDR_IN) {
4612 ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy");
4614 ndr_print_ptr(ndr, "handle", r->in.handle);
4616 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4618 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
4621 if (flags & NDR_OUT) {
4622 ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy");
4624 ndr_print_ptr(ndr, "info", r->out.info);
4627 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
4628 ndr_print_lsa_PolicyInformation(ndr, "info", r->out.info);
4631 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4637 static enum ndr_err_code ndr_push_lsa_SetInfoPolicy(struct ndr_push *ndr, int flags, const struct lsa_SetInfoPolicy *r)
4639 if (flags & NDR_IN) {
4640 if (r->in.handle == NULL) {
4641 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4643 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4644 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
4645 if (r->in.info == NULL) {
4646 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4648 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
4649 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
4651 if (flags & NDR_OUT) {
4652 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4654 return NDR_ERR_SUCCESS;
4657 static enum ndr_err_code ndr_pull_lsa_SetInfoPolicy(struct ndr_pull *ndr, int flags, struct lsa_SetInfoPolicy *r)
4659 TALLOC_CTX *_mem_save_handle_0;
4660 TALLOC_CTX *_mem_save_info_0;
4661 if (flags & NDR_IN) {
4662 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4663 NDR_PULL_ALLOC(ndr, r->in.handle);
4665 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4666 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4667 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4668 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4669 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
4670 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4671 NDR_PULL_ALLOC(ndr, r->in.info);
4673 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
4674 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
4675 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
4676 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
4677 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
4679 if (flags & NDR_OUT) {
4680 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4682 return NDR_ERR_SUCCESS;
4685 _PUBLIC_ void ndr_print_lsa_SetInfoPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInfoPolicy *r)
4687 ndr_print_struct(ndr, name, "lsa_SetInfoPolicy");
4689 if (flags & NDR_SET_VALUES) {
4690 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4692 if (flags & NDR_IN) {
4693 ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy");
4695 ndr_print_ptr(ndr, "handle", r->in.handle);
4697 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4699 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
4700 ndr_print_ptr(ndr, "info", r->in.info);
4702 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
4703 ndr_print_lsa_PolicyInformation(ndr, "info", r->in.info);
4707 if (flags & NDR_OUT) {
4708 ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy");
4710 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4716 static enum ndr_err_code ndr_push_lsa_ClearAuditLog(struct ndr_push *ndr, int flags, const struct lsa_ClearAuditLog *r)
4718 if (flags & NDR_IN) {
4720 if (flags & NDR_OUT) {
4721 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4723 return NDR_ERR_SUCCESS;
4726 static enum ndr_err_code ndr_pull_lsa_ClearAuditLog(struct ndr_pull *ndr, int flags, struct lsa_ClearAuditLog *r)
4728 if (flags & NDR_IN) {
4730 if (flags & NDR_OUT) {
4731 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4733 return NDR_ERR_SUCCESS;
4736 _PUBLIC_ void ndr_print_lsa_ClearAuditLog(struct ndr_print *ndr, const char *name, int flags, const struct lsa_ClearAuditLog *r)
4738 ndr_print_struct(ndr, name, "lsa_ClearAuditLog");
4740 if (flags & NDR_SET_VALUES) {
4741 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4743 if (flags & NDR_IN) {
4744 ndr_print_struct(ndr, "in", "lsa_ClearAuditLog");
4748 if (flags & NDR_OUT) {
4749 ndr_print_struct(ndr, "out", "lsa_ClearAuditLog");
4751 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4757 static enum ndr_err_code ndr_push_lsa_CreateAccount(struct ndr_push *ndr, int flags, const struct lsa_CreateAccount *r)
4759 if (flags & NDR_IN) {
4760 if (r->in.handle == NULL) {
4761 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4763 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4764 if (r->in.sid == NULL) {
4765 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4767 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
4768 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
4770 if (flags & NDR_OUT) {
4771 if (r->out.acct_handle == NULL) {
4772 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4774 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
4775 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4777 return NDR_ERR_SUCCESS;
4780 static enum ndr_err_code ndr_pull_lsa_CreateAccount(struct ndr_pull *ndr, int flags, struct lsa_CreateAccount *r)
4782 TALLOC_CTX *_mem_save_handle_0;
4783 TALLOC_CTX *_mem_save_sid_0;
4784 TALLOC_CTX *_mem_save_acct_handle_0;
4785 if (flags & NDR_IN) {
4786 ZERO_STRUCT(r->out);
4788 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4789 NDR_PULL_ALLOC(ndr, r->in.handle);
4791 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4792 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4793 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4794 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4795 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4796 NDR_PULL_ALLOC(ndr, r->in.sid);
4798 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
4799 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
4800 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
4801 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
4802 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
4803 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
4804 ZERO_STRUCTP(r->out.acct_handle);
4806 if (flags & NDR_OUT) {
4807 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4808 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
4810 _mem_save_acct_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4811 NDR_PULL_SET_MEM_CTX(ndr, r->out.acct_handle, LIBNDR_FLAG_REF_ALLOC);
4812 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
4813 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_acct_handle_0, LIBNDR_FLAG_REF_ALLOC);
4814 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4816 return NDR_ERR_SUCCESS;
4819 _PUBLIC_ void ndr_print_lsa_CreateAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateAccount *r)
4821 ndr_print_struct(ndr, name, "lsa_CreateAccount");
4823 if (flags & NDR_SET_VALUES) {
4824 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4826 if (flags & NDR_IN) {
4827 ndr_print_struct(ndr, "in", "lsa_CreateAccount");
4829 ndr_print_ptr(ndr, "handle", r->in.handle);
4831 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4833 ndr_print_ptr(ndr, "sid", r->in.sid);
4835 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
4837 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
4840 if (flags & NDR_OUT) {
4841 ndr_print_struct(ndr, "out", "lsa_CreateAccount");
4843 ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
4845 ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
4847 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4853 static enum ndr_err_code ndr_push_lsa_EnumAccounts(struct ndr_push *ndr, int flags, const struct lsa_EnumAccounts *r)
4855 if (flags & NDR_IN) {
4856 if (r->in.handle == NULL) {
4857 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4859 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4860 if (r->in.resume_handle == NULL) {
4861 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4863 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
4864 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_entries));
4866 if (flags & NDR_OUT) {
4867 if (r->out.resume_handle == NULL) {
4868 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4870 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
4871 if (r->out.sids == NULL) {
4872 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4874 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
4875 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4877 return NDR_ERR_SUCCESS;
4880 static enum ndr_err_code ndr_pull_lsa_EnumAccounts(struct ndr_pull *ndr, int flags, struct lsa_EnumAccounts *r)
4882 TALLOC_CTX *_mem_save_handle_0;
4883 TALLOC_CTX *_mem_save_resume_handle_0;
4884 TALLOC_CTX *_mem_save_sids_0;
4885 if (flags & NDR_IN) {
4886 ZERO_STRUCT(r->out);
4888 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4889 NDR_PULL_ALLOC(ndr, r->in.handle);
4891 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4892 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
4893 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4894 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
4895 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4896 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
4898 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4899 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
4900 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
4901 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
4902 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_entries));
4903 if (r->in.num_entries < 0 || r->in.num_entries > 8192) {
4904 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
4906 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
4907 *r->out.resume_handle = *r->in.resume_handle;
4908 NDR_PULL_ALLOC(ndr, r->out.sids);
4909 ZERO_STRUCTP(r->out.sids);
4911 if (flags & NDR_OUT) {
4912 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4913 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
4915 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
4916 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
4917 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
4918 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
4919 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
4920 NDR_PULL_ALLOC(ndr, r->out.sids);
4922 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
4923 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
4924 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
4925 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
4926 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
4928 return NDR_ERR_SUCCESS;
4931 _PUBLIC_ void ndr_print_lsa_EnumAccounts(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccounts *r)
4933 ndr_print_struct(ndr, name, "lsa_EnumAccounts");
4935 if (flags & NDR_SET_VALUES) {
4936 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
4938 if (flags & NDR_IN) {
4939 ndr_print_struct(ndr, "in", "lsa_EnumAccounts");
4941 ndr_print_ptr(ndr, "handle", r->in.handle);
4943 ndr_print_policy_handle(ndr, "handle", r->in.handle);
4945 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
4947 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
4949 ndr_print_uint32(ndr, "num_entries", r->in.num_entries);
4952 if (flags & NDR_OUT) {
4953 ndr_print_struct(ndr, "out", "lsa_EnumAccounts");
4955 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
4957 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
4959 ndr_print_ptr(ndr, "sids", r->out.sids);
4961 ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
4963 ndr_print_NTSTATUS(ndr, "result", r->out.result);
4969 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomain *r)
4971 if (flags & NDR_IN) {
4972 if (r->in.handle == NULL) {
4973 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4975 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
4976 if (r->in.info == NULL) {
4977 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4979 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
4980 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
4982 if (flags & NDR_OUT) {
4983 if (r->out.trustdom_handle == NULL) {
4984 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
4986 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
4987 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
4989 return NDR_ERR_SUCCESS;
4992 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomain *r)
4994 TALLOC_CTX *_mem_save_handle_0;
4995 TALLOC_CTX *_mem_save_info_0;
4996 TALLOC_CTX *_mem_save_trustdom_handle_0;
4997 if (flags & NDR_IN) {
4998 ZERO_STRUCT(r->out);
5000 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5001 NDR_PULL_ALLOC(ndr, r->in.handle);
5003 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5004 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5005 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5006 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5007 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5008 NDR_PULL_ALLOC(ndr, r->in.info);
5010 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
5011 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
5012 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
5013 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
5014 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
5015 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
5016 ZERO_STRUCTP(r->out.trustdom_handle);
5018 if (flags & NDR_OUT) {
5019 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5020 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
5022 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5023 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
5024 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
5025 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
5026 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5028 return NDR_ERR_SUCCESS;
5031 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomain *r)
5033 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomain");
5035 if (flags & NDR_SET_VALUES) {
5036 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5038 if (flags & NDR_IN) {
5039 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomain");
5041 ndr_print_ptr(ndr, "handle", r->in.handle);
5043 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5045 ndr_print_ptr(ndr, "info", r->in.info);
5047 ndr_print_lsa_DomainInfo(ndr, "info", r->in.info);
5049 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
5052 if (flags & NDR_OUT) {
5053 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomain");
5055 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
5057 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
5059 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5065 static enum ndr_err_code ndr_push_lsa_EnumTrustDom(struct ndr_push *ndr, int flags, const struct lsa_EnumTrustDom *r)
5067 if (flags & NDR_IN) {
5068 if (r->in.handle == NULL) {
5069 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5071 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5072 if (r->in.resume_handle == NULL) {
5073 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5075 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
5076 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
5078 if (flags & NDR_OUT) {
5079 if (r->out.resume_handle == NULL) {
5080 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5082 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
5083 if (r->out.domains == NULL) {
5084 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5086 NDR_CHECK(ndr_push_lsa_DomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5087 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5089 return NDR_ERR_SUCCESS;
5092 static enum ndr_err_code ndr_pull_lsa_EnumTrustDom(struct ndr_pull *ndr, int flags, struct lsa_EnumTrustDom *r)
5094 TALLOC_CTX *_mem_save_handle_0;
5095 TALLOC_CTX *_mem_save_resume_handle_0;
5096 TALLOC_CTX *_mem_save_domains_0;
5097 if (flags & NDR_IN) {
5098 ZERO_STRUCT(r->out);
5100 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5101 NDR_PULL_ALLOC(ndr, r->in.handle);
5103 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5104 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5105 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5106 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5107 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5108 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
5110 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5111 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5112 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
5113 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5114 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
5115 if (r->in.max_size < 0 || r->in.max_size > 1000) {
5116 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
5118 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5119 *r->out.resume_handle = *r->in.resume_handle;
5120 NDR_PULL_ALLOC(ndr, r->out.domains);
5121 ZERO_STRUCTP(r->out.domains);
5123 if (flags & NDR_OUT) {
5124 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5125 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
5127 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5128 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
5129 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
5130 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
5131 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5132 NDR_PULL_ALLOC(ndr, r->out.domains);
5134 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
5135 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
5136 NDR_CHECK(ndr_pull_lsa_DomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5137 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
5138 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5140 return NDR_ERR_SUCCESS;
5143 _PUBLIC_ void ndr_print_lsa_EnumTrustDom(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumTrustDom *r)
5145 ndr_print_struct(ndr, name, "lsa_EnumTrustDom");
5147 if (flags & NDR_SET_VALUES) {
5148 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5150 if (flags & NDR_IN) {
5151 ndr_print_struct(ndr, "in", "lsa_EnumTrustDom");
5153 ndr_print_ptr(ndr, "handle", r->in.handle);
5155 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5157 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
5159 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
5161 ndr_print_uint32(ndr, "max_size", r->in.max_size);
5164 if (flags & NDR_OUT) {
5165 ndr_print_struct(ndr, "out", "lsa_EnumTrustDom");
5167 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
5169 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
5171 ndr_print_ptr(ndr, "domains", r->out.domains);
5173 ndr_print_lsa_DomainList(ndr, "domains", r->out.domains);
5175 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5181 static enum ndr_err_code ndr_push_lsa_LookupNames(struct ndr_push *ndr, int flags, const struct lsa_LookupNames *r)
5183 uint32_t cntr_names_0;
5184 if (flags & NDR_IN) {
5185 if (r->in.handle == NULL) {
5186 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5188 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5189 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
5190 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
5191 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5192 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
5194 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5195 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
5197 if (r->in.sids == NULL) {
5198 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5200 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5201 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
5202 if (r->in.count == NULL) {
5203 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5205 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
5207 if (flags & NDR_OUT) {
5208 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
5209 if (r->out.domains) {
5210 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5212 if (r->out.sids == NULL) {
5213 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5215 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
5216 if (r->out.count == NULL) {
5217 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5219 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
5220 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5222 return NDR_ERR_SUCCESS;
5225 static enum ndr_err_code ndr_pull_lsa_LookupNames(struct ndr_pull *ndr, int flags, struct lsa_LookupNames *r)
5227 uint32_t cntr_names_0;
5228 uint32_t _ptr_domains;
5229 TALLOC_CTX *_mem_save_handle_0;
5230 TALLOC_CTX *_mem_save_names_0;
5231 TALLOC_CTX *_mem_save_domains_0;
5232 TALLOC_CTX *_mem_save_sids_0;
5233 TALLOC_CTX *_mem_save_count_0;
5234 if (flags & NDR_IN) {
5235 ZERO_STRUCT(r->out);
5237 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5238 NDR_PULL_ALLOC(ndr, r->in.handle);
5240 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5241 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5242 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5243 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5244 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
5245 if (r->in.num_names < 0 || r->in.num_names > 1000) {
5246 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
5248 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
5249 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
5250 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
5251 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
5252 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5253 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
5255 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
5256 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
5258 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
5259 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5260 NDR_PULL_ALLOC(ndr, r->in.sids);
5262 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
5263 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
5264 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5265 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
5266 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
5267 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5268 NDR_PULL_ALLOC(ndr, r->in.count);
5270 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
5271 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
5272 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
5273 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
5274 NDR_PULL_ALLOC(ndr, r->out.sids);
5275 *r->out.sids = *r->in.sids;
5276 NDR_PULL_ALLOC(ndr, r->out.count);
5277 *r->out.count = *r->in.count;
5279 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
5282 if (flags & NDR_OUT) {
5283 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
5285 NDR_PULL_ALLOC(ndr, r->out.domains);
5287 r->out.domains = NULL;
5289 if (r->out.domains) {
5290 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
5291 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
5292 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5293 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
5295 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5296 NDR_PULL_ALLOC(ndr, r->out.sids);
5298 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
5299 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
5300 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
5301 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
5302 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5303 NDR_PULL_ALLOC(ndr, r->out.count);
5305 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
5306 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
5307 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
5308 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
5309 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5311 return NDR_ERR_SUCCESS;
5314 _PUBLIC_ void ndr_print_lsa_LookupNames(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames *r)
5316 uint32_t cntr_names_0;
5317 ndr_print_struct(ndr, name, "lsa_LookupNames");
5319 if (flags & NDR_SET_VALUES) {
5320 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5322 if (flags & NDR_IN) {
5323 ndr_print_struct(ndr, "in", "lsa_LookupNames");
5325 ndr_print_ptr(ndr, "handle", r->in.handle);
5327 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5329 ndr_print_uint32(ndr, "num_names", r->in.num_names);
5330 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
5332 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
5334 asprintf(&idx_0, "[%d]", cntr_names_0);
5336 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
5341 ndr_print_ptr(ndr, "sids", r->in.sids);
5343 ndr_print_lsa_TransSidArray(ndr, "sids", r->in.sids);
5345 ndr_print_uint16(ndr, "level", r->in.level);
5346 ndr_print_ptr(ndr, "count", r->in.count);
5348 ndr_print_uint32(ndr, "count", *r->in.count);
5352 if (flags & NDR_OUT) {
5353 ndr_print_struct(ndr, "out", "lsa_LookupNames");
5355 ndr_print_ptr(ndr, "domains", r->out.domains);
5357 if (r->out.domains) {
5358 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
5361 ndr_print_ptr(ndr, "sids", r->out.sids);
5363 ndr_print_lsa_TransSidArray(ndr, "sids", r->out.sids);
5365 ndr_print_ptr(ndr, "count", r->out.count);
5367 ndr_print_uint32(ndr, "count", *r->out.count);
5369 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5375 static enum ndr_err_code ndr_push_lsa_LookupSids(struct ndr_push *ndr, int flags, const struct lsa_LookupSids *r)
5377 if (flags & NDR_IN) {
5378 if (r->in.handle == NULL) {
5379 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5381 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5382 if (r->in.sids == NULL) {
5383 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5385 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5386 if (r->in.names == NULL) {
5387 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5389 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
5390 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
5391 if (r->in.count == NULL) {
5392 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5394 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
5396 if (flags & NDR_OUT) {
5397 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
5398 if (r->out.domains) {
5399 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5401 if (r->out.names == NULL) {
5402 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5404 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
5405 if (r->out.count == NULL) {
5406 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5408 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
5409 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5411 return NDR_ERR_SUCCESS;
5414 static enum ndr_err_code ndr_pull_lsa_LookupSids(struct ndr_pull *ndr, int flags, struct lsa_LookupSids *r)
5416 uint32_t _ptr_domains;
5417 TALLOC_CTX *_mem_save_handle_0;
5418 TALLOC_CTX *_mem_save_sids_0;
5419 TALLOC_CTX *_mem_save_domains_0;
5420 TALLOC_CTX *_mem_save_names_0;
5421 TALLOC_CTX *_mem_save_count_0;
5422 if (flags & NDR_IN) {
5423 ZERO_STRUCT(r->out);
5425 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5426 NDR_PULL_ALLOC(ndr, r->in.handle);
5428 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5429 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5430 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5431 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5432 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5433 NDR_PULL_ALLOC(ndr, r->in.sids);
5435 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
5436 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
5437 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
5438 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
5439 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5440 NDR_PULL_ALLOC(ndr, r->in.names);
5442 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
5443 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
5444 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
5445 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
5446 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
5447 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5448 NDR_PULL_ALLOC(ndr, r->in.count);
5450 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
5451 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
5452 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
5453 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
5454 NDR_PULL_ALLOC(ndr, r->out.names);
5455 *r->out.names = *r->in.names;
5456 NDR_PULL_ALLOC(ndr, r->out.count);
5457 *r->out.count = *r->in.count;
5459 if (flags & NDR_OUT) {
5460 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
5462 NDR_PULL_ALLOC(ndr, r->out.domains);
5464 r->out.domains = NULL;
5466 if (r->out.domains) {
5467 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
5468 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
5469 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
5470 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
5472 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5473 NDR_PULL_ALLOC(ndr, r->out.names);
5475 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
5476 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
5477 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
5478 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
5479 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5480 NDR_PULL_ALLOC(ndr, r->out.count);
5482 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
5483 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
5484 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
5485 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
5486 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5488 return NDR_ERR_SUCCESS;
5491 _PUBLIC_ void ndr_print_lsa_LookupSids(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids *r)
5493 ndr_print_struct(ndr, name, "lsa_LookupSids");
5495 if (flags & NDR_SET_VALUES) {
5496 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5498 if (flags & NDR_IN) {
5499 ndr_print_struct(ndr, "in", "lsa_LookupSids");
5501 ndr_print_ptr(ndr, "handle", r->in.handle);
5503 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5505 ndr_print_ptr(ndr, "sids", r->in.sids);
5507 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
5509 ndr_print_ptr(ndr, "names", r->in.names);
5511 ndr_print_lsa_TransNameArray(ndr, "names", r->in.names);
5513 ndr_print_uint16(ndr, "level", r->in.level);
5514 ndr_print_ptr(ndr, "count", r->in.count);
5516 ndr_print_uint32(ndr, "count", *r->in.count);
5520 if (flags & NDR_OUT) {
5521 ndr_print_struct(ndr, "out", "lsa_LookupSids");
5523 ndr_print_ptr(ndr, "domains", r->out.domains);
5525 if (r->out.domains) {
5526 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
5529 ndr_print_ptr(ndr, "names", r->out.names);
5531 ndr_print_lsa_TransNameArray(ndr, "names", r->out.names);
5533 ndr_print_ptr(ndr, "count", r->out.count);
5535 ndr_print_uint32(ndr, "count", *r->out.count);
5537 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5543 static enum ndr_err_code ndr_push_lsa_CreateSecret(struct ndr_push *ndr, int flags, const struct lsa_CreateSecret *r)
5545 if (flags & NDR_IN) {
5546 if (r->in.handle == NULL) {
5547 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5549 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5550 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
5551 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
5553 if (flags & NDR_OUT) {
5554 if (r->out.sec_handle == NULL) {
5555 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5557 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
5558 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5560 return NDR_ERR_SUCCESS;
5563 static enum ndr_err_code ndr_pull_lsa_CreateSecret(struct ndr_pull *ndr, int flags, struct lsa_CreateSecret *r)
5565 TALLOC_CTX *_mem_save_handle_0;
5566 TALLOC_CTX *_mem_save_sec_handle_0;
5567 if (flags & NDR_IN) {
5568 ZERO_STRUCT(r->out);
5570 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5571 NDR_PULL_ALLOC(ndr, r->in.handle);
5573 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5574 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5575 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5576 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5577 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
5578 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
5579 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
5580 ZERO_STRUCTP(r->out.sec_handle);
5582 if (flags & NDR_OUT) {
5583 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5584 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
5586 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5587 NDR_PULL_SET_MEM_CTX(ndr, r->out.sec_handle, LIBNDR_FLAG_REF_ALLOC);
5588 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
5589 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
5590 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5592 return NDR_ERR_SUCCESS;
5595 _PUBLIC_ void ndr_print_lsa_CreateSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateSecret *r)
5597 ndr_print_struct(ndr, name, "lsa_CreateSecret");
5599 if (flags & NDR_SET_VALUES) {
5600 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5602 if (flags & NDR_IN) {
5603 ndr_print_struct(ndr, "in", "lsa_CreateSecret");
5605 ndr_print_ptr(ndr, "handle", r->in.handle);
5607 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5609 ndr_print_lsa_String(ndr, "name", &r->in.name);
5610 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
5613 if (flags & NDR_OUT) {
5614 ndr_print_struct(ndr, "out", "lsa_CreateSecret");
5616 ndr_print_ptr(ndr, "sec_handle", r->out.sec_handle);
5618 ndr_print_policy_handle(ndr, "sec_handle", r->out.sec_handle);
5620 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5626 static enum ndr_err_code ndr_push_lsa_OpenAccount(struct ndr_push *ndr, int flags, const struct lsa_OpenAccount *r)
5628 if (flags & NDR_IN) {
5629 if (r->in.handle == NULL) {
5630 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5632 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5633 if (r->in.sid == NULL) {
5634 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5636 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
5637 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
5639 if (flags & NDR_OUT) {
5640 if (r->out.acct_handle == NULL) {
5641 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5643 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
5644 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5646 return NDR_ERR_SUCCESS;
5649 static enum ndr_err_code ndr_pull_lsa_OpenAccount(struct ndr_pull *ndr, int flags, struct lsa_OpenAccount *r)
5651 TALLOC_CTX *_mem_save_handle_0;
5652 TALLOC_CTX *_mem_save_sid_0;
5653 TALLOC_CTX *_mem_save_acct_handle_0;
5654 if (flags & NDR_IN) {
5655 ZERO_STRUCT(r->out);
5657 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5658 NDR_PULL_ALLOC(ndr, r->in.handle);
5660 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5661 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5662 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5663 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5664 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5665 NDR_PULL_ALLOC(ndr, r->in.sid);
5667 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
5668 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
5669 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
5670 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
5671 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
5672 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
5673 ZERO_STRUCTP(r->out.acct_handle);
5675 if (flags & NDR_OUT) {
5676 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5677 NDR_PULL_ALLOC(ndr, r->out.acct_handle);
5679 _mem_save_acct_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5680 NDR_PULL_SET_MEM_CTX(ndr, r->out.acct_handle, LIBNDR_FLAG_REF_ALLOC);
5681 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.acct_handle));
5682 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_acct_handle_0, LIBNDR_FLAG_REF_ALLOC);
5683 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5685 return NDR_ERR_SUCCESS;
5688 _PUBLIC_ void ndr_print_lsa_OpenAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenAccount *r)
5690 ndr_print_struct(ndr, name, "lsa_OpenAccount");
5692 if (flags & NDR_SET_VALUES) {
5693 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5695 if (flags & NDR_IN) {
5696 ndr_print_struct(ndr, "in", "lsa_OpenAccount");
5698 ndr_print_ptr(ndr, "handle", r->in.handle);
5700 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5702 ndr_print_ptr(ndr, "sid", r->in.sid);
5704 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
5706 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
5709 if (flags & NDR_OUT) {
5710 ndr_print_struct(ndr, "out", "lsa_OpenAccount");
5712 ndr_print_ptr(ndr, "acct_handle", r->out.acct_handle);
5714 ndr_print_policy_handle(ndr, "acct_handle", r->out.acct_handle);
5716 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5722 static enum ndr_err_code ndr_push_lsa_EnumPrivsAccount(struct ndr_push *ndr, int flags, const struct lsa_EnumPrivsAccount *r)
5724 if (flags & NDR_IN) {
5725 if (r->in.handle == NULL) {
5726 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5728 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5730 if (flags & NDR_OUT) {
5731 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.privs));
5733 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->out.privs));
5735 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5737 return NDR_ERR_SUCCESS;
5740 static enum ndr_err_code ndr_pull_lsa_EnumPrivsAccount(struct ndr_pull *ndr, int flags, struct lsa_EnumPrivsAccount *r)
5742 uint32_t _ptr_privs;
5743 TALLOC_CTX *_mem_save_handle_0;
5744 TALLOC_CTX *_mem_save_privs_0;
5745 if (flags & NDR_IN) {
5746 ZERO_STRUCT(r->out);
5748 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5749 NDR_PULL_ALLOC(ndr, r->in.handle);
5751 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5752 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5753 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5754 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5756 if (flags & NDR_OUT) {
5757 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
5759 NDR_PULL_ALLOC(ndr, r->out.privs);
5761 r->out.privs = NULL;
5764 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
5765 NDR_PULL_SET_MEM_CTX(ndr, r->out.privs, 0);
5766 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->out.privs));
5767 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
5769 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5771 return NDR_ERR_SUCCESS;
5774 _PUBLIC_ void ndr_print_lsa_EnumPrivsAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumPrivsAccount *r)
5776 ndr_print_struct(ndr, name, "lsa_EnumPrivsAccount");
5778 if (flags & NDR_SET_VALUES) {
5779 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5781 if (flags & NDR_IN) {
5782 ndr_print_struct(ndr, "in", "lsa_EnumPrivsAccount");
5784 ndr_print_ptr(ndr, "handle", r->in.handle);
5786 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5790 if (flags & NDR_OUT) {
5791 ndr_print_struct(ndr, "out", "lsa_EnumPrivsAccount");
5793 ndr_print_ptr(ndr, "privs", r->out.privs);
5796 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->out.privs);
5799 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5805 static enum ndr_err_code ndr_push_lsa_AddPrivilegesToAccount(struct ndr_push *ndr, int flags, const struct lsa_AddPrivilegesToAccount *r)
5807 if (flags & NDR_IN) {
5808 if (r->in.handle == NULL) {
5809 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5811 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5812 if (r->in.privs == NULL) {
5813 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5815 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
5817 if (flags & NDR_OUT) {
5818 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5820 return NDR_ERR_SUCCESS;
5823 static enum ndr_err_code ndr_pull_lsa_AddPrivilegesToAccount(struct ndr_pull *ndr, int flags, struct lsa_AddPrivilegesToAccount *r)
5825 TALLOC_CTX *_mem_save_handle_0;
5826 TALLOC_CTX *_mem_save_privs_0;
5827 if (flags & NDR_IN) {
5828 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5829 NDR_PULL_ALLOC(ndr, r->in.handle);
5831 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5832 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5833 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5834 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5835 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5836 NDR_PULL_ALLOC(ndr, r->in.privs);
5838 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
5839 NDR_PULL_SET_MEM_CTX(ndr, r->in.privs, LIBNDR_FLAG_REF_ALLOC);
5840 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
5841 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, LIBNDR_FLAG_REF_ALLOC);
5843 if (flags & NDR_OUT) {
5844 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5846 return NDR_ERR_SUCCESS;
5849 _PUBLIC_ void ndr_print_lsa_AddPrivilegesToAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_AddPrivilegesToAccount *r)
5851 ndr_print_struct(ndr, name, "lsa_AddPrivilegesToAccount");
5853 if (flags & NDR_SET_VALUES) {
5854 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5856 if (flags & NDR_IN) {
5857 ndr_print_struct(ndr, "in", "lsa_AddPrivilegesToAccount");
5859 ndr_print_ptr(ndr, "handle", r->in.handle);
5861 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5863 ndr_print_ptr(ndr, "privs", r->in.privs);
5865 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->in.privs);
5869 if (flags & NDR_OUT) {
5870 ndr_print_struct(ndr, "out", "lsa_AddPrivilegesToAccount");
5872 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5878 static enum ndr_err_code ndr_push_lsa_RemovePrivilegesFromAccount(struct ndr_push *ndr, int flags, const struct lsa_RemovePrivilegesFromAccount *r)
5880 if (flags & NDR_IN) {
5881 if (r->in.handle == NULL) {
5882 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
5884 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5885 NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->in.remove_all));
5886 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.privs));
5888 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
5891 if (flags & NDR_OUT) {
5892 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5894 return NDR_ERR_SUCCESS;
5897 static enum ndr_err_code ndr_pull_lsa_RemovePrivilegesFromAccount(struct ndr_pull *ndr, int flags, struct lsa_RemovePrivilegesFromAccount *r)
5899 uint32_t _ptr_privs;
5900 TALLOC_CTX *_mem_save_handle_0;
5901 TALLOC_CTX *_mem_save_privs_0;
5902 if (flags & NDR_IN) {
5903 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
5904 NDR_PULL_ALLOC(ndr, r->in.handle);
5906 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
5907 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
5908 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
5909 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
5910 NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->in.remove_all));
5911 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_privs));
5913 NDR_PULL_ALLOC(ndr, r->in.privs);
5918 _mem_save_privs_0 = NDR_PULL_GET_MEM_CTX(ndr);
5919 NDR_PULL_SET_MEM_CTX(ndr, r->in.privs, 0);
5920 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr, NDR_SCALARS, r->in.privs));
5921 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_privs_0, 0);
5924 if (flags & NDR_OUT) {
5925 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5927 return NDR_ERR_SUCCESS;
5930 _PUBLIC_ void ndr_print_lsa_RemovePrivilegesFromAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RemovePrivilegesFromAccount *r)
5932 ndr_print_struct(ndr, name, "lsa_RemovePrivilegesFromAccount");
5934 if (flags & NDR_SET_VALUES) {
5935 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5937 if (flags & NDR_IN) {
5938 ndr_print_struct(ndr, "in", "lsa_RemovePrivilegesFromAccount");
5940 ndr_print_ptr(ndr, "handle", r->in.handle);
5942 ndr_print_policy_handle(ndr, "handle", r->in.handle);
5944 ndr_print_uint8(ndr, "remove_all", r->in.remove_all);
5945 ndr_print_ptr(ndr, "privs", r->in.privs);
5948 ndr_print_lsa_PrivilegeSet(ndr, "privs", r->in.privs);
5953 if (flags & NDR_OUT) {
5954 ndr_print_struct(ndr, "out", "lsa_RemovePrivilegesFromAccount");
5956 ndr_print_NTSTATUS(ndr, "result", r->out.result);
5962 static enum ndr_err_code ndr_push_lsa_GetQuotasForAccount(struct ndr_push *ndr, int flags, const struct lsa_GetQuotasForAccount *r)
5964 if (flags & NDR_IN) {
5966 if (flags & NDR_OUT) {
5967 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
5969 return NDR_ERR_SUCCESS;
5972 static enum ndr_err_code ndr_pull_lsa_GetQuotasForAccount(struct ndr_pull *ndr, int flags, struct lsa_GetQuotasForAccount *r)
5974 if (flags & NDR_IN) {
5976 if (flags & NDR_OUT) {
5977 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
5979 return NDR_ERR_SUCCESS;
5982 _PUBLIC_ void ndr_print_lsa_GetQuotasForAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetQuotasForAccount *r)
5984 ndr_print_struct(ndr, name, "lsa_GetQuotasForAccount");
5986 if (flags & NDR_SET_VALUES) {
5987 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
5989 if (flags & NDR_IN) {
5990 ndr_print_struct(ndr, "in", "lsa_GetQuotasForAccount");
5994 if (flags & NDR_OUT) {
5995 ndr_print_struct(ndr, "out", "lsa_GetQuotasForAccount");
5997 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6003 static enum ndr_err_code ndr_push_lsa_SetQuotasForAccount(struct ndr_push *ndr, int flags, const struct lsa_SetQuotasForAccount *r)
6005 if (flags & NDR_IN) {
6007 if (flags & NDR_OUT) {
6008 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6010 return NDR_ERR_SUCCESS;
6013 static enum ndr_err_code ndr_pull_lsa_SetQuotasForAccount(struct ndr_pull *ndr, int flags, struct lsa_SetQuotasForAccount *r)
6015 if (flags & NDR_IN) {
6017 if (flags & NDR_OUT) {
6018 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6020 return NDR_ERR_SUCCESS;
6023 _PUBLIC_ void ndr_print_lsa_SetQuotasForAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetQuotasForAccount *r)
6025 ndr_print_struct(ndr, name, "lsa_SetQuotasForAccount");
6027 if (flags & NDR_SET_VALUES) {
6028 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6030 if (flags & NDR_IN) {
6031 ndr_print_struct(ndr, "in", "lsa_SetQuotasForAccount");
6035 if (flags & NDR_OUT) {
6036 ndr_print_struct(ndr, "out", "lsa_SetQuotasForAccount");
6038 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6044 static enum ndr_err_code ndr_push_lsa_GetSystemAccessAccount(struct ndr_push *ndr, int flags, const struct lsa_GetSystemAccessAccount *r)
6046 if (flags & NDR_IN) {
6048 if (flags & NDR_OUT) {
6049 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6051 return NDR_ERR_SUCCESS;
6054 static enum ndr_err_code ndr_pull_lsa_GetSystemAccessAccount(struct ndr_pull *ndr, int flags, struct lsa_GetSystemAccessAccount *r)
6056 if (flags & NDR_IN) {
6058 if (flags & NDR_OUT) {
6059 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6061 return NDR_ERR_SUCCESS;
6064 _PUBLIC_ void ndr_print_lsa_GetSystemAccessAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetSystemAccessAccount *r)
6066 ndr_print_struct(ndr, name, "lsa_GetSystemAccessAccount");
6068 if (flags & NDR_SET_VALUES) {
6069 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6071 if (flags & NDR_IN) {
6072 ndr_print_struct(ndr, "in", "lsa_GetSystemAccessAccount");
6076 if (flags & NDR_OUT) {
6077 ndr_print_struct(ndr, "out", "lsa_GetSystemAccessAccount");
6079 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6085 static enum ndr_err_code ndr_push_lsa_SetSystemAccessAccount(struct ndr_push *ndr, int flags, const struct lsa_SetSystemAccessAccount *r)
6087 if (flags & NDR_IN) {
6089 if (flags & NDR_OUT) {
6090 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6092 return NDR_ERR_SUCCESS;
6095 static enum ndr_err_code ndr_pull_lsa_SetSystemAccessAccount(struct ndr_pull *ndr, int flags, struct lsa_SetSystemAccessAccount *r)
6097 if (flags & NDR_IN) {
6099 if (flags & NDR_OUT) {
6100 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6102 return NDR_ERR_SUCCESS;
6105 _PUBLIC_ void ndr_print_lsa_SetSystemAccessAccount(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSystemAccessAccount *r)
6107 ndr_print_struct(ndr, name, "lsa_SetSystemAccessAccount");
6109 if (flags & NDR_SET_VALUES) {
6110 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6112 if (flags & NDR_IN) {
6113 ndr_print_struct(ndr, "in", "lsa_SetSystemAccessAccount");
6117 if (flags & NDR_OUT) {
6118 ndr_print_struct(ndr, "out", "lsa_SetSystemAccessAccount");
6120 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6126 static enum ndr_err_code ndr_push_lsa_OpenTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_OpenTrustedDomain *r)
6128 if (flags & NDR_IN) {
6129 if (r->in.handle == NULL) {
6130 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6132 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6133 if (r->in.sid == NULL) {
6134 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6136 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6137 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6139 if (flags & NDR_OUT) {
6140 if (r->out.trustdom_handle == NULL) {
6141 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6143 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
6144 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6146 return NDR_ERR_SUCCESS;
6149 static enum ndr_err_code ndr_pull_lsa_OpenTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_OpenTrustedDomain *r)
6151 TALLOC_CTX *_mem_save_handle_0;
6152 TALLOC_CTX *_mem_save_sid_0;
6153 TALLOC_CTX *_mem_save_trustdom_handle_0;
6154 if (flags & NDR_IN) {
6155 ZERO_STRUCT(r->out);
6157 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6158 NDR_PULL_ALLOC(ndr, r->in.handle);
6160 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6161 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6162 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6163 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6164 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6165 NDR_PULL_ALLOC(ndr, r->in.sid);
6167 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6168 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
6169 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
6170 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
6171 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6172 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
6173 ZERO_STRUCTP(r->out.trustdom_handle);
6175 if (flags & NDR_OUT) {
6176 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6177 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
6179 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6180 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
6181 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
6182 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
6183 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6185 return NDR_ERR_SUCCESS;
6188 _PUBLIC_ void ndr_print_lsa_OpenTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenTrustedDomain *r)
6190 ndr_print_struct(ndr, name, "lsa_OpenTrustedDomain");
6192 if (flags & NDR_SET_VALUES) {
6193 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6195 if (flags & NDR_IN) {
6196 ndr_print_struct(ndr, "in", "lsa_OpenTrustedDomain");
6198 ndr_print_ptr(ndr, "handle", r->in.handle);
6200 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6202 ndr_print_ptr(ndr, "sid", r->in.sid);
6204 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
6206 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6209 if (flags & NDR_OUT) {
6210 ndr_print_struct(ndr, "out", "lsa_OpenTrustedDomain");
6212 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
6214 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
6216 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6222 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfo(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfo *r)
6224 if (flags & NDR_IN) {
6225 if (r->in.trustdom_handle == NULL) {
6226 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6228 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trustdom_handle));
6229 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
6231 if (flags & NDR_OUT) {
6232 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
6234 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
6235 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6237 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6239 return NDR_ERR_SUCCESS;
6242 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfo(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfo *r)
6245 TALLOC_CTX *_mem_save_trustdom_handle_0;
6246 TALLOC_CTX *_mem_save_info_0;
6247 if (flags & NDR_IN) {
6248 ZERO_STRUCT(r->out);
6250 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6251 NDR_PULL_ALLOC(ndr, r->in.trustdom_handle);
6253 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6254 NDR_PULL_SET_MEM_CTX(ndr, r->in.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
6255 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.trustdom_handle));
6256 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
6257 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
6259 if (flags & NDR_OUT) {
6260 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
6262 NDR_PULL_ALLOC(ndr, r->out.info);
6267 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
6268 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
6269 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
6270 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
6271 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
6273 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6275 return NDR_ERR_SUCCESS;
6278 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfo *r)
6280 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfo");
6282 if (flags & NDR_SET_VALUES) {
6283 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6285 if (flags & NDR_IN) {
6286 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfo");
6288 ndr_print_ptr(ndr, "trustdom_handle", r->in.trustdom_handle);
6290 ndr_print_policy_handle(ndr, "trustdom_handle", r->in.trustdom_handle);
6292 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
6295 if (flags & NDR_OUT) {
6296 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfo");
6298 ndr_print_ptr(ndr, "info", r->out.info);
6301 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
6302 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->out.info);
6305 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6311 static enum ndr_err_code ndr_push_lsa_SetInformationTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_SetInformationTrustedDomain *r)
6313 if (flags & NDR_IN) {
6315 if (flags & NDR_OUT) {
6316 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6318 return NDR_ERR_SUCCESS;
6321 static enum ndr_err_code ndr_pull_lsa_SetInformationTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_SetInformationTrustedDomain *r)
6323 if (flags & NDR_IN) {
6325 if (flags & NDR_OUT) {
6326 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6328 return NDR_ERR_SUCCESS;
6331 _PUBLIC_ void ndr_print_lsa_SetInformationTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInformationTrustedDomain *r)
6333 ndr_print_struct(ndr, name, "lsa_SetInformationTrustedDomain");
6335 if (flags & NDR_SET_VALUES) {
6336 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6338 if (flags & NDR_IN) {
6339 ndr_print_struct(ndr, "in", "lsa_SetInformationTrustedDomain");
6343 if (flags & NDR_OUT) {
6344 ndr_print_struct(ndr, "out", "lsa_SetInformationTrustedDomain");
6346 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6352 static enum ndr_err_code ndr_push_lsa_OpenSecret(struct ndr_push *ndr, int flags, const struct lsa_OpenSecret *r)
6354 if (flags & NDR_IN) {
6355 if (r->in.handle == NULL) {
6356 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6358 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6359 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
6360 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
6362 if (flags & NDR_OUT) {
6363 if (r->out.sec_handle == NULL) {
6364 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6366 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
6367 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6369 return NDR_ERR_SUCCESS;
6372 static enum ndr_err_code ndr_pull_lsa_OpenSecret(struct ndr_pull *ndr, int flags, struct lsa_OpenSecret *r)
6374 TALLOC_CTX *_mem_save_handle_0;
6375 TALLOC_CTX *_mem_save_sec_handle_0;
6376 if (flags & NDR_IN) {
6377 ZERO_STRUCT(r->out);
6379 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6380 NDR_PULL_ALLOC(ndr, r->in.handle);
6382 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6383 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6384 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6385 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6386 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
6387 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
6388 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
6389 ZERO_STRUCTP(r->out.sec_handle);
6391 if (flags & NDR_OUT) {
6392 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6393 NDR_PULL_ALLOC(ndr, r->out.sec_handle);
6395 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6396 NDR_PULL_SET_MEM_CTX(ndr, r->out.sec_handle, LIBNDR_FLAG_REF_ALLOC);
6397 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sec_handle));
6398 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
6399 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6401 return NDR_ERR_SUCCESS;
6404 _PUBLIC_ void ndr_print_lsa_OpenSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenSecret *r)
6406 ndr_print_struct(ndr, name, "lsa_OpenSecret");
6408 if (flags & NDR_SET_VALUES) {
6409 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6411 if (flags & NDR_IN) {
6412 ndr_print_struct(ndr, "in", "lsa_OpenSecret");
6414 ndr_print_ptr(ndr, "handle", r->in.handle);
6416 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6418 ndr_print_lsa_String(ndr, "name", &r->in.name);
6419 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
6422 if (flags & NDR_OUT) {
6423 ndr_print_struct(ndr, "out", "lsa_OpenSecret");
6425 ndr_print_ptr(ndr, "sec_handle", r->out.sec_handle);
6427 ndr_print_policy_handle(ndr, "sec_handle", r->out.sec_handle);
6429 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6435 static enum ndr_err_code ndr_push_lsa_SetSecret(struct ndr_push *ndr, int flags, const struct lsa_SetSecret *r)
6437 if (flags & NDR_IN) {
6438 if (r->in.sec_handle == NULL) {
6439 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6441 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
6442 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_val));
6443 if (r->in.new_val) {
6444 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
6446 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_val));
6447 if (r->in.old_val) {
6448 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
6451 if (flags & NDR_OUT) {
6452 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6454 return NDR_ERR_SUCCESS;
6457 static enum ndr_err_code ndr_pull_lsa_SetSecret(struct ndr_pull *ndr, int flags, struct lsa_SetSecret *r)
6459 uint32_t _ptr_new_val;
6460 uint32_t _ptr_old_val;
6461 TALLOC_CTX *_mem_save_sec_handle_0;
6462 TALLOC_CTX *_mem_save_new_val_0;
6463 TALLOC_CTX *_mem_save_old_val_0;
6464 if (flags & NDR_IN) {
6465 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6466 NDR_PULL_ALLOC(ndr, r->in.sec_handle);
6468 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6469 NDR_PULL_SET_MEM_CTX(ndr, r->in.sec_handle, LIBNDR_FLAG_REF_ALLOC);
6470 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
6471 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
6472 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
6474 NDR_PULL_ALLOC(ndr, r->in.new_val);
6476 r->in.new_val = NULL;
6478 if (r->in.new_val) {
6479 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
6480 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_val, 0);
6481 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
6482 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
6484 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
6486 NDR_PULL_ALLOC(ndr, r->in.old_val);
6488 r->in.old_val = NULL;
6490 if (r->in.old_val) {
6491 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
6492 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_val, 0);
6493 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
6494 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
6497 if (flags & NDR_OUT) {
6498 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6500 return NDR_ERR_SUCCESS;
6503 _PUBLIC_ void ndr_print_lsa_SetSecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetSecret *r)
6505 ndr_print_struct(ndr, name, "lsa_SetSecret");
6507 if (flags & NDR_SET_VALUES) {
6508 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6510 if (flags & NDR_IN) {
6511 ndr_print_struct(ndr, "in", "lsa_SetSecret");
6513 ndr_print_ptr(ndr, "sec_handle", r->in.sec_handle);
6515 ndr_print_policy_handle(ndr, "sec_handle", r->in.sec_handle);
6517 ndr_print_ptr(ndr, "new_val", r->in.new_val);
6519 if (r->in.new_val) {
6520 ndr_print_lsa_DATA_BUF(ndr, "new_val", r->in.new_val);
6523 ndr_print_ptr(ndr, "old_val", r->in.old_val);
6525 if (r->in.old_val) {
6526 ndr_print_lsa_DATA_BUF(ndr, "old_val", r->in.old_val);
6531 if (flags & NDR_OUT) {
6532 ndr_print_struct(ndr, "out", "lsa_SetSecret");
6534 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6540 static enum ndr_err_code ndr_push_lsa_QuerySecret(struct ndr_push *ndr, int flags, const struct lsa_QuerySecret *r)
6542 if (flags & NDR_IN) {
6543 if (r->in.sec_handle == NULL) {
6544 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6546 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
6547 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_val));
6548 if (r->in.new_val) {
6549 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
6551 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.new_mtime));
6552 if (r->in.new_mtime) {
6553 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->in.new_mtime));
6555 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_val));
6556 if (r->in.old_val) {
6557 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
6559 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.old_mtime));
6560 if (r->in.old_mtime) {
6561 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->in.old_mtime));
6564 if (flags & NDR_OUT) {
6565 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.new_val));
6566 if (r->out.new_val) {
6567 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.new_val));
6569 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.new_mtime));
6570 if (r->out.new_mtime) {
6571 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->out.new_mtime));
6573 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.old_val));
6574 if (r->out.old_val) {
6575 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.old_val));
6577 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.old_mtime));
6578 if (r->out.old_mtime) {
6579 NDR_CHECK(ndr_push_NTTIME_hyper(ndr, NDR_SCALARS, *r->out.old_mtime));
6581 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6583 return NDR_ERR_SUCCESS;
6586 static enum ndr_err_code ndr_pull_lsa_QuerySecret(struct ndr_pull *ndr, int flags, struct lsa_QuerySecret *r)
6588 uint32_t _ptr_new_val;
6589 uint32_t _ptr_new_mtime;
6590 uint32_t _ptr_old_val;
6591 uint32_t _ptr_old_mtime;
6592 TALLOC_CTX *_mem_save_sec_handle_0;
6593 TALLOC_CTX *_mem_save_new_val_0;
6594 TALLOC_CTX *_mem_save_new_mtime_0;
6595 TALLOC_CTX *_mem_save_old_val_0;
6596 TALLOC_CTX *_mem_save_old_mtime_0;
6597 if (flags & NDR_IN) {
6598 ZERO_STRUCT(r->out);
6600 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6601 NDR_PULL_ALLOC(ndr, r->in.sec_handle);
6603 _mem_save_sec_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6604 NDR_PULL_SET_MEM_CTX(ndr, r->in.sec_handle, LIBNDR_FLAG_REF_ALLOC);
6605 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sec_handle));
6606 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sec_handle_0, LIBNDR_FLAG_REF_ALLOC);
6607 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
6609 NDR_PULL_ALLOC(ndr, r->in.new_val);
6611 r->in.new_val = NULL;
6613 if (r->in.new_val) {
6614 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
6615 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_val, 0);
6616 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.new_val));
6617 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
6619 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_mtime));
6620 if (_ptr_new_mtime) {
6621 NDR_PULL_ALLOC(ndr, r->in.new_mtime);
6623 r->in.new_mtime = NULL;
6625 if (r->in.new_mtime) {
6626 _mem_save_new_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
6627 NDR_PULL_SET_MEM_CTX(ndr, r->in.new_mtime, 0);
6628 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->in.new_mtime));
6629 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_mtime_0, 0);
6631 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
6633 NDR_PULL_ALLOC(ndr, r->in.old_val);
6635 r->in.old_val = NULL;
6637 if (r->in.old_val) {
6638 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
6639 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_val, 0);
6640 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.old_val));
6641 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
6643 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_mtime));
6644 if (_ptr_old_mtime) {
6645 NDR_PULL_ALLOC(ndr, r->in.old_mtime);
6647 r->in.old_mtime = NULL;
6649 if (r->in.old_mtime) {
6650 _mem_save_old_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
6651 NDR_PULL_SET_MEM_CTX(ndr, r->in.old_mtime, 0);
6652 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->in.old_mtime));
6653 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_mtime_0, 0);
6656 if (flags & NDR_OUT) {
6657 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_val));
6659 NDR_PULL_ALLOC(ndr, r->out.new_val);
6661 r->out.new_val = NULL;
6663 if (r->out.new_val) {
6664 _mem_save_new_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
6665 NDR_PULL_SET_MEM_CTX(ndr, r->out.new_val, 0);
6666 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.new_val));
6667 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_val_0, 0);
6669 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_new_mtime));
6670 if (_ptr_new_mtime) {
6671 NDR_PULL_ALLOC(ndr, r->out.new_mtime);
6673 r->out.new_mtime = NULL;
6675 if (r->out.new_mtime) {
6676 _mem_save_new_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
6677 NDR_PULL_SET_MEM_CTX(ndr, r->out.new_mtime, 0);
6678 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->out.new_mtime));
6679 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_new_mtime_0, 0);
6681 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_val));
6683 NDR_PULL_ALLOC(ndr, r->out.old_val);
6685 r->out.old_val = NULL;
6687 if (r->out.old_val) {
6688 _mem_save_old_val_0 = NDR_PULL_GET_MEM_CTX(ndr);
6689 NDR_PULL_SET_MEM_CTX(ndr, r->out.old_val, 0);
6690 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.old_val));
6691 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_val_0, 0);
6693 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_old_mtime));
6694 if (_ptr_old_mtime) {
6695 NDR_PULL_ALLOC(ndr, r->out.old_mtime);
6697 r->out.old_mtime = NULL;
6699 if (r->out.old_mtime) {
6700 _mem_save_old_mtime_0 = NDR_PULL_GET_MEM_CTX(ndr);
6701 NDR_PULL_SET_MEM_CTX(ndr, r->out.old_mtime, 0);
6702 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr, NDR_SCALARS, r->out.old_mtime));
6703 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_old_mtime_0, 0);
6705 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6707 return NDR_ERR_SUCCESS;
6710 _PUBLIC_ void ndr_print_lsa_QuerySecret(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QuerySecret *r)
6712 ndr_print_struct(ndr, name, "lsa_QuerySecret");
6714 if (flags & NDR_SET_VALUES) {
6715 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6717 if (flags & NDR_IN) {
6718 ndr_print_struct(ndr, "in", "lsa_QuerySecret");
6720 ndr_print_ptr(ndr, "sec_handle", r->in.sec_handle);
6722 ndr_print_policy_handle(ndr, "sec_handle", r->in.sec_handle);
6724 ndr_print_ptr(ndr, "new_val", r->in.new_val);
6726 if (r->in.new_val) {
6727 ndr_print_lsa_DATA_BUF_PTR(ndr, "new_val", r->in.new_val);
6730 ndr_print_ptr(ndr, "new_mtime", r->in.new_mtime);
6732 if (r->in.new_mtime) {
6733 ndr_print_NTTIME_hyper(ndr, "new_mtime", *r->in.new_mtime);
6736 ndr_print_ptr(ndr, "old_val", r->in.old_val);
6738 if (r->in.old_val) {
6739 ndr_print_lsa_DATA_BUF_PTR(ndr, "old_val", r->in.old_val);
6742 ndr_print_ptr(ndr, "old_mtime", r->in.old_mtime);
6744 if (r->in.old_mtime) {
6745 ndr_print_NTTIME_hyper(ndr, "old_mtime", *r->in.old_mtime);
6750 if (flags & NDR_OUT) {
6751 ndr_print_struct(ndr, "out", "lsa_QuerySecret");
6753 ndr_print_ptr(ndr, "new_val", r->out.new_val);
6755 if (r->out.new_val) {
6756 ndr_print_lsa_DATA_BUF_PTR(ndr, "new_val", r->out.new_val);
6759 ndr_print_ptr(ndr, "new_mtime", r->out.new_mtime);
6761 if (r->out.new_mtime) {
6762 ndr_print_NTTIME_hyper(ndr, "new_mtime", *r->out.new_mtime);
6765 ndr_print_ptr(ndr, "old_val", r->out.old_val);
6767 if (r->out.old_val) {
6768 ndr_print_lsa_DATA_BUF_PTR(ndr, "old_val", r->out.old_val);
6771 ndr_print_ptr(ndr, "old_mtime", r->out.old_mtime);
6773 if (r->out.old_mtime) {
6774 ndr_print_NTTIME_hyper(ndr, "old_mtime", *r->out.old_mtime);
6777 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6783 static enum ndr_err_code ndr_push_lsa_LookupPrivValue(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivValue *r)
6785 if (flags & NDR_IN) {
6786 if (r->in.handle == NULL) {
6787 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6789 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6790 if (r->in.name == NULL) {
6791 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6793 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6795 if (flags & NDR_OUT) {
6796 if (r->out.luid == NULL) {
6797 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6799 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, r->out.luid));
6800 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6802 return NDR_ERR_SUCCESS;
6805 static enum ndr_err_code ndr_pull_lsa_LookupPrivValue(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivValue *r)
6807 TALLOC_CTX *_mem_save_handle_0;
6808 TALLOC_CTX *_mem_save_name_0;
6809 TALLOC_CTX *_mem_save_luid_0;
6810 if (flags & NDR_IN) {
6811 ZERO_STRUCT(r->out);
6813 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6814 NDR_PULL_ALLOC(ndr, r->in.handle);
6816 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6817 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6818 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6819 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6820 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6821 NDR_PULL_ALLOC(ndr, r->in.name);
6823 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6824 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
6825 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6826 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
6827 NDR_PULL_ALLOC(ndr, r->out.luid);
6828 ZERO_STRUCTP(r->out.luid);
6830 if (flags & NDR_OUT) {
6831 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6832 NDR_PULL_ALLOC(ndr, r->out.luid);
6834 _mem_save_luid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6835 NDR_PULL_SET_MEM_CTX(ndr, r->out.luid, LIBNDR_FLAG_REF_ALLOC);
6836 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, r->out.luid));
6837 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_luid_0, LIBNDR_FLAG_REF_ALLOC);
6838 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6840 return NDR_ERR_SUCCESS;
6843 _PUBLIC_ void ndr_print_lsa_LookupPrivValue(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivValue *r)
6845 ndr_print_struct(ndr, name, "lsa_LookupPrivValue");
6847 if (flags & NDR_SET_VALUES) {
6848 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6850 if (flags & NDR_IN) {
6851 ndr_print_struct(ndr, "in", "lsa_LookupPrivValue");
6853 ndr_print_ptr(ndr, "handle", r->in.handle);
6855 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6857 ndr_print_ptr(ndr, "name", r->in.name);
6859 ndr_print_lsa_String(ndr, "name", r->in.name);
6863 if (flags & NDR_OUT) {
6864 ndr_print_struct(ndr, "out", "lsa_LookupPrivValue");
6866 ndr_print_ptr(ndr, "luid", r->out.luid);
6868 ndr_print_lsa_LUID(ndr, "luid", r->out.luid);
6870 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6876 static enum ndr_err_code ndr_push_lsa_LookupPrivName(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivName *r)
6878 if (flags & NDR_IN) {
6879 if (r->in.handle == NULL) {
6880 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6882 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6883 if (r->in.luid == NULL) {
6884 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6886 NDR_CHECK(ndr_push_lsa_LUID(ndr, NDR_SCALARS, r->in.luid));
6888 if (flags & NDR_OUT) {
6889 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.name));
6891 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.name));
6893 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
6895 return NDR_ERR_SUCCESS;
6898 static enum ndr_err_code ndr_pull_lsa_LookupPrivName(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivName *r)
6901 TALLOC_CTX *_mem_save_handle_0;
6902 TALLOC_CTX *_mem_save_luid_0;
6903 TALLOC_CTX *_mem_save_name_0;
6904 if (flags & NDR_IN) {
6905 ZERO_STRUCT(r->out);
6907 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6908 NDR_PULL_ALLOC(ndr, r->in.handle);
6910 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
6911 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
6912 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6913 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
6914 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
6915 NDR_PULL_ALLOC(ndr, r->in.luid);
6917 _mem_save_luid_0 = NDR_PULL_GET_MEM_CTX(ndr);
6918 NDR_PULL_SET_MEM_CTX(ndr, r->in.luid, LIBNDR_FLAG_REF_ALLOC);
6919 NDR_CHECK(ndr_pull_lsa_LUID(ndr, NDR_SCALARS, r->in.luid));
6920 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_luid_0, LIBNDR_FLAG_REF_ALLOC);
6922 if (flags & NDR_OUT) {
6923 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
6925 NDR_PULL_ALLOC(ndr, r->out.name);
6930 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
6931 NDR_PULL_SET_MEM_CTX(ndr, r->out.name, 0);
6932 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.name));
6933 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
6935 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
6937 return NDR_ERR_SUCCESS;
6940 _PUBLIC_ void ndr_print_lsa_LookupPrivName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivName *r)
6942 ndr_print_struct(ndr, name, "lsa_LookupPrivName");
6944 if (flags & NDR_SET_VALUES) {
6945 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
6947 if (flags & NDR_IN) {
6948 ndr_print_struct(ndr, "in", "lsa_LookupPrivName");
6950 ndr_print_ptr(ndr, "handle", r->in.handle);
6952 ndr_print_policy_handle(ndr, "handle", r->in.handle);
6954 ndr_print_ptr(ndr, "luid", r->in.luid);
6956 ndr_print_lsa_LUID(ndr, "luid", r->in.luid);
6960 if (flags & NDR_OUT) {
6961 ndr_print_struct(ndr, "out", "lsa_LookupPrivName");
6963 ndr_print_ptr(ndr, "name", r->out.name);
6966 ndr_print_lsa_StringLarge(ndr, "name", r->out.name);
6969 ndr_print_NTSTATUS(ndr, "result", r->out.result);
6975 static enum ndr_err_code ndr_push_lsa_LookupPrivDisplayName(struct ndr_push *ndr, int flags, const struct lsa_LookupPrivDisplayName *r)
6977 if (flags & NDR_IN) {
6978 if (r->in.handle == NULL) {
6979 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6981 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
6982 if (r->in.name == NULL) {
6983 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6985 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
6986 if (r->in.language_id == NULL) {
6987 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
6989 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->in.language_id));
6990 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.unknown));
6992 if (flags & NDR_OUT) {
6993 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.disp_name));
6994 if (r->out.disp_name) {
6995 NDR_CHECK(ndr_push_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.disp_name));
6997 if (r->out.language_id == NULL) {
6998 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7000 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, *r->out.language_id));
7001 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7003 return NDR_ERR_SUCCESS;
7006 static enum ndr_err_code ndr_pull_lsa_LookupPrivDisplayName(struct ndr_pull *ndr, int flags, struct lsa_LookupPrivDisplayName *r)
7008 uint32_t _ptr_disp_name;
7009 TALLOC_CTX *_mem_save_handle_0;
7010 TALLOC_CTX *_mem_save_name_0;
7011 TALLOC_CTX *_mem_save_disp_name_0;
7012 TALLOC_CTX *_mem_save_language_id_0;
7013 if (flags & NDR_IN) {
7014 ZERO_STRUCT(r->out);
7016 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7017 NDR_PULL_ALLOC(ndr, r->in.handle);
7019 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7020 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7021 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7022 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7023 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7024 NDR_PULL_ALLOC(ndr, r->in.name);
7026 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7027 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, LIBNDR_FLAG_REF_ALLOC);
7028 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7029 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, LIBNDR_FLAG_REF_ALLOC);
7030 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7031 NDR_PULL_ALLOC(ndr, r->in.language_id);
7033 _mem_save_language_id_0 = NDR_PULL_GET_MEM_CTX(ndr);
7034 NDR_PULL_SET_MEM_CTX(ndr, r->in.language_id, LIBNDR_FLAG_REF_ALLOC);
7035 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->in.language_id));
7036 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_language_id_0, LIBNDR_FLAG_REF_ALLOC);
7037 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.unknown));
7038 NDR_PULL_ALLOC(ndr, r->out.language_id);
7039 *r->out.language_id = *r->in.language_id;
7041 if (flags & NDR_OUT) {
7042 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_disp_name));
7043 if (_ptr_disp_name) {
7044 NDR_PULL_ALLOC(ndr, r->out.disp_name);
7046 r->out.disp_name = NULL;
7048 if (r->out.disp_name) {
7049 _mem_save_disp_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7050 NDR_PULL_SET_MEM_CTX(ndr, r->out.disp_name, 0);
7051 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.disp_name));
7052 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_disp_name_0, 0);
7054 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7055 NDR_PULL_ALLOC(ndr, r->out.language_id);
7057 _mem_save_language_id_0 = NDR_PULL_GET_MEM_CTX(ndr);
7058 NDR_PULL_SET_MEM_CTX(ndr, r->out.language_id, LIBNDR_FLAG_REF_ALLOC);
7059 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, r->out.language_id));
7060 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_language_id_0, LIBNDR_FLAG_REF_ALLOC);
7061 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7063 return NDR_ERR_SUCCESS;
7066 _PUBLIC_ void ndr_print_lsa_LookupPrivDisplayName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupPrivDisplayName *r)
7068 ndr_print_struct(ndr, name, "lsa_LookupPrivDisplayName");
7070 if (flags & NDR_SET_VALUES) {
7071 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7073 if (flags & NDR_IN) {
7074 ndr_print_struct(ndr, "in", "lsa_LookupPrivDisplayName");
7076 ndr_print_ptr(ndr, "handle", r->in.handle);
7078 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7080 ndr_print_ptr(ndr, "name", r->in.name);
7082 ndr_print_lsa_String(ndr, "name", r->in.name);
7084 ndr_print_ptr(ndr, "language_id", r->in.language_id);
7086 ndr_print_uint16(ndr, "language_id", *r->in.language_id);
7088 ndr_print_uint16(ndr, "unknown", r->in.unknown);
7091 if (flags & NDR_OUT) {
7092 ndr_print_struct(ndr, "out", "lsa_LookupPrivDisplayName");
7094 ndr_print_ptr(ndr, "disp_name", r->out.disp_name);
7096 if (r->out.disp_name) {
7097 ndr_print_lsa_StringLarge(ndr, "disp_name", r->out.disp_name);
7100 ndr_print_ptr(ndr, "language_id", r->out.language_id);
7102 ndr_print_uint16(ndr, "language_id", *r->out.language_id);
7104 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7110 static enum ndr_err_code ndr_push_lsa_DeleteObject(struct ndr_push *ndr, int flags, const struct lsa_DeleteObject *r)
7112 if (flags & NDR_IN) {
7114 if (flags & NDR_OUT) {
7115 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7117 return NDR_ERR_SUCCESS;
7120 static enum ndr_err_code ndr_pull_lsa_DeleteObject(struct ndr_pull *ndr, int flags, struct lsa_DeleteObject *r)
7122 if (flags & NDR_IN) {
7124 if (flags & NDR_OUT) {
7125 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7127 return NDR_ERR_SUCCESS;
7130 _PUBLIC_ void ndr_print_lsa_DeleteObject(struct ndr_print *ndr, const char *name, int flags, const struct lsa_DeleteObject *r)
7132 ndr_print_struct(ndr, name, "lsa_DeleteObject");
7134 if (flags & NDR_SET_VALUES) {
7135 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7137 if (flags & NDR_IN) {
7138 ndr_print_struct(ndr, "in", "lsa_DeleteObject");
7142 if (flags & NDR_OUT) {
7143 ndr_print_struct(ndr, "out", "lsa_DeleteObject");
7145 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7151 static enum ndr_err_code ndr_push_lsa_EnumAccountsWithUserRight(struct ndr_push *ndr, int flags, const struct lsa_EnumAccountsWithUserRight *r)
7153 if (flags & NDR_IN) {
7154 if (r->in.handle == NULL) {
7155 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7157 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7158 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.name));
7160 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7163 if (flags & NDR_OUT) {
7164 if (r->out.sids == NULL) {
7165 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7167 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
7168 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7170 return NDR_ERR_SUCCESS;
7173 static enum ndr_err_code ndr_pull_lsa_EnumAccountsWithUserRight(struct ndr_pull *ndr, int flags, struct lsa_EnumAccountsWithUserRight *r)
7176 TALLOC_CTX *_mem_save_handle_0;
7177 TALLOC_CTX *_mem_save_name_0;
7178 TALLOC_CTX *_mem_save_sids_0;
7179 if (flags & NDR_IN) {
7180 ZERO_STRUCT(r->out);
7182 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7183 NDR_PULL_ALLOC(ndr, r->in.handle);
7185 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7186 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7187 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7188 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7189 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_name));
7191 NDR_PULL_ALLOC(ndr, r->in.name);
7196 _mem_save_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7197 NDR_PULL_SET_MEM_CTX(ndr, r->in.name, 0);
7198 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.name));
7199 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_name_0, 0);
7201 NDR_PULL_ALLOC(ndr, r->out.sids);
7202 ZERO_STRUCTP(r->out.sids);
7204 if (flags & NDR_OUT) {
7205 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7206 NDR_PULL_ALLOC(ndr, r->out.sids);
7208 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
7209 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
7210 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
7211 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
7212 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7214 return NDR_ERR_SUCCESS;
7217 _PUBLIC_ void ndr_print_lsa_EnumAccountsWithUserRight(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccountsWithUserRight *r)
7219 ndr_print_struct(ndr, name, "lsa_EnumAccountsWithUserRight");
7221 if (flags & NDR_SET_VALUES) {
7222 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7224 if (flags & NDR_IN) {
7225 ndr_print_struct(ndr, "in", "lsa_EnumAccountsWithUserRight");
7227 ndr_print_ptr(ndr, "handle", r->in.handle);
7229 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7231 ndr_print_ptr(ndr, "name", r->in.name);
7234 ndr_print_lsa_String(ndr, "name", r->in.name);
7239 if (flags & NDR_OUT) {
7240 ndr_print_struct(ndr, "out", "lsa_EnumAccountsWithUserRight");
7242 ndr_print_ptr(ndr, "sids", r->out.sids);
7244 ndr_print_lsa_SidArray(ndr, "sids", r->out.sids);
7246 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7252 static enum ndr_err_code ndr_push_lsa_EnumAccountRights(struct ndr_push *ndr, int flags, const struct lsa_EnumAccountRights *r)
7254 if (flags & NDR_IN) {
7255 if (r->in.handle == NULL) {
7256 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7258 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7259 if (r->in.sid == NULL) {
7260 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7262 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7264 if (flags & NDR_OUT) {
7265 if (r->out.rights == NULL) {
7266 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7268 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rights));
7269 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7271 return NDR_ERR_SUCCESS;
7274 static enum ndr_err_code ndr_pull_lsa_EnumAccountRights(struct ndr_pull *ndr, int flags, struct lsa_EnumAccountRights *r)
7276 TALLOC_CTX *_mem_save_handle_0;
7277 TALLOC_CTX *_mem_save_sid_0;
7278 TALLOC_CTX *_mem_save_rights_0;
7279 if (flags & NDR_IN) {
7280 ZERO_STRUCT(r->out);
7282 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7283 NDR_PULL_ALLOC(ndr, r->in.handle);
7285 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7286 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7287 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7288 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7289 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7290 NDR_PULL_ALLOC(ndr, r->in.sid);
7292 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7293 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
7294 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7295 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
7296 NDR_PULL_ALLOC(ndr, r->out.rights);
7297 ZERO_STRUCTP(r->out.rights);
7299 if (flags & NDR_OUT) {
7300 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7301 NDR_PULL_ALLOC(ndr, r->out.rights);
7303 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
7304 NDR_PULL_SET_MEM_CTX(ndr, r->out.rights, LIBNDR_FLAG_REF_ALLOC);
7305 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.rights));
7306 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
7307 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7309 return NDR_ERR_SUCCESS;
7312 _PUBLIC_ void ndr_print_lsa_EnumAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumAccountRights *r)
7314 ndr_print_struct(ndr, name, "lsa_EnumAccountRights");
7316 if (flags & NDR_SET_VALUES) {
7317 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7319 if (flags & NDR_IN) {
7320 ndr_print_struct(ndr, "in", "lsa_EnumAccountRights");
7322 ndr_print_ptr(ndr, "handle", r->in.handle);
7324 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7326 ndr_print_ptr(ndr, "sid", r->in.sid);
7328 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
7332 if (flags & NDR_OUT) {
7333 ndr_print_struct(ndr, "out", "lsa_EnumAccountRights");
7335 ndr_print_ptr(ndr, "rights", r->out.rights);
7337 ndr_print_lsa_RightSet(ndr, "rights", r->out.rights);
7339 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7345 static enum ndr_err_code ndr_push_lsa_AddAccountRights(struct ndr_push *ndr, int flags, const struct lsa_AddAccountRights *r)
7347 if (flags & NDR_IN) {
7348 if (r->in.handle == NULL) {
7349 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7351 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7352 if (r->in.sid == NULL) {
7353 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7355 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7356 if (r->in.rights == NULL) {
7357 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7359 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
7361 if (flags & NDR_OUT) {
7362 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7364 return NDR_ERR_SUCCESS;
7367 static enum ndr_err_code ndr_pull_lsa_AddAccountRights(struct ndr_pull *ndr, int flags, struct lsa_AddAccountRights *r)
7369 TALLOC_CTX *_mem_save_handle_0;
7370 TALLOC_CTX *_mem_save_sid_0;
7371 TALLOC_CTX *_mem_save_rights_0;
7372 if (flags & NDR_IN) {
7373 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7374 NDR_PULL_ALLOC(ndr, r->in.handle);
7376 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7377 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7378 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7379 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7380 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7381 NDR_PULL_ALLOC(ndr, r->in.sid);
7383 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7384 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
7385 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7386 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
7387 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7388 NDR_PULL_ALLOC(ndr, r->in.rights);
7390 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
7391 NDR_PULL_SET_MEM_CTX(ndr, r->in.rights, LIBNDR_FLAG_REF_ALLOC);
7392 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
7393 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
7395 if (flags & NDR_OUT) {
7396 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7398 return NDR_ERR_SUCCESS;
7401 _PUBLIC_ void ndr_print_lsa_AddAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_AddAccountRights *r)
7403 ndr_print_struct(ndr, name, "lsa_AddAccountRights");
7405 if (flags & NDR_SET_VALUES) {
7406 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7408 if (flags & NDR_IN) {
7409 ndr_print_struct(ndr, "in", "lsa_AddAccountRights");
7411 ndr_print_ptr(ndr, "handle", r->in.handle);
7413 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7415 ndr_print_ptr(ndr, "sid", r->in.sid);
7417 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
7419 ndr_print_ptr(ndr, "rights", r->in.rights);
7421 ndr_print_lsa_RightSet(ndr, "rights", r->in.rights);
7425 if (flags & NDR_OUT) {
7426 ndr_print_struct(ndr, "out", "lsa_AddAccountRights");
7428 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7434 static enum ndr_err_code ndr_push_lsa_RemoveAccountRights(struct ndr_push *ndr, int flags, const struct lsa_RemoveAccountRights *r)
7436 if (flags & NDR_IN) {
7437 if (r->in.handle == NULL) {
7438 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7440 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7441 if (r->in.sid == NULL) {
7442 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7444 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7445 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown));
7446 if (r->in.rights == NULL) {
7447 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7449 NDR_CHECK(ndr_push_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
7451 if (flags & NDR_OUT) {
7452 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7454 return NDR_ERR_SUCCESS;
7457 static enum ndr_err_code ndr_pull_lsa_RemoveAccountRights(struct ndr_pull *ndr, int flags, struct lsa_RemoveAccountRights *r)
7459 TALLOC_CTX *_mem_save_handle_0;
7460 TALLOC_CTX *_mem_save_sid_0;
7461 TALLOC_CTX *_mem_save_rights_0;
7462 if (flags & NDR_IN) {
7463 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7464 NDR_PULL_ALLOC(ndr, r->in.handle);
7466 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7467 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7468 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7469 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7470 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7471 NDR_PULL_ALLOC(ndr, r->in.sid);
7473 _mem_save_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7474 NDR_PULL_SET_MEM_CTX(ndr, r->in.sid, LIBNDR_FLAG_REF_ALLOC);
7475 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sid));
7476 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sid_0, LIBNDR_FLAG_REF_ALLOC);
7477 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown));
7478 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7479 NDR_PULL_ALLOC(ndr, r->in.rights);
7481 _mem_save_rights_0 = NDR_PULL_GET_MEM_CTX(ndr);
7482 NDR_PULL_SET_MEM_CTX(ndr, r->in.rights, LIBNDR_FLAG_REF_ALLOC);
7483 NDR_CHECK(ndr_pull_lsa_RightSet(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.rights));
7484 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_rights_0, LIBNDR_FLAG_REF_ALLOC);
7486 if (flags & NDR_OUT) {
7487 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7489 return NDR_ERR_SUCCESS;
7492 _PUBLIC_ void ndr_print_lsa_RemoveAccountRights(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RemoveAccountRights *r)
7494 ndr_print_struct(ndr, name, "lsa_RemoveAccountRights");
7496 if (flags & NDR_SET_VALUES) {
7497 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7499 if (flags & NDR_IN) {
7500 ndr_print_struct(ndr, "in", "lsa_RemoveAccountRights");
7502 ndr_print_ptr(ndr, "handle", r->in.handle);
7504 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7506 ndr_print_ptr(ndr, "sid", r->in.sid);
7508 ndr_print_dom_sid2(ndr, "sid", r->in.sid);
7510 ndr_print_uint32(ndr, "unknown", r->in.unknown);
7511 ndr_print_ptr(ndr, "rights", r->in.rights);
7513 ndr_print_lsa_RightSet(ndr, "rights", r->in.rights);
7517 if (flags & NDR_OUT) {
7518 ndr_print_struct(ndr, "out", "lsa_RemoveAccountRights");
7520 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7526 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfoBySid(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfoBySid *r)
7528 if (flags & NDR_IN) {
7529 if (r->in.handle == NULL) {
7530 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7532 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7533 if (r->in.dom_sid == NULL) {
7534 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7536 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
7537 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
7539 if (flags & NDR_OUT) {
7540 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
7542 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
7543 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
7545 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7547 return NDR_ERR_SUCCESS;
7550 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfoBySid(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfoBySid *r)
7553 TALLOC_CTX *_mem_save_handle_0;
7554 TALLOC_CTX *_mem_save_dom_sid_0;
7555 TALLOC_CTX *_mem_save_info_0;
7556 if (flags & NDR_IN) {
7557 ZERO_STRUCT(r->out);
7559 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7560 NDR_PULL_ALLOC(ndr, r->in.handle);
7562 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7563 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7564 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7565 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7566 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7567 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
7569 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7570 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
7571 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
7572 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
7573 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
7575 if (flags & NDR_OUT) {
7576 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
7578 NDR_PULL_ALLOC(ndr, r->out.info);
7583 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
7584 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
7585 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
7586 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
7587 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
7589 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7591 return NDR_ERR_SUCCESS;
7594 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfoBySid(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfoBySid *r)
7596 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfoBySid");
7598 if (flags & NDR_SET_VALUES) {
7599 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7601 if (flags & NDR_IN) {
7602 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfoBySid");
7604 ndr_print_ptr(ndr, "handle", r->in.handle);
7606 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7608 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
7610 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
7612 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
7615 if (flags & NDR_OUT) {
7616 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfoBySid");
7618 ndr_print_ptr(ndr, "info", r->out.info);
7621 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
7622 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->out.info);
7625 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7631 static enum ndr_err_code ndr_push_lsa_SetTrustedDomainInfo(struct ndr_push *ndr, int flags, const struct lsa_SetTrustedDomainInfo *r)
7633 if (flags & NDR_IN) {
7635 if (flags & NDR_OUT) {
7636 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7638 return NDR_ERR_SUCCESS;
7641 static enum ndr_err_code ndr_pull_lsa_SetTrustedDomainInfo(struct ndr_pull *ndr, int flags, struct lsa_SetTrustedDomainInfo *r)
7643 if (flags & NDR_IN) {
7645 if (flags & NDR_OUT) {
7646 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7648 return NDR_ERR_SUCCESS;
7651 _PUBLIC_ void ndr_print_lsa_SetTrustedDomainInfo(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetTrustedDomainInfo *r)
7653 ndr_print_struct(ndr, name, "lsa_SetTrustedDomainInfo");
7655 if (flags & NDR_SET_VALUES) {
7656 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7658 if (flags & NDR_IN) {
7659 ndr_print_struct(ndr, "in", "lsa_SetTrustedDomainInfo");
7663 if (flags & NDR_OUT) {
7664 ndr_print_struct(ndr, "out", "lsa_SetTrustedDomainInfo");
7666 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7672 static enum ndr_err_code ndr_push_lsa_DeleteTrustedDomain(struct ndr_push *ndr, int flags, const struct lsa_DeleteTrustedDomain *r)
7674 if (flags & NDR_IN) {
7675 if (r->in.handle == NULL) {
7676 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7678 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7679 if (r->in.dom_sid == NULL) {
7680 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7682 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
7684 if (flags & NDR_OUT) {
7685 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7687 return NDR_ERR_SUCCESS;
7690 static enum ndr_err_code ndr_pull_lsa_DeleteTrustedDomain(struct ndr_pull *ndr, int flags, struct lsa_DeleteTrustedDomain *r)
7692 TALLOC_CTX *_mem_save_handle_0;
7693 TALLOC_CTX *_mem_save_dom_sid_0;
7694 if (flags & NDR_IN) {
7695 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7696 NDR_PULL_ALLOC(ndr, r->in.handle);
7698 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7699 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
7700 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
7701 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7702 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7703 NDR_PULL_ALLOC(ndr, r->in.dom_sid);
7705 _mem_save_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
7706 NDR_PULL_SET_MEM_CTX(ndr, r->in.dom_sid, LIBNDR_FLAG_REF_ALLOC);
7707 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.dom_sid));
7708 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_dom_sid_0, LIBNDR_FLAG_REF_ALLOC);
7710 if (flags & NDR_OUT) {
7711 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7713 return NDR_ERR_SUCCESS;
7716 _PUBLIC_ void ndr_print_lsa_DeleteTrustedDomain(struct ndr_print *ndr, const char *name, int flags, const struct lsa_DeleteTrustedDomain *r)
7718 ndr_print_struct(ndr, name, "lsa_DeleteTrustedDomain");
7720 if (flags & NDR_SET_VALUES) {
7721 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7723 if (flags & NDR_IN) {
7724 ndr_print_struct(ndr, "in", "lsa_DeleteTrustedDomain");
7726 ndr_print_ptr(ndr, "handle", r->in.handle);
7728 ndr_print_policy_handle(ndr, "handle", r->in.handle);
7730 ndr_print_ptr(ndr, "dom_sid", r->in.dom_sid);
7732 ndr_print_dom_sid2(ndr, "dom_sid", r->in.dom_sid);
7736 if (flags & NDR_OUT) {
7737 ndr_print_struct(ndr, "out", "lsa_DeleteTrustedDomain");
7739 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7745 static enum ndr_err_code ndr_push_lsa_StorePrivateData(struct ndr_push *ndr, int flags, const struct lsa_StorePrivateData *r)
7747 if (flags & NDR_IN) {
7749 if (flags & NDR_OUT) {
7750 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7752 return NDR_ERR_SUCCESS;
7755 static enum ndr_err_code ndr_pull_lsa_StorePrivateData(struct ndr_pull *ndr, int flags, struct lsa_StorePrivateData *r)
7757 if (flags & NDR_IN) {
7759 if (flags & NDR_OUT) {
7760 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7762 return NDR_ERR_SUCCESS;
7765 _PUBLIC_ void ndr_print_lsa_StorePrivateData(struct ndr_print *ndr, const char *name, int flags, const struct lsa_StorePrivateData *r)
7767 ndr_print_struct(ndr, name, "lsa_StorePrivateData");
7769 if (flags & NDR_SET_VALUES) {
7770 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7772 if (flags & NDR_IN) {
7773 ndr_print_struct(ndr, "in", "lsa_StorePrivateData");
7777 if (flags & NDR_OUT) {
7778 ndr_print_struct(ndr, "out", "lsa_StorePrivateData");
7780 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7786 static enum ndr_err_code ndr_push_lsa_RetrievePrivateData(struct ndr_push *ndr, int flags, const struct lsa_RetrievePrivateData *r)
7788 if (flags & NDR_IN) {
7790 if (flags & NDR_OUT) {
7791 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7793 return NDR_ERR_SUCCESS;
7796 static enum ndr_err_code ndr_pull_lsa_RetrievePrivateData(struct ndr_pull *ndr, int flags, struct lsa_RetrievePrivateData *r)
7798 if (flags & NDR_IN) {
7800 if (flags & NDR_OUT) {
7801 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7803 return NDR_ERR_SUCCESS;
7806 _PUBLIC_ void ndr_print_lsa_RetrievePrivateData(struct ndr_print *ndr, const char *name, int flags, const struct lsa_RetrievePrivateData *r)
7808 ndr_print_struct(ndr, name, "lsa_RetrievePrivateData");
7810 if (flags & NDR_SET_VALUES) {
7811 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7813 if (flags & NDR_IN) {
7814 ndr_print_struct(ndr, "in", "lsa_RetrievePrivateData");
7818 if (flags & NDR_OUT) {
7819 ndr_print_struct(ndr, "out", "lsa_RetrievePrivateData");
7821 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7827 static enum ndr_err_code ndr_push_lsa_OpenPolicy2(struct ndr_push *ndr, int flags, const struct lsa_OpenPolicy2 *r)
7829 if (flags & NDR_IN) {
7830 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
7831 if (r->in.system_name) {
7832 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
7833 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
7834 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
7835 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));
7837 if (r->in.attr == NULL) {
7838 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7840 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
7841 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
7843 if (flags & NDR_OUT) {
7844 if (r->out.handle == NULL) {
7845 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
7847 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
7848 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7850 return NDR_ERR_SUCCESS;
7853 static enum ndr_err_code ndr_pull_lsa_OpenPolicy2(struct ndr_pull *ndr, int flags, struct lsa_OpenPolicy2 *r)
7855 uint32_t _ptr_system_name;
7856 TALLOC_CTX *_mem_save_system_name_0;
7857 TALLOC_CTX *_mem_save_attr_0;
7858 TALLOC_CTX *_mem_save_handle_0;
7859 if (flags & NDR_IN) {
7860 ZERO_STRUCT(r->out);
7862 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
7863 if (_ptr_system_name) {
7864 NDR_PULL_ALLOC(ndr, r->in.system_name);
7866 r->in.system_name = NULL;
7868 if (r->in.system_name) {
7869 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7870 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
7871 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
7872 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
7873 if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
7874 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));
7876 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
7877 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));
7878 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
7880 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7881 NDR_PULL_ALLOC(ndr, r->in.attr);
7883 _mem_save_attr_0 = NDR_PULL_GET_MEM_CTX(ndr);
7884 NDR_PULL_SET_MEM_CTX(ndr, r->in.attr, LIBNDR_FLAG_REF_ALLOC);
7885 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.attr));
7886 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_attr_0, LIBNDR_FLAG_REF_ALLOC);
7887 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
7888 NDR_PULL_ALLOC(ndr, r->out.handle);
7889 ZERO_STRUCTP(r->out.handle);
7891 if (flags & NDR_OUT) {
7892 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
7893 NDR_PULL_ALLOC(ndr, r->out.handle);
7895 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
7896 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
7897 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
7898 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
7899 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
7901 return NDR_ERR_SUCCESS;
7904 _PUBLIC_ void ndr_print_lsa_OpenPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenPolicy2 *r)
7906 ndr_print_struct(ndr, name, "lsa_OpenPolicy2");
7908 if (flags & NDR_SET_VALUES) {
7909 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
7911 if (flags & NDR_IN) {
7912 ndr_print_struct(ndr, "in", "lsa_OpenPolicy2");
7914 ndr_print_ptr(ndr, "system_name", r->in.system_name);
7916 if (r->in.system_name) {
7917 ndr_print_string(ndr, "system_name", r->in.system_name);
7920 ndr_print_ptr(ndr, "attr", r->in.attr);
7922 ndr_print_lsa_ObjectAttribute(ndr, "attr", r->in.attr);
7924 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
7927 if (flags & NDR_OUT) {
7928 ndr_print_struct(ndr, "out", "lsa_OpenPolicy2");
7930 ndr_print_ptr(ndr, "handle", r->out.handle);
7932 ndr_print_policy_handle(ndr, "handle", r->out.handle);
7934 ndr_print_NTSTATUS(ndr, "result", r->out.result);
7940 static enum ndr_err_code ndr_push_lsa_GetUserName(struct ndr_push *ndr, int flags, const struct lsa_GetUserName *r)
7942 if (flags & NDR_IN) {
7943 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.system_name));
7944 if (r->in.system_name) {
7945 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
7946 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
7947 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, ndr_charset_length(r->in.system_name, CH_UTF16)));
7948 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));
7950 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.account_name));
7951 if (r->in.account_name) {
7952 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
7954 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.authority_name));
7955 if (r->in.authority_name) {
7956 NDR_CHECK(ndr_push_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.authority_name));
7959 if (flags & NDR_OUT) {
7960 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.account_name));
7961 if (r->out.account_name) {
7962 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.account_name));
7964 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.authority_name));
7965 if (r->out.authority_name) {
7966 NDR_CHECK(ndr_push_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.authority_name));
7968 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
7970 return NDR_ERR_SUCCESS;
7973 static enum ndr_err_code ndr_pull_lsa_GetUserName(struct ndr_pull *ndr, int flags, struct lsa_GetUserName *r)
7975 uint32_t _ptr_system_name;
7976 uint32_t _ptr_account_name;
7977 uint32_t _ptr_authority_name;
7978 TALLOC_CTX *_mem_save_system_name_0;
7979 TALLOC_CTX *_mem_save_account_name_0;
7980 TALLOC_CTX *_mem_save_authority_name_0;
7981 if (flags & NDR_IN) {
7982 ZERO_STRUCT(r->out);
7984 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_system_name));
7985 if (_ptr_system_name) {
7986 NDR_PULL_ALLOC(ndr, r->in.system_name);
7988 r->in.system_name = NULL;
7990 if (r->in.system_name) {
7991 _mem_save_system_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
7992 NDR_PULL_SET_MEM_CTX(ndr, r->in.system_name, 0);
7993 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.system_name));
7994 NDR_CHECK(ndr_pull_array_length(ndr, &r->in.system_name));
7995 if (ndr_get_array_length(ndr, &r->in.system_name) > ndr_get_array_size(ndr, &r->in.system_name)) {
7996 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));
7998 NDR_CHECK(ndr_check_string_terminator(ndr, ndr_get_array_length(ndr, &r->in.system_name), sizeof(uint16_t)));
7999 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));
8000 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_system_name_0, 0);
8002 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
8003 if (_ptr_account_name) {
8004 NDR_PULL_ALLOC(ndr, r->in.account_name);
8006 r->in.account_name = NULL;
8008 if (r->in.account_name) {
8009 _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8010 NDR_PULL_SET_MEM_CTX(ndr, r->in.account_name, 0);
8011 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.account_name));
8012 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, 0);
8014 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
8015 if (_ptr_authority_name) {
8016 NDR_PULL_ALLOC(ndr, r->in.authority_name);
8018 r->in.authority_name = NULL;
8020 if (r->in.authority_name) {
8021 _mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8022 NDR_PULL_SET_MEM_CTX(ndr, r->in.authority_name, 0);
8023 NDR_CHECK(ndr_pull_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.authority_name));
8024 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
8027 if (flags & NDR_OUT) {
8028 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_account_name));
8029 if (_ptr_account_name) {
8030 NDR_PULL_ALLOC(ndr, r->out.account_name);
8032 r->out.account_name = NULL;
8034 if (r->out.account_name) {
8035 _mem_save_account_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8036 NDR_PULL_SET_MEM_CTX(ndr, r->out.account_name, 0);
8037 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.account_name));
8038 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_account_name_0, 0);
8040 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_authority_name));
8041 if (_ptr_authority_name) {
8042 NDR_PULL_ALLOC(ndr, r->out.authority_name);
8044 r->out.authority_name = NULL;
8046 if (r->out.authority_name) {
8047 _mem_save_authority_name_0 = NDR_PULL_GET_MEM_CTX(ndr);
8048 NDR_PULL_SET_MEM_CTX(ndr, r->out.authority_name, 0);
8049 NDR_CHECK(ndr_pull_lsa_StringPointer(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.authority_name));
8050 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_authority_name_0, 0);
8052 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8054 return NDR_ERR_SUCCESS;
8057 _PUBLIC_ void ndr_print_lsa_GetUserName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_GetUserName *r)
8059 ndr_print_struct(ndr, name, "lsa_GetUserName");
8061 if (flags & NDR_SET_VALUES) {
8062 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8064 if (flags & NDR_IN) {
8065 ndr_print_struct(ndr, "in", "lsa_GetUserName");
8067 ndr_print_ptr(ndr, "system_name", r->in.system_name);
8069 if (r->in.system_name) {
8070 ndr_print_string(ndr, "system_name", r->in.system_name);
8073 ndr_print_ptr(ndr, "account_name", r->in.account_name);
8075 if (r->in.account_name) {
8076 ndr_print_lsa_String(ndr, "account_name", r->in.account_name);
8079 ndr_print_ptr(ndr, "authority_name", r->in.authority_name);
8081 if (r->in.authority_name) {
8082 ndr_print_lsa_StringPointer(ndr, "authority_name", r->in.authority_name);
8087 if (flags & NDR_OUT) {
8088 ndr_print_struct(ndr, "out", "lsa_GetUserName");
8090 ndr_print_ptr(ndr, "account_name", r->out.account_name);
8092 if (r->out.account_name) {
8093 ndr_print_lsa_String(ndr, "account_name", r->out.account_name);
8096 ndr_print_ptr(ndr, "authority_name", r->out.authority_name);
8098 if (r->out.authority_name) {
8099 ndr_print_lsa_StringPointer(ndr, "authority_name", r->out.authority_name);
8102 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8108 static enum ndr_err_code ndr_push_lsa_QueryInfoPolicy2(struct ndr_push *ndr, int flags, const struct lsa_QueryInfoPolicy2 *r)
8110 if (flags & NDR_IN) {
8111 if (r->in.handle == NULL) {
8112 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8114 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8115 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
8117 if (flags & NDR_OUT) {
8118 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
8120 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
8121 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8123 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8125 return NDR_ERR_SUCCESS;
8128 static enum ndr_err_code ndr_pull_lsa_QueryInfoPolicy2(struct ndr_pull *ndr, int flags, struct lsa_QueryInfoPolicy2 *r)
8131 TALLOC_CTX *_mem_save_handle_0;
8132 TALLOC_CTX *_mem_save_info_0;
8133 if (flags & NDR_IN) {
8134 ZERO_STRUCT(r->out);
8136 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8137 NDR_PULL_ALLOC(ndr, r->in.handle);
8139 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8140 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8141 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8142 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8143 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
8145 if (flags & NDR_OUT) {
8146 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8148 NDR_PULL_ALLOC(ndr, r->out.info);
8153 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8154 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
8155 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
8156 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8157 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
8159 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8161 return NDR_ERR_SUCCESS;
8164 _PUBLIC_ void ndr_print_lsa_QueryInfoPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryInfoPolicy2 *r)
8166 ndr_print_struct(ndr, name, "lsa_QueryInfoPolicy2");
8168 if (flags & NDR_SET_VALUES) {
8169 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8171 if (flags & NDR_IN) {
8172 ndr_print_struct(ndr, "in", "lsa_QueryInfoPolicy2");
8174 ndr_print_ptr(ndr, "handle", r->in.handle);
8176 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8178 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
8181 if (flags & NDR_OUT) {
8182 ndr_print_struct(ndr, "out", "lsa_QueryInfoPolicy2");
8184 ndr_print_ptr(ndr, "info", r->out.info);
8187 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
8188 ndr_print_lsa_PolicyInformation(ndr, "info", r->out.info);
8191 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8197 static enum ndr_err_code ndr_push_lsa_SetInfoPolicy2(struct ndr_push *ndr, int flags, const struct lsa_SetInfoPolicy2 *r)
8199 if (flags & NDR_IN) {
8200 if (r->in.handle == NULL) {
8201 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8203 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8204 NDR_CHECK(ndr_push_lsa_PolicyInfo(ndr, NDR_SCALARS, r->in.level));
8205 if (r->in.info == NULL) {
8206 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8208 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
8209 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8211 if (flags & NDR_OUT) {
8212 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8214 return NDR_ERR_SUCCESS;
8217 static enum ndr_err_code ndr_pull_lsa_SetInfoPolicy2(struct ndr_pull *ndr, int flags, struct lsa_SetInfoPolicy2 *r)
8219 TALLOC_CTX *_mem_save_handle_0;
8220 TALLOC_CTX *_mem_save_info_0;
8221 if (flags & NDR_IN) {
8222 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8223 NDR_PULL_ALLOC(ndr, r->in.handle);
8225 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8226 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8227 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8228 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8229 NDR_CHECK(ndr_pull_lsa_PolicyInfo(ndr, NDR_SCALARS, &r->in.level));
8230 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8231 NDR_PULL_ALLOC(ndr, r->in.info);
8233 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8234 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, LIBNDR_FLAG_REF_ALLOC);
8235 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
8236 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8237 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, LIBNDR_FLAG_REF_ALLOC);
8239 if (flags & NDR_OUT) {
8240 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8242 return NDR_ERR_SUCCESS;
8245 _PUBLIC_ void ndr_print_lsa_SetInfoPolicy2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetInfoPolicy2 *r)
8247 ndr_print_struct(ndr, name, "lsa_SetInfoPolicy2");
8249 if (flags & NDR_SET_VALUES) {
8250 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8252 if (flags & NDR_IN) {
8253 ndr_print_struct(ndr, "in", "lsa_SetInfoPolicy2");
8255 ndr_print_ptr(ndr, "handle", r->in.handle);
8257 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8259 ndr_print_lsa_PolicyInfo(ndr, "level", r->in.level);
8260 ndr_print_ptr(ndr, "info", r->in.info);
8262 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
8263 ndr_print_lsa_PolicyInformation(ndr, "info", r->in.info);
8267 if (flags & NDR_OUT) {
8268 ndr_print_struct(ndr, "out", "lsa_SetInfoPolicy2");
8270 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8276 static enum ndr_err_code ndr_push_lsa_QueryTrustedDomainInfoByName(struct ndr_push *ndr, int flags, const struct lsa_QueryTrustedDomainInfoByName *r)
8278 if (flags & NDR_IN) {
8279 if (r->in.handle == NULL) {
8280 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8282 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8283 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
8284 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
8286 if (flags & NDR_OUT) {
8287 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
8289 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
8290 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8292 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8294 return NDR_ERR_SUCCESS;
8297 static enum ndr_err_code ndr_pull_lsa_QueryTrustedDomainInfoByName(struct ndr_pull *ndr, int flags, struct lsa_QueryTrustedDomainInfoByName *r)
8300 TALLOC_CTX *_mem_save_handle_0;
8301 TALLOC_CTX *_mem_save_info_0;
8302 if (flags & NDR_IN) {
8303 ZERO_STRUCT(r->out);
8305 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8306 NDR_PULL_ALLOC(ndr, r->in.handle);
8308 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8309 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8310 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8311 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8312 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
8313 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8315 if (flags & NDR_OUT) {
8316 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8318 NDR_PULL_ALLOC(ndr, r->out.info);
8323 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8324 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
8325 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
8326 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8327 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
8329 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8331 return NDR_ERR_SUCCESS;
8334 _PUBLIC_ void ndr_print_lsa_QueryTrustedDomainInfoByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryTrustedDomainInfoByName *r)
8336 ndr_print_struct(ndr, name, "lsa_QueryTrustedDomainInfoByName");
8338 if (flags & NDR_SET_VALUES) {
8339 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8341 if (flags & NDR_IN) {
8342 ndr_print_struct(ndr, "in", "lsa_QueryTrustedDomainInfoByName");
8344 ndr_print_ptr(ndr, "handle", r->in.handle);
8346 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8348 ndr_print_lsa_String(ndr, "trusted_domain", &r->in.trusted_domain);
8349 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
8352 if (flags & NDR_OUT) {
8353 ndr_print_struct(ndr, "out", "lsa_QueryTrustedDomainInfoByName");
8355 ndr_print_ptr(ndr, "info", r->out.info);
8358 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
8359 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->out.info);
8362 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8368 static enum ndr_err_code ndr_push_lsa_SetTrustedDomainInfoByName(struct ndr_push *ndr, int flags, const struct lsa_SetTrustedDomainInfoByName *r)
8370 if (flags & NDR_IN) {
8371 if (r->in.handle == NULL) {
8372 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8374 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8375 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
8376 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, r->in.level));
8377 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
8379 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
8380 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8383 if (flags & NDR_OUT) {
8384 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8386 return NDR_ERR_SUCCESS;
8389 static enum ndr_err_code ndr_pull_lsa_SetTrustedDomainInfoByName(struct ndr_pull *ndr, int flags, struct lsa_SetTrustedDomainInfoByName *r)
8392 TALLOC_CTX *_mem_save_handle_0;
8393 TALLOC_CTX *_mem_save_info_0;
8394 if (flags & NDR_IN) {
8395 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8396 NDR_PULL_ALLOC(ndr, r->in.handle);
8398 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8399 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8400 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8401 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8402 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.trusted_domain));
8403 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr, NDR_SCALARS, &r->in.level));
8404 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8406 NDR_PULL_ALLOC(ndr, r->in.info);
8411 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8412 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
8413 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
8414 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8415 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
8418 if (flags & NDR_OUT) {
8419 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8421 return NDR_ERR_SUCCESS;
8424 _PUBLIC_ void ndr_print_lsa_SetTrustedDomainInfoByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetTrustedDomainInfoByName *r)
8426 ndr_print_struct(ndr, name, "lsa_SetTrustedDomainInfoByName");
8428 if (flags & NDR_SET_VALUES) {
8429 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8431 if (flags & NDR_IN) {
8432 ndr_print_struct(ndr, "in", "lsa_SetTrustedDomainInfoByName");
8434 ndr_print_ptr(ndr, "handle", r->in.handle);
8436 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8438 ndr_print_lsa_String(ndr, "trusted_domain", &r->in.trusted_domain);
8439 ndr_print_lsa_TrustDomInfoEnum(ndr, "level", r->in.level);
8440 ndr_print_ptr(ndr, "info", r->in.info);
8443 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
8444 ndr_print_lsa_TrustedDomainInfo(ndr, "info", r->in.info);
8449 if (flags & NDR_OUT) {
8450 ndr_print_struct(ndr, "out", "lsa_SetTrustedDomainInfoByName");
8452 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8458 static enum ndr_err_code ndr_push_lsa_EnumTrustedDomainsEx(struct ndr_push *ndr, int flags, const struct lsa_EnumTrustedDomainsEx *r)
8460 if (flags & NDR_IN) {
8461 if (r->in.handle == NULL) {
8462 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8464 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8465 if (r->in.resume_handle == NULL) {
8466 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8468 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.resume_handle));
8469 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.max_size));
8471 if (flags & NDR_OUT) {
8472 if (r->out.resume_handle == NULL) {
8473 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8475 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.resume_handle));
8476 if (r->out.domains == NULL) {
8477 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8479 NDR_CHECK(ndr_push_lsa_DomainListEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
8480 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8482 return NDR_ERR_SUCCESS;
8485 static enum ndr_err_code ndr_pull_lsa_EnumTrustedDomainsEx(struct ndr_pull *ndr, int flags, struct lsa_EnumTrustedDomainsEx *r)
8487 TALLOC_CTX *_mem_save_handle_0;
8488 TALLOC_CTX *_mem_save_resume_handle_0;
8489 TALLOC_CTX *_mem_save_domains_0;
8490 if (flags & NDR_IN) {
8491 ZERO_STRUCT(r->out);
8493 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8494 NDR_PULL_ALLOC(ndr, r->in.handle);
8496 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8497 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8498 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8499 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8500 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8501 NDR_PULL_ALLOC(ndr, r->in.resume_handle);
8503 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8504 NDR_PULL_SET_MEM_CTX(ndr, r->in.resume_handle, LIBNDR_FLAG_REF_ALLOC);
8505 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.resume_handle));
8506 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
8507 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.max_size));
8508 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
8509 *r->out.resume_handle = *r->in.resume_handle;
8510 NDR_PULL_ALLOC(ndr, r->out.domains);
8511 ZERO_STRUCTP(r->out.domains);
8513 if (flags & NDR_OUT) {
8514 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8515 NDR_PULL_ALLOC(ndr, r->out.resume_handle);
8517 _mem_save_resume_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8518 NDR_PULL_SET_MEM_CTX(ndr, r->out.resume_handle, LIBNDR_FLAG_REF_ALLOC);
8519 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.resume_handle));
8520 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_resume_handle_0, LIBNDR_FLAG_REF_ALLOC);
8521 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8522 NDR_PULL_ALLOC(ndr, r->out.domains);
8524 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
8525 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, LIBNDR_FLAG_REF_ALLOC);
8526 NDR_CHECK(ndr_pull_lsa_DomainListEx(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
8527 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, LIBNDR_FLAG_REF_ALLOC);
8528 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8530 return NDR_ERR_SUCCESS;
8533 _PUBLIC_ void ndr_print_lsa_EnumTrustedDomainsEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_EnumTrustedDomainsEx *r)
8535 ndr_print_struct(ndr, name, "lsa_EnumTrustedDomainsEx");
8537 if (flags & NDR_SET_VALUES) {
8538 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8540 if (flags & NDR_IN) {
8541 ndr_print_struct(ndr, "in", "lsa_EnumTrustedDomainsEx");
8543 ndr_print_ptr(ndr, "handle", r->in.handle);
8545 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8547 ndr_print_ptr(ndr, "resume_handle", r->in.resume_handle);
8549 ndr_print_uint32(ndr, "resume_handle", *r->in.resume_handle);
8551 ndr_print_uint32(ndr, "max_size", r->in.max_size);
8554 if (flags & NDR_OUT) {
8555 ndr_print_struct(ndr, "out", "lsa_EnumTrustedDomainsEx");
8557 ndr_print_ptr(ndr, "resume_handle", r->out.resume_handle);
8559 ndr_print_uint32(ndr, "resume_handle", *r->out.resume_handle);
8561 ndr_print_ptr(ndr, "domains", r->out.domains);
8563 ndr_print_lsa_DomainListEx(ndr, "domains", r->out.domains);
8565 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8571 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomainEx(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomainEx *r)
8573 if (flags & NDR_IN) {
8575 if (flags & NDR_OUT) {
8576 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8578 return NDR_ERR_SUCCESS;
8581 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomainEx(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomainEx *r)
8583 if (flags & NDR_IN) {
8585 if (flags & NDR_OUT) {
8586 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8588 return NDR_ERR_SUCCESS;
8591 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomainEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomainEx *r)
8593 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomainEx");
8595 if (flags & NDR_SET_VALUES) {
8596 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8598 if (flags & NDR_IN) {
8599 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomainEx");
8603 if (flags & NDR_OUT) {
8604 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomainEx");
8606 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8612 static enum ndr_err_code ndr_push_lsa_CloseTrustedDomainEx(struct ndr_push *ndr, int flags, const struct lsa_CloseTrustedDomainEx *r)
8614 if (flags & NDR_IN) {
8615 if (r->in.handle == NULL) {
8616 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8618 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8620 if (flags & NDR_OUT) {
8621 if (r->out.handle == NULL) {
8622 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8624 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
8625 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8627 return NDR_ERR_SUCCESS;
8630 static enum ndr_err_code ndr_pull_lsa_CloseTrustedDomainEx(struct ndr_pull *ndr, int flags, struct lsa_CloseTrustedDomainEx *r)
8632 TALLOC_CTX *_mem_save_handle_0;
8633 if (flags & NDR_IN) {
8634 ZERO_STRUCT(r->out);
8636 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8637 NDR_PULL_ALLOC(ndr, r->in.handle);
8639 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8640 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8641 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8642 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8643 NDR_PULL_ALLOC(ndr, r->out.handle);
8644 *r->out.handle = *r->in.handle;
8646 if (flags & NDR_OUT) {
8647 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8648 NDR_PULL_ALLOC(ndr, r->out.handle);
8650 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8651 NDR_PULL_SET_MEM_CTX(ndr, r->out.handle, LIBNDR_FLAG_REF_ALLOC);
8652 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.handle));
8653 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8654 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8656 return NDR_ERR_SUCCESS;
8659 _PUBLIC_ void ndr_print_lsa_CloseTrustedDomainEx(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CloseTrustedDomainEx *r)
8661 ndr_print_struct(ndr, name, "lsa_CloseTrustedDomainEx");
8663 if (flags & NDR_SET_VALUES) {
8664 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8666 if (flags & NDR_IN) {
8667 ndr_print_struct(ndr, "in", "lsa_CloseTrustedDomainEx");
8669 ndr_print_ptr(ndr, "handle", r->in.handle);
8671 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8675 if (flags & NDR_OUT) {
8676 ndr_print_struct(ndr, "out", "lsa_CloseTrustedDomainEx");
8678 ndr_print_ptr(ndr, "handle", r->out.handle);
8680 ndr_print_policy_handle(ndr, "handle", r->out.handle);
8682 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8688 static enum ndr_err_code ndr_push_lsa_QueryDomainInformationPolicy(struct ndr_push *ndr, int flags, const struct lsa_QueryDomainInformationPolicy *r)
8690 if (flags & NDR_IN) {
8691 if (r->in.handle == NULL) {
8692 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8694 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8695 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
8697 if (flags & NDR_OUT) {
8698 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.info));
8700 NDR_CHECK(ndr_push_set_switch_value(ndr, r->out.info, r->in.level));
8701 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8703 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8705 return NDR_ERR_SUCCESS;
8708 static enum ndr_err_code ndr_pull_lsa_QueryDomainInformationPolicy(struct ndr_pull *ndr, int flags, struct lsa_QueryDomainInformationPolicy *r)
8711 TALLOC_CTX *_mem_save_handle_0;
8712 TALLOC_CTX *_mem_save_info_0;
8713 if (flags & NDR_IN) {
8714 ZERO_STRUCT(r->out);
8716 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8717 NDR_PULL_ALLOC(ndr, r->in.handle);
8719 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8720 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8721 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8722 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8723 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
8725 if (flags & NDR_OUT) {
8726 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8728 NDR_PULL_ALLOC(ndr, r->out.info);
8733 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8734 NDR_PULL_SET_MEM_CTX(ndr, r->out.info, 0);
8735 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->out.info, r->in.level));
8736 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.info));
8737 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
8739 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8741 return NDR_ERR_SUCCESS;
8744 _PUBLIC_ void ndr_print_lsa_QueryDomainInformationPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_QueryDomainInformationPolicy *r)
8746 ndr_print_struct(ndr, name, "lsa_QueryDomainInformationPolicy");
8748 if (flags & NDR_SET_VALUES) {
8749 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8751 if (flags & NDR_IN) {
8752 ndr_print_struct(ndr, "in", "lsa_QueryDomainInformationPolicy");
8754 ndr_print_ptr(ndr, "handle", r->in.handle);
8756 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8758 ndr_print_uint16(ndr, "level", r->in.level);
8761 if (flags & NDR_OUT) {
8762 ndr_print_struct(ndr, "out", "lsa_QueryDomainInformationPolicy");
8764 ndr_print_ptr(ndr, "info", r->out.info);
8767 ndr_print_set_switch_value(ndr, r->out.info, r->in.level);
8768 ndr_print_lsa_DomainInformationPolicy(ndr, "info", r->out.info);
8771 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8777 static enum ndr_err_code ndr_push_lsa_SetDomainInformationPolicy(struct ndr_push *ndr, int flags, const struct lsa_SetDomainInformationPolicy *r)
8779 if (flags & NDR_IN) {
8780 if (r->in.handle == NULL) {
8781 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8783 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8784 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
8785 NDR_CHECK(ndr_push_unique_ptr(ndr, r->in.info));
8787 NDR_CHECK(ndr_push_set_switch_value(ndr, r->in.info, r->in.level));
8788 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8791 if (flags & NDR_OUT) {
8792 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8794 return NDR_ERR_SUCCESS;
8797 static enum ndr_err_code ndr_pull_lsa_SetDomainInformationPolicy(struct ndr_pull *ndr, int flags, struct lsa_SetDomainInformationPolicy *r)
8800 TALLOC_CTX *_mem_save_handle_0;
8801 TALLOC_CTX *_mem_save_info_0;
8802 if (flags & NDR_IN) {
8803 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8804 NDR_PULL_ALLOC(ndr, r->in.handle);
8806 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8807 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8808 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8809 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8810 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
8811 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
8813 NDR_PULL_ALLOC(ndr, r->in.info);
8818 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
8819 NDR_PULL_SET_MEM_CTX(ndr, r->in.info, 0);
8820 NDR_CHECK(ndr_pull_set_switch_value(ndr, r->in.info, r->in.level));
8821 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.info));
8822 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
8825 if (flags & NDR_OUT) {
8826 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8828 return NDR_ERR_SUCCESS;
8831 _PUBLIC_ void ndr_print_lsa_SetDomainInformationPolicy(struct ndr_print *ndr, const char *name, int flags, const struct lsa_SetDomainInformationPolicy *r)
8833 ndr_print_struct(ndr, name, "lsa_SetDomainInformationPolicy");
8835 if (flags & NDR_SET_VALUES) {
8836 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8838 if (flags & NDR_IN) {
8839 ndr_print_struct(ndr, "in", "lsa_SetDomainInformationPolicy");
8841 ndr_print_ptr(ndr, "handle", r->in.handle);
8843 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8845 ndr_print_uint16(ndr, "level", r->in.level);
8846 ndr_print_ptr(ndr, "info", r->in.info);
8849 ndr_print_set_switch_value(ndr, r->in.info, r->in.level);
8850 ndr_print_lsa_DomainInformationPolicy(ndr, "info", r->in.info);
8855 if (flags & NDR_OUT) {
8856 ndr_print_struct(ndr, "out", "lsa_SetDomainInformationPolicy");
8858 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8864 static enum ndr_err_code ndr_push_lsa_OpenTrustedDomainByName(struct ndr_push *ndr, int flags, const struct lsa_OpenTrustedDomainByName *r)
8866 if (flags & NDR_IN) {
8867 if (r->in.handle == NULL) {
8868 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8870 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8871 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
8872 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.access_mask));
8874 if (flags & NDR_OUT) {
8875 if (r->out.trustdom_handle == NULL) {
8876 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8878 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
8879 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8881 return NDR_ERR_SUCCESS;
8884 static enum ndr_err_code ndr_pull_lsa_OpenTrustedDomainByName(struct ndr_pull *ndr, int flags, struct lsa_OpenTrustedDomainByName *r)
8886 TALLOC_CTX *_mem_save_handle_0;
8887 TALLOC_CTX *_mem_save_trustdom_handle_0;
8888 if (flags & NDR_IN) {
8889 ZERO_STRUCT(r->out);
8891 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8892 NDR_PULL_ALLOC(ndr, r->in.handle);
8894 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8895 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
8896 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8897 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
8898 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.name));
8899 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.access_mask));
8900 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
8901 ZERO_STRUCTP(r->out.trustdom_handle);
8903 if (flags & NDR_OUT) {
8904 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
8905 NDR_PULL_ALLOC(ndr, r->out.trustdom_handle);
8907 _mem_save_trustdom_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
8908 NDR_PULL_SET_MEM_CTX(ndr, r->out.trustdom_handle, LIBNDR_FLAG_REF_ALLOC);
8909 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.trustdom_handle));
8910 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_trustdom_handle_0, LIBNDR_FLAG_REF_ALLOC);
8911 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8913 return NDR_ERR_SUCCESS;
8916 _PUBLIC_ void ndr_print_lsa_OpenTrustedDomainByName(struct ndr_print *ndr, const char *name, int flags, const struct lsa_OpenTrustedDomainByName *r)
8918 ndr_print_struct(ndr, name, "lsa_OpenTrustedDomainByName");
8920 if (flags & NDR_SET_VALUES) {
8921 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8923 if (flags & NDR_IN) {
8924 ndr_print_struct(ndr, "in", "lsa_OpenTrustedDomainByName");
8926 ndr_print_ptr(ndr, "handle", r->in.handle);
8928 ndr_print_policy_handle(ndr, "handle", r->in.handle);
8930 ndr_print_lsa_String(ndr, "name", &r->in.name);
8931 ndr_print_uint32(ndr, "access_mask", r->in.access_mask);
8934 if (flags & NDR_OUT) {
8935 ndr_print_struct(ndr, "out", "lsa_OpenTrustedDomainByName");
8937 ndr_print_ptr(ndr, "trustdom_handle", r->out.trustdom_handle);
8939 ndr_print_policy_handle(ndr, "trustdom_handle", r->out.trustdom_handle);
8941 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8947 static enum ndr_err_code ndr_push_lsa_TestCall(struct ndr_push *ndr, int flags, const struct lsa_TestCall *r)
8949 if (flags & NDR_IN) {
8951 if (flags & NDR_OUT) {
8952 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
8954 return NDR_ERR_SUCCESS;
8957 static enum ndr_err_code ndr_pull_lsa_TestCall(struct ndr_pull *ndr, int flags, struct lsa_TestCall *r)
8959 if (flags & NDR_IN) {
8961 if (flags & NDR_OUT) {
8962 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
8964 return NDR_ERR_SUCCESS;
8967 _PUBLIC_ void ndr_print_lsa_TestCall(struct ndr_print *ndr, const char *name, int flags, const struct lsa_TestCall *r)
8969 ndr_print_struct(ndr, name, "lsa_TestCall");
8971 if (flags & NDR_SET_VALUES) {
8972 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
8974 if (flags & NDR_IN) {
8975 ndr_print_struct(ndr, "in", "lsa_TestCall");
8979 if (flags & NDR_OUT) {
8980 ndr_print_struct(ndr, "out", "lsa_TestCall");
8982 ndr_print_NTSTATUS(ndr, "result", r->out.result);
8988 static enum ndr_err_code ndr_push_lsa_LookupSids2(struct ndr_push *ndr, int flags, const struct lsa_LookupSids2 *r)
8990 if (flags & NDR_IN) {
8991 if (r->in.handle == NULL) {
8992 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8994 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
8995 if (r->in.sids == NULL) {
8996 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
8998 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
8999 if (r->in.names == NULL) {
9000 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9002 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
9003 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9004 if (r->in.count == NULL) {
9005 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9007 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
9008 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
9009 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
9011 if (flags & NDR_OUT) {
9012 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
9013 if (r->out.domains) {
9014 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9016 if (r->out.names == NULL) {
9017 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9019 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
9020 if (r->out.count == NULL) {
9021 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9023 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
9024 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9026 return NDR_ERR_SUCCESS;
9029 static enum ndr_err_code ndr_pull_lsa_LookupSids2(struct ndr_pull *ndr, int flags, struct lsa_LookupSids2 *r)
9031 uint32_t _ptr_domains;
9032 TALLOC_CTX *_mem_save_handle_0;
9033 TALLOC_CTX *_mem_save_sids_0;
9034 TALLOC_CTX *_mem_save_domains_0;
9035 TALLOC_CTX *_mem_save_names_0;
9036 TALLOC_CTX *_mem_save_count_0;
9037 if (flags & NDR_IN) {
9038 ZERO_STRUCT(r->out);
9040 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9041 NDR_PULL_ALLOC(ndr, r->in.handle);
9043 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9044 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9045 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9046 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9047 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9048 NDR_PULL_ALLOC(ndr, r->in.sids);
9050 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9051 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
9052 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9053 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
9054 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9055 NDR_PULL_ALLOC(ndr, r->in.names);
9057 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
9058 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
9059 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
9060 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
9061 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9062 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9063 NDR_PULL_ALLOC(ndr, r->in.count);
9065 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9066 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
9067 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
9068 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9069 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
9070 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
9071 NDR_PULL_ALLOC(ndr, r->out.names);
9072 *r->out.names = *r->in.names;
9073 NDR_PULL_ALLOC(ndr, r->out.count);
9074 *r->out.count = *r->in.count;
9076 if (flags & NDR_OUT) {
9077 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
9079 NDR_PULL_ALLOC(ndr, r->out.domains);
9081 r->out.domains = NULL;
9083 if (r->out.domains) {
9084 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
9085 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
9086 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9087 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
9089 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9090 NDR_PULL_ALLOC(ndr, r->out.names);
9092 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
9093 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
9094 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
9095 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
9096 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9097 NDR_PULL_ALLOC(ndr, r->out.count);
9099 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9100 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
9101 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
9102 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9103 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9105 return NDR_ERR_SUCCESS;
9108 _PUBLIC_ void ndr_print_lsa_LookupSids2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids2 *r)
9110 ndr_print_struct(ndr, name, "lsa_LookupSids2");
9112 if (flags & NDR_SET_VALUES) {
9113 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9115 if (flags & NDR_IN) {
9116 ndr_print_struct(ndr, "in", "lsa_LookupSids2");
9118 ndr_print_ptr(ndr, "handle", r->in.handle);
9120 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9122 ndr_print_ptr(ndr, "sids", r->in.sids);
9124 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
9126 ndr_print_ptr(ndr, "names", r->in.names);
9128 ndr_print_lsa_TransNameArray2(ndr, "names", r->in.names);
9130 ndr_print_uint16(ndr, "level", r->in.level);
9131 ndr_print_ptr(ndr, "count", r->in.count);
9133 ndr_print_uint32(ndr, "count", *r->in.count);
9135 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
9136 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
9139 if (flags & NDR_OUT) {
9140 ndr_print_struct(ndr, "out", "lsa_LookupSids2");
9142 ndr_print_ptr(ndr, "domains", r->out.domains);
9144 if (r->out.domains) {
9145 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
9148 ndr_print_ptr(ndr, "names", r->out.names);
9150 ndr_print_lsa_TransNameArray2(ndr, "names", r->out.names);
9152 ndr_print_ptr(ndr, "count", r->out.count);
9154 ndr_print_uint32(ndr, "count", *r->out.count);
9156 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9162 static enum ndr_err_code ndr_push_lsa_LookupNames2(struct ndr_push *ndr, int flags, const struct lsa_LookupNames2 *r)
9164 uint32_t cntr_names_0;
9165 if (flags & NDR_IN) {
9166 if (r->in.handle == NULL) {
9167 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9169 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9170 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
9171 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
9172 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9173 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
9175 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9176 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
9178 if (r->in.sids == NULL) {
9179 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9181 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9182 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9183 if (r->in.count == NULL) {
9184 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9186 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
9187 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
9188 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
9190 if (flags & NDR_OUT) {
9191 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
9192 if (r->out.domains) {
9193 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9195 if (r->out.sids == NULL) {
9196 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9198 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
9199 if (r->out.count == NULL) {
9200 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9202 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
9203 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9205 return NDR_ERR_SUCCESS;
9208 static enum ndr_err_code ndr_pull_lsa_LookupNames2(struct ndr_pull *ndr, int flags, struct lsa_LookupNames2 *r)
9210 uint32_t cntr_names_0;
9211 uint32_t _ptr_domains;
9212 TALLOC_CTX *_mem_save_handle_0;
9213 TALLOC_CTX *_mem_save_names_0;
9214 TALLOC_CTX *_mem_save_domains_0;
9215 TALLOC_CTX *_mem_save_sids_0;
9216 TALLOC_CTX *_mem_save_count_0;
9217 if (flags & NDR_IN) {
9218 ZERO_STRUCT(r->out);
9220 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9221 NDR_PULL_ALLOC(ndr, r->in.handle);
9223 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9224 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9225 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9226 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9227 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
9228 if (r->in.num_names < 0 || r->in.num_names > 1000) {
9229 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
9231 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
9232 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
9233 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
9234 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
9235 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9236 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
9238 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9239 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
9241 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
9242 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9243 NDR_PULL_ALLOC(ndr, r->in.sids);
9245 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9246 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
9247 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9248 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
9249 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9250 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9251 NDR_PULL_ALLOC(ndr, r->in.count);
9253 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9254 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
9255 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
9256 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9257 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
9258 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
9259 NDR_PULL_ALLOC(ndr, r->out.sids);
9260 *r->out.sids = *r->in.sids;
9261 NDR_PULL_ALLOC(ndr, r->out.count);
9262 *r->out.count = *r->in.count;
9264 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
9267 if (flags & NDR_OUT) {
9268 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
9270 NDR_PULL_ALLOC(ndr, r->out.domains);
9272 r->out.domains = NULL;
9274 if (r->out.domains) {
9275 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
9276 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
9277 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9278 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
9280 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9281 NDR_PULL_ALLOC(ndr, r->out.sids);
9283 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9284 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
9285 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
9286 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
9287 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9288 NDR_PULL_ALLOC(ndr, r->out.count);
9290 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9291 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
9292 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
9293 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9294 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9296 return NDR_ERR_SUCCESS;
9299 _PUBLIC_ void ndr_print_lsa_LookupNames2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames2 *r)
9301 uint32_t cntr_names_0;
9302 ndr_print_struct(ndr, name, "lsa_LookupNames2");
9304 if (flags & NDR_SET_VALUES) {
9305 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9307 if (flags & NDR_IN) {
9308 ndr_print_struct(ndr, "in", "lsa_LookupNames2");
9310 ndr_print_ptr(ndr, "handle", r->in.handle);
9312 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9314 ndr_print_uint32(ndr, "num_names", r->in.num_names);
9315 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
9317 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
9319 asprintf(&idx_0, "[%d]", cntr_names_0);
9321 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
9326 ndr_print_ptr(ndr, "sids", r->in.sids);
9328 ndr_print_lsa_TransSidArray2(ndr, "sids", r->in.sids);
9330 ndr_print_uint16(ndr, "level", r->in.level);
9331 ndr_print_ptr(ndr, "count", r->in.count);
9333 ndr_print_uint32(ndr, "count", *r->in.count);
9335 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
9336 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
9339 if (flags & NDR_OUT) {
9340 ndr_print_struct(ndr, "out", "lsa_LookupNames2");
9342 ndr_print_ptr(ndr, "domains", r->out.domains);
9344 if (r->out.domains) {
9345 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
9348 ndr_print_ptr(ndr, "sids", r->out.sids);
9350 ndr_print_lsa_TransSidArray2(ndr, "sids", r->out.sids);
9352 ndr_print_ptr(ndr, "count", r->out.count);
9354 ndr_print_uint32(ndr, "count", *r->out.count);
9356 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9362 static enum ndr_err_code ndr_push_lsa_CreateTrustedDomainEx2(struct ndr_push *ndr, int flags, const struct lsa_CreateTrustedDomainEx2 *r)
9364 if (flags & NDR_IN) {
9366 if (flags & NDR_OUT) {
9367 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9369 return NDR_ERR_SUCCESS;
9372 static enum ndr_err_code ndr_pull_lsa_CreateTrustedDomainEx2(struct ndr_pull *ndr, int flags, struct lsa_CreateTrustedDomainEx2 *r)
9374 if (flags & NDR_IN) {
9376 if (flags & NDR_OUT) {
9377 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9379 return NDR_ERR_SUCCESS;
9382 _PUBLIC_ void ndr_print_lsa_CreateTrustedDomainEx2(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CreateTrustedDomainEx2 *r)
9384 ndr_print_struct(ndr, name, "lsa_CreateTrustedDomainEx2");
9386 if (flags & NDR_SET_VALUES) {
9387 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9389 if (flags & NDR_IN) {
9390 ndr_print_struct(ndr, "in", "lsa_CreateTrustedDomainEx2");
9394 if (flags & NDR_OUT) {
9395 ndr_print_struct(ndr, "out", "lsa_CreateTrustedDomainEx2");
9397 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9403 static enum ndr_err_code ndr_push_lsa_CREDRWRITE(struct ndr_push *ndr, int flags, const struct lsa_CREDRWRITE *r)
9405 if (flags & NDR_IN) {
9407 if (flags & NDR_OUT) {
9408 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9410 return NDR_ERR_SUCCESS;
9413 static enum ndr_err_code ndr_pull_lsa_CREDRWRITE(struct ndr_pull *ndr, int flags, struct lsa_CREDRWRITE *r)
9415 if (flags & NDR_IN) {
9417 if (flags & NDR_OUT) {
9418 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9420 return NDR_ERR_SUCCESS;
9423 _PUBLIC_ void ndr_print_lsa_CREDRWRITE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRWRITE *r)
9425 ndr_print_struct(ndr, name, "lsa_CREDRWRITE");
9427 if (flags & NDR_SET_VALUES) {
9428 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9430 if (flags & NDR_IN) {
9431 ndr_print_struct(ndr, "in", "lsa_CREDRWRITE");
9435 if (flags & NDR_OUT) {
9436 ndr_print_struct(ndr, "out", "lsa_CREDRWRITE");
9438 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9444 static enum ndr_err_code ndr_push_lsa_CREDRREAD(struct ndr_push *ndr, int flags, const struct lsa_CREDRREAD *r)
9446 if (flags & NDR_IN) {
9448 if (flags & NDR_OUT) {
9449 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9451 return NDR_ERR_SUCCESS;
9454 static enum ndr_err_code ndr_pull_lsa_CREDRREAD(struct ndr_pull *ndr, int flags, struct lsa_CREDRREAD *r)
9456 if (flags & NDR_IN) {
9458 if (flags & NDR_OUT) {
9459 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9461 return NDR_ERR_SUCCESS;
9464 _PUBLIC_ void ndr_print_lsa_CREDRREAD(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRREAD *r)
9466 ndr_print_struct(ndr, name, "lsa_CREDRREAD");
9468 if (flags & NDR_SET_VALUES) {
9469 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9471 if (flags & NDR_IN) {
9472 ndr_print_struct(ndr, "in", "lsa_CREDRREAD");
9476 if (flags & NDR_OUT) {
9477 ndr_print_struct(ndr, "out", "lsa_CREDRREAD");
9479 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9485 static enum ndr_err_code ndr_push_lsa_CREDRENUMERATE(struct ndr_push *ndr, int flags, const struct lsa_CREDRENUMERATE *r)
9487 if (flags & NDR_IN) {
9489 if (flags & NDR_OUT) {
9490 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9492 return NDR_ERR_SUCCESS;
9495 static enum ndr_err_code ndr_pull_lsa_CREDRENUMERATE(struct ndr_pull *ndr, int flags, struct lsa_CREDRENUMERATE *r)
9497 if (flags & NDR_IN) {
9499 if (flags & NDR_OUT) {
9500 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9502 return NDR_ERR_SUCCESS;
9505 _PUBLIC_ void ndr_print_lsa_CREDRENUMERATE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRENUMERATE *r)
9507 ndr_print_struct(ndr, name, "lsa_CREDRENUMERATE");
9509 if (flags & NDR_SET_VALUES) {
9510 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9512 if (flags & NDR_IN) {
9513 ndr_print_struct(ndr, "in", "lsa_CREDRENUMERATE");
9517 if (flags & NDR_OUT) {
9518 ndr_print_struct(ndr, "out", "lsa_CREDRENUMERATE");
9520 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9526 static enum ndr_err_code ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_push *ndr, int flags, const struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
9528 if (flags & NDR_IN) {
9530 if (flags & NDR_OUT) {
9531 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9533 return NDR_ERR_SUCCESS;
9536 static enum ndr_err_code ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_pull *ndr, int flags, struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
9538 if (flags & NDR_IN) {
9540 if (flags & NDR_OUT) {
9541 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9543 return NDR_ERR_SUCCESS;
9546 _PUBLIC_ void ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRWRITEDOMAINCREDENTIALS *r)
9548 ndr_print_struct(ndr, name, "lsa_CREDRWRITEDOMAINCREDENTIALS");
9550 if (flags & NDR_SET_VALUES) {
9551 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9553 if (flags & NDR_IN) {
9554 ndr_print_struct(ndr, "in", "lsa_CREDRWRITEDOMAINCREDENTIALS");
9558 if (flags & NDR_OUT) {
9559 ndr_print_struct(ndr, "out", "lsa_CREDRWRITEDOMAINCREDENTIALS");
9561 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9567 static enum ndr_err_code ndr_push_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_push *ndr, int flags, const struct lsa_CREDRREADDOMAINCREDENTIALS *r)
9569 if (flags & NDR_IN) {
9571 if (flags & NDR_OUT) {
9572 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9574 return NDR_ERR_SUCCESS;
9577 static enum ndr_err_code ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_pull *ndr, int flags, struct lsa_CREDRREADDOMAINCREDENTIALS *r)
9579 if (flags & NDR_IN) {
9581 if (flags & NDR_OUT) {
9582 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9584 return NDR_ERR_SUCCESS;
9587 _PUBLIC_ void ndr_print_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRREADDOMAINCREDENTIALS *r)
9589 ndr_print_struct(ndr, name, "lsa_CREDRREADDOMAINCREDENTIALS");
9591 if (flags & NDR_SET_VALUES) {
9592 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9594 if (flags & NDR_IN) {
9595 ndr_print_struct(ndr, "in", "lsa_CREDRREADDOMAINCREDENTIALS");
9599 if (flags & NDR_OUT) {
9600 ndr_print_struct(ndr, "out", "lsa_CREDRREADDOMAINCREDENTIALS");
9602 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9608 static enum ndr_err_code ndr_push_lsa_CREDRDELETE(struct ndr_push *ndr, int flags, const struct lsa_CREDRDELETE *r)
9610 if (flags & NDR_IN) {
9612 if (flags & NDR_OUT) {
9613 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9615 return NDR_ERR_SUCCESS;
9618 static enum ndr_err_code ndr_pull_lsa_CREDRDELETE(struct ndr_pull *ndr, int flags, struct lsa_CREDRDELETE *r)
9620 if (flags & NDR_IN) {
9622 if (flags & NDR_OUT) {
9623 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9625 return NDR_ERR_SUCCESS;
9628 _PUBLIC_ void ndr_print_lsa_CREDRDELETE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRDELETE *r)
9630 ndr_print_struct(ndr, name, "lsa_CREDRDELETE");
9632 if (flags & NDR_SET_VALUES) {
9633 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9635 if (flags & NDR_IN) {
9636 ndr_print_struct(ndr, "in", "lsa_CREDRDELETE");
9640 if (flags & NDR_OUT) {
9641 ndr_print_struct(ndr, "out", "lsa_CREDRDELETE");
9643 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9649 static enum ndr_err_code ndr_push_lsa_CREDRGETTARGETINFO(struct ndr_push *ndr, int flags, const struct lsa_CREDRGETTARGETINFO *r)
9651 if (flags & NDR_IN) {
9653 if (flags & NDR_OUT) {
9654 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9656 return NDR_ERR_SUCCESS;
9659 static enum ndr_err_code ndr_pull_lsa_CREDRGETTARGETINFO(struct ndr_pull *ndr, int flags, struct lsa_CREDRGETTARGETINFO *r)
9661 if (flags & NDR_IN) {
9663 if (flags & NDR_OUT) {
9664 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9666 return NDR_ERR_SUCCESS;
9669 _PUBLIC_ void ndr_print_lsa_CREDRGETTARGETINFO(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRGETTARGETINFO *r)
9671 ndr_print_struct(ndr, name, "lsa_CREDRGETTARGETINFO");
9673 if (flags & NDR_SET_VALUES) {
9674 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9676 if (flags & NDR_IN) {
9677 ndr_print_struct(ndr, "in", "lsa_CREDRGETTARGETINFO");
9681 if (flags & NDR_OUT) {
9682 ndr_print_struct(ndr, "out", "lsa_CREDRGETTARGETINFO");
9684 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9690 static enum ndr_err_code ndr_push_lsa_CREDRPROFILELOADED(struct ndr_push *ndr, int flags, const struct lsa_CREDRPROFILELOADED *r)
9692 if (flags & NDR_IN) {
9694 if (flags & NDR_OUT) {
9695 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9697 return NDR_ERR_SUCCESS;
9700 static enum ndr_err_code ndr_pull_lsa_CREDRPROFILELOADED(struct ndr_pull *ndr, int flags, struct lsa_CREDRPROFILELOADED *r)
9702 if (flags & NDR_IN) {
9704 if (flags & NDR_OUT) {
9705 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9707 return NDR_ERR_SUCCESS;
9710 _PUBLIC_ void ndr_print_lsa_CREDRPROFILELOADED(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRPROFILELOADED *r)
9712 ndr_print_struct(ndr, name, "lsa_CREDRPROFILELOADED");
9714 if (flags & NDR_SET_VALUES) {
9715 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9717 if (flags & NDR_IN) {
9718 ndr_print_struct(ndr, "in", "lsa_CREDRPROFILELOADED");
9722 if (flags & NDR_OUT) {
9723 ndr_print_struct(ndr, "out", "lsa_CREDRPROFILELOADED");
9725 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9731 static enum ndr_err_code ndr_push_lsa_LookupNames3(struct ndr_push *ndr, int flags, const struct lsa_LookupNames3 *r)
9733 uint32_t cntr_names_0;
9734 if (flags & NDR_IN) {
9735 if (r->in.handle == NULL) {
9736 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9738 NDR_CHECK(ndr_push_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9739 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
9740 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
9741 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9742 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
9744 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9745 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
9747 if (r->in.sids == NULL) {
9748 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9750 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9751 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
9752 if (r->in.count == NULL) {
9753 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9755 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
9756 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
9757 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
9759 if (flags & NDR_OUT) {
9760 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
9761 if (r->out.domains) {
9762 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9764 if (r->out.sids == NULL) {
9765 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9767 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
9768 if (r->out.count == NULL) {
9769 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
9771 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
9772 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9774 return NDR_ERR_SUCCESS;
9777 static enum ndr_err_code ndr_pull_lsa_LookupNames3(struct ndr_pull *ndr, int flags, struct lsa_LookupNames3 *r)
9779 uint32_t cntr_names_0;
9780 uint32_t _ptr_domains;
9781 TALLOC_CTX *_mem_save_handle_0;
9782 TALLOC_CTX *_mem_save_names_0;
9783 TALLOC_CTX *_mem_save_domains_0;
9784 TALLOC_CTX *_mem_save_sids_0;
9785 TALLOC_CTX *_mem_save_count_0;
9786 if (flags & NDR_IN) {
9787 ZERO_STRUCT(r->out);
9789 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9790 NDR_PULL_ALLOC(ndr, r->in.handle);
9792 _mem_save_handle_0 = NDR_PULL_GET_MEM_CTX(ndr);
9793 NDR_PULL_SET_MEM_CTX(ndr, r->in.handle, LIBNDR_FLAG_REF_ALLOC);
9794 NDR_CHECK(ndr_pull_policy_handle(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.handle));
9795 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_handle_0, LIBNDR_FLAG_REF_ALLOC);
9796 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
9797 if (r->in.num_names < 0 || r->in.num_names > 1000) {
9798 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
9800 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
9801 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
9802 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
9803 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
9804 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9805 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
9807 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
9808 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
9810 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
9811 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9812 NDR_PULL_ALLOC(ndr, r->in.sids);
9814 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9815 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
9816 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
9817 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
9818 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
9819 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9820 NDR_PULL_ALLOC(ndr, r->in.count);
9822 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9823 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
9824 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
9825 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9826 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
9827 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
9828 NDR_PULL_ALLOC(ndr, r->out.sids);
9829 *r->out.sids = *r->in.sids;
9830 NDR_PULL_ALLOC(ndr, r->out.count);
9831 *r->out.count = *r->in.count;
9833 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
9836 if (flags & NDR_OUT) {
9837 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
9839 NDR_PULL_ALLOC(ndr, r->out.domains);
9841 r->out.domains = NULL;
9843 if (r->out.domains) {
9844 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
9845 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
9846 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
9847 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
9849 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9850 NDR_PULL_ALLOC(ndr, r->out.sids);
9852 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
9853 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
9854 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
9855 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
9856 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
9857 NDR_PULL_ALLOC(ndr, r->out.count);
9859 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
9860 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
9861 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
9862 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
9863 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9865 return NDR_ERR_SUCCESS;
9868 _PUBLIC_ void ndr_print_lsa_LookupNames3(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames3 *r)
9870 uint32_t cntr_names_0;
9871 ndr_print_struct(ndr, name, "lsa_LookupNames3");
9873 if (flags & NDR_SET_VALUES) {
9874 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9876 if (flags & NDR_IN) {
9877 ndr_print_struct(ndr, "in", "lsa_LookupNames3");
9879 ndr_print_ptr(ndr, "handle", r->in.handle);
9881 ndr_print_policy_handle(ndr, "handle", r->in.handle);
9883 ndr_print_uint32(ndr, "num_names", r->in.num_names);
9884 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
9886 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
9888 asprintf(&idx_0, "[%d]", cntr_names_0);
9890 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
9895 ndr_print_ptr(ndr, "sids", r->in.sids);
9897 ndr_print_lsa_TransSidArray3(ndr, "sids", r->in.sids);
9899 ndr_print_uint16(ndr, "level", r->in.level);
9900 ndr_print_ptr(ndr, "count", r->in.count);
9902 ndr_print_uint32(ndr, "count", *r->in.count);
9904 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
9905 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
9908 if (flags & NDR_OUT) {
9909 ndr_print_struct(ndr, "out", "lsa_LookupNames3");
9911 ndr_print_ptr(ndr, "domains", r->out.domains);
9913 if (r->out.domains) {
9914 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
9917 ndr_print_ptr(ndr, "sids", r->out.sids);
9919 ndr_print_lsa_TransSidArray3(ndr, "sids", r->out.sids);
9921 ndr_print_ptr(ndr, "count", r->out.count);
9923 ndr_print_uint32(ndr, "count", *r->out.count);
9925 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9931 static enum ndr_err_code ndr_push_lsa_CREDRGETSESSIONTYPES(struct ndr_push *ndr, int flags, const struct lsa_CREDRGETSESSIONTYPES *r)
9933 if (flags & NDR_IN) {
9935 if (flags & NDR_OUT) {
9936 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9938 return NDR_ERR_SUCCESS;
9941 static enum ndr_err_code ndr_pull_lsa_CREDRGETSESSIONTYPES(struct ndr_pull *ndr, int flags, struct lsa_CREDRGETSESSIONTYPES *r)
9943 if (flags & NDR_IN) {
9945 if (flags & NDR_OUT) {
9946 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9948 return NDR_ERR_SUCCESS;
9951 _PUBLIC_ void ndr_print_lsa_CREDRGETSESSIONTYPES(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRGETSESSIONTYPES *r)
9953 ndr_print_struct(ndr, name, "lsa_CREDRGETSESSIONTYPES");
9955 if (flags & NDR_SET_VALUES) {
9956 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9958 if (flags & NDR_IN) {
9959 ndr_print_struct(ndr, "in", "lsa_CREDRGETSESSIONTYPES");
9963 if (flags & NDR_OUT) {
9964 ndr_print_struct(ndr, "out", "lsa_CREDRGETSESSIONTYPES");
9966 ndr_print_NTSTATUS(ndr, "result", r->out.result);
9972 static enum ndr_err_code ndr_push_lsa_LSARREGISTERAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARREGISTERAUDITEVENT *r)
9974 if (flags & NDR_IN) {
9976 if (flags & NDR_OUT) {
9977 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
9979 return NDR_ERR_SUCCESS;
9982 static enum ndr_err_code ndr_pull_lsa_LSARREGISTERAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARREGISTERAUDITEVENT *r)
9984 if (flags & NDR_IN) {
9986 if (flags & NDR_OUT) {
9987 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
9989 return NDR_ERR_SUCCESS;
9992 _PUBLIC_ void ndr_print_lsa_LSARREGISTERAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARREGISTERAUDITEVENT *r)
9994 ndr_print_struct(ndr, name, "lsa_LSARREGISTERAUDITEVENT");
9996 if (flags & NDR_SET_VALUES) {
9997 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
9999 if (flags & NDR_IN) {
10000 ndr_print_struct(ndr, "in", "lsa_LSARREGISTERAUDITEVENT");
10004 if (flags & NDR_OUT) {
10005 ndr_print_struct(ndr, "out", "lsa_LSARREGISTERAUDITEVENT");
10007 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10013 static enum ndr_err_code ndr_push_lsa_LSARGENAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARGENAUDITEVENT *r)
10015 if (flags & NDR_IN) {
10017 if (flags & NDR_OUT) {
10018 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10020 return NDR_ERR_SUCCESS;
10023 static enum ndr_err_code ndr_pull_lsa_LSARGENAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARGENAUDITEVENT *r)
10025 if (flags & NDR_IN) {
10027 if (flags & NDR_OUT) {
10028 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10030 return NDR_ERR_SUCCESS;
10033 _PUBLIC_ void ndr_print_lsa_LSARGENAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARGENAUDITEVENT *r)
10035 ndr_print_struct(ndr, name, "lsa_LSARGENAUDITEVENT");
10037 if (flags & NDR_SET_VALUES) {
10038 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10040 if (flags & NDR_IN) {
10041 ndr_print_struct(ndr, "in", "lsa_LSARGENAUDITEVENT");
10045 if (flags & NDR_OUT) {
10046 ndr_print_struct(ndr, "out", "lsa_LSARGENAUDITEVENT");
10048 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10054 static enum ndr_err_code ndr_push_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARUNREGISTERAUDITEVENT *r)
10056 if (flags & NDR_IN) {
10058 if (flags & NDR_OUT) {
10059 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10061 return NDR_ERR_SUCCESS;
10064 static enum ndr_err_code ndr_pull_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARUNREGISTERAUDITEVENT *r)
10066 if (flags & NDR_IN) {
10068 if (flags & NDR_OUT) {
10069 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10071 return NDR_ERR_SUCCESS;
10074 _PUBLIC_ void ndr_print_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARUNREGISTERAUDITEVENT *r)
10076 ndr_print_struct(ndr, name, "lsa_LSARUNREGISTERAUDITEVENT");
10078 if (flags & NDR_SET_VALUES) {
10079 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10081 if (flags & NDR_IN) {
10082 ndr_print_struct(ndr, "in", "lsa_LSARUNREGISTERAUDITEVENT");
10086 if (flags & NDR_OUT) {
10087 ndr_print_struct(ndr, "out", "lsa_LSARUNREGISTERAUDITEVENT");
10089 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10095 static enum ndr_err_code ndr_push_lsa_LSARQUERYFORESTTRUSTINFORMATION(struct ndr_push *ndr, int flags, const struct lsa_LSARQUERYFORESTTRUSTINFORMATION *r)
10097 if (flags & NDR_IN) {
10099 if (flags & NDR_OUT) {
10100 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10102 return NDR_ERR_SUCCESS;
10105 static enum ndr_err_code ndr_pull_lsa_LSARQUERYFORESTTRUSTINFORMATION(struct ndr_pull *ndr, int flags, struct lsa_LSARQUERYFORESTTRUSTINFORMATION *r)
10107 if (flags & NDR_IN) {
10109 if (flags & NDR_OUT) {
10110 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10112 return NDR_ERR_SUCCESS;
10115 _PUBLIC_ void ndr_print_lsa_LSARQUERYFORESTTRUSTINFORMATION(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARQUERYFORESTTRUSTINFORMATION *r)
10117 ndr_print_struct(ndr, name, "lsa_LSARQUERYFORESTTRUSTINFORMATION");
10119 if (flags & NDR_SET_VALUES) {
10120 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10122 if (flags & NDR_IN) {
10123 ndr_print_struct(ndr, "in", "lsa_LSARQUERYFORESTTRUSTINFORMATION");
10127 if (flags & NDR_OUT) {
10128 ndr_print_struct(ndr, "out", "lsa_LSARQUERYFORESTTRUSTINFORMATION");
10130 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10136 static enum ndr_err_code ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_push *ndr, int flags, const struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
10138 if (flags & NDR_IN) {
10140 if (flags & NDR_OUT) {
10141 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10143 return NDR_ERR_SUCCESS;
10146 static enum ndr_err_code ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_pull *ndr, int flags, struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
10148 if (flags & NDR_IN) {
10150 if (flags & NDR_OUT) {
10151 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10153 return NDR_ERR_SUCCESS;
10156 _PUBLIC_ void ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARSETFORESTTRUSTINFORMATION *r)
10158 ndr_print_struct(ndr, name, "lsa_LSARSETFORESTTRUSTINFORMATION");
10160 if (flags & NDR_SET_VALUES) {
10161 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10163 if (flags & NDR_IN) {
10164 ndr_print_struct(ndr, "in", "lsa_LSARSETFORESTTRUSTINFORMATION");
10168 if (flags & NDR_OUT) {
10169 ndr_print_struct(ndr, "out", "lsa_LSARSETFORESTTRUSTINFORMATION");
10171 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10177 static enum ndr_err_code ndr_push_lsa_CREDRRENAME(struct ndr_push *ndr, int flags, const struct lsa_CREDRRENAME *r)
10179 if (flags & NDR_IN) {
10181 if (flags & NDR_OUT) {
10182 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10184 return NDR_ERR_SUCCESS;
10187 static enum ndr_err_code ndr_pull_lsa_CREDRRENAME(struct ndr_pull *ndr, int flags, struct lsa_CREDRRENAME *r)
10189 if (flags & NDR_IN) {
10191 if (flags & NDR_OUT) {
10192 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10194 return NDR_ERR_SUCCESS;
10197 _PUBLIC_ void ndr_print_lsa_CREDRRENAME(struct ndr_print *ndr, const char *name, int flags, const struct lsa_CREDRRENAME *r)
10199 ndr_print_struct(ndr, name, "lsa_CREDRRENAME");
10201 if (flags & NDR_SET_VALUES) {
10202 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10204 if (flags & NDR_IN) {
10205 ndr_print_struct(ndr, "in", "lsa_CREDRRENAME");
10209 if (flags & NDR_OUT) {
10210 ndr_print_struct(ndr, "out", "lsa_CREDRRENAME");
10212 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10218 static enum ndr_err_code ndr_push_lsa_LookupSids3(struct ndr_push *ndr, int flags, const struct lsa_LookupSids3 *r)
10220 if (flags & NDR_IN) {
10221 if (r->in.sids == NULL) {
10222 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10224 NDR_CHECK(ndr_push_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10225 if (r->in.names == NULL) {
10226 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10228 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
10229 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10230 if (r->in.count == NULL) {
10231 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10233 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
10234 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
10235 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
10237 if (flags & NDR_OUT) {
10238 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
10239 if (r->out.domains) {
10240 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
10242 if (r->out.names == NULL) {
10243 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10245 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
10246 if (r->out.count == NULL) {
10247 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10249 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
10250 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10252 return NDR_ERR_SUCCESS;
10255 static enum ndr_err_code ndr_pull_lsa_LookupSids3(struct ndr_pull *ndr, int flags, struct lsa_LookupSids3 *r)
10257 uint32_t _ptr_domains;
10258 TALLOC_CTX *_mem_save_sids_0;
10259 TALLOC_CTX *_mem_save_domains_0;
10260 TALLOC_CTX *_mem_save_names_0;
10261 TALLOC_CTX *_mem_save_count_0;
10262 if (flags & NDR_IN) {
10263 ZERO_STRUCT(r->out);
10265 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10266 NDR_PULL_ALLOC(ndr, r->in.sids);
10268 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10269 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10270 NDR_CHECK(ndr_pull_lsa_SidArray(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10271 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10272 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10273 NDR_PULL_ALLOC(ndr, r->in.names);
10275 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10276 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, LIBNDR_FLAG_REF_ALLOC);
10277 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.names));
10278 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
10279 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10280 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10281 NDR_PULL_ALLOC(ndr, r->in.count);
10283 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10284 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
10285 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
10286 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10287 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
10288 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
10289 NDR_PULL_ALLOC(ndr, r->out.names);
10290 *r->out.names = *r->in.names;
10291 NDR_PULL_ALLOC(ndr, r->out.count);
10292 *r->out.count = *r->in.count;
10294 if (flags & NDR_OUT) {
10295 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
10296 if (_ptr_domains) {
10297 NDR_PULL_ALLOC(ndr, r->out.domains);
10299 r->out.domains = NULL;
10301 if (r->out.domains) {
10302 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10303 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
10304 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
10305 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
10307 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10308 NDR_PULL_ALLOC(ndr, r->out.names);
10310 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10311 NDR_PULL_SET_MEM_CTX(ndr, r->out.names, LIBNDR_FLAG_REF_ALLOC);
10312 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.names));
10313 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, LIBNDR_FLAG_REF_ALLOC);
10314 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10315 NDR_PULL_ALLOC(ndr, r->out.count);
10317 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10318 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
10319 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
10320 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10321 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10323 return NDR_ERR_SUCCESS;
10326 _PUBLIC_ void ndr_print_lsa_LookupSids3(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupSids3 *r)
10328 ndr_print_struct(ndr, name, "lsa_LookupSids3");
10330 if (flags & NDR_SET_VALUES) {
10331 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10333 if (flags & NDR_IN) {
10334 ndr_print_struct(ndr, "in", "lsa_LookupSids3");
10336 ndr_print_ptr(ndr, "sids", r->in.sids);
10338 ndr_print_lsa_SidArray(ndr, "sids", r->in.sids);
10340 ndr_print_ptr(ndr, "names", r->in.names);
10342 ndr_print_lsa_TransNameArray2(ndr, "names", r->in.names);
10344 ndr_print_uint16(ndr, "level", r->in.level);
10345 ndr_print_ptr(ndr, "count", r->in.count);
10347 ndr_print_uint32(ndr, "count", *r->in.count);
10349 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
10350 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
10353 if (flags & NDR_OUT) {
10354 ndr_print_struct(ndr, "out", "lsa_LookupSids3");
10356 ndr_print_ptr(ndr, "domains", r->out.domains);
10358 if (r->out.domains) {
10359 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
10362 ndr_print_ptr(ndr, "names", r->out.names);
10364 ndr_print_lsa_TransNameArray2(ndr, "names", r->out.names);
10366 ndr_print_ptr(ndr, "count", r->out.count);
10368 ndr_print_uint32(ndr, "count", *r->out.count);
10370 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10376 static enum ndr_err_code ndr_push_lsa_LookupNames4(struct ndr_push *ndr, int flags, const struct lsa_LookupNames4 *r)
10378 uint32_t cntr_names_0;
10379 if (flags & NDR_IN) {
10380 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
10381 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.num_names));
10382 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10383 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10385 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10386 NDR_CHECK(ndr_push_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10388 if (r->in.sids == NULL) {
10389 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10391 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10392 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->in.level));
10393 if (r->in.count == NULL) {
10394 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10396 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->in.count));
10397 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown1));
10398 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->in.unknown2));
10400 if (flags & NDR_OUT) {
10401 NDR_CHECK(ndr_push_unique_ptr(ndr, r->out.domains));
10402 if (r->out.domains) {
10403 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
10405 if (r->out.sids == NULL) {
10406 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10408 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10409 if (r->out.count == NULL) {
10410 return ndr_push_error(ndr, NDR_ERR_INVALID_POINTER, "NULL [ref] pointer");
10412 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, *r->out.count));
10413 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10415 return NDR_ERR_SUCCESS;
10418 static enum ndr_err_code ndr_pull_lsa_LookupNames4(struct ndr_pull *ndr, int flags, struct lsa_LookupNames4 *r)
10420 uint32_t cntr_names_0;
10421 uint32_t _ptr_domains;
10422 TALLOC_CTX *_mem_save_names_0;
10423 TALLOC_CTX *_mem_save_domains_0;
10424 TALLOC_CTX *_mem_save_sids_0;
10425 TALLOC_CTX *_mem_save_count_0;
10426 if (flags & NDR_IN) {
10427 ZERO_STRUCT(r->out);
10429 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.num_names));
10430 if (r->in.num_names < 0 || r->in.num_names > 1000) {
10431 return ndr_pull_error(ndr, NDR_ERR_RANGE, "value out of range");
10433 NDR_CHECK(ndr_pull_array_size(ndr, &r->in.names));
10434 NDR_PULL_ALLOC_N(ndr, r->in.names, ndr_get_array_size(ndr, &r->in.names));
10435 _mem_save_names_0 = NDR_PULL_GET_MEM_CTX(ndr);
10436 NDR_PULL_SET_MEM_CTX(ndr, r->in.names, 0);
10437 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10438 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_SCALARS, &r->in.names[cntr_names_0]));
10440 for (cntr_names_0 = 0; cntr_names_0 < r->in.num_names; cntr_names_0++) {
10441 NDR_CHECK(ndr_pull_lsa_String(ndr, NDR_BUFFERS, &r->in.names[cntr_names_0]));
10443 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_names_0, 0);
10444 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10445 NDR_PULL_ALLOC(ndr, r->in.sids);
10447 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10448 NDR_PULL_SET_MEM_CTX(ndr, r->in.sids, LIBNDR_FLAG_REF_ALLOC);
10449 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->in.sids));
10450 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10451 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->in.level));
10452 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10453 NDR_PULL_ALLOC(ndr, r->in.count);
10455 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10456 NDR_PULL_SET_MEM_CTX(ndr, r->in.count, LIBNDR_FLAG_REF_ALLOC);
10457 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->in.count));
10458 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10459 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown1));
10460 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->in.unknown2));
10461 NDR_PULL_ALLOC(ndr, r->out.sids);
10462 *r->out.sids = *r->in.sids;
10463 NDR_PULL_ALLOC(ndr, r->out.count);
10464 *r->out.count = *r->in.count;
10466 NDR_CHECK(ndr_check_array_size(ndr, (void*)&r->in.names, r->in.num_names));
10469 if (flags & NDR_OUT) {
10470 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_domains));
10471 if (_ptr_domains) {
10472 NDR_PULL_ALLOC(ndr, r->out.domains);
10474 r->out.domains = NULL;
10476 if (r->out.domains) {
10477 _mem_save_domains_0 = NDR_PULL_GET_MEM_CTX(ndr);
10478 NDR_PULL_SET_MEM_CTX(ndr, r->out.domains, 0);
10479 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.domains));
10480 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_domains_0, 0);
10482 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10483 NDR_PULL_ALLOC(ndr, r->out.sids);
10485 _mem_save_sids_0 = NDR_PULL_GET_MEM_CTX(ndr);
10486 NDR_PULL_SET_MEM_CTX(ndr, r->out.sids, LIBNDR_FLAG_REF_ALLOC);
10487 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr, NDR_SCALARS|NDR_BUFFERS, r->out.sids));
10488 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_sids_0, LIBNDR_FLAG_REF_ALLOC);
10489 if (ndr->flags & LIBNDR_FLAG_REF_ALLOC) {
10490 NDR_PULL_ALLOC(ndr, r->out.count);
10492 _mem_save_count_0 = NDR_PULL_GET_MEM_CTX(ndr);
10493 NDR_PULL_SET_MEM_CTX(ndr, r->out.count, LIBNDR_FLAG_REF_ALLOC);
10494 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, r->out.count));
10495 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_count_0, LIBNDR_FLAG_REF_ALLOC);
10496 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10498 return NDR_ERR_SUCCESS;
10501 _PUBLIC_ void ndr_print_lsa_LookupNames4(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LookupNames4 *r)
10503 uint32_t cntr_names_0;
10504 ndr_print_struct(ndr, name, "lsa_LookupNames4");
10506 if (flags & NDR_SET_VALUES) {
10507 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10509 if (flags & NDR_IN) {
10510 ndr_print_struct(ndr, "in", "lsa_LookupNames4");
10512 ndr_print_uint32(ndr, "num_names", r->in.num_names);
10513 ndr->print(ndr, "%s: ARRAY(%d)", "names", r->in.num_names);
10515 for (cntr_names_0=0;cntr_names_0<r->in.num_names;cntr_names_0++) {
10517 asprintf(&idx_0, "[%d]", cntr_names_0);
10519 ndr_print_lsa_String(ndr, "names", &r->in.names[cntr_names_0]);
10524 ndr_print_ptr(ndr, "sids", r->in.sids);
10526 ndr_print_lsa_TransSidArray3(ndr, "sids", r->in.sids);
10528 ndr_print_uint16(ndr, "level", r->in.level);
10529 ndr_print_ptr(ndr, "count", r->in.count);
10531 ndr_print_uint32(ndr, "count", *r->in.count);
10533 ndr_print_uint32(ndr, "unknown1", r->in.unknown1);
10534 ndr_print_uint32(ndr, "unknown2", r->in.unknown2);
10537 if (flags & NDR_OUT) {
10538 ndr_print_struct(ndr, "out", "lsa_LookupNames4");
10540 ndr_print_ptr(ndr, "domains", r->out.domains);
10542 if (r->out.domains) {
10543 ndr_print_lsa_RefDomainList(ndr, "domains", r->out.domains);
10546 ndr_print_ptr(ndr, "sids", r->out.sids);
10548 ndr_print_lsa_TransSidArray3(ndr, "sids", r->out.sids);
10550 ndr_print_ptr(ndr, "count", r->out.count);
10552 ndr_print_uint32(ndr, "count", *r->out.count);
10554 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10560 static enum ndr_err_code ndr_push_lsa_LSAROPENPOLICYSCE(struct ndr_push *ndr, int flags, const struct lsa_LSAROPENPOLICYSCE *r)
10562 if (flags & NDR_IN) {
10564 if (flags & NDR_OUT) {
10565 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10567 return NDR_ERR_SUCCESS;
10570 static enum ndr_err_code ndr_pull_lsa_LSAROPENPOLICYSCE(struct ndr_pull *ndr, int flags, struct lsa_LSAROPENPOLICYSCE *r)
10572 if (flags & NDR_IN) {
10574 if (flags & NDR_OUT) {
10575 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10577 return NDR_ERR_SUCCESS;
10580 _PUBLIC_ void ndr_print_lsa_LSAROPENPOLICYSCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSAROPENPOLICYSCE *r)
10582 ndr_print_struct(ndr, name, "lsa_LSAROPENPOLICYSCE");
10584 if (flags & NDR_SET_VALUES) {
10585 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10587 if (flags & NDR_IN) {
10588 ndr_print_struct(ndr, "in", "lsa_LSAROPENPOLICYSCE");
10592 if (flags & NDR_OUT) {
10593 ndr_print_struct(ndr, "out", "lsa_LSAROPENPOLICYSCE");
10595 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10601 static enum ndr_err_code ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_push *ndr, int flags, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
10603 if (flags & NDR_IN) {
10605 if (flags & NDR_OUT) {
10606 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10608 return NDR_ERR_SUCCESS;
10611 static enum ndr_err_code ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_pull *ndr, int flags, struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
10613 if (flags & NDR_IN) {
10615 if (flags & NDR_OUT) {
10616 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10618 return NDR_ERR_SUCCESS;
10621 _PUBLIC_ void ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE *r)
10623 ndr_print_struct(ndr, name, "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
10625 if (flags & NDR_SET_VALUES) {
10626 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10628 if (flags & NDR_IN) {
10629 ndr_print_struct(ndr, "in", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
10633 if (flags & NDR_OUT) {
10634 ndr_print_struct(ndr, "out", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
10636 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10642 static enum ndr_err_code ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_push *ndr, int flags, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
10644 if (flags & NDR_IN) {
10646 if (flags & NDR_OUT) {
10647 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10649 return NDR_ERR_SUCCESS;
10652 static enum ndr_err_code ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_pull *ndr, int flags, struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
10654 if (flags & NDR_IN) {
10656 if (flags & NDR_OUT) {
10657 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10659 return NDR_ERR_SUCCESS;
10662 _PUBLIC_ void ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE *r)
10664 ndr_print_struct(ndr, name, "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
10666 if (flags & NDR_SET_VALUES) {
10667 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10669 if (flags & NDR_IN) {
10670 ndr_print_struct(ndr, "in", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
10674 if (flags & NDR_OUT) {
10675 ndr_print_struct(ndr, "out", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
10677 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10683 static enum ndr_err_code ndr_push_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_push *ndr, int flags, const struct lsa_LSARADTREPORTSECURITYEVENT *r)
10685 if (flags & NDR_IN) {
10687 if (flags & NDR_OUT) {
10688 NDR_CHECK(ndr_push_NTSTATUS(ndr, NDR_SCALARS, r->out.result));
10690 return NDR_ERR_SUCCESS;
10693 static enum ndr_err_code ndr_pull_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_pull *ndr, int flags, struct lsa_LSARADTREPORTSECURITYEVENT *r)
10695 if (flags & NDR_IN) {
10697 if (flags & NDR_OUT) {
10698 NDR_CHECK(ndr_pull_NTSTATUS(ndr, NDR_SCALARS, &r->out.result));
10700 return NDR_ERR_SUCCESS;
10703 _PUBLIC_ void ndr_print_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_print *ndr, const char *name, int flags, const struct lsa_LSARADTREPORTSECURITYEVENT *r)
10705 ndr_print_struct(ndr, name, "lsa_LSARADTREPORTSECURITYEVENT");
10707 if (flags & NDR_SET_VALUES) {
10708 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
10710 if (flags & NDR_IN) {
10711 ndr_print_struct(ndr, "in", "lsa_LSARADTREPORTSECURITYEVENT");
10715 if (flags & NDR_OUT) {
10716 ndr_print_struct(ndr, "out", "lsa_LSARADTREPORTSECURITYEVENT");
10718 ndr_print_NTSTATUS(ndr, "result", r->out.result);
10724 static const struct ndr_interface_call lsarpc_calls[] = {
10727 sizeof(struct lsa_Close),
10728 (ndr_push_flags_fn_t) ndr_push_lsa_Close,
10729 (ndr_pull_flags_fn_t) ndr_pull_lsa_Close,
10730 (ndr_print_function_t) ndr_print_lsa_Close,
10735 sizeof(struct lsa_Delete),
10736 (ndr_push_flags_fn_t) ndr_push_lsa_Delete,
10737 (ndr_pull_flags_fn_t) ndr_pull_lsa_Delete,
10738 (ndr_print_function_t) ndr_print_lsa_Delete,
10743 sizeof(struct lsa_EnumPrivs),
10744 (ndr_push_flags_fn_t) ndr_push_lsa_EnumPrivs,
10745 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumPrivs,
10746 (ndr_print_function_t) ndr_print_lsa_EnumPrivs,
10750 "lsa_QuerySecurity",
10751 sizeof(struct lsa_QuerySecurity),
10752 (ndr_push_flags_fn_t) ndr_push_lsa_QuerySecurity,
10753 (ndr_pull_flags_fn_t) ndr_pull_lsa_QuerySecurity,
10754 (ndr_print_function_t) ndr_print_lsa_QuerySecurity,
10759 sizeof(struct lsa_SetSecObj),
10760 (ndr_push_flags_fn_t) ndr_push_lsa_SetSecObj,
10761 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSecObj,
10762 (ndr_print_function_t) ndr_print_lsa_SetSecObj,
10766 "lsa_ChangePassword",
10767 sizeof(struct lsa_ChangePassword),
10768 (ndr_push_flags_fn_t) ndr_push_lsa_ChangePassword,
10769 (ndr_pull_flags_fn_t) ndr_pull_lsa_ChangePassword,
10770 (ndr_print_function_t) ndr_print_lsa_ChangePassword,
10775 sizeof(struct lsa_OpenPolicy),
10776 (ndr_push_flags_fn_t) ndr_push_lsa_OpenPolicy,
10777 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenPolicy,
10778 (ndr_print_function_t) ndr_print_lsa_OpenPolicy,
10782 "lsa_QueryInfoPolicy",
10783 sizeof(struct lsa_QueryInfoPolicy),
10784 (ndr_push_flags_fn_t) ndr_push_lsa_QueryInfoPolicy,
10785 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryInfoPolicy,
10786 (ndr_print_function_t) ndr_print_lsa_QueryInfoPolicy,
10790 "lsa_SetInfoPolicy",
10791 sizeof(struct lsa_SetInfoPolicy),
10792 (ndr_push_flags_fn_t) ndr_push_lsa_SetInfoPolicy,
10793 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInfoPolicy,
10794 (ndr_print_function_t) ndr_print_lsa_SetInfoPolicy,
10798 "lsa_ClearAuditLog",
10799 sizeof(struct lsa_ClearAuditLog),
10800 (ndr_push_flags_fn_t) ndr_push_lsa_ClearAuditLog,
10801 (ndr_pull_flags_fn_t) ndr_pull_lsa_ClearAuditLog,
10802 (ndr_print_function_t) ndr_print_lsa_ClearAuditLog,
10806 "lsa_CreateAccount",
10807 sizeof(struct lsa_CreateAccount),
10808 (ndr_push_flags_fn_t) ndr_push_lsa_CreateAccount,
10809 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateAccount,
10810 (ndr_print_function_t) ndr_print_lsa_CreateAccount,
10814 "lsa_EnumAccounts",
10815 sizeof(struct lsa_EnumAccounts),
10816 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccounts,
10817 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccounts,
10818 (ndr_print_function_t) ndr_print_lsa_EnumAccounts,
10822 "lsa_CreateTrustedDomain",
10823 sizeof(struct lsa_CreateTrustedDomain),
10824 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomain,
10825 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomain,
10826 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomain,
10830 "lsa_EnumTrustDom",
10831 sizeof(struct lsa_EnumTrustDom),
10832 (ndr_push_flags_fn_t) ndr_push_lsa_EnumTrustDom,
10833 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumTrustDom,
10834 (ndr_print_function_t) ndr_print_lsa_EnumTrustDom,
10839 sizeof(struct lsa_LookupNames),
10840 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames,
10841 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames,
10842 (ndr_print_function_t) ndr_print_lsa_LookupNames,
10847 sizeof(struct lsa_LookupSids),
10848 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids,
10849 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids,
10850 (ndr_print_function_t) ndr_print_lsa_LookupSids,
10854 "lsa_CreateSecret",
10855 sizeof(struct lsa_CreateSecret),
10856 (ndr_push_flags_fn_t) ndr_push_lsa_CreateSecret,
10857 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateSecret,
10858 (ndr_print_function_t) ndr_print_lsa_CreateSecret,
10863 sizeof(struct lsa_OpenAccount),
10864 (ndr_push_flags_fn_t) ndr_push_lsa_OpenAccount,
10865 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenAccount,
10866 (ndr_print_function_t) ndr_print_lsa_OpenAccount,
10870 "lsa_EnumPrivsAccount",
10871 sizeof(struct lsa_EnumPrivsAccount),
10872 (ndr_push_flags_fn_t) ndr_push_lsa_EnumPrivsAccount,
10873 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumPrivsAccount,
10874 (ndr_print_function_t) ndr_print_lsa_EnumPrivsAccount,
10878 "lsa_AddPrivilegesToAccount",
10879 sizeof(struct lsa_AddPrivilegesToAccount),
10880 (ndr_push_flags_fn_t) ndr_push_lsa_AddPrivilegesToAccount,
10881 (ndr_pull_flags_fn_t) ndr_pull_lsa_AddPrivilegesToAccount,
10882 (ndr_print_function_t) ndr_print_lsa_AddPrivilegesToAccount,
10886 "lsa_RemovePrivilegesFromAccount",
10887 sizeof(struct lsa_RemovePrivilegesFromAccount),
10888 (ndr_push_flags_fn_t) ndr_push_lsa_RemovePrivilegesFromAccount,
10889 (ndr_pull_flags_fn_t) ndr_pull_lsa_RemovePrivilegesFromAccount,
10890 (ndr_print_function_t) ndr_print_lsa_RemovePrivilegesFromAccount,
10894 "lsa_GetQuotasForAccount",
10895 sizeof(struct lsa_GetQuotasForAccount),
10896 (ndr_push_flags_fn_t) ndr_push_lsa_GetQuotasForAccount,
10897 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetQuotasForAccount,
10898 (ndr_print_function_t) ndr_print_lsa_GetQuotasForAccount,
10902 "lsa_SetQuotasForAccount",
10903 sizeof(struct lsa_SetQuotasForAccount),
10904 (ndr_push_flags_fn_t) ndr_push_lsa_SetQuotasForAccount,
10905 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetQuotasForAccount,
10906 (ndr_print_function_t) ndr_print_lsa_SetQuotasForAccount,
10910 "lsa_GetSystemAccessAccount",
10911 sizeof(struct lsa_GetSystemAccessAccount),
10912 (ndr_push_flags_fn_t) ndr_push_lsa_GetSystemAccessAccount,
10913 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetSystemAccessAccount,
10914 (ndr_print_function_t) ndr_print_lsa_GetSystemAccessAccount,
10918 "lsa_SetSystemAccessAccount",
10919 sizeof(struct lsa_SetSystemAccessAccount),
10920 (ndr_push_flags_fn_t) ndr_push_lsa_SetSystemAccessAccount,
10921 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSystemAccessAccount,
10922 (ndr_print_function_t) ndr_print_lsa_SetSystemAccessAccount,
10926 "lsa_OpenTrustedDomain",
10927 sizeof(struct lsa_OpenTrustedDomain),
10928 (ndr_push_flags_fn_t) ndr_push_lsa_OpenTrustedDomain,
10929 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenTrustedDomain,
10930 (ndr_print_function_t) ndr_print_lsa_OpenTrustedDomain,
10934 "lsa_QueryTrustedDomainInfo",
10935 sizeof(struct lsa_QueryTrustedDomainInfo),
10936 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfo,
10937 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfo,
10938 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfo,
10942 "lsa_SetInformationTrustedDomain",
10943 sizeof(struct lsa_SetInformationTrustedDomain),
10944 (ndr_push_flags_fn_t) ndr_push_lsa_SetInformationTrustedDomain,
10945 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInformationTrustedDomain,
10946 (ndr_print_function_t) ndr_print_lsa_SetInformationTrustedDomain,
10951 sizeof(struct lsa_OpenSecret),
10952 (ndr_push_flags_fn_t) ndr_push_lsa_OpenSecret,
10953 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenSecret,
10954 (ndr_print_function_t) ndr_print_lsa_OpenSecret,
10959 sizeof(struct lsa_SetSecret),
10960 (ndr_push_flags_fn_t) ndr_push_lsa_SetSecret,
10961 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetSecret,
10962 (ndr_print_function_t) ndr_print_lsa_SetSecret,
10967 sizeof(struct lsa_QuerySecret),
10968 (ndr_push_flags_fn_t) ndr_push_lsa_QuerySecret,
10969 (ndr_pull_flags_fn_t) ndr_pull_lsa_QuerySecret,
10970 (ndr_print_function_t) ndr_print_lsa_QuerySecret,
10974 "lsa_LookupPrivValue",
10975 sizeof(struct lsa_LookupPrivValue),
10976 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivValue,
10977 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivValue,
10978 (ndr_print_function_t) ndr_print_lsa_LookupPrivValue,
10982 "lsa_LookupPrivName",
10983 sizeof(struct lsa_LookupPrivName),
10984 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivName,
10985 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivName,
10986 (ndr_print_function_t) ndr_print_lsa_LookupPrivName,
10990 "lsa_LookupPrivDisplayName",
10991 sizeof(struct lsa_LookupPrivDisplayName),
10992 (ndr_push_flags_fn_t) ndr_push_lsa_LookupPrivDisplayName,
10993 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupPrivDisplayName,
10994 (ndr_print_function_t) ndr_print_lsa_LookupPrivDisplayName,
10998 "lsa_DeleteObject",
10999 sizeof(struct lsa_DeleteObject),
11000 (ndr_push_flags_fn_t) ndr_push_lsa_DeleteObject,
11001 (ndr_pull_flags_fn_t) ndr_pull_lsa_DeleteObject,
11002 (ndr_print_function_t) ndr_print_lsa_DeleteObject,
11006 "lsa_EnumAccountsWithUserRight",
11007 sizeof(struct lsa_EnumAccountsWithUserRight),
11008 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccountsWithUserRight,
11009 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccountsWithUserRight,
11010 (ndr_print_function_t) ndr_print_lsa_EnumAccountsWithUserRight,
11014 "lsa_EnumAccountRights",
11015 sizeof(struct lsa_EnumAccountRights),
11016 (ndr_push_flags_fn_t) ndr_push_lsa_EnumAccountRights,
11017 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumAccountRights,
11018 (ndr_print_function_t) ndr_print_lsa_EnumAccountRights,
11022 "lsa_AddAccountRights",
11023 sizeof(struct lsa_AddAccountRights),
11024 (ndr_push_flags_fn_t) ndr_push_lsa_AddAccountRights,
11025 (ndr_pull_flags_fn_t) ndr_pull_lsa_AddAccountRights,
11026 (ndr_print_function_t) ndr_print_lsa_AddAccountRights,
11030 "lsa_RemoveAccountRights",
11031 sizeof(struct lsa_RemoveAccountRights),
11032 (ndr_push_flags_fn_t) ndr_push_lsa_RemoveAccountRights,
11033 (ndr_pull_flags_fn_t) ndr_pull_lsa_RemoveAccountRights,
11034 (ndr_print_function_t) ndr_print_lsa_RemoveAccountRights,
11038 "lsa_QueryTrustedDomainInfoBySid",
11039 sizeof(struct lsa_QueryTrustedDomainInfoBySid),
11040 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfoBySid,
11041 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfoBySid,
11042 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfoBySid,
11046 "lsa_SetTrustedDomainInfo",
11047 sizeof(struct lsa_SetTrustedDomainInfo),
11048 (ndr_push_flags_fn_t) ndr_push_lsa_SetTrustedDomainInfo,
11049 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetTrustedDomainInfo,
11050 (ndr_print_function_t) ndr_print_lsa_SetTrustedDomainInfo,
11054 "lsa_DeleteTrustedDomain",
11055 sizeof(struct lsa_DeleteTrustedDomain),
11056 (ndr_push_flags_fn_t) ndr_push_lsa_DeleteTrustedDomain,
11057 (ndr_pull_flags_fn_t) ndr_pull_lsa_DeleteTrustedDomain,
11058 (ndr_print_function_t) ndr_print_lsa_DeleteTrustedDomain,
11062 "lsa_StorePrivateData",
11063 sizeof(struct lsa_StorePrivateData),
11064 (ndr_push_flags_fn_t) ndr_push_lsa_StorePrivateData,
11065 (ndr_pull_flags_fn_t) ndr_pull_lsa_StorePrivateData,
11066 (ndr_print_function_t) ndr_print_lsa_StorePrivateData,
11070 "lsa_RetrievePrivateData",
11071 sizeof(struct lsa_RetrievePrivateData),
11072 (ndr_push_flags_fn_t) ndr_push_lsa_RetrievePrivateData,
11073 (ndr_pull_flags_fn_t) ndr_pull_lsa_RetrievePrivateData,
11074 (ndr_print_function_t) ndr_print_lsa_RetrievePrivateData,
11079 sizeof(struct lsa_OpenPolicy2),
11080 (ndr_push_flags_fn_t) ndr_push_lsa_OpenPolicy2,
11081 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenPolicy2,
11082 (ndr_print_function_t) ndr_print_lsa_OpenPolicy2,
11087 sizeof(struct lsa_GetUserName),
11088 (ndr_push_flags_fn_t) ndr_push_lsa_GetUserName,
11089 (ndr_pull_flags_fn_t) ndr_pull_lsa_GetUserName,
11090 (ndr_print_function_t) ndr_print_lsa_GetUserName,
11094 "lsa_QueryInfoPolicy2",
11095 sizeof(struct lsa_QueryInfoPolicy2),
11096 (ndr_push_flags_fn_t) ndr_push_lsa_QueryInfoPolicy2,
11097 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryInfoPolicy2,
11098 (ndr_print_function_t) ndr_print_lsa_QueryInfoPolicy2,
11102 "lsa_SetInfoPolicy2",
11103 sizeof(struct lsa_SetInfoPolicy2),
11104 (ndr_push_flags_fn_t) ndr_push_lsa_SetInfoPolicy2,
11105 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetInfoPolicy2,
11106 (ndr_print_function_t) ndr_print_lsa_SetInfoPolicy2,
11110 "lsa_QueryTrustedDomainInfoByName",
11111 sizeof(struct lsa_QueryTrustedDomainInfoByName),
11112 (ndr_push_flags_fn_t) ndr_push_lsa_QueryTrustedDomainInfoByName,
11113 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryTrustedDomainInfoByName,
11114 (ndr_print_function_t) ndr_print_lsa_QueryTrustedDomainInfoByName,
11118 "lsa_SetTrustedDomainInfoByName",
11119 sizeof(struct lsa_SetTrustedDomainInfoByName),
11120 (ndr_push_flags_fn_t) ndr_push_lsa_SetTrustedDomainInfoByName,
11121 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetTrustedDomainInfoByName,
11122 (ndr_print_function_t) ndr_print_lsa_SetTrustedDomainInfoByName,
11126 "lsa_EnumTrustedDomainsEx",
11127 sizeof(struct lsa_EnumTrustedDomainsEx),
11128 (ndr_push_flags_fn_t) ndr_push_lsa_EnumTrustedDomainsEx,
11129 (ndr_pull_flags_fn_t) ndr_pull_lsa_EnumTrustedDomainsEx,
11130 (ndr_print_function_t) ndr_print_lsa_EnumTrustedDomainsEx,
11134 "lsa_CreateTrustedDomainEx",
11135 sizeof(struct lsa_CreateTrustedDomainEx),
11136 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomainEx,
11137 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomainEx,
11138 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomainEx,
11142 "lsa_CloseTrustedDomainEx",
11143 sizeof(struct lsa_CloseTrustedDomainEx),
11144 (ndr_push_flags_fn_t) ndr_push_lsa_CloseTrustedDomainEx,
11145 (ndr_pull_flags_fn_t) ndr_pull_lsa_CloseTrustedDomainEx,
11146 (ndr_print_function_t) ndr_print_lsa_CloseTrustedDomainEx,
11150 "lsa_QueryDomainInformationPolicy",
11151 sizeof(struct lsa_QueryDomainInformationPolicy),
11152 (ndr_push_flags_fn_t) ndr_push_lsa_QueryDomainInformationPolicy,
11153 (ndr_pull_flags_fn_t) ndr_pull_lsa_QueryDomainInformationPolicy,
11154 (ndr_print_function_t) ndr_print_lsa_QueryDomainInformationPolicy,
11158 "lsa_SetDomainInformationPolicy",
11159 sizeof(struct lsa_SetDomainInformationPolicy),
11160 (ndr_push_flags_fn_t) ndr_push_lsa_SetDomainInformationPolicy,
11161 (ndr_pull_flags_fn_t) ndr_pull_lsa_SetDomainInformationPolicy,
11162 (ndr_print_function_t) ndr_print_lsa_SetDomainInformationPolicy,
11166 "lsa_OpenTrustedDomainByName",
11167 sizeof(struct lsa_OpenTrustedDomainByName),
11168 (ndr_push_flags_fn_t) ndr_push_lsa_OpenTrustedDomainByName,
11169 (ndr_pull_flags_fn_t) ndr_pull_lsa_OpenTrustedDomainByName,
11170 (ndr_print_function_t) ndr_print_lsa_OpenTrustedDomainByName,
11175 sizeof(struct lsa_TestCall),
11176 (ndr_push_flags_fn_t) ndr_push_lsa_TestCall,
11177 (ndr_pull_flags_fn_t) ndr_pull_lsa_TestCall,
11178 (ndr_print_function_t) ndr_print_lsa_TestCall,
11183 sizeof(struct lsa_LookupSids2),
11184 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids2,
11185 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids2,
11186 (ndr_print_function_t) ndr_print_lsa_LookupSids2,
11190 "lsa_LookupNames2",
11191 sizeof(struct lsa_LookupNames2),
11192 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames2,
11193 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames2,
11194 (ndr_print_function_t) ndr_print_lsa_LookupNames2,
11198 "lsa_CreateTrustedDomainEx2",
11199 sizeof(struct lsa_CreateTrustedDomainEx2),
11200 (ndr_push_flags_fn_t) ndr_push_lsa_CreateTrustedDomainEx2,
11201 (ndr_pull_flags_fn_t) ndr_pull_lsa_CreateTrustedDomainEx2,
11202 (ndr_print_function_t) ndr_print_lsa_CreateTrustedDomainEx2,
11207 sizeof(struct lsa_CREDRWRITE),
11208 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRWRITE,
11209 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRWRITE,
11210 (ndr_print_function_t) ndr_print_lsa_CREDRWRITE,
11215 sizeof(struct lsa_CREDRREAD),
11216 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRREAD,
11217 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRREAD,
11218 (ndr_print_function_t) ndr_print_lsa_CREDRREAD,
11222 "lsa_CREDRENUMERATE",
11223 sizeof(struct lsa_CREDRENUMERATE),
11224 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRENUMERATE,
11225 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRENUMERATE,
11226 (ndr_print_function_t) ndr_print_lsa_CREDRENUMERATE,
11230 "lsa_CREDRWRITEDOMAINCREDENTIALS",
11231 sizeof(struct lsa_CREDRWRITEDOMAINCREDENTIALS),
11232 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS,
11233 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS,
11234 (ndr_print_function_t) ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS,
11238 "lsa_CREDRREADDOMAINCREDENTIALS",
11239 sizeof(struct lsa_CREDRREADDOMAINCREDENTIALS),
11240 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRREADDOMAINCREDENTIALS,
11241 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS,
11242 (ndr_print_function_t) ndr_print_lsa_CREDRREADDOMAINCREDENTIALS,
11247 sizeof(struct lsa_CREDRDELETE),
11248 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRDELETE,
11249 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRDELETE,
11250 (ndr_print_function_t) ndr_print_lsa_CREDRDELETE,
11254 "lsa_CREDRGETTARGETINFO",
11255 sizeof(struct lsa_CREDRGETTARGETINFO),
11256 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRGETTARGETINFO,
11257 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRGETTARGETINFO,
11258 (ndr_print_function_t) ndr_print_lsa_CREDRGETTARGETINFO,
11262 "lsa_CREDRPROFILELOADED",
11263 sizeof(struct lsa_CREDRPROFILELOADED),
11264 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRPROFILELOADED,
11265 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRPROFILELOADED,
11266 (ndr_print_function_t) ndr_print_lsa_CREDRPROFILELOADED,
11270 "lsa_LookupNames3",
11271 sizeof(struct lsa_LookupNames3),
11272 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames3,
11273 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames3,
11274 (ndr_print_function_t) ndr_print_lsa_LookupNames3,
11278 "lsa_CREDRGETSESSIONTYPES",
11279 sizeof(struct lsa_CREDRGETSESSIONTYPES),
11280 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRGETSESSIONTYPES,
11281 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRGETSESSIONTYPES,
11282 (ndr_print_function_t) ndr_print_lsa_CREDRGETSESSIONTYPES,
11286 "lsa_LSARREGISTERAUDITEVENT",
11287 sizeof(struct lsa_LSARREGISTERAUDITEVENT),
11288 (ndr_push_flags_fn_t) ndr_push_lsa_LSARREGISTERAUDITEVENT,
11289 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARREGISTERAUDITEVENT,
11290 (ndr_print_function_t) ndr_print_lsa_LSARREGISTERAUDITEVENT,
11294 "lsa_LSARGENAUDITEVENT",
11295 sizeof(struct lsa_LSARGENAUDITEVENT),
11296 (ndr_push_flags_fn_t) ndr_push_lsa_LSARGENAUDITEVENT,
11297 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARGENAUDITEVENT,
11298 (ndr_print_function_t) ndr_print_lsa_LSARGENAUDITEVENT,
11302 "lsa_LSARUNREGISTERAUDITEVENT",
11303 sizeof(struct lsa_LSARUNREGISTERAUDITEVENT),
11304 (ndr_push_flags_fn_t) ndr_push_lsa_LSARUNREGISTERAUDITEVENT,
11305 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARUNREGISTERAUDITEVENT,
11306 (ndr_print_function_t) ndr_print_lsa_LSARUNREGISTERAUDITEVENT,
11310 "lsa_LSARQUERYFORESTTRUSTINFORMATION",
11311 sizeof(struct lsa_LSARQUERYFORESTTRUSTINFORMATION),
11312 (ndr_push_flags_fn_t) ndr_push_lsa_LSARQUERYFORESTTRUSTINFORMATION,
11313 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARQUERYFORESTTRUSTINFORMATION,
11314 (ndr_print_function_t) ndr_print_lsa_LSARQUERYFORESTTRUSTINFORMATION,
11318 "lsa_LSARSETFORESTTRUSTINFORMATION",
11319 sizeof(struct lsa_LSARSETFORESTTRUSTINFORMATION),
11320 (ndr_push_flags_fn_t) ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION,
11321 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION,
11322 (ndr_print_function_t) ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION,
11327 sizeof(struct lsa_CREDRRENAME),
11328 (ndr_push_flags_fn_t) ndr_push_lsa_CREDRRENAME,
11329 (ndr_pull_flags_fn_t) ndr_pull_lsa_CREDRRENAME,
11330 (ndr_print_function_t) ndr_print_lsa_CREDRRENAME,
11335 sizeof(struct lsa_LookupSids3),
11336 (ndr_push_flags_fn_t) ndr_push_lsa_LookupSids3,
11337 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupSids3,
11338 (ndr_print_function_t) ndr_print_lsa_LookupSids3,
11342 "lsa_LookupNames4",
11343 sizeof(struct lsa_LookupNames4),
11344 (ndr_push_flags_fn_t) ndr_push_lsa_LookupNames4,
11345 (ndr_pull_flags_fn_t) ndr_pull_lsa_LookupNames4,
11346 (ndr_print_function_t) ndr_print_lsa_LookupNames4,
11350 "lsa_LSAROPENPOLICYSCE",
11351 sizeof(struct lsa_LSAROPENPOLICYSCE),
11352 (ndr_push_flags_fn_t) ndr_push_lsa_LSAROPENPOLICYSCE,
11353 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSAROPENPOLICYSCE,
11354 (ndr_print_function_t) ndr_print_lsa_LSAROPENPOLICYSCE,
11358 "lsa_LSARADTREGISTERSECURITYEVENTSOURCE",
11359 sizeof(struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE),
11360 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
11361 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
11362 (ndr_print_function_t) ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE,
11366 "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE",
11367 sizeof(struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE),
11368 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
11369 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
11370 (ndr_print_function_t) ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE,
11374 "lsa_LSARADTREPORTSECURITYEVENT",
11375 sizeof(struct lsa_LSARADTREPORTSECURITYEVENT),
11376 (ndr_push_flags_fn_t) ndr_push_lsa_LSARADTREPORTSECURITYEVENT,
11377 (ndr_pull_flags_fn_t) ndr_pull_lsa_LSARADTREPORTSECURITYEVENT,
11378 (ndr_print_function_t) ndr_print_lsa_LSARADTREPORTSECURITYEVENT,
11381 { NULL, 0, NULL, NULL, NULL, false }
11384 static const char * const lsarpc_endpoint_strings[] = {
11385 "ncacn_np:[\\pipe\\lsarpc]",
11386 "ncacn_np:[\\pipe\\netlogon]",
11387 "ncacn_np:[\\pipe\\lsass]",
11392 static const struct ndr_interface_string_array lsarpc_endpoints = {
11394 .names = lsarpc_endpoint_strings
11397 static const char * const lsarpc_authservice_strings[] = {
11401 static const struct ndr_interface_string_array lsarpc_authservices = {
11403 .names = lsarpc_authservice_strings
11407 const struct ndr_interface_table ndr_table_lsarpc = {
11410 {0x12345778,0x1234,0xabcd,{0xef,0x00},{0x01,0x23,0x45,0x67,0x89,0xab}},
11413 .helpstring = NDR_LSARPC_HELPSTRING,
11415 .calls = lsarpc_calls,
11416 .endpoints = &lsarpc_endpoints,
11417 .authservices = &lsarpc_authservices