1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_lsa.h"
6 #include "librpc/gen_ndr/ndr_security.h"
7 _PUBLIC_ NTSTATUS
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
));
26 _PUBLIC_ NTSTATUS
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));
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_ NTSTATUS
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
));
97 _PUBLIC_ NTSTATUS
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));
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_ NTSTATUS
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
]));
171 _PUBLIC_ NTSTATUS
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
));
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_ NTSTATUS
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
;
262 _PUBLIC_ NTSTATUS
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
;
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 NTSTATUS
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
) {
325 NTSTATUS
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
) {
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 NTSTATUS
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
));
359 NTSTATUS
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
));
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 NTSTATUS
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
]));
403 NTSTATUS
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
));
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 NTSTATUS
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
) {
482 NTSTATUS
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
) {
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 NTSTATUS
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
));
538 NTSTATUS
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);
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 NTSTATUS
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
) {
662 NTSTATUS
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
) {
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 NTSTATUS
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
]));
713 NTSTATUS
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
));
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 NTSTATUS
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
));
793 NTSTATUS
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);
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 NTSTATUS
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
));
845 NTSTATUS
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
));
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 NTSTATUS
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
) {
877 NTSTATUS
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
) {
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 NTSTATUS
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
));
912 NTSTATUS
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
));
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 NTSTATUS
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
) {
951 NTSTATUS
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
) {
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 NTSTATUS
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
) {
992 NTSTATUS
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 NT_STATUS_OK
;
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 NTSTATUS
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 NT_STATUS_OK
;
1024 NTSTATUS
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 NT_STATUS_OK
;
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 NTSTATUS
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 NT_STATUS_OK
;
1056 NTSTATUS
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 NT_STATUS_OK
;
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 NTSTATUS
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 NT_STATUS_OK
;
1101 NTSTATUS
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 NT_STATUS_OK
;
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 NTSTATUS
ndr_push_lsa_PolicyInformation(struct ndr_push
*ndr
, int ndr_flags
, const union lsa_PolicyInformation
*r
)
1152 if (ndr_flags
& NDR_SCALARS
) {
1153 int level
= ndr_push_get_switch_value(ndr
, r
);
1154 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, level
));
1156 case LSA_POLICY_INFO_AUDIT_LOG
:
1157 NDR_CHECK(ndr_push_lsa_AuditLogInfo(ndr
, NDR_SCALARS
, &r
->audit_log
));
1160 case LSA_POLICY_INFO_AUDIT_EVENTS
:
1161 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr
, NDR_SCALARS
, &r
->audit_events
));
1164 case LSA_POLICY_INFO_DOMAIN
:
1165 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->domain
));
1168 case LSA_POLICY_INFO_PD
:
1169 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr
, NDR_SCALARS
, &r
->pd
));
1172 case LSA_POLICY_INFO_ACCOUNT_DOMAIN
:
1173 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->account_domain
));
1176 case LSA_POLICY_INFO_ROLE
:
1177 NDR_CHECK(ndr_push_lsa_ServerRole(ndr
, NDR_SCALARS
, &r
->role
));
1180 case LSA_POLICY_INFO_REPLICA
:
1181 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr
, NDR_SCALARS
, &r
->replica
));
1184 case LSA_POLICY_INFO_QUOTA
:
1185 NDR_CHECK(ndr_push_lsa_DefaultQuotaInfo(ndr
, NDR_SCALARS
, &r
->quota
));
1188 case LSA_POLICY_INFO_DB
:
1189 NDR_CHECK(ndr_push_lsa_ModificationInfo(ndr
, NDR_SCALARS
, &r
->db
));
1192 case LSA_POLICY_INFO_AUDIT_FULL_SET
:
1193 NDR_CHECK(ndr_push_lsa_AuditFullSetInfo(ndr
, NDR_SCALARS
, &r
->auditfullset
));
1196 case LSA_POLICY_INFO_AUDIT_FULL_QUERY
:
1197 NDR_CHECK(ndr_push_lsa_AuditFullQueryInfo(ndr
, NDR_SCALARS
, &r
->auditfullquery
));
1200 case LSA_POLICY_INFO_DNS
:
1201 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr
, NDR_SCALARS
, &r
->dns
));
1205 return ndr_push_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
1208 if (ndr_flags
& NDR_BUFFERS
) {
1209 int level
= ndr_push_get_switch_value(ndr
, r
);
1211 case LSA_POLICY_INFO_AUDIT_LOG
:
1214 case LSA_POLICY_INFO_AUDIT_EVENTS
:
1215 NDR_CHECK(ndr_push_lsa_AuditEventsInfo(ndr
, NDR_BUFFERS
, &r
->audit_events
));
1218 case LSA_POLICY_INFO_DOMAIN
:
1219 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->domain
));
1222 case LSA_POLICY_INFO_PD
:
1223 NDR_CHECK(ndr_push_lsa_PDAccountInfo(ndr
, NDR_BUFFERS
, &r
->pd
));
1226 case LSA_POLICY_INFO_ACCOUNT_DOMAIN
:
1227 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->account_domain
));
1230 case LSA_POLICY_INFO_ROLE
:
1233 case LSA_POLICY_INFO_REPLICA
:
1234 NDR_CHECK(ndr_push_lsa_ReplicaSourceInfo(ndr
, NDR_BUFFERS
, &r
->replica
));
1237 case LSA_POLICY_INFO_QUOTA
:
1240 case LSA_POLICY_INFO_DB
:
1243 case LSA_POLICY_INFO_AUDIT_FULL_SET
:
1246 case LSA_POLICY_INFO_AUDIT_FULL_QUERY
:
1249 case LSA_POLICY_INFO_DNS
:
1250 NDR_CHECK(ndr_push_lsa_DnsDomainInfo(ndr
, NDR_BUFFERS
, &r
->dns
));
1254 return ndr_push_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
1257 return NT_STATUS_OK
;
1260 NTSTATUS
ndr_pull_lsa_PolicyInformation(struct ndr_pull
*ndr
, int ndr_flags
, union lsa_PolicyInformation
*r
)
1264 level
= ndr_pull_get_switch_value(ndr
, r
);
1265 if (ndr_flags
& NDR_SCALARS
) {
1266 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &_level
));
1267 if (_level
!= level
) {
1268 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u for r", _level
);
1271 case LSA_POLICY_INFO_AUDIT_LOG
: {
1272 NDR_CHECK(ndr_pull_lsa_AuditLogInfo(ndr
, NDR_SCALARS
, &r
->audit_log
));
1275 case LSA_POLICY_INFO_AUDIT_EVENTS
: {
1276 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr
, NDR_SCALARS
, &r
->audit_events
));
1279 case LSA_POLICY_INFO_DOMAIN
: {
1280 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->domain
));
1283 case LSA_POLICY_INFO_PD
: {
1284 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr
, NDR_SCALARS
, &r
->pd
));
1287 case LSA_POLICY_INFO_ACCOUNT_DOMAIN
: {
1288 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->account_domain
));
1291 case LSA_POLICY_INFO_ROLE
: {
1292 NDR_CHECK(ndr_pull_lsa_ServerRole(ndr
, NDR_SCALARS
, &r
->role
));
1295 case LSA_POLICY_INFO_REPLICA
: {
1296 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr
, NDR_SCALARS
, &r
->replica
));
1299 case LSA_POLICY_INFO_QUOTA
: {
1300 NDR_CHECK(ndr_pull_lsa_DefaultQuotaInfo(ndr
, NDR_SCALARS
, &r
->quota
));
1303 case LSA_POLICY_INFO_DB
: {
1304 NDR_CHECK(ndr_pull_lsa_ModificationInfo(ndr
, NDR_SCALARS
, &r
->db
));
1307 case LSA_POLICY_INFO_AUDIT_FULL_SET
: {
1308 NDR_CHECK(ndr_pull_lsa_AuditFullSetInfo(ndr
, NDR_SCALARS
, &r
->auditfullset
));
1311 case LSA_POLICY_INFO_AUDIT_FULL_QUERY
: {
1312 NDR_CHECK(ndr_pull_lsa_AuditFullQueryInfo(ndr
, NDR_SCALARS
, &r
->auditfullquery
));
1315 case LSA_POLICY_INFO_DNS
: {
1316 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr
, NDR_SCALARS
, &r
->dns
));
1320 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
1323 if (ndr_flags
& NDR_BUFFERS
) {
1325 case LSA_POLICY_INFO_AUDIT_LOG
:
1328 case LSA_POLICY_INFO_AUDIT_EVENTS
:
1329 NDR_CHECK(ndr_pull_lsa_AuditEventsInfo(ndr
, NDR_BUFFERS
, &r
->audit_events
));
1332 case LSA_POLICY_INFO_DOMAIN
:
1333 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->domain
));
1336 case LSA_POLICY_INFO_PD
:
1337 NDR_CHECK(ndr_pull_lsa_PDAccountInfo(ndr
, NDR_BUFFERS
, &r
->pd
));
1340 case LSA_POLICY_INFO_ACCOUNT_DOMAIN
:
1341 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->account_domain
));
1344 case LSA_POLICY_INFO_ROLE
:
1347 case LSA_POLICY_INFO_REPLICA
:
1348 NDR_CHECK(ndr_pull_lsa_ReplicaSourceInfo(ndr
, NDR_BUFFERS
, &r
->replica
));
1351 case LSA_POLICY_INFO_QUOTA
:
1354 case LSA_POLICY_INFO_DB
:
1357 case LSA_POLICY_INFO_AUDIT_FULL_SET
:
1360 case LSA_POLICY_INFO_AUDIT_FULL_QUERY
:
1363 case LSA_POLICY_INFO_DNS
:
1364 NDR_CHECK(ndr_pull_lsa_DnsDomainInfo(ndr
, NDR_BUFFERS
, &r
->dns
));
1368 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
1371 return NT_STATUS_OK
;
1374 _PUBLIC_
void ndr_print_lsa_PolicyInformation(struct ndr_print
*ndr
, const char *name
, const union lsa_PolicyInformation
*r
)
1377 level
= ndr_print_get_switch_value(ndr
, r
);
1378 ndr_print_union(ndr
, name
, level
, "lsa_PolicyInformation");
1380 case LSA_POLICY_INFO_AUDIT_LOG
:
1381 ndr_print_lsa_AuditLogInfo(ndr
, "audit_log", &r
->audit_log
);
1384 case LSA_POLICY_INFO_AUDIT_EVENTS
:
1385 ndr_print_lsa_AuditEventsInfo(ndr
, "audit_events", &r
->audit_events
);
1388 case LSA_POLICY_INFO_DOMAIN
:
1389 ndr_print_lsa_DomainInfo(ndr
, "domain", &r
->domain
);
1392 case LSA_POLICY_INFO_PD
:
1393 ndr_print_lsa_PDAccountInfo(ndr
, "pd", &r
->pd
);
1396 case LSA_POLICY_INFO_ACCOUNT_DOMAIN
:
1397 ndr_print_lsa_DomainInfo(ndr
, "account_domain", &r
->account_domain
);
1400 case LSA_POLICY_INFO_ROLE
:
1401 ndr_print_lsa_ServerRole(ndr
, "role", &r
->role
);
1404 case LSA_POLICY_INFO_REPLICA
:
1405 ndr_print_lsa_ReplicaSourceInfo(ndr
, "replica", &r
->replica
);
1408 case LSA_POLICY_INFO_QUOTA
:
1409 ndr_print_lsa_DefaultQuotaInfo(ndr
, "quota", &r
->quota
);
1412 case LSA_POLICY_INFO_DB
:
1413 ndr_print_lsa_ModificationInfo(ndr
, "db", &r
->db
);
1416 case LSA_POLICY_INFO_AUDIT_FULL_SET
:
1417 ndr_print_lsa_AuditFullSetInfo(ndr
, "auditfullset", &r
->auditfullset
);
1420 case LSA_POLICY_INFO_AUDIT_FULL_QUERY
:
1421 ndr_print_lsa_AuditFullQueryInfo(ndr
, "auditfullquery", &r
->auditfullquery
);
1424 case LSA_POLICY_INFO_DNS
:
1425 ndr_print_lsa_DnsDomainInfo(ndr
, "dns", &r
->dns
);
1429 ndr_print_bad_level(ndr
, name
, level
);
1433 NTSTATUS
ndr_push_lsa_SidPtr(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_SidPtr
*r
)
1435 if (ndr_flags
& NDR_SCALARS
) {
1436 NDR_CHECK(ndr_push_align(ndr
, 4));
1437 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sid
));
1439 if (ndr_flags
& NDR_BUFFERS
) {
1441 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
1444 return NT_STATUS_OK
;
1447 NTSTATUS
ndr_pull_lsa_SidPtr(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_SidPtr
*r
)
1450 TALLOC_CTX
*_mem_save_sid_0
;
1451 if (ndr_flags
& NDR_SCALARS
) {
1452 NDR_CHECK(ndr_pull_align(ndr
, 4));
1453 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sid
));
1455 NDR_PULL_ALLOC(ndr
, r
->sid
);
1460 if (ndr_flags
& NDR_BUFFERS
) {
1462 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1463 NDR_PULL_SET_MEM_CTX(ndr
, r
->sid
, 0);
1464 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
1465 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, 0);
1468 return NT_STATUS_OK
;
1471 _PUBLIC_
void ndr_print_lsa_SidPtr(struct ndr_print
*ndr
, const char *name
, const struct lsa_SidPtr
*r
)
1473 ndr_print_struct(ndr
, name
, "lsa_SidPtr");
1475 ndr_print_ptr(ndr
, "sid", r
->sid
);
1478 ndr_print_dom_sid2(ndr
, "sid", r
->sid
);
1484 _PUBLIC_ NTSTATUS
ndr_push_lsa_SidArray(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_SidArray
*r
)
1486 uint32_t cntr_sids_1
;
1487 if (ndr_flags
& NDR_SCALARS
) {
1488 NDR_CHECK(ndr_push_align(ndr
, 4));
1489 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_sids
));
1490 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sids
));
1492 if (ndr_flags
& NDR_BUFFERS
) {
1494 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_sids
));
1495 for (cntr_sids_1
= 0; cntr_sids_1
< r
->num_sids
; cntr_sids_1
++) {
1496 NDR_CHECK(ndr_push_lsa_SidPtr(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
1498 for (cntr_sids_1
= 0; cntr_sids_1
< r
->num_sids
; cntr_sids_1
++) {
1499 NDR_CHECK(ndr_push_lsa_SidPtr(ndr
, NDR_BUFFERS
, &r
->sids
[cntr_sids_1
]));
1503 return NT_STATUS_OK
;
1506 _PUBLIC_ NTSTATUS
ndr_pull_lsa_SidArray(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_SidArray
*r
)
1509 uint32_t cntr_sids_1
;
1510 TALLOC_CTX
*_mem_save_sids_0
;
1511 TALLOC_CTX
*_mem_save_sids_1
;
1512 if (ndr_flags
& NDR_SCALARS
) {
1513 NDR_CHECK(ndr_pull_align(ndr
, 4));
1514 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_sids
));
1515 if (r
->num_sids
< 0 || r
->num_sids
> 1000) {
1516 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
1518 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sids
));
1520 NDR_PULL_ALLOC(ndr
, r
->sids
);
1525 if (ndr_flags
& NDR_BUFFERS
) {
1527 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1528 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
1529 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->sids
));
1530 NDR_PULL_ALLOC_N(ndr
, r
->sids
, ndr_get_array_size(ndr
, &r
->sids
));
1531 _mem_save_sids_1
= NDR_PULL_GET_MEM_CTX(ndr
);
1532 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
1533 for (cntr_sids_1
= 0; cntr_sids_1
< r
->num_sids
; cntr_sids_1
++) {
1534 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
1536 for (cntr_sids_1
= 0; cntr_sids_1
< r
->num_sids
; cntr_sids_1
++) {
1537 NDR_CHECK(ndr_pull_lsa_SidPtr(ndr
, NDR_BUFFERS
, &r
->sids
[cntr_sids_1
]));
1539 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_1
, 0);
1540 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, 0);
1543 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->sids
, r
->num_sids
));
1546 return NT_STATUS_OK
;
1549 _PUBLIC_
void ndr_print_lsa_SidArray(struct ndr_print
*ndr
, const char *name
, const struct lsa_SidArray
*r
)
1551 uint32_t cntr_sids_1
;
1552 ndr_print_struct(ndr
, name
, "lsa_SidArray");
1554 ndr_print_uint32(ndr
, "num_sids", r
->num_sids
);
1555 ndr_print_ptr(ndr
, "sids", r
->sids
);
1558 ndr
->print(ndr
, "%s: ARRAY(%d)", "sids", r
->num_sids
);
1560 for (cntr_sids_1
=0;cntr_sids_1
<r
->num_sids
;cntr_sids_1
++) {
1562 asprintf(&idx_1
, "[%d]", cntr_sids_1
);
1564 ndr_print_lsa_SidPtr(ndr
, "sids", &r
->sids
[cntr_sids_1
]);
1574 NTSTATUS
ndr_push_lsa_DomainList(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DomainList
*r
)
1576 uint32_t cntr_domains_1
;
1577 if (ndr_flags
& NDR_SCALARS
) {
1578 NDR_CHECK(ndr_push_align(ndr
, 4));
1579 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1580 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->domains
));
1582 if (ndr_flags
& NDR_BUFFERS
) {
1584 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1585 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1586 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->domains
[cntr_domains_1
]));
1588 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1589 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->domains
[cntr_domains_1
]));
1593 return NT_STATUS_OK
;
1596 NTSTATUS
ndr_pull_lsa_DomainList(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DomainList
*r
)
1598 uint32_t _ptr_domains
;
1599 uint32_t cntr_domains_1
;
1600 TALLOC_CTX
*_mem_save_domains_0
;
1601 TALLOC_CTX
*_mem_save_domains_1
;
1602 if (ndr_flags
& NDR_SCALARS
) {
1603 NDR_CHECK(ndr_pull_align(ndr
, 4));
1604 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
1605 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
1607 NDR_PULL_ALLOC(ndr
, r
->domains
);
1612 if (ndr_flags
& NDR_BUFFERS
) {
1614 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1615 NDR_PULL_SET_MEM_CTX(ndr
, r
->domains
, 0);
1616 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->domains
));
1617 NDR_PULL_ALLOC_N(ndr
, r
->domains
, ndr_get_array_size(ndr
, &r
->domains
));
1618 _mem_save_domains_1
= NDR_PULL_GET_MEM_CTX(ndr
);
1619 NDR_PULL_SET_MEM_CTX(ndr
, r
->domains
, 0);
1620 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1621 NDR_CHECK(ndr_pull_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_pull_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->domains
[cntr_domains_1
]));
1626 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_1
, 0);
1627 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
1630 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->domains
, r
->count
));
1633 return NT_STATUS_OK
;
1636 _PUBLIC_
void ndr_print_lsa_DomainList(struct ndr_print
*ndr
, const char *name
, const struct lsa_DomainList
*r
)
1638 uint32_t cntr_domains_1
;
1639 ndr_print_struct(ndr
, name
, "lsa_DomainList");
1641 ndr_print_uint32(ndr
, "count", r
->count
);
1642 ndr_print_ptr(ndr
, "domains", r
->domains
);
1645 ndr
->print(ndr
, "%s: ARRAY(%d)", "domains", r
->count
);
1647 for (cntr_domains_1
=0;cntr_domains_1
<r
->count
;cntr_domains_1
++) {
1649 asprintf(&idx_1
, "[%d]", cntr_domains_1
);
1651 ndr_print_lsa_DomainInfo(ndr
, "domains", &r
->domains
[cntr_domains_1
]);
1661 NTSTATUS
ndr_push_lsa_SidType(struct ndr_push
*ndr
, int ndr_flags
, enum lsa_SidType r
)
1663 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
));
1664 return NT_STATUS_OK
;
1667 NTSTATUS
ndr_pull_lsa_SidType(struct ndr_pull
*ndr
, int ndr_flags
, enum lsa_SidType
*r
)
1670 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &v
));
1672 return NT_STATUS_OK
;
1675 _PUBLIC_
void ndr_print_lsa_SidType(struct ndr_print
*ndr
, const char *name
, enum lsa_SidType r
)
1677 const char *val
= NULL
;
1680 case SID_NAME_USE_NONE
: val
= "SID_NAME_USE_NONE"; break;
1681 case SID_NAME_USER
: val
= "SID_NAME_USER"; break;
1682 case SID_NAME_DOM_GRP
: val
= "SID_NAME_DOM_GRP"; break;
1683 case SID_NAME_DOMAIN
: val
= "SID_NAME_DOMAIN"; break;
1684 case SID_NAME_ALIAS
: val
= "SID_NAME_ALIAS"; break;
1685 case SID_NAME_WKN_GRP
: val
= "SID_NAME_WKN_GRP"; break;
1686 case SID_NAME_DELETED
: val
= "SID_NAME_DELETED"; break;
1687 case SID_NAME_INVALID
: val
= "SID_NAME_INVALID"; break;
1688 case SID_NAME_UNKNOWN
: val
= "SID_NAME_UNKNOWN"; break;
1689 case SID_NAME_COMPUTER
: val
= "SID_NAME_COMPUTER"; break;
1691 ndr_print_enum(ndr
, name
, "ENUM", val
, r
);
1694 NTSTATUS
ndr_push_lsa_TranslatedSid(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TranslatedSid
*r
)
1696 if (ndr_flags
& NDR_SCALARS
) {
1697 NDR_CHECK(ndr_push_align(ndr
, 4));
1698 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->sid_type
));
1699 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->rid
));
1700 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->sid_index
));
1702 if (ndr_flags
& NDR_BUFFERS
) {
1704 return NT_STATUS_OK
;
1707 NTSTATUS
ndr_pull_lsa_TranslatedSid(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TranslatedSid
*r
)
1709 if (ndr_flags
& NDR_SCALARS
) {
1710 NDR_CHECK(ndr_pull_align(ndr
, 4));
1711 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->sid_type
));
1712 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->rid
));
1713 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->sid_index
));
1715 if (ndr_flags
& NDR_BUFFERS
) {
1717 return NT_STATUS_OK
;
1720 _PUBLIC_
void ndr_print_lsa_TranslatedSid(struct ndr_print
*ndr
, const char *name
, const struct lsa_TranslatedSid
*r
)
1722 ndr_print_struct(ndr
, name
, "lsa_TranslatedSid");
1724 ndr_print_lsa_SidType(ndr
, "sid_type", r
->sid_type
);
1725 ndr_print_uint32(ndr
, "rid", r
->rid
);
1726 ndr_print_uint32(ndr
, "sid_index", r
->sid_index
);
1730 NTSTATUS
ndr_push_lsa_TransSidArray(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TransSidArray
*r
)
1732 uint32_t cntr_sids_1
;
1733 if (ndr_flags
& NDR_SCALARS
) {
1734 NDR_CHECK(ndr_push_align(ndr
, 4));
1735 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1736 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sids
));
1738 if (ndr_flags
& NDR_BUFFERS
) {
1740 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1741 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
1742 NDR_CHECK(ndr_push_lsa_TranslatedSid(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
1746 return NT_STATUS_OK
;
1749 NTSTATUS
ndr_pull_lsa_TransSidArray(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TransSidArray
*r
)
1752 uint32_t cntr_sids_1
;
1753 TALLOC_CTX
*_mem_save_sids_0
;
1754 TALLOC_CTX
*_mem_save_sids_1
;
1755 if (ndr_flags
& NDR_SCALARS
) {
1756 NDR_CHECK(ndr_pull_align(ndr
, 4));
1757 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
1758 if (r
->count
< 0 || r
->count
> 1000) {
1759 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
1761 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sids
));
1763 NDR_PULL_ALLOC(ndr
, r
->sids
);
1768 if (ndr_flags
& NDR_BUFFERS
) {
1770 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1771 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
1772 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->sids
));
1773 NDR_PULL_ALLOC_N(ndr
, r
->sids
, ndr_get_array_size(ndr
, &r
->sids
));
1774 _mem_save_sids_1
= NDR_PULL_GET_MEM_CTX(ndr
);
1775 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
1776 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
1777 NDR_CHECK(ndr_pull_lsa_TranslatedSid(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
1779 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_1
, 0);
1780 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, 0);
1783 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->sids
, r
->count
));
1786 return NT_STATUS_OK
;
1789 _PUBLIC_
void ndr_print_lsa_TransSidArray(struct ndr_print
*ndr
, const char *name
, const struct lsa_TransSidArray
*r
)
1791 uint32_t cntr_sids_1
;
1792 ndr_print_struct(ndr
, name
, "lsa_TransSidArray");
1794 ndr_print_uint32(ndr
, "count", r
->count
);
1795 ndr_print_ptr(ndr
, "sids", r
->sids
);
1798 ndr
->print(ndr
, "%s: ARRAY(%d)", "sids", r
->count
);
1800 for (cntr_sids_1
=0;cntr_sids_1
<r
->count
;cntr_sids_1
++) {
1802 asprintf(&idx_1
, "[%d]", cntr_sids_1
);
1804 ndr_print_lsa_TranslatedSid(ndr
, "sids", &r
->sids
[cntr_sids_1
]);
1814 NTSTATUS
ndr_push_lsa_RefDomainList(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_RefDomainList
*r
)
1816 uint32_t cntr_domains_1
;
1817 if (ndr_flags
& NDR_SCALARS
) {
1818 NDR_CHECK(ndr_push_align(ndr
, 4));
1819 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1820 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->domains
));
1821 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->max_size
));
1823 if (ndr_flags
& NDR_BUFFERS
) {
1825 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1826 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1827 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->domains
[cntr_domains_1
]));
1829 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1830 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->domains
[cntr_domains_1
]));
1834 return NT_STATUS_OK
;
1837 NTSTATUS
ndr_pull_lsa_RefDomainList(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_RefDomainList
*r
)
1839 uint32_t _ptr_domains
;
1840 uint32_t cntr_domains_1
;
1841 TALLOC_CTX
*_mem_save_domains_0
;
1842 TALLOC_CTX
*_mem_save_domains_1
;
1843 if (ndr_flags
& NDR_SCALARS
) {
1844 NDR_CHECK(ndr_pull_align(ndr
, 4));
1845 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
1846 if (r
->count
< 0 || r
->count
> 1000) {
1847 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
1849 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
1851 NDR_PULL_ALLOC(ndr
, r
->domains
);
1855 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->max_size
));
1857 if (ndr_flags
& NDR_BUFFERS
) {
1859 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1860 NDR_PULL_SET_MEM_CTX(ndr
, r
->domains
, 0);
1861 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->domains
));
1862 NDR_PULL_ALLOC_N(ndr
, r
->domains
, ndr_get_array_size(ndr
, &r
->domains
));
1863 _mem_save_domains_1
= NDR_PULL_GET_MEM_CTX(ndr
);
1864 NDR_PULL_SET_MEM_CTX(ndr
, r
->domains
, 0);
1865 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1866 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_SCALARS
, &r
->domains
[cntr_domains_1
]));
1868 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
1869 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_BUFFERS
, &r
->domains
[cntr_domains_1
]));
1871 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_1
, 0);
1872 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
1875 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->domains
, r
->count
));
1878 return NT_STATUS_OK
;
1881 _PUBLIC_
void ndr_print_lsa_RefDomainList(struct ndr_print
*ndr
, const char *name
, const struct lsa_RefDomainList
*r
)
1883 uint32_t cntr_domains_1
;
1884 ndr_print_struct(ndr
, name
, "lsa_RefDomainList");
1886 ndr_print_uint32(ndr
, "count", r
->count
);
1887 ndr_print_ptr(ndr
, "domains", r
->domains
);
1890 ndr
->print(ndr
, "%s: ARRAY(%d)", "domains", r
->count
);
1892 for (cntr_domains_1
=0;cntr_domains_1
<r
->count
;cntr_domains_1
++) {
1894 asprintf(&idx_1
, "[%d]", cntr_domains_1
);
1896 ndr_print_lsa_DomainInfo(ndr
, "domains", &r
->domains
[cntr_domains_1
]);
1903 ndr_print_uint32(ndr
, "max_size", r
->max_size
);
1907 NTSTATUS
ndr_push_lsa_TranslatedName(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TranslatedName
*r
)
1909 if (ndr_flags
& NDR_SCALARS
) {
1910 NDR_CHECK(ndr_push_align(ndr
, 4));
1911 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->sid_type
));
1912 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->name
));
1913 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->sid_index
));
1915 if (ndr_flags
& NDR_BUFFERS
) {
1916 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->name
));
1918 return NT_STATUS_OK
;
1921 NTSTATUS
ndr_pull_lsa_TranslatedName(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TranslatedName
*r
)
1923 if (ndr_flags
& NDR_SCALARS
) {
1924 NDR_CHECK(ndr_pull_align(ndr
, 4));
1925 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->sid_type
));
1926 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->name
));
1927 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->sid_index
));
1929 if (ndr_flags
& NDR_BUFFERS
) {
1930 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->name
));
1932 return NT_STATUS_OK
;
1935 _PUBLIC_
void ndr_print_lsa_TranslatedName(struct ndr_print
*ndr
, const char *name
, const struct lsa_TranslatedName
*r
)
1937 ndr_print_struct(ndr
, name
, "lsa_TranslatedName");
1939 ndr_print_lsa_SidType(ndr
, "sid_type", r
->sid_type
);
1940 ndr_print_lsa_String(ndr
, "name", &r
->name
);
1941 ndr_print_uint32(ndr
, "sid_index", r
->sid_index
);
1945 NTSTATUS
ndr_push_lsa_TransNameArray(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TransNameArray
*r
)
1947 uint32_t cntr_names_1
;
1948 if (ndr_flags
& NDR_SCALARS
) {
1949 NDR_CHECK(ndr_push_align(ndr
, 4));
1950 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1951 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->names
));
1953 if (ndr_flags
& NDR_BUFFERS
) {
1955 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
1956 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
1957 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr
, NDR_SCALARS
, &r
->names
[cntr_names_1
]));
1959 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
1960 NDR_CHECK(ndr_push_lsa_TranslatedName(ndr
, NDR_BUFFERS
, &r
->names
[cntr_names_1
]));
1964 return NT_STATUS_OK
;
1967 NTSTATUS
ndr_pull_lsa_TransNameArray(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TransNameArray
*r
)
1969 uint32_t _ptr_names
;
1970 uint32_t cntr_names_1
;
1971 TALLOC_CTX
*_mem_save_names_0
;
1972 TALLOC_CTX
*_mem_save_names_1
;
1973 if (ndr_flags
& NDR_SCALARS
) {
1974 NDR_CHECK(ndr_pull_align(ndr
, 4));
1975 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
1976 if (r
->count
< 0 || r
->count
> 1000) {
1977 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
1979 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_names
));
1981 NDR_PULL_ALLOC(ndr
, r
->names
);
1986 if (ndr_flags
& NDR_BUFFERS
) {
1988 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1989 NDR_PULL_SET_MEM_CTX(ndr
, r
->names
, 0);
1990 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->names
));
1991 NDR_PULL_ALLOC_N(ndr
, r
->names
, ndr_get_array_size(ndr
, &r
->names
));
1992 _mem_save_names_1
= NDR_PULL_GET_MEM_CTX(ndr
);
1993 NDR_PULL_SET_MEM_CTX(ndr
, r
->names
, 0);
1994 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
1995 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr
, NDR_SCALARS
, &r
->names
[cntr_names_1
]));
1997 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
1998 NDR_CHECK(ndr_pull_lsa_TranslatedName(ndr
, NDR_BUFFERS
, &r
->names
[cntr_names_1
]));
2000 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_1
, 0);
2001 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
2004 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->names
, r
->count
));
2007 return NT_STATUS_OK
;
2010 _PUBLIC_
void ndr_print_lsa_TransNameArray(struct ndr_print
*ndr
, const char *name
, const struct lsa_TransNameArray
*r
)
2012 uint32_t cntr_names_1
;
2013 ndr_print_struct(ndr
, name
, "lsa_TransNameArray");
2015 ndr_print_uint32(ndr
, "count", r
->count
);
2016 ndr_print_ptr(ndr
, "names", r
->names
);
2019 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->count
);
2021 for (cntr_names_1
=0;cntr_names_1
<r
->count
;cntr_names_1
++) {
2023 asprintf(&idx_1
, "[%d]", cntr_names_1
);
2025 ndr_print_lsa_TranslatedName(ndr
, "names", &r
->names
[cntr_names_1
]);
2035 NTSTATUS
ndr_push_lsa_LUIDAttribute(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_LUIDAttribute
*r
)
2037 if (ndr_flags
& NDR_SCALARS
) {
2038 NDR_CHECK(ndr_push_align(ndr
, 4));
2039 NDR_CHECK(ndr_push_lsa_LUID(ndr
, NDR_SCALARS
, &r
->luid
));
2040 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->attribute
));
2042 if (ndr_flags
& NDR_BUFFERS
) {
2044 return NT_STATUS_OK
;
2047 NTSTATUS
ndr_pull_lsa_LUIDAttribute(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_LUIDAttribute
*r
)
2049 if (ndr_flags
& NDR_SCALARS
) {
2050 NDR_CHECK(ndr_pull_align(ndr
, 4));
2051 NDR_CHECK(ndr_pull_lsa_LUID(ndr
, NDR_SCALARS
, &r
->luid
));
2052 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->attribute
));
2054 if (ndr_flags
& NDR_BUFFERS
) {
2056 return NT_STATUS_OK
;
2059 _PUBLIC_
void ndr_print_lsa_LUIDAttribute(struct ndr_print
*ndr
, const char *name
, const struct lsa_LUIDAttribute
*r
)
2061 ndr_print_struct(ndr
, name
, "lsa_LUIDAttribute");
2063 ndr_print_lsa_LUID(ndr
, "luid", &r
->luid
);
2064 ndr_print_uint32(ndr
, "attribute", r
->attribute
);
2068 NTSTATUS
ndr_push_lsa_PrivilegeSet(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_PrivilegeSet
*r
)
2070 uint32_t cntr_set_0
;
2071 if (ndr_flags
& NDR_SCALARS
) {
2072 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
2073 NDR_CHECK(ndr_push_align(ndr
, 4));
2074 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
2075 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->unknown
));
2076 for (cntr_set_0
= 0; cntr_set_0
< r
->count
; cntr_set_0
++) {
2077 NDR_CHECK(ndr_push_lsa_LUIDAttribute(ndr
, NDR_SCALARS
, &r
->set
[cntr_set_0
]));
2080 if (ndr_flags
& NDR_BUFFERS
) {
2082 return NT_STATUS_OK
;
2085 NTSTATUS
ndr_pull_lsa_PrivilegeSet(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_PrivilegeSet
*r
)
2087 uint32_t cntr_set_0
;
2088 TALLOC_CTX
*_mem_save_set_0
;
2089 if (ndr_flags
& NDR_SCALARS
) {
2090 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->set
));
2091 NDR_CHECK(ndr_pull_align(ndr
, 4));
2092 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
2093 if (r
->count
< 0 || r
->count
> 1000) {
2094 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
2096 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->unknown
));
2097 NDR_PULL_ALLOC_N(ndr
, r
->set
, ndr_get_array_size(ndr
, &r
->set
));
2098 _mem_save_set_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2099 NDR_PULL_SET_MEM_CTX(ndr
, r
->set
, 0);
2100 for (cntr_set_0
= 0; cntr_set_0
< r
->count
; cntr_set_0
++) {
2101 NDR_CHECK(ndr_pull_lsa_LUIDAttribute(ndr
, NDR_SCALARS
, &r
->set
[cntr_set_0
]));
2103 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_set_0
, 0);
2105 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->set
, r
->count
));
2108 if (ndr_flags
& NDR_BUFFERS
) {
2110 return NT_STATUS_OK
;
2113 _PUBLIC_
void ndr_print_lsa_PrivilegeSet(struct ndr_print
*ndr
, const char *name
, const struct lsa_PrivilegeSet
*r
)
2115 uint32_t cntr_set_0
;
2116 ndr_print_struct(ndr
, name
, "lsa_PrivilegeSet");
2118 ndr_print_uint32(ndr
, "count", r
->count
);
2119 ndr_print_uint32(ndr
, "unknown", r
->unknown
);
2120 ndr
->print(ndr
, "%s: ARRAY(%d)", "set", r
->count
);
2122 for (cntr_set_0
=0;cntr_set_0
<r
->count
;cntr_set_0
++) {
2124 asprintf(&idx_0
, "[%d]", cntr_set_0
);
2126 ndr_print_lsa_LUIDAttribute(ndr
, "set", &r
->set
[cntr_set_0
]);
2134 NTSTATUS
ndr_push_lsa_DATA_BUF(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DATA_BUF
*r
)
2137 uint32_t _flags_save_STRUCT
= ndr
->flags
;
2138 ndr_set_flags(&ndr
->flags
, LIBNDR_PRINT_ARRAY_HEX
);
2139 if (ndr_flags
& NDR_SCALARS
) {
2140 NDR_CHECK(ndr_push_align(ndr
, 4));
2141 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->length
));
2142 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->size
));
2143 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->data
));
2145 if (ndr_flags
& NDR_BUFFERS
) {
2147 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->size
));
2148 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
2149 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->length
));
2150 NDR_CHECK(ndr_push_array_uint8(ndr
, NDR_SCALARS
, r
->data
, r
->length
));
2153 ndr
->flags
= _flags_save_STRUCT
;
2155 return NT_STATUS_OK
;
2158 NTSTATUS
ndr_pull_lsa_DATA_BUF(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DATA_BUF
*r
)
2161 TALLOC_CTX
*_mem_save_data_0
;
2163 uint32_t _flags_save_STRUCT
= ndr
->flags
;
2164 ndr_set_flags(&ndr
->flags
, LIBNDR_PRINT_ARRAY_HEX
);
2165 if (ndr_flags
& NDR_SCALARS
) {
2166 NDR_CHECK(ndr_pull_align(ndr
, 4));
2167 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->length
));
2168 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->size
));
2169 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_data
));
2171 NDR_PULL_ALLOC(ndr
, r
->data
);
2176 if (ndr_flags
& NDR_BUFFERS
) {
2178 _mem_save_data_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2179 NDR_PULL_SET_MEM_CTX(ndr
, r
->data
, 0);
2180 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->data
));
2181 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->data
));
2182 if (ndr_get_array_length(ndr
, &r
->data
) > ndr_get_array_size(ndr
, &r
->data
)) {
2183 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
));
2185 NDR_PULL_ALLOC_N(ndr
, r
->data
, ndr_get_array_size(ndr
, &r
->data
));
2186 NDR_CHECK(ndr_pull_array_uint8(ndr
, NDR_SCALARS
, r
->data
, ndr_get_array_length(ndr
, &r
->data
)));
2187 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_data_0
, 0);
2190 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->data
, r
->size
));
2193 NDR_CHECK(ndr_check_array_length(ndr
, (void*)&r
->data
, r
->length
));
2196 ndr
->flags
= _flags_save_STRUCT
;
2198 return NT_STATUS_OK
;
2201 _PUBLIC_
void ndr_print_lsa_DATA_BUF(struct ndr_print
*ndr
, const char *name
, const struct lsa_DATA_BUF
*r
)
2203 ndr_print_struct(ndr
, name
, "lsa_DATA_BUF");
2205 uint32_t _flags_save_STRUCT
= ndr
->flags
;
2206 ndr_set_flags(&ndr
->flags
, LIBNDR_PRINT_ARRAY_HEX
);
2208 ndr_print_uint32(ndr
, "length", r
->length
);
2209 ndr_print_uint32(ndr
, "size", r
->size
);
2210 ndr_print_ptr(ndr
, "data", r
->data
);
2213 ndr_print_array_uint8(ndr
, "data", r
->data
, r
->length
);
2217 ndr
->flags
= _flags_save_STRUCT
;
2221 NTSTATUS
ndr_push_lsa_DATA_BUF2(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DATA_BUF2
*r
)
2224 uint32_t _flags_save_STRUCT
= ndr
->flags
;
2225 ndr_set_flags(&ndr
->flags
, LIBNDR_PRINT_ARRAY_HEX
);
2226 if (ndr_flags
& NDR_SCALARS
) {
2227 NDR_CHECK(ndr_push_align(ndr
, 4));
2228 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->size
));
2229 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->data
));
2231 if (ndr_flags
& NDR_BUFFERS
) {
2233 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->size
));
2234 NDR_CHECK(ndr_push_array_uint8(ndr
, NDR_SCALARS
, r
->data
, r
->size
));
2237 ndr
->flags
= _flags_save_STRUCT
;
2239 return NT_STATUS_OK
;
2242 NTSTATUS
ndr_pull_lsa_DATA_BUF2(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DATA_BUF2
*r
)
2245 TALLOC_CTX
*_mem_save_data_0
;
2247 uint32_t _flags_save_STRUCT
= ndr
->flags
;
2248 ndr_set_flags(&ndr
->flags
, LIBNDR_PRINT_ARRAY_HEX
);
2249 if (ndr_flags
& NDR_SCALARS
) {
2250 NDR_CHECK(ndr_pull_align(ndr
, 4));
2251 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->size
));
2252 if (r
->size
< 0 || r
->size
> 65536) {
2253 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
2255 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_data
));
2257 NDR_PULL_ALLOC(ndr
, r
->data
);
2262 if (ndr_flags
& NDR_BUFFERS
) {
2264 _mem_save_data_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2265 NDR_PULL_SET_MEM_CTX(ndr
, r
->data
, 0);
2266 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->data
));
2267 NDR_PULL_ALLOC_N(ndr
, r
->data
, ndr_get_array_size(ndr
, &r
->data
));
2268 NDR_CHECK(ndr_pull_array_uint8(ndr
, NDR_SCALARS
, r
->data
, ndr_get_array_size(ndr
, &r
->data
)));
2269 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_data_0
, 0);
2272 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->data
, r
->size
));
2275 ndr
->flags
= _flags_save_STRUCT
;
2277 return NT_STATUS_OK
;
2280 _PUBLIC_
void ndr_print_lsa_DATA_BUF2(struct ndr_print
*ndr
, const char *name
, const struct lsa_DATA_BUF2
*r
)
2282 ndr_print_struct(ndr
, name
, "lsa_DATA_BUF2");
2284 uint32_t _flags_save_STRUCT
= ndr
->flags
;
2285 ndr_set_flags(&ndr
->flags
, LIBNDR_PRINT_ARRAY_HEX
);
2287 ndr_print_uint32(ndr
, "size", r
->size
);
2288 ndr_print_ptr(ndr
, "data", r
->data
);
2291 ndr_print_array_uint8(ndr
, "data", r
->data
, r
->size
);
2295 ndr
->flags
= _flags_save_STRUCT
;
2299 NTSTATUS
ndr_push_lsa_TrustDomInfoEnum(struct ndr_push
*ndr
, int ndr_flags
, enum lsa_TrustDomInfoEnum r
)
2301 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
));
2302 return NT_STATUS_OK
;
2305 NTSTATUS
ndr_pull_lsa_TrustDomInfoEnum(struct ndr_pull
*ndr
, int ndr_flags
, enum lsa_TrustDomInfoEnum
*r
)
2308 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &v
));
2310 return NT_STATUS_OK
;
2313 _PUBLIC_
void ndr_print_lsa_TrustDomInfoEnum(struct ndr_print
*ndr
, const char *name
, enum lsa_TrustDomInfoEnum r
)
2315 const char *val
= NULL
;
2318 case LSA_TRUSTED_DOMAIN_INFO_NAME
: val
= "LSA_TRUSTED_DOMAIN_INFO_NAME"; break;
2319 case LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO
: val
= "LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO"; break;
2320 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
: val
= "LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET"; break;
2321 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD
: val
= "LSA_TRUSTED_DOMAIN_INFO_PASSWORD"; break;
2322 case LSA_TRUSTED_DOMAIN_INFO_BASIC
: val
= "LSA_TRUSTED_DOMAIN_INFO_BASIC"; break;
2323 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX
: val
= "LSA_TRUSTED_DOMAIN_INFO_INFO_EX"; break;
2324 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
: val
= "LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO"; break;
2325 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
: val
= "LSA_TRUSTED_DOMAIN_INFO_FULL_INFO"; break;
2326 case LSA_TRUSTED_DOMAIN_INFO_11
: val
= "LSA_TRUSTED_DOMAIN_INFO_11"; break;
2327 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL
: val
= "LSA_TRUSTED_DOMAIN_INFO_INFO_ALL"; break;
2329 ndr_print_enum(ndr
, name
, "ENUM", val
, r
);
2332 NTSTATUS
ndr_push_lsa_TrustDomainInfoName(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoName
*r
)
2334 if (ndr_flags
& NDR_SCALARS
) {
2335 NDR_CHECK(ndr_push_align(ndr
, 4));
2336 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->netbios_name
));
2338 if (ndr_flags
& NDR_BUFFERS
) {
2339 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->netbios_name
));
2341 return NT_STATUS_OK
;
2344 NTSTATUS
ndr_pull_lsa_TrustDomainInfoName(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoName
*r
)
2346 if (ndr_flags
& NDR_SCALARS
) {
2347 NDR_CHECK(ndr_pull_align(ndr
, 4));
2348 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->netbios_name
));
2350 if (ndr_flags
& NDR_BUFFERS
) {
2351 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->netbios_name
));
2353 return NT_STATUS_OK
;
2356 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoName(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoName
*r
)
2358 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoName");
2360 ndr_print_lsa_StringLarge(ndr
, "netbios_name", &r
->netbios_name
);
2364 NTSTATUS
ndr_push_lsa_TrustDomainInfoPosixOffset(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoPosixOffset
*r
)
2366 if (ndr_flags
& NDR_SCALARS
) {
2367 NDR_CHECK(ndr_push_align(ndr
, 4));
2368 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->posix_offset
));
2370 if (ndr_flags
& NDR_BUFFERS
) {
2372 return NT_STATUS_OK
;
2375 NTSTATUS
ndr_pull_lsa_TrustDomainInfoPosixOffset(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoPosixOffset
*r
)
2377 if (ndr_flags
& NDR_SCALARS
) {
2378 NDR_CHECK(ndr_pull_align(ndr
, 4));
2379 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2381 if (ndr_flags
& NDR_BUFFERS
) {
2383 return NT_STATUS_OK
;
2386 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoPosixOffset(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoPosixOffset
*r
)
2388 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoPosixOffset");
2390 ndr_print_uint32(ndr
, "posix_offset", r
->posix_offset
);
2394 NTSTATUS
ndr_push_lsa_TrustDomainInfoPassword(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoPassword
*r
)
2396 if (ndr_flags
& NDR_SCALARS
) {
2397 NDR_CHECK(ndr_push_align(ndr
, 4));
2398 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->password
));
2399 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->old_password
));
2401 if (ndr_flags
& NDR_BUFFERS
) {
2403 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->password
));
2405 if (r
->old_password
) {
2406 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->old_password
));
2409 return NT_STATUS_OK
;
2412 NTSTATUS
ndr_pull_lsa_TrustDomainInfoPassword(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoPassword
*r
)
2414 uint32_t _ptr_password
;
2415 TALLOC_CTX
*_mem_save_password_0
;
2416 uint32_t _ptr_old_password
;
2417 TALLOC_CTX
*_mem_save_old_password_0
;
2418 if (ndr_flags
& NDR_SCALARS
) {
2419 NDR_CHECK(ndr_pull_align(ndr
, 4));
2420 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_password
));
2421 if (_ptr_password
) {
2422 NDR_PULL_ALLOC(ndr
, r
->password
);
2426 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_old_password
));
2427 if (_ptr_old_password
) {
2428 NDR_PULL_ALLOC(ndr
, r
->old_password
);
2430 r
->old_password
= NULL
;
2433 if (ndr_flags
& NDR_BUFFERS
) {
2435 _mem_save_password_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2436 NDR_PULL_SET_MEM_CTX(ndr
, r
->password
, 0);
2437 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->password
));
2438 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_password_0
, 0);
2440 if (r
->old_password
) {
2441 _mem_save_old_password_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2442 NDR_PULL_SET_MEM_CTX(ndr
, r
->old_password
, 0);
2443 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->old_password
));
2444 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_old_password_0
, 0);
2447 return NT_STATUS_OK
;
2450 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoPassword(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoPassword
*r
)
2452 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoPassword");
2454 ndr_print_ptr(ndr
, "password", r
->password
);
2457 ndr_print_lsa_DATA_BUF(ndr
, "password", r
->password
);
2460 ndr_print_ptr(ndr
, "old_password", r
->old_password
);
2462 if (r
->old_password
) {
2463 ndr_print_lsa_DATA_BUF(ndr
, "old_password", r
->old_password
);
2469 NTSTATUS
ndr_push_lsa_TrustDomainInfoBasic(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoBasic
*r
)
2471 if (ndr_flags
& NDR_SCALARS
) {
2472 NDR_CHECK(ndr_push_align(ndr
, 4));
2473 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->netbios_name
));
2474 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sid
));
2476 if (ndr_flags
& NDR_BUFFERS
) {
2477 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->netbios_name
));
2479 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
2482 return NT_STATUS_OK
;
2485 NTSTATUS
ndr_pull_lsa_TrustDomainInfoBasic(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoBasic
*r
)
2488 TALLOC_CTX
*_mem_save_sid_0
;
2489 if (ndr_flags
& NDR_SCALARS
) {
2490 NDR_CHECK(ndr_pull_align(ndr
, 4));
2491 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->netbios_name
));
2492 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sid
));
2494 NDR_PULL_ALLOC(ndr
, r
->sid
);
2499 if (ndr_flags
& NDR_BUFFERS
) {
2500 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->netbios_name
));
2502 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2503 NDR_PULL_SET_MEM_CTX(ndr
, r
->sid
, 0);
2504 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
2505 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, 0);
2508 return NT_STATUS_OK
;
2511 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoBasic(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoBasic
*r
)
2513 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoBasic");
2515 ndr_print_lsa_String(ndr
, "netbios_name", &r
->netbios_name
);
2516 ndr_print_ptr(ndr
, "sid", r
->sid
);
2519 ndr_print_dom_sid2(ndr
, "sid", r
->sid
);
2525 NTSTATUS
ndr_push_lsa_TrustDomainInfoInfoEx(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoInfoEx
*r
)
2527 if (ndr_flags
& NDR_SCALARS
) {
2528 NDR_CHECK(ndr_push_align(ndr
, 4));
2529 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->domain_name
));
2530 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->netbios_name
));
2531 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sid
));
2532 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->trust_direction
));
2533 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->trust_type
));
2534 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->trust_attributes
));
2536 if (ndr_flags
& NDR_BUFFERS
) {
2537 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->domain_name
));
2538 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->netbios_name
));
2540 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
2543 return NT_STATUS_OK
;
2546 NTSTATUS
ndr_pull_lsa_TrustDomainInfoInfoEx(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoInfoEx
*r
)
2549 TALLOC_CTX
*_mem_save_sid_0
;
2550 if (ndr_flags
& NDR_SCALARS
) {
2551 NDR_CHECK(ndr_pull_align(ndr
, 4));
2552 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->domain_name
));
2553 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->netbios_name
));
2554 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sid
));
2556 NDR_PULL_ALLOC(ndr
, r
->sid
);
2560 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->trust_direction
));
2561 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->trust_type
));
2562 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->trust_attributes
));
2564 if (ndr_flags
& NDR_BUFFERS
) {
2565 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->domain_name
));
2566 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->netbios_name
));
2568 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2569 NDR_PULL_SET_MEM_CTX(ndr
, r
->sid
, 0);
2570 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
2571 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, 0);
2574 return NT_STATUS_OK
;
2577 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoInfoEx(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoInfoEx
*r
)
2579 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoInfoEx");
2581 ndr_print_lsa_StringLarge(ndr
, "domain_name", &r
->domain_name
);
2582 ndr_print_lsa_StringLarge(ndr
, "netbios_name", &r
->netbios_name
);
2583 ndr_print_ptr(ndr
, "sid", r
->sid
);
2586 ndr_print_dom_sid2(ndr
, "sid", r
->sid
);
2589 ndr_print_uint32(ndr
, "trust_direction", r
->trust_direction
);
2590 ndr_print_uint32(ndr
, "trust_type", r
->trust_type
);
2591 ndr_print_uint32(ndr
, "trust_attributes", r
->trust_attributes
);
2595 NTSTATUS
ndr_push_lsa_TrustDomainInfoBuffer(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoBuffer
*r
)
2597 if (ndr_flags
& NDR_SCALARS
) {
2598 NDR_CHECK(ndr_push_align(ndr
, 8));
2599 NDR_CHECK(ndr_push_NTTIME_hyper(ndr
, NDR_SCALARS
, r
->last_update_time
));
2600 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->secret_type
));
2601 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr
, NDR_SCALARS
, &r
->data
));
2603 if (ndr_flags
& NDR_BUFFERS
) {
2604 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr
, NDR_BUFFERS
, &r
->data
));
2606 return NT_STATUS_OK
;
2609 NTSTATUS
ndr_pull_lsa_TrustDomainInfoBuffer(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoBuffer
*r
)
2611 if (ndr_flags
& NDR_SCALARS
) {
2612 NDR_CHECK(ndr_pull_align(ndr
, 8));
2613 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr
, NDR_SCALARS
, &r
->last_update_time
));
2614 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->secret_type
));
2615 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr
, NDR_SCALARS
, &r
->data
));
2617 if (ndr_flags
& NDR_BUFFERS
) {
2618 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr
, NDR_BUFFERS
, &r
->data
));
2620 return NT_STATUS_OK
;
2623 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoBuffer(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoBuffer
*r
)
2625 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoBuffer");
2627 ndr_print_NTTIME_hyper(ndr
, "last_update_time", r
->last_update_time
);
2628 ndr_print_uint32(ndr
, "secret_type", r
->secret_type
);
2629 ndr_print_lsa_DATA_BUF2(ndr
, "data", &r
->data
);
2633 NTSTATUS
ndr_push_lsa_TrustDomainInfoAuthInfo(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoAuthInfo
*r
)
2635 if (ndr_flags
& NDR_SCALARS
) {
2636 NDR_CHECK(ndr_push_align(ndr
, 4));
2637 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->incoming_count
));
2638 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->incoming_current_auth_info
));
2639 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->incoming_previous_auth_info
));
2640 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->outgoing_count
));
2641 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->outgoing_current_auth_info
));
2642 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->outgoing_previous_auth_info
));
2644 if (ndr_flags
& NDR_BUFFERS
) {
2645 if (r
->incoming_current_auth_info
) {
2646 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->incoming_current_auth_info
));
2648 if (r
->incoming_previous_auth_info
) {
2649 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->incoming_previous_auth_info
));
2651 if (r
->outgoing_current_auth_info
) {
2652 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->outgoing_current_auth_info
));
2654 if (r
->outgoing_previous_auth_info
) {
2655 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->outgoing_previous_auth_info
));
2658 return NT_STATUS_OK
;
2661 NTSTATUS
ndr_pull_lsa_TrustDomainInfoAuthInfo(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoAuthInfo
*r
)
2663 uint32_t _ptr_incoming_current_auth_info
;
2664 TALLOC_CTX
*_mem_save_incoming_current_auth_info_0
;
2665 uint32_t _ptr_incoming_previous_auth_info
;
2666 TALLOC_CTX
*_mem_save_incoming_previous_auth_info_0
;
2667 uint32_t _ptr_outgoing_current_auth_info
;
2668 TALLOC_CTX
*_mem_save_outgoing_current_auth_info_0
;
2669 uint32_t _ptr_outgoing_previous_auth_info
;
2670 TALLOC_CTX
*_mem_save_outgoing_previous_auth_info_0
;
2671 if (ndr_flags
& NDR_SCALARS
) {
2672 NDR_CHECK(ndr_pull_align(ndr
, 4));
2673 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->incoming_count
));
2674 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_incoming_current_auth_info
));
2675 if (_ptr_incoming_current_auth_info
) {
2676 NDR_PULL_ALLOC(ndr
, r
->incoming_current_auth_info
);
2678 r
->incoming_current_auth_info
= NULL
;
2680 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_incoming_previous_auth_info
));
2681 if (_ptr_incoming_previous_auth_info
) {
2682 NDR_PULL_ALLOC(ndr
, r
->incoming_previous_auth_info
);
2684 r
->incoming_previous_auth_info
= NULL
;
2686 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->outgoing_count
));
2687 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_outgoing_current_auth_info
));
2688 if (_ptr_outgoing_current_auth_info
) {
2689 NDR_PULL_ALLOC(ndr
, r
->outgoing_current_auth_info
);
2691 r
->outgoing_current_auth_info
= NULL
;
2693 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_outgoing_previous_auth_info
));
2694 if (_ptr_outgoing_previous_auth_info
) {
2695 NDR_PULL_ALLOC(ndr
, r
->outgoing_previous_auth_info
);
2697 r
->outgoing_previous_auth_info
= NULL
;
2700 if (ndr_flags
& NDR_BUFFERS
) {
2701 if (r
->incoming_current_auth_info
) {
2702 _mem_save_incoming_current_auth_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2703 NDR_PULL_SET_MEM_CTX(ndr
, r
->incoming_current_auth_info
, 0);
2704 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->incoming_current_auth_info
));
2705 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_incoming_current_auth_info_0
, 0);
2707 if (r
->incoming_previous_auth_info
) {
2708 _mem_save_incoming_previous_auth_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2709 NDR_PULL_SET_MEM_CTX(ndr
, r
->incoming_previous_auth_info
, 0);
2710 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->incoming_previous_auth_info
));
2711 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_incoming_previous_auth_info_0
, 0);
2713 if (r
->outgoing_current_auth_info
) {
2714 _mem_save_outgoing_current_auth_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2715 NDR_PULL_SET_MEM_CTX(ndr
, r
->outgoing_current_auth_info
, 0);
2716 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->outgoing_current_auth_info
));
2717 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_outgoing_current_auth_info_0
, 0);
2719 if (r
->outgoing_previous_auth_info
) {
2720 _mem_save_outgoing_previous_auth_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2721 NDR_PULL_SET_MEM_CTX(ndr
, r
->outgoing_previous_auth_info
, 0);
2722 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBuffer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->outgoing_previous_auth_info
));
2723 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_outgoing_previous_auth_info_0
, 0);
2726 return NT_STATUS_OK
;
2729 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoAuthInfo(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoAuthInfo
*r
)
2731 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoAuthInfo");
2733 ndr_print_uint32(ndr
, "incoming_count", r
->incoming_count
);
2734 ndr_print_ptr(ndr
, "incoming_current_auth_info", r
->incoming_current_auth_info
);
2736 if (r
->incoming_current_auth_info
) {
2737 ndr_print_lsa_TrustDomainInfoBuffer(ndr
, "incoming_current_auth_info", r
->incoming_current_auth_info
);
2740 ndr_print_ptr(ndr
, "incoming_previous_auth_info", r
->incoming_previous_auth_info
);
2742 if (r
->incoming_previous_auth_info
) {
2743 ndr_print_lsa_TrustDomainInfoBuffer(ndr
, "incoming_previous_auth_info", r
->incoming_previous_auth_info
);
2746 ndr_print_uint32(ndr
, "outgoing_count", r
->outgoing_count
);
2747 ndr_print_ptr(ndr
, "outgoing_current_auth_info", r
->outgoing_current_auth_info
);
2749 if (r
->outgoing_current_auth_info
) {
2750 ndr_print_lsa_TrustDomainInfoBuffer(ndr
, "outgoing_current_auth_info", r
->outgoing_current_auth_info
);
2753 ndr_print_ptr(ndr
, "outgoing_previous_auth_info", r
->outgoing_previous_auth_info
);
2755 if (r
->outgoing_previous_auth_info
) {
2756 ndr_print_lsa_TrustDomainInfoBuffer(ndr
, "outgoing_previous_auth_info", r
->outgoing_previous_auth_info
);
2762 NTSTATUS
ndr_push_lsa_TrustDomainInfoFullInfo(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoFullInfo
*r
)
2764 if (ndr_flags
& NDR_SCALARS
) {
2765 NDR_CHECK(ndr_push_align(ndr
, 4));
2766 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2767 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2768 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_SCALARS
, &r
->auth_info
));
2770 if (ndr_flags
& NDR_BUFFERS
) {
2771 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2772 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_BUFFERS
, &r
->auth_info
));
2774 return NT_STATUS_OK
;
2777 NTSTATUS
ndr_pull_lsa_TrustDomainInfoFullInfo(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoFullInfo
*r
)
2779 if (ndr_flags
& NDR_SCALARS
) {
2780 NDR_CHECK(ndr_pull_align(ndr
, 4));
2781 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2782 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2783 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_SCALARS
, &r
->auth_info
));
2785 if (ndr_flags
& NDR_BUFFERS
) {
2786 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2787 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_BUFFERS
, &r
->auth_info
));
2789 return NT_STATUS_OK
;
2792 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoFullInfo(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoFullInfo
*r
)
2794 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoFullInfo");
2796 ndr_print_lsa_TrustDomainInfoInfoEx(ndr
, "info_ex", &r
->info_ex
);
2797 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr
, "posix_offset", &r
->posix_offset
);
2798 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr
, "auth_info", &r
->auth_info
);
2802 NTSTATUS
ndr_push_lsa_TrustDomainInfo11(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfo11
*r
)
2804 if (ndr_flags
& NDR_SCALARS
) {
2805 NDR_CHECK(ndr_push_align(ndr
, 4));
2806 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2807 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr
, NDR_SCALARS
, &r
->data1
));
2809 if (ndr_flags
& NDR_BUFFERS
) {
2810 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2811 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr
, NDR_BUFFERS
, &r
->data1
));
2813 return NT_STATUS_OK
;
2816 NTSTATUS
ndr_pull_lsa_TrustDomainInfo11(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfo11
*r
)
2818 if (ndr_flags
& NDR_SCALARS
) {
2819 NDR_CHECK(ndr_pull_align(ndr
, 4));
2820 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2821 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr
, NDR_SCALARS
, &r
->data1
));
2823 if (ndr_flags
& NDR_BUFFERS
) {
2824 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2825 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr
, NDR_BUFFERS
, &r
->data1
));
2827 return NT_STATUS_OK
;
2830 _PUBLIC_
void ndr_print_lsa_TrustDomainInfo11(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfo11
*r
)
2832 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfo11");
2834 ndr_print_lsa_TrustDomainInfoInfoEx(ndr
, "info_ex", &r
->info_ex
);
2835 ndr_print_lsa_DATA_BUF2(ndr
, "data1", &r
->data1
);
2839 NTSTATUS
ndr_push_lsa_TrustDomainInfoInfoAll(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TrustDomainInfoInfoAll
*r
)
2841 if (ndr_flags
& NDR_SCALARS
) {
2842 NDR_CHECK(ndr_push_align(ndr
, 4));
2843 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2844 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr
, NDR_SCALARS
, &r
->data1
));
2845 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2846 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_SCALARS
, &r
->auth_info
));
2848 if (ndr_flags
& NDR_BUFFERS
) {
2849 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2850 NDR_CHECK(ndr_push_lsa_DATA_BUF2(ndr
, NDR_BUFFERS
, &r
->data1
));
2851 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_BUFFERS
, &r
->auth_info
));
2853 return NT_STATUS_OK
;
2856 NTSTATUS
ndr_pull_lsa_TrustDomainInfoInfoAll(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TrustDomainInfoInfoAll
*r
)
2858 if (ndr_flags
& NDR_SCALARS
) {
2859 NDR_CHECK(ndr_pull_align(ndr
, 4));
2860 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2861 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr
, NDR_SCALARS
, &r
->data1
));
2862 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2863 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_SCALARS
, &r
->auth_info
));
2865 if (ndr_flags
& NDR_BUFFERS
) {
2866 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2867 NDR_CHECK(ndr_pull_lsa_DATA_BUF2(ndr
, NDR_BUFFERS
, &r
->data1
));
2868 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_BUFFERS
, &r
->auth_info
));
2870 return NT_STATUS_OK
;
2873 _PUBLIC_
void ndr_print_lsa_TrustDomainInfoInfoAll(struct ndr_print
*ndr
, const char *name
, const struct lsa_TrustDomainInfoInfoAll
*r
)
2875 ndr_print_struct(ndr
, name
, "lsa_TrustDomainInfoInfoAll");
2877 ndr_print_lsa_TrustDomainInfoInfoEx(ndr
, "info_ex", &r
->info_ex
);
2878 ndr_print_lsa_DATA_BUF2(ndr
, "data1", &r
->data1
);
2879 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr
, "posix_offset", &r
->posix_offset
);
2880 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr
, "auth_info", &r
->auth_info
);
2884 NTSTATUS
ndr_push_lsa_TrustedDomainInfo(struct ndr_push
*ndr
, int ndr_flags
, const union lsa_TrustedDomainInfo
*r
)
2886 if (ndr_flags
& NDR_SCALARS
) {
2887 int level
= ndr_push_get_switch_value(ndr
, r
);
2888 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, level
));
2890 case LSA_TRUSTED_DOMAIN_INFO_NAME
:
2891 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr
, NDR_SCALARS
, &r
->name
));
2894 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
:
2895 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPosixOffset(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2898 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD
:
2899 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr
, NDR_SCALARS
, &r
->password
));
2902 case LSA_TRUSTED_DOMAIN_INFO_BASIC
:
2903 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr
, NDR_SCALARS
, &r
->info_basic
));
2906 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX
:
2907 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
2910 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
:
2911 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_SCALARS
, &r
->auth_info
));
2914 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
:
2915 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr
, NDR_SCALARS
, &r
->full_info
));
2918 case LSA_TRUSTED_DOMAIN_INFO_11
:
2919 NDR_CHECK(ndr_push_lsa_TrustDomainInfo11(ndr
, NDR_SCALARS
, &r
->info11
));
2922 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL
:
2923 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoAll(ndr
, NDR_SCALARS
, &r
->info_all
));
2927 return ndr_push_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
2930 if (ndr_flags
& NDR_BUFFERS
) {
2931 int level
= ndr_push_get_switch_value(ndr
, r
);
2933 case LSA_TRUSTED_DOMAIN_INFO_NAME
:
2934 NDR_CHECK(ndr_push_lsa_TrustDomainInfoName(ndr
, NDR_BUFFERS
, &r
->name
));
2937 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
:
2940 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD
:
2941 NDR_CHECK(ndr_push_lsa_TrustDomainInfoPassword(ndr
, NDR_BUFFERS
, &r
->password
));
2944 case LSA_TRUSTED_DOMAIN_INFO_BASIC
:
2945 NDR_CHECK(ndr_push_lsa_TrustDomainInfoBasic(ndr
, NDR_BUFFERS
, &r
->info_basic
));
2948 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX
:
2949 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
2952 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
:
2953 NDR_CHECK(ndr_push_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_BUFFERS
, &r
->auth_info
));
2956 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
:
2957 NDR_CHECK(ndr_push_lsa_TrustDomainInfoFullInfo(ndr
, NDR_BUFFERS
, &r
->full_info
));
2960 case LSA_TRUSTED_DOMAIN_INFO_11
:
2961 NDR_CHECK(ndr_push_lsa_TrustDomainInfo11(ndr
, NDR_BUFFERS
, &r
->info11
));
2964 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL
:
2965 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoAll(ndr
, NDR_BUFFERS
, &r
->info_all
));
2969 return ndr_push_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
2972 return NT_STATUS_OK
;
2975 NTSTATUS
ndr_pull_lsa_TrustedDomainInfo(struct ndr_pull
*ndr
, int ndr_flags
, union lsa_TrustedDomainInfo
*r
)
2979 level
= ndr_pull_get_switch_value(ndr
, r
);
2980 if (ndr_flags
& NDR_SCALARS
) {
2981 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &_level
));
2982 if (_level
!= level
) {
2983 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u for r", _level
);
2986 case LSA_TRUSTED_DOMAIN_INFO_NAME
: {
2987 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr
, NDR_SCALARS
, &r
->name
));
2990 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
: {
2991 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPosixOffset(ndr
, NDR_SCALARS
, &r
->posix_offset
));
2994 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD
: {
2995 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr
, NDR_SCALARS
, &r
->password
));
2998 case LSA_TRUSTED_DOMAIN_INFO_BASIC
: {
2999 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr
, NDR_SCALARS
, &r
->info_basic
));
3002 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX
: {
3003 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->info_ex
));
3006 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
: {
3007 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_SCALARS
, &r
->auth_info
));
3010 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
: {
3011 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr
, NDR_SCALARS
, &r
->full_info
));
3014 case LSA_TRUSTED_DOMAIN_INFO_11
: {
3015 NDR_CHECK(ndr_pull_lsa_TrustDomainInfo11(ndr
, NDR_SCALARS
, &r
->info11
));
3018 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL
: {
3019 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoAll(ndr
, NDR_SCALARS
, &r
->info_all
));
3023 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
3026 if (ndr_flags
& NDR_BUFFERS
) {
3028 case LSA_TRUSTED_DOMAIN_INFO_NAME
:
3029 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoName(ndr
, NDR_BUFFERS
, &r
->name
));
3032 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
:
3035 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD
:
3036 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoPassword(ndr
, NDR_BUFFERS
, &r
->password
));
3039 case LSA_TRUSTED_DOMAIN_INFO_BASIC
:
3040 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoBasic(ndr
, NDR_BUFFERS
, &r
->info_basic
));
3043 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX
:
3044 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->info_ex
));
3047 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
:
3048 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoAuthInfo(ndr
, NDR_BUFFERS
, &r
->auth_info
));
3051 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
:
3052 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoFullInfo(ndr
, NDR_BUFFERS
, &r
->full_info
));
3055 case LSA_TRUSTED_DOMAIN_INFO_11
:
3056 NDR_CHECK(ndr_pull_lsa_TrustDomainInfo11(ndr
, NDR_BUFFERS
, &r
->info11
));
3059 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL
:
3060 NDR_CHECK(ndr_pull_lsa_TrustDomainInfoInfoAll(ndr
, NDR_BUFFERS
, &r
->info_all
));
3064 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
3067 return NT_STATUS_OK
;
3070 _PUBLIC_
void ndr_print_lsa_TrustedDomainInfo(struct ndr_print
*ndr
, const char *name
, const union lsa_TrustedDomainInfo
*r
)
3073 level
= ndr_print_get_switch_value(ndr
, r
);
3074 ndr_print_union(ndr
, name
, level
, "lsa_TrustedDomainInfo");
3076 case LSA_TRUSTED_DOMAIN_INFO_NAME
:
3077 ndr_print_lsa_TrustDomainInfoName(ndr
, "name", &r
->name
);
3080 case LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
:
3081 ndr_print_lsa_TrustDomainInfoPosixOffset(ndr
, "posix_offset", &r
->posix_offset
);
3084 case LSA_TRUSTED_DOMAIN_INFO_PASSWORD
:
3085 ndr_print_lsa_TrustDomainInfoPassword(ndr
, "password", &r
->password
);
3088 case LSA_TRUSTED_DOMAIN_INFO_BASIC
:
3089 ndr_print_lsa_TrustDomainInfoBasic(ndr
, "info_basic", &r
->info_basic
);
3092 case LSA_TRUSTED_DOMAIN_INFO_INFO_EX
:
3093 ndr_print_lsa_TrustDomainInfoInfoEx(ndr
, "info_ex", &r
->info_ex
);
3096 case LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
:
3097 ndr_print_lsa_TrustDomainInfoAuthInfo(ndr
, "auth_info", &r
->auth_info
);
3100 case LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
:
3101 ndr_print_lsa_TrustDomainInfoFullInfo(ndr
, "full_info", &r
->full_info
);
3104 case LSA_TRUSTED_DOMAIN_INFO_11
:
3105 ndr_print_lsa_TrustDomainInfo11(ndr
, "info11", &r
->info11
);
3108 case LSA_TRUSTED_DOMAIN_INFO_INFO_ALL
:
3109 ndr_print_lsa_TrustDomainInfoInfoAll(ndr
, "info_all", &r
->info_all
);
3113 ndr_print_bad_level(ndr
, name
, level
);
3117 NTSTATUS
ndr_push_lsa_DATA_BUF_PTR(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DATA_BUF_PTR
*r
)
3119 if (ndr_flags
& NDR_SCALARS
) {
3120 NDR_CHECK(ndr_push_align(ndr
, 4));
3121 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->buf
));
3123 if (ndr_flags
& NDR_BUFFERS
) {
3125 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->buf
));
3128 return NT_STATUS_OK
;
3131 NTSTATUS
ndr_pull_lsa_DATA_BUF_PTR(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DATA_BUF_PTR
*r
)
3134 TALLOC_CTX
*_mem_save_buf_0
;
3135 if (ndr_flags
& NDR_SCALARS
) {
3136 NDR_CHECK(ndr_pull_align(ndr
, 4));
3137 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_buf
));
3139 NDR_PULL_ALLOC(ndr
, r
->buf
);
3144 if (ndr_flags
& NDR_BUFFERS
) {
3146 _mem_save_buf_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3147 NDR_PULL_SET_MEM_CTX(ndr
, r
->buf
, 0);
3148 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->buf
));
3149 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_buf_0
, 0);
3152 return NT_STATUS_OK
;
3155 _PUBLIC_
void ndr_print_lsa_DATA_BUF_PTR(struct ndr_print
*ndr
, const char *name
, const struct lsa_DATA_BUF_PTR
*r
)
3157 ndr_print_struct(ndr
, name
, "lsa_DATA_BUF_PTR");
3159 ndr_print_ptr(ndr
, "buf", r
->buf
);
3162 ndr_print_lsa_DATA_BUF(ndr
, "buf", r
->buf
);
3168 NTSTATUS
ndr_push_lsa_RightSet(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_RightSet
*r
)
3170 uint32_t cntr_names_1
;
3171 if (ndr_flags
& NDR_SCALARS
) {
3172 NDR_CHECK(ndr_push_align(ndr
, 4));
3173 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3174 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->names
));
3176 if (ndr_flags
& NDR_BUFFERS
) {
3178 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3179 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3180 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_SCALARS
, &r
->names
[cntr_names_1
]));
3182 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3183 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->names
[cntr_names_1
]));
3187 return NT_STATUS_OK
;
3190 NTSTATUS
ndr_pull_lsa_RightSet(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_RightSet
*r
)
3192 uint32_t _ptr_names
;
3193 uint32_t cntr_names_1
;
3194 TALLOC_CTX
*_mem_save_names_0
;
3195 TALLOC_CTX
*_mem_save_names_1
;
3196 if (ndr_flags
& NDR_SCALARS
) {
3197 NDR_CHECK(ndr_pull_align(ndr
, 4));
3198 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
3199 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_names
));
3201 NDR_PULL_ALLOC(ndr
, r
->names
);
3206 if (ndr_flags
& NDR_BUFFERS
) {
3208 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3209 NDR_PULL_SET_MEM_CTX(ndr
, r
->names
, 0);
3210 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->names
));
3211 NDR_PULL_ALLOC_N(ndr
, r
->names
, ndr_get_array_size(ndr
, &r
->names
));
3212 _mem_save_names_1
= NDR_PULL_GET_MEM_CTX(ndr
);
3213 NDR_PULL_SET_MEM_CTX(ndr
, r
->names
, 0);
3214 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3215 NDR_CHECK(ndr_pull_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_pull_lsa_StringLarge(ndr
, NDR_BUFFERS
, &r
->names
[cntr_names_1
]));
3220 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_1
, 0);
3221 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
3224 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->names
, r
->count
));
3227 return NT_STATUS_OK
;
3230 _PUBLIC_
void ndr_print_lsa_RightSet(struct ndr_print
*ndr
, const char *name
, const struct lsa_RightSet
*r
)
3232 uint32_t cntr_names_1
;
3233 ndr_print_struct(ndr
, name
, "lsa_RightSet");
3235 ndr_print_uint32(ndr
, "count", r
->count
);
3236 ndr_print_ptr(ndr
, "names", r
->names
);
3239 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->count
);
3241 for (cntr_names_1
=0;cntr_names_1
<r
->count
;cntr_names_1
++) {
3243 asprintf(&idx_1
, "[%d]", cntr_names_1
);
3245 ndr_print_lsa_StringLarge(ndr
, "names", &r
->names
[cntr_names_1
]);
3255 NTSTATUS
ndr_push_lsa_StringPointer(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_StringPointer
*r
)
3257 if (ndr_flags
& NDR_SCALARS
) {
3258 NDR_CHECK(ndr_push_align(ndr
, 4));
3259 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->string
));
3261 if (ndr_flags
& NDR_BUFFERS
) {
3263 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->string
));
3266 return NT_STATUS_OK
;
3269 NTSTATUS
ndr_pull_lsa_StringPointer(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_StringPointer
*r
)
3271 uint32_t _ptr_string
;
3272 TALLOC_CTX
*_mem_save_string_0
;
3273 if (ndr_flags
& NDR_SCALARS
) {
3274 NDR_CHECK(ndr_pull_align(ndr
, 4));
3275 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_string
));
3277 NDR_PULL_ALLOC(ndr
, r
->string
);
3282 if (ndr_flags
& NDR_BUFFERS
) {
3284 _mem_save_string_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3285 NDR_PULL_SET_MEM_CTX(ndr
, r
->string
, 0);
3286 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->string
));
3287 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_string_0
, 0);
3290 return NT_STATUS_OK
;
3293 _PUBLIC_
void ndr_print_lsa_StringPointer(struct ndr_print
*ndr
, const char *name
, const struct lsa_StringPointer
*r
)
3295 ndr_print_struct(ndr
, name
, "lsa_StringPointer");
3297 ndr_print_ptr(ndr
, "string", r
->string
);
3300 ndr_print_lsa_String(ndr
, "string", r
->string
);
3306 NTSTATUS
ndr_push_lsa_DomainListEx(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DomainListEx
*r
)
3308 uint32_t cntr_domains_1
;
3309 if (ndr_flags
& NDR_SCALARS
) {
3310 NDR_CHECK(ndr_push_align(ndr
, 4));
3311 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3312 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->domains
));
3314 if (ndr_flags
& NDR_BUFFERS
) {
3316 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3317 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
3318 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_SCALARS
, &r
->domains
[cntr_domains_1
]));
3320 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
3321 NDR_CHECK(ndr_push_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->domains
[cntr_domains_1
]));
3325 return NT_STATUS_OK
;
3328 NTSTATUS
ndr_pull_lsa_DomainListEx(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DomainListEx
*r
)
3330 uint32_t _ptr_domains
;
3331 uint32_t cntr_domains_1
;
3332 TALLOC_CTX
*_mem_save_domains_0
;
3333 TALLOC_CTX
*_mem_save_domains_1
;
3334 if (ndr_flags
& NDR_SCALARS
) {
3335 NDR_CHECK(ndr_pull_align(ndr
, 4));
3336 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
3337 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
3339 NDR_PULL_ALLOC(ndr
, r
->domains
);
3344 if (ndr_flags
& NDR_BUFFERS
) {
3346 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3347 NDR_PULL_SET_MEM_CTX(ndr
, r
->domains
, 0);
3348 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->domains
));
3349 NDR_PULL_ALLOC_N(ndr
, r
->domains
, ndr_get_array_size(ndr
, &r
->domains
));
3350 _mem_save_domains_1
= NDR_PULL_GET_MEM_CTX(ndr
);
3351 NDR_PULL_SET_MEM_CTX(ndr
, r
->domains
, 0);
3352 for (cntr_domains_1
= 0; cntr_domains_1
< r
->count
; cntr_domains_1
++) {
3353 NDR_CHECK(ndr_pull_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_pull_lsa_TrustDomainInfoInfoEx(ndr
, NDR_BUFFERS
, &r
->domains
[cntr_domains_1
]));
3358 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_1
, 0);
3359 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
3362 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->domains
, r
->count
));
3365 return NT_STATUS_OK
;
3368 _PUBLIC_
void ndr_print_lsa_DomainListEx(struct ndr_print
*ndr
, const char *name
, const struct lsa_DomainListEx
*r
)
3370 uint32_t cntr_domains_1
;
3371 ndr_print_struct(ndr
, name
, "lsa_DomainListEx");
3373 ndr_print_uint32(ndr
, "count", r
->count
);
3374 ndr_print_ptr(ndr
, "domains", r
->domains
);
3377 ndr
->print(ndr
, "%s: ARRAY(%d)", "domains", r
->count
);
3379 for (cntr_domains_1
=0;cntr_domains_1
<r
->count
;cntr_domains_1
++) {
3381 asprintf(&idx_1
, "[%d]", cntr_domains_1
);
3383 ndr_print_lsa_TrustDomainInfoInfoEx(ndr
, "domains", &r
->domains
[cntr_domains_1
]);
3393 NTSTATUS
ndr_push_lsa_DomainInfoKerberos(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DomainInfoKerberos
*r
)
3395 if (ndr_flags
& NDR_SCALARS
) {
3396 NDR_CHECK(ndr_push_align(ndr
, 8));
3397 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->enforce_restrictions
));
3398 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->service_tkt_lifetime
));
3399 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->user_tkt_lifetime
));
3400 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->user_tkt_renewaltime
));
3401 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->clock_skew
));
3402 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->unknown6
));
3404 if (ndr_flags
& NDR_BUFFERS
) {
3406 return NT_STATUS_OK
;
3409 NTSTATUS
ndr_pull_lsa_DomainInfoKerberos(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DomainInfoKerberos
*r
)
3411 if (ndr_flags
& NDR_SCALARS
) {
3412 NDR_CHECK(ndr_pull_align(ndr
, 8));
3413 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->enforce_restrictions
));
3414 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->service_tkt_lifetime
));
3415 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->user_tkt_lifetime
));
3416 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->user_tkt_renewaltime
));
3417 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->clock_skew
));
3418 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->unknown6
));
3420 if (ndr_flags
& NDR_BUFFERS
) {
3422 return NT_STATUS_OK
;
3425 _PUBLIC_
void ndr_print_lsa_DomainInfoKerberos(struct ndr_print
*ndr
, const char *name
, const struct lsa_DomainInfoKerberos
*r
)
3427 ndr_print_struct(ndr
, name
, "lsa_DomainInfoKerberos");
3429 ndr_print_uint32(ndr
, "enforce_restrictions", r
->enforce_restrictions
);
3430 ndr_print_hyper(ndr
, "service_tkt_lifetime", r
->service_tkt_lifetime
);
3431 ndr_print_hyper(ndr
, "user_tkt_lifetime", r
->user_tkt_lifetime
);
3432 ndr_print_hyper(ndr
, "user_tkt_renewaltime", r
->user_tkt_renewaltime
);
3433 ndr_print_hyper(ndr
, "clock_skew", r
->clock_skew
);
3434 ndr_print_hyper(ndr
, "unknown6", r
->unknown6
);
3438 NTSTATUS
ndr_push_lsa_DomainInfoEfs(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_DomainInfoEfs
*r
)
3440 if (ndr_flags
& NDR_SCALARS
) {
3441 NDR_CHECK(ndr_push_align(ndr
, 4));
3442 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->blob_size
));
3443 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->efs_blob
));
3445 if (ndr_flags
& NDR_BUFFERS
) {
3447 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->blob_size
));
3448 NDR_CHECK(ndr_push_array_uint8(ndr
, NDR_SCALARS
, r
->efs_blob
, r
->blob_size
));
3451 return NT_STATUS_OK
;
3454 NTSTATUS
ndr_pull_lsa_DomainInfoEfs(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_DomainInfoEfs
*r
)
3456 uint32_t _ptr_efs_blob
;
3457 TALLOC_CTX
*_mem_save_efs_blob_0
;
3458 if (ndr_flags
& NDR_SCALARS
) {
3459 NDR_CHECK(ndr_pull_align(ndr
, 4));
3460 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->blob_size
));
3461 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_efs_blob
));
3462 if (_ptr_efs_blob
) {
3463 NDR_PULL_ALLOC(ndr
, r
->efs_blob
);
3468 if (ndr_flags
& NDR_BUFFERS
) {
3470 _mem_save_efs_blob_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3471 NDR_PULL_SET_MEM_CTX(ndr
, r
->efs_blob
, 0);
3472 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->efs_blob
));
3473 NDR_PULL_ALLOC_N(ndr
, r
->efs_blob
, ndr_get_array_size(ndr
, &r
->efs_blob
));
3474 NDR_CHECK(ndr_pull_array_uint8(ndr
, NDR_SCALARS
, r
->efs_blob
, ndr_get_array_size(ndr
, &r
->efs_blob
)));
3475 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_efs_blob_0
, 0);
3478 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->efs_blob
, r
->blob_size
));
3481 return NT_STATUS_OK
;
3484 _PUBLIC_
void ndr_print_lsa_DomainInfoEfs(struct ndr_print
*ndr
, const char *name
, const struct lsa_DomainInfoEfs
*r
)
3486 ndr_print_struct(ndr
, name
, "lsa_DomainInfoEfs");
3488 ndr_print_uint32(ndr
, "blob_size", r
->blob_size
);
3489 ndr_print_ptr(ndr
, "efs_blob", r
->efs_blob
);
3492 ndr_print_array_uint8(ndr
, "efs_blob", r
->efs_blob
, r
->blob_size
);
3498 NTSTATUS
ndr_push_lsa_DomainInformationPolicy(struct ndr_push
*ndr
, int ndr_flags
, const union lsa_DomainInformationPolicy
*r
)
3500 if (ndr_flags
& NDR_SCALARS
) {
3501 int level
= ndr_push_get_switch_value(ndr
, r
);
3502 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, level
));
3504 case LSA_DOMAIN_INFO_POLICY_EFS
:
3505 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr
, NDR_SCALARS
, &r
->efs_info
));
3508 case LSA_DOMAIN_INFO_POLICY_KERBEROS
:
3509 NDR_CHECK(ndr_push_lsa_DomainInfoKerberos(ndr
, NDR_SCALARS
, &r
->kerberos_info
));
3513 return ndr_push_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
3516 if (ndr_flags
& NDR_BUFFERS
) {
3517 int level
= ndr_push_get_switch_value(ndr
, r
);
3519 case LSA_DOMAIN_INFO_POLICY_EFS
:
3520 NDR_CHECK(ndr_push_lsa_DomainInfoEfs(ndr
, NDR_BUFFERS
, &r
->efs_info
));
3523 case LSA_DOMAIN_INFO_POLICY_KERBEROS
:
3527 return ndr_push_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
3530 return NT_STATUS_OK
;
3533 NTSTATUS
ndr_pull_lsa_DomainInformationPolicy(struct ndr_pull
*ndr
, int ndr_flags
, union lsa_DomainInformationPolicy
*r
)
3537 level
= ndr_pull_get_switch_value(ndr
, r
);
3538 if (ndr_flags
& NDR_SCALARS
) {
3539 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &_level
));
3540 if (_level
!= level
) {
3541 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u for r", _level
);
3544 case LSA_DOMAIN_INFO_POLICY_EFS
: {
3545 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr
, NDR_SCALARS
, &r
->efs_info
));
3548 case LSA_DOMAIN_INFO_POLICY_KERBEROS
: {
3549 NDR_CHECK(ndr_pull_lsa_DomainInfoKerberos(ndr
, NDR_SCALARS
, &r
->kerberos_info
));
3553 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
3556 if (ndr_flags
& NDR_BUFFERS
) {
3558 case LSA_DOMAIN_INFO_POLICY_EFS
:
3559 NDR_CHECK(ndr_pull_lsa_DomainInfoEfs(ndr
, NDR_BUFFERS
, &r
->efs_info
));
3562 case LSA_DOMAIN_INFO_POLICY_KERBEROS
:
3566 return ndr_pull_error(ndr
, NDR_ERR_BAD_SWITCH
, "Bad switch value %u", level
);
3569 return NT_STATUS_OK
;
3572 _PUBLIC_
void ndr_print_lsa_DomainInformationPolicy(struct ndr_print
*ndr
, const char *name
, const union lsa_DomainInformationPolicy
*r
)
3575 level
= ndr_print_get_switch_value(ndr
, r
);
3576 ndr_print_union(ndr
, name
, level
, "lsa_DomainInformationPolicy");
3578 case LSA_DOMAIN_INFO_POLICY_EFS
:
3579 ndr_print_lsa_DomainInfoEfs(ndr
, "efs_info", &r
->efs_info
);
3582 case LSA_DOMAIN_INFO_POLICY_KERBEROS
:
3583 ndr_print_lsa_DomainInfoKerberos(ndr
, "kerberos_info", &r
->kerberos_info
);
3587 ndr_print_bad_level(ndr
, name
, level
);
3591 NTSTATUS
ndr_push_lsa_TranslatedName2(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TranslatedName2
*r
)
3593 if (ndr_flags
& NDR_SCALARS
) {
3594 NDR_CHECK(ndr_push_align(ndr
, 4));
3595 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->sid_type
));
3596 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->name
));
3597 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->sid_index
));
3598 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->unknown
));
3600 if (ndr_flags
& NDR_BUFFERS
) {
3601 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->name
));
3603 return NT_STATUS_OK
;
3606 NTSTATUS
ndr_pull_lsa_TranslatedName2(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TranslatedName2
*r
)
3608 if (ndr_flags
& NDR_SCALARS
) {
3609 NDR_CHECK(ndr_pull_align(ndr
, 4));
3610 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->sid_type
));
3611 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->name
));
3612 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->sid_index
));
3613 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->unknown
));
3615 if (ndr_flags
& NDR_BUFFERS
) {
3616 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->name
));
3618 return NT_STATUS_OK
;
3621 _PUBLIC_
void ndr_print_lsa_TranslatedName2(struct ndr_print
*ndr
, const char *name
, const struct lsa_TranslatedName2
*r
)
3623 ndr_print_struct(ndr
, name
, "lsa_TranslatedName2");
3625 ndr_print_lsa_SidType(ndr
, "sid_type", r
->sid_type
);
3626 ndr_print_lsa_String(ndr
, "name", &r
->name
);
3627 ndr_print_uint32(ndr
, "sid_index", r
->sid_index
);
3628 ndr_print_uint32(ndr
, "unknown", r
->unknown
);
3632 NTSTATUS
ndr_push_lsa_TransNameArray2(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TransNameArray2
*r
)
3634 uint32_t cntr_names_1
;
3635 if (ndr_flags
& NDR_SCALARS
) {
3636 NDR_CHECK(ndr_push_align(ndr
, 4));
3637 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3638 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->names
));
3640 if (ndr_flags
& NDR_BUFFERS
) {
3642 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3643 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3644 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr
, NDR_SCALARS
, &r
->names
[cntr_names_1
]));
3646 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3647 NDR_CHECK(ndr_push_lsa_TranslatedName2(ndr
, NDR_BUFFERS
, &r
->names
[cntr_names_1
]));
3651 return NT_STATUS_OK
;
3654 NTSTATUS
ndr_pull_lsa_TransNameArray2(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TransNameArray2
*r
)
3656 uint32_t _ptr_names
;
3657 uint32_t cntr_names_1
;
3658 TALLOC_CTX
*_mem_save_names_0
;
3659 TALLOC_CTX
*_mem_save_names_1
;
3660 if (ndr_flags
& NDR_SCALARS
) {
3661 NDR_CHECK(ndr_pull_align(ndr
, 4));
3662 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
3663 if (r
->count
< 0 || r
->count
> 1000) {
3664 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
3666 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_names
));
3668 NDR_PULL_ALLOC(ndr
, r
->names
);
3673 if (ndr_flags
& NDR_BUFFERS
) {
3675 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3676 NDR_PULL_SET_MEM_CTX(ndr
, r
->names
, 0);
3677 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->names
));
3678 NDR_PULL_ALLOC_N(ndr
, r
->names
, ndr_get_array_size(ndr
, &r
->names
));
3679 _mem_save_names_1
= NDR_PULL_GET_MEM_CTX(ndr
);
3680 NDR_PULL_SET_MEM_CTX(ndr
, r
->names
, 0);
3681 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3682 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr
, NDR_SCALARS
, &r
->names
[cntr_names_1
]));
3684 for (cntr_names_1
= 0; cntr_names_1
< r
->count
; cntr_names_1
++) {
3685 NDR_CHECK(ndr_pull_lsa_TranslatedName2(ndr
, NDR_BUFFERS
, &r
->names
[cntr_names_1
]));
3687 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_1
, 0);
3688 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
3691 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->names
, r
->count
));
3694 return NT_STATUS_OK
;
3697 _PUBLIC_
void ndr_print_lsa_TransNameArray2(struct ndr_print
*ndr
, const char *name
, const struct lsa_TransNameArray2
*r
)
3699 uint32_t cntr_names_1
;
3700 ndr_print_struct(ndr
, name
, "lsa_TransNameArray2");
3702 ndr_print_uint32(ndr
, "count", r
->count
);
3703 ndr_print_ptr(ndr
, "names", r
->names
);
3706 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->count
);
3708 for (cntr_names_1
=0;cntr_names_1
<r
->count
;cntr_names_1
++) {
3710 asprintf(&idx_1
, "[%d]", cntr_names_1
);
3712 ndr_print_lsa_TranslatedName2(ndr
, "names", &r
->names
[cntr_names_1
]);
3722 NTSTATUS
ndr_push_lsa_TranslatedSid2(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TranslatedSid2
*r
)
3724 if (ndr_flags
& NDR_SCALARS
) {
3725 NDR_CHECK(ndr_push_align(ndr
, 4));
3726 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->sid_type
));
3727 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->rid
));
3728 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->sid_index
));
3729 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->unknown
));
3731 if (ndr_flags
& NDR_BUFFERS
) {
3733 return NT_STATUS_OK
;
3736 NTSTATUS
ndr_pull_lsa_TranslatedSid2(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TranslatedSid2
*r
)
3738 if (ndr_flags
& NDR_SCALARS
) {
3739 NDR_CHECK(ndr_pull_align(ndr
, 4));
3740 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->sid_type
));
3741 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->rid
));
3742 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->sid_index
));
3743 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->unknown
));
3745 if (ndr_flags
& NDR_BUFFERS
) {
3747 return NT_STATUS_OK
;
3750 _PUBLIC_
void ndr_print_lsa_TranslatedSid2(struct ndr_print
*ndr
, const char *name
, const struct lsa_TranslatedSid2
*r
)
3752 ndr_print_struct(ndr
, name
, "lsa_TranslatedSid2");
3754 ndr_print_lsa_SidType(ndr
, "sid_type", r
->sid_type
);
3755 ndr_print_uint32(ndr
, "rid", r
->rid
);
3756 ndr_print_uint32(ndr
, "sid_index", r
->sid_index
);
3757 ndr_print_uint32(ndr
, "unknown", r
->unknown
);
3761 NTSTATUS
ndr_push_lsa_TransSidArray2(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TransSidArray2
*r
)
3763 uint32_t cntr_sids_1
;
3764 if (ndr_flags
& NDR_SCALARS
) {
3765 NDR_CHECK(ndr_push_align(ndr
, 4));
3766 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3767 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sids
));
3769 if (ndr_flags
& NDR_BUFFERS
) {
3771 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3772 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
3773 NDR_CHECK(ndr_push_lsa_TranslatedSid2(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
3777 return NT_STATUS_OK
;
3780 NTSTATUS
ndr_pull_lsa_TransSidArray2(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TransSidArray2
*r
)
3783 uint32_t cntr_sids_1
;
3784 TALLOC_CTX
*_mem_save_sids_0
;
3785 TALLOC_CTX
*_mem_save_sids_1
;
3786 if (ndr_flags
& NDR_SCALARS
) {
3787 NDR_CHECK(ndr_pull_align(ndr
, 4));
3788 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
3789 if (r
->count
< 0 || r
->count
> 1000) {
3790 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
3792 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sids
));
3794 NDR_PULL_ALLOC(ndr
, r
->sids
);
3799 if (ndr_flags
& NDR_BUFFERS
) {
3801 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3802 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
3803 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->sids
));
3804 NDR_PULL_ALLOC_N(ndr
, r
->sids
, ndr_get_array_size(ndr
, &r
->sids
));
3805 _mem_save_sids_1
= NDR_PULL_GET_MEM_CTX(ndr
);
3806 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
3807 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
3808 NDR_CHECK(ndr_pull_lsa_TranslatedSid2(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
3810 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_1
, 0);
3811 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, 0);
3814 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->sids
, r
->count
));
3817 return NT_STATUS_OK
;
3820 _PUBLIC_
void ndr_print_lsa_TransSidArray2(struct ndr_print
*ndr
, const char *name
, const struct lsa_TransSidArray2
*r
)
3822 uint32_t cntr_sids_1
;
3823 ndr_print_struct(ndr
, name
, "lsa_TransSidArray2");
3825 ndr_print_uint32(ndr
, "count", r
->count
);
3826 ndr_print_ptr(ndr
, "sids", r
->sids
);
3829 ndr
->print(ndr
, "%s: ARRAY(%d)", "sids", r
->count
);
3831 for (cntr_sids_1
=0;cntr_sids_1
<r
->count
;cntr_sids_1
++) {
3833 asprintf(&idx_1
, "[%d]", cntr_sids_1
);
3835 ndr_print_lsa_TranslatedSid2(ndr
, "sids", &r
->sids
[cntr_sids_1
]);
3845 NTSTATUS
ndr_push_lsa_TranslatedSid3(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TranslatedSid3
*r
)
3847 if (ndr_flags
& NDR_SCALARS
) {
3848 NDR_CHECK(ndr_push_align(ndr
, 4));
3849 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->sid_type
));
3850 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sid
));
3851 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->sid_index
));
3852 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->unknown
));
3854 if (ndr_flags
& NDR_BUFFERS
) {
3856 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
3859 return NT_STATUS_OK
;
3862 NTSTATUS
ndr_pull_lsa_TranslatedSid3(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TranslatedSid3
*r
)
3865 TALLOC_CTX
*_mem_save_sid_0
;
3866 if (ndr_flags
& NDR_SCALARS
) {
3867 NDR_CHECK(ndr_pull_align(ndr
, 4));
3868 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->sid_type
));
3869 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sid
));
3871 NDR_PULL_ALLOC(ndr
, r
->sid
);
3875 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->sid_index
));
3876 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->unknown
));
3878 if (ndr_flags
& NDR_BUFFERS
) {
3880 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3881 NDR_PULL_SET_MEM_CTX(ndr
, r
->sid
, 0);
3882 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->sid
));
3883 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, 0);
3886 return NT_STATUS_OK
;
3889 _PUBLIC_
void ndr_print_lsa_TranslatedSid3(struct ndr_print
*ndr
, const char *name
, const struct lsa_TranslatedSid3
*r
)
3891 ndr_print_struct(ndr
, name
, "lsa_TranslatedSid3");
3893 ndr_print_lsa_SidType(ndr
, "sid_type", r
->sid_type
);
3894 ndr_print_ptr(ndr
, "sid", r
->sid
);
3897 ndr_print_dom_sid2(ndr
, "sid", r
->sid
);
3900 ndr_print_uint32(ndr
, "sid_index", r
->sid_index
);
3901 ndr_print_uint32(ndr
, "unknown", r
->unknown
);
3905 NTSTATUS
ndr_push_lsa_TransSidArray3(struct ndr_push
*ndr
, int ndr_flags
, const struct lsa_TransSidArray3
*r
)
3907 uint32_t cntr_sids_1
;
3908 if (ndr_flags
& NDR_SCALARS
) {
3909 NDR_CHECK(ndr_push_align(ndr
, 4));
3910 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3911 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->sids
));
3913 if (ndr_flags
& NDR_BUFFERS
) {
3915 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->count
));
3916 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
3917 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
3919 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
3920 NDR_CHECK(ndr_push_lsa_TranslatedSid3(ndr
, NDR_BUFFERS
, &r
->sids
[cntr_sids_1
]));
3924 return NT_STATUS_OK
;
3927 NTSTATUS
ndr_pull_lsa_TransSidArray3(struct ndr_pull
*ndr
, int ndr_flags
, struct lsa_TransSidArray3
*r
)
3930 uint32_t cntr_sids_1
;
3931 TALLOC_CTX
*_mem_save_sids_0
;
3932 TALLOC_CTX
*_mem_save_sids_1
;
3933 if (ndr_flags
& NDR_SCALARS
) {
3934 NDR_CHECK(ndr_pull_align(ndr
, 4));
3935 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->count
));
3936 if (r
->count
< 0 || r
->count
> 1000) {
3937 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
3939 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sids
));
3941 NDR_PULL_ALLOC(ndr
, r
->sids
);
3946 if (ndr_flags
& NDR_BUFFERS
) {
3948 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
3949 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
3950 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->sids
));
3951 NDR_PULL_ALLOC_N(ndr
, r
->sids
, ndr_get_array_size(ndr
, &r
->sids
));
3952 _mem_save_sids_1
= NDR_PULL_GET_MEM_CTX(ndr
);
3953 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
3954 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
3955 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_1
]));
3957 for (cntr_sids_1
= 0; cntr_sids_1
< r
->count
; cntr_sids_1
++) {
3958 NDR_CHECK(ndr_pull_lsa_TranslatedSid3(ndr
, NDR_BUFFERS
, &r
->sids
[cntr_sids_1
]));
3960 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_1
, 0);
3961 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, 0);
3964 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->sids
, r
->count
));
3967 return NT_STATUS_OK
;
3970 _PUBLIC_
void ndr_print_lsa_TransSidArray3(struct ndr_print
*ndr
, const char *name
, const struct lsa_TransSidArray3
*r
)
3972 uint32_t cntr_sids_1
;
3973 ndr_print_struct(ndr
, name
, "lsa_TransSidArray3");
3975 ndr_print_uint32(ndr
, "count", r
->count
);
3976 ndr_print_ptr(ndr
, "sids", r
->sids
);
3979 ndr
->print(ndr
, "%s: ARRAY(%d)", "sids", r
->count
);
3981 for (cntr_sids_1
=0;cntr_sids_1
<r
->count
;cntr_sids_1
++) {
3983 asprintf(&idx_1
, "[%d]", cntr_sids_1
);
3985 ndr_print_lsa_TranslatedSid3(ndr
, "sids", &r
->sids
[cntr_sids_1
]);
3995 NTSTATUS
ndr_push_lsa_Close(struct ndr_push
*ndr
, int flags
, const struct lsa_Close
*r
)
3997 if (flags
& NDR_IN
) {
3998 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
3999 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4001 if (flags
& NDR_OUT
) {
4002 if (r
->out
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4003 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
4004 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4006 return NT_STATUS_OK
;
4009 NTSTATUS
ndr_pull_lsa_Close(struct ndr_pull
*ndr
, int flags
, struct lsa_Close
*r
)
4011 TALLOC_CTX
*_mem_save_handle_0
;
4012 if (flags
& NDR_IN
) {
4013 ZERO_STRUCT(r
->out
);
4015 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4016 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4018 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4019 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4020 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4021 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4022 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
4023 *r
->out
.handle
= *r
->in
.handle
;
4025 if (flags
& NDR_OUT
) {
4026 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4027 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
4029 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4030 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4031 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
4032 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4033 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4035 return NT_STATUS_OK
;
4038 _PUBLIC_
void ndr_print_lsa_Close(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_Close
*r
)
4040 ndr_print_struct(ndr
, name
, "lsa_Close");
4042 if (flags
& NDR_SET_VALUES
) {
4043 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4045 if (flags
& NDR_IN
) {
4046 ndr_print_struct(ndr
, "in", "lsa_Close");
4048 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4050 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4054 if (flags
& NDR_OUT
) {
4055 ndr_print_struct(ndr
, "out", "lsa_Close");
4057 ndr_print_ptr(ndr
, "handle", r
->out
.handle
);
4059 ndr_print_policy_handle(ndr
, "handle", r
->out
.handle
);
4061 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4067 NTSTATUS
ndr_push_lsa_Delete(struct ndr_push
*ndr
, int flags
, const struct lsa_Delete
*r
)
4069 if (flags
& NDR_IN
) {
4070 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4071 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4073 if (flags
& NDR_OUT
) {
4074 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4076 return NT_STATUS_OK
;
4079 NTSTATUS
ndr_pull_lsa_Delete(struct ndr_pull
*ndr
, int flags
, struct lsa_Delete
*r
)
4081 TALLOC_CTX
*_mem_save_handle_0
;
4082 if (flags
& NDR_IN
) {
4083 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4084 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4086 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4087 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4088 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4089 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4091 if (flags
& NDR_OUT
) {
4092 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4094 return NT_STATUS_OK
;
4097 _PUBLIC_
void ndr_print_lsa_Delete(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_Delete
*r
)
4099 ndr_print_struct(ndr
, name
, "lsa_Delete");
4101 if (flags
& NDR_SET_VALUES
) {
4102 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4104 if (flags
& NDR_IN
) {
4105 ndr_print_struct(ndr
, "in", "lsa_Delete");
4107 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4109 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4113 if (flags
& NDR_OUT
) {
4114 ndr_print_struct(ndr
, "out", "lsa_Delete");
4116 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4122 NTSTATUS
ndr_push_lsa_EnumPrivs(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumPrivs
*r
)
4124 if (flags
& NDR_IN
) {
4125 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4126 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4127 if (r
->in
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4128 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.resume_handle
));
4129 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_count
));
4131 if (flags
& NDR_OUT
) {
4132 if (r
->out
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4133 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.resume_handle
));
4134 if (r
->out
.privs
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4135 NDR_CHECK(ndr_push_lsa_PrivArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.privs
));
4136 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4138 return NT_STATUS_OK
;
4141 NTSTATUS
ndr_pull_lsa_EnumPrivs(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumPrivs
*r
)
4143 TALLOC_CTX
*_mem_save_handle_0
;
4144 TALLOC_CTX
*_mem_save_resume_handle_0
;
4145 TALLOC_CTX
*_mem_save_privs_0
;
4146 if (flags
& NDR_IN
) {
4147 ZERO_STRUCT(r
->out
);
4149 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4150 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4152 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4153 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4154 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4155 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4156 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4157 NDR_PULL_ALLOC(ndr
, r
->in
.resume_handle
);
4159 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4160 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
4161 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.resume_handle
));
4162 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4163 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_count
));
4164 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
4165 *r
->out
.resume_handle
= *r
->in
.resume_handle
;
4166 NDR_PULL_ALLOC(ndr
, r
->out
.privs
);
4167 ZERO_STRUCTP(r
->out
.privs
);
4169 if (flags
& NDR_OUT
) {
4170 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4171 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
4173 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4174 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
4175 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.resume_handle
));
4176 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4177 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4178 NDR_PULL_ALLOC(ndr
, r
->out
.privs
);
4180 _mem_save_privs_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4181 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.privs
, LIBNDR_FLAG_REF_ALLOC
);
4182 NDR_CHECK(ndr_pull_lsa_PrivArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.privs
));
4183 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_privs_0
, LIBNDR_FLAG_REF_ALLOC
);
4184 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4186 return NT_STATUS_OK
;
4189 _PUBLIC_
void ndr_print_lsa_EnumPrivs(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumPrivs
*r
)
4191 ndr_print_struct(ndr
, name
, "lsa_EnumPrivs");
4193 if (flags
& NDR_SET_VALUES
) {
4194 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4196 if (flags
& NDR_IN
) {
4197 ndr_print_struct(ndr
, "in", "lsa_EnumPrivs");
4199 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4201 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4203 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
4205 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
4207 ndr_print_uint32(ndr
, "max_count", r
->in
.max_count
);
4210 if (flags
& NDR_OUT
) {
4211 ndr_print_struct(ndr
, "out", "lsa_EnumPrivs");
4213 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
4215 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
4217 ndr_print_ptr(ndr
, "privs", r
->out
.privs
);
4219 ndr_print_lsa_PrivArray(ndr
, "privs", r
->out
.privs
);
4221 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4227 NTSTATUS
ndr_push_lsa_QuerySecurity(struct ndr_push
*ndr
, int flags
, const struct lsa_QuerySecurity
*r
)
4229 if (flags
& NDR_IN
) {
4230 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4231 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4232 NDR_CHECK(ndr_push_security_secinfo(ndr
, NDR_SCALARS
, r
->in
.sec_info
));
4234 if (flags
& NDR_OUT
) {
4235 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.sdbuf
));
4237 NDR_CHECK(ndr_push_sec_desc_buf(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sdbuf
));
4239 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4241 return NT_STATUS_OK
;
4244 NTSTATUS
ndr_pull_lsa_QuerySecurity(struct ndr_pull
*ndr
, int flags
, struct lsa_QuerySecurity
*r
)
4246 uint32_t _ptr_sdbuf
;
4247 TALLOC_CTX
*_mem_save_handle_0
;
4248 TALLOC_CTX
*_mem_save_sdbuf_0
;
4249 if (flags
& NDR_IN
) {
4250 ZERO_STRUCT(r
->out
);
4252 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4253 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4255 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4256 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4257 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4258 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4259 NDR_CHECK(ndr_pull_security_secinfo(ndr
, NDR_SCALARS
, &r
->in
.sec_info
));
4261 if (flags
& NDR_OUT
) {
4262 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_sdbuf
));
4264 NDR_PULL_ALLOC(ndr
, r
->out
.sdbuf
);
4266 r
->out
.sdbuf
= NULL
;
4269 _mem_save_sdbuf_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4270 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sdbuf
, 0);
4271 NDR_CHECK(ndr_pull_sec_desc_buf(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sdbuf
));
4272 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sdbuf_0
, 0);
4274 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4276 return NT_STATUS_OK
;
4279 _PUBLIC_
void ndr_print_lsa_QuerySecurity(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QuerySecurity
*r
)
4281 ndr_print_struct(ndr
, name
, "lsa_QuerySecurity");
4283 if (flags
& NDR_SET_VALUES
) {
4284 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4286 if (flags
& NDR_IN
) {
4287 ndr_print_struct(ndr
, "in", "lsa_QuerySecurity");
4289 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4291 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4293 ndr_print_security_secinfo(ndr
, "sec_info", r
->in
.sec_info
);
4296 if (flags
& NDR_OUT
) {
4297 ndr_print_struct(ndr
, "out", "lsa_QuerySecurity");
4299 ndr_print_ptr(ndr
, "sdbuf", r
->out
.sdbuf
);
4302 ndr_print_sec_desc_buf(ndr
, "sdbuf", r
->out
.sdbuf
);
4305 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4311 NTSTATUS
ndr_push_lsa_SetSecObj(struct ndr_push
*ndr
, int flags
, const struct lsa_SetSecObj
*r
)
4313 if (flags
& NDR_IN
) {
4315 if (flags
& NDR_OUT
) {
4316 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4318 return NT_STATUS_OK
;
4321 NTSTATUS
ndr_pull_lsa_SetSecObj(struct ndr_pull
*ndr
, int flags
, struct lsa_SetSecObj
*r
)
4323 if (flags
& NDR_IN
) {
4325 if (flags
& NDR_OUT
) {
4326 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4328 return NT_STATUS_OK
;
4331 _PUBLIC_
void ndr_print_lsa_SetSecObj(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetSecObj
*r
)
4333 ndr_print_struct(ndr
, name
, "lsa_SetSecObj");
4335 if (flags
& NDR_SET_VALUES
) {
4336 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4338 if (flags
& NDR_IN
) {
4339 ndr_print_struct(ndr
, "in", "lsa_SetSecObj");
4343 if (flags
& NDR_OUT
) {
4344 ndr_print_struct(ndr
, "out", "lsa_SetSecObj");
4346 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4352 NTSTATUS
ndr_push_lsa_ChangePassword(struct ndr_push
*ndr
, int flags
, const struct lsa_ChangePassword
*r
)
4354 if (flags
& NDR_IN
) {
4356 if (flags
& NDR_OUT
) {
4357 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4359 return NT_STATUS_OK
;
4362 NTSTATUS
ndr_pull_lsa_ChangePassword(struct ndr_pull
*ndr
, int flags
, struct lsa_ChangePassword
*r
)
4364 if (flags
& NDR_IN
) {
4366 if (flags
& NDR_OUT
) {
4367 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4369 return NT_STATUS_OK
;
4372 _PUBLIC_
void ndr_print_lsa_ChangePassword(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_ChangePassword
*r
)
4374 ndr_print_struct(ndr
, name
, "lsa_ChangePassword");
4376 if (flags
& NDR_SET_VALUES
) {
4377 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4379 if (flags
& NDR_IN
) {
4380 ndr_print_struct(ndr
, "in", "lsa_ChangePassword");
4384 if (flags
& NDR_OUT
) {
4385 ndr_print_struct(ndr
, "out", "lsa_ChangePassword");
4387 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4393 NTSTATUS
ndr_push_lsa_OpenPolicy(struct ndr_push
*ndr
, int flags
, const struct lsa_OpenPolicy
*r
)
4395 if (flags
& NDR_IN
) {
4396 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.system_name
));
4397 if (r
->in
.system_name
) {
4398 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, *r
->in
.system_name
));
4400 if (r
->in
.attr
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4401 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.attr
));
4402 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
4404 if (flags
& NDR_OUT
) {
4405 if (r
->out
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4406 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
4407 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4409 return NT_STATUS_OK
;
4412 NTSTATUS
ndr_pull_lsa_OpenPolicy(struct ndr_pull
*ndr
, int flags
, struct lsa_OpenPolicy
*r
)
4414 uint32_t _ptr_system_name
;
4415 TALLOC_CTX
*_mem_save_system_name_0
;
4416 TALLOC_CTX
*_mem_save_attr_0
;
4417 TALLOC_CTX
*_mem_save_handle_0
;
4418 if (flags
& NDR_IN
) {
4419 ZERO_STRUCT(r
->out
);
4421 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_system_name
));
4422 if (_ptr_system_name
) {
4423 NDR_PULL_ALLOC(ndr
, r
->in
.system_name
);
4425 r
->in
.system_name
= NULL
;
4427 if (r
->in
.system_name
) {
4428 _mem_save_system_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4429 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.system_name
, 0);
4430 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, r
->in
.system_name
));
4431 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_system_name_0
, 0);
4433 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4434 NDR_PULL_ALLOC(ndr
, r
->in
.attr
);
4436 _mem_save_attr_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4437 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.attr
, LIBNDR_FLAG_REF_ALLOC
);
4438 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.attr
));
4439 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_attr_0
, LIBNDR_FLAG_REF_ALLOC
);
4440 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
4441 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
4442 ZERO_STRUCTP(r
->out
.handle
);
4444 if (flags
& NDR_OUT
) {
4445 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4446 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
4448 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4449 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4450 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
4451 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4452 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4454 return NT_STATUS_OK
;
4457 _PUBLIC_
void ndr_print_lsa_OpenPolicy(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_OpenPolicy
*r
)
4459 ndr_print_struct(ndr
, name
, "lsa_OpenPolicy");
4461 if (flags
& NDR_SET_VALUES
) {
4462 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4464 if (flags
& NDR_IN
) {
4465 ndr_print_struct(ndr
, "in", "lsa_OpenPolicy");
4467 ndr_print_ptr(ndr
, "system_name", r
->in
.system_name
);
4469 if (r
->in
.system_name
) {
4470 ndr_print_uint16(ndr
, "system_name", *r
->in
.system_name
);
4473 ndr_print_ptr(ndr
, "attr", r
->in
.attr
);
4475 ndr_print_lsa_ObjectAttribute(ndr
, "attr", r
->in
.attr
);
4477 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
4480 if (flags
& NDR_OUT
) {
4481 ndr_print_struct(ndr
, "out", "lsa_OpenPolicy");
4483 ndr_print_ptr(ndr
, "handle", r
->out
.handle
);
4485 ndr_print_policy_handle(ndr
, "handle", r
->out
.handle
);
4487 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4493 NTSTATUS
ndr_push_lsa_QueryInfoPolicy(struct ndr_push
*ndr
, int flags
, const struct lsa_QueryInfoPolicy
*r
)
4495 if (flags
& NDR_IN
) {
4496 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4497 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4498 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
4500 if (flags
& NDR_OUT
) {
4501 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.info
));
4503 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
4504 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
4506 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4508 return NT_STATUS_OK
;
4511 NTSTATUS
ndr_pull_lsa_QueryInfoPolicy(struct ndr_pull
*ndr
, int flags
, struct lsa_QueryInfoPolicy
*r
)
4514 TALLOC_CTX
*_mem_save_handle_0
;
4515 TALLOC_CTX
*_mem_save_info_0
;
4516 if (flags
& NDR_IN
) {
4517 ZERO_STRUCT(r
->out
);
4519 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4520 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4522 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4523 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4524 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4525 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4526 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
4528 if (flags
& NDR_OUT
) {
4529 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
4531 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
4536 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4537 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, 0);
4538 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
4539 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
4540 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
4542 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4544 return NT_STATUS_OK
;
4547 _PUBLIC_
void ndr_print_lsa_QueryInfoPolicy(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QueryInfoPolicy
*r
)
4549 ndr_print_struct(ndr
, name
, "lsa_QueryInfoPolicy");
4551 if (flags
& NDR_SET_VALUES
) {
4552 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4554 if (flags
& NDR_IN
) {
4555 ndr_print_struct(ndr
, "in", "lsa_QueryInfoPolicy");
4557 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4559 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4561 ndr_print_uint16(ndr
, "level", r
->in
.level
);
4564 if (flags
& NDR_OUT
) {
4565 ndr_print_struct(ndr
, "out", "lsa_QueryInfoPolicy");
4567 ndr_print_ptr(ndr
, "info", r
->out
.info
);
4570 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
4571 ndr_print_lsa_PolicyInformation(ndr
, "info", r
->out
.info
);
4574 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4580 NTSTATUS
ndr_push_lsa_SetInfoPolicy(struct ndr_push
*ndr
, int flags
, const struct lsa_SetInfoPolicy
*r
)
4582 if (flags
& NDR_IN
) {
4584 if (flags
& NDR_OUT
) {
4585 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4587 return NT_STATUS_OK
;
4590 NTSTATUS
ndr_pull_lsa_SetInfoPolicy(struct ndr_pull
*ndr
, int flags
, struct lsa_SetInfoPolicy
*r
)
4592 if (flags
& NDR_IN
) {
4594 if (flags
& NDR_OUT
) {
4595 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4597 return NT_STATUS_OK
;
4600 _PUBLIC_
void ndr_print_lsa_SetInfoPolicy(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetInfoPolicy
*r
)
4602 ndr_print_struct(ndr
, name
, "lsa_SetInfoPolicy");
4604 if (flags
& NDR_SET_VALUES
) {
4605 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4607 if (flags
& NDR_IN
) {
4608 ndr_print_struct(ndr
, "in", "lsa_SetInfoPolicy");
4612 if (flags
& NDR_OUT
) {
4613 ndr_print_struct(ndr
, "out", "lsa_SetInfoPolicy");
4615 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4621 NTSTATUS
ndr_push_lsa_ClearAuditLog(struct ndr_push
*ndr
, int flags
, const struct lsa_ClearAuditLog
*r
)
4623 if (flags
& NDR_IN
) {
4625 if (flags
& NDR_OUT
) {
4626 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4628 return NT_STATUS_OK
;
4631 NTSTATUS
ndr_pull_lsa_ClearAuditLog(struct ndr_pull
*ndr
, int flags
, struct lsa_ClearAuditLog
*r
)
4633 if (flags
& NDR_IN
) {
4635 if (flags
& NDR_OUT
) {
4636 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4638 return NT_STATUS_OK
;
4641 _PUBLIC_
void ndr_print_lsa_ClearAuditLog(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_ClearAuditLog
*r
)
4643 ndr_print_struct(ndr
, name
, "lsa_ClearAuditLog");
4645 if (flags
& NDR_SET_VALUES
) {
4646 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4648 if (flags
& NDR_IN
) {
4649 ndr_print_struct(ndr
, "in", "lsa_ClearAuditLog");
4653 if (flags
& NDR_OUT
) {
4654 ndr_print_struct(ndr
, "out", "lsa_ClearAuditLog");
4656 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4662 NTSTATUS
ndr_push_lsa_CreateAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_CreateAccount
*r
)
4664 if (flags
& NDR_IN
) {
4665 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4666 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4667 if (r
->in
.sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4668 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
4669 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
4671 if (flags
& NDR_OUT
) {
4672 if (r
->out
.acct_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4673 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.acct_handle
));
4674 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4676 return NT_STATUS_OK
;
4679 NTSTATUS
ndr_pull_lsa_CreateAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_CreateAccount
*r
)
4681 TALLOC_CTX
*_mem_save_handle_0
;
4682 TALLOC_CTX
*_mem_save_sid_0
;
4683 TALLOC_CTX
*_mem_save_acct_handle_0
;
4684 if (flags
& NDR_IN
) {
4685 ZERO_STRUCT(r
->out
);
4687 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4688 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4690 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4691 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4692 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4693 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4694 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4695 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
4697 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4698 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
4699 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
4700 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
4701 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
4702 NDR_PULL_ALLOC(ndr
, r
->out
.acct_handle
);
4703 ZERO_STRUCTP(r
->out
.acct_handle
);
4705 if (flags
& NDR_OUT
) {
4706 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4707 NDR_PULL_ALLOC(ndr
, r
->out
.acct_handle
);
4709 _mem_save_acct_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4710 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.acct_handle
, LIBNDR_FLAG_REF_ALLOC
);
4711 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.acct_handle
));
4712 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_acct_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4713 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4715 return NT_STATUS_OK
;
4718 _PUBLIC_
void ndr_print_lsa_CreateAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CreateAccount
*r
)
4720 ndr_print_struct(ndr
, name
, "lsa_CreateAccount");
4722 if (flags
& NDR_SET_VALUES
) {
4723 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4725 if (flags
& NDR_IN
) {
4726 ndr_print_struct(ndr
, "in", "lsa_CreateAccount");
4728 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4730 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4732 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
4734 ndr_print_dom_sid2(ndr
, "sid", r
->in
.sid
);
4736 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
4739 if (flags
& NDR_OUT
) {
4740 ndr_print_struct(ndr
, "out", "lsa_CreateAccount");
4742 ndr_print_ptr(ndr
, "acct_handle", r
->out
.acct_handle
);
4744 ndr_print_policy_handle(ndr
, "acct_handle", r
->out
.acct_handle
);
4746 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4752 NTSTATUS
ndr_push_lsa_EnumAccounts(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumAccounts
*r
)
4754 if (flags
& NDR_IN
) {
4755 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4756 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4757 if (r
->in
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4758 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.resume_handle
));
4759 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_entries
));
4761 if (flags
& NDR_OUT
) {
4762 if (r
->out
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4763 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.resume_handle
));
4764 if (r
->out
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4765 NDR_CHECK(ndr_push_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
4766 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4768 return NT_STATUS_OK
;
4771 NTSTATUS
ndr_pull_lsa_EnumAccounts(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumAccounts
*r
)
4773 TALLOC_CTX
*_mem_save_handle_0
;
4774 TALLOC_CTX
*_mem_save_resume_handle_0
;
4775 TALLOC_CTX
*_mem_save_sids_0
;
4776 if (flags
& NDR_IN
) {
4777 ZERO_STRUCT(r
->out
);
4779 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4780 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4782 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4783 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4784 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4785 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4786 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4787 NDR_PULL_ALLOC(ndr
, r
->in
.resume_handle
);
4789 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4790 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
4791 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.resume_handle
));
4792 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4793 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_entries
));
4794 if (r
->in
.num_entries
< 0 || r
->in
.num_entries
> 8192) {
4795 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
4797 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
4798 *r
->out
.resume_handle
= *r
->in
.resume_handle
;
4799 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
4800 ZERO_STRUCTP(r
->out
.sids
);
4802 if (flags
& NDR_OUT
) {
4803 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4804 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
4806 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4807 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
4808 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.resume_handle
));
4809 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4810 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4811 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
4813 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4814 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
4815 NDR_CHECK(ndr_pull_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
4816 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
4817 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4819 return NT_STATUS_OK
;
4822 _PUBLIC_
void ndr_print_lsa_EnumAccounts(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumAccounts
*r
)
4824 ndr_print_struct(ndr
, name
, "lsa_EnumAccounts");
4826 if (flags
& NDR_SET_VALUES
) {
4827 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4829 if (flags
& NDR_IN
) {
4830 ndr_print_struct(ndr
, "in", "lsa_EnumAccounts");
4832 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4834 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4836 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
4838 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
4840 ndr_print_uint32(ndr
, "num_entries", r
->in
.num_entries
);
4843 if (flags
& NDR_OUT
) {
4844 ndr_print_struct(ndr
, "out", "lsa_EnumAccounts");
4846 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
4848 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
4850 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
4852 ndr_print_lsa_SidArray(ndr
, "sids", r
->out
.sids
);
4854 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4860 NTSTATUS
ndr_push_lsa_CreateTrustedDomain(struct ndr_push
*ndr
, int flags
, const struct lsa_CreateTrustedDomain
*r
)
4862 if (flags
& NDR_IN
) {
4863 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4864 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4865 if (r
->in
.info
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4866 NDR_CHECK(ndr_push_lsa_DomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.info
));
4867 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
4869 if (flags
& NDR_OUT
) {
4870 if (r
->out
.trustdom_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4871 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.trustdom_handle
));
4872 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4874 return NT_STATUS_OK
;
4877 NTSTATUS
ndr_pull_lsa_CreateTrustedDomain(struct ndr_pull
*ndr
, int flags
, struct lsa_CreateTrustedDomain
*r
)
4879 TALLOC_CTX
*_mem_save_handle_0
;
4880 TALLOC_CTX
*_mem_save_info_0
;
4881 TALLOC_CTX
*_mem_save_trustdom_handle_0
;
4882 if (flags
& NDR_IN
) {
4883 ZERO_STRUCT(r
->out
);
4885 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4886 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4888 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4889 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4890 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4891 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4892 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4893 NDR_PULL_ALLOC(ndr
, r
->in
.info
);
4895 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4896 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.info
, LIBNDR_FLAG_REF_ALLOC
);
4897 NDR_CHECK(ndr_pull_lsa_DomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.info
));
4898 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, LIBNDR_FLAG_REF_ALLOC
);
4899 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
4900 NDR_PULL_ALLOC(ndr
, r
->out
.trustdom_handle
);
4901 ZERO_STRUCTP(r
->out
.trustdom_handle
);
4903 if (flags
& NDR_OUT
) {
4904 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4905 NDR_PULL_ALLOC(ndr
, r
->out
.trustdom_handle
);
4907 _mem_save_trustdom_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4908 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.trustdom_handle
, LIBNDR_FLAG_REF_ALLOC
);
4909 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.trustdom_handle
));
4910 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_trustdom_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4911 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
4913 return NT_STATUS_OK
;
4916 _PUBLIC_
void ndr_print_lsa_CreateTrustedDomain(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CreateTrustedDomain
*r
)
4918 ndr_print_struct(ndr
, name
, "lsa_CreateTrustedDomain");
4920 if (flags
& NDR_SET_VALUES
) {
4921 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
4923 if (flags
& NDR_IN
) {
4924 ndr_print_struct(ndr
, "in", "lsa_CreateTrustedDomain");
4926 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
4928 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
4930 ndr_print_ptr(ndr
, "info", r
->in
.info
);
4932 ndr_print_lsa_DomainInfo(ndr
, "info", r
->in
.info
);
4934 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
4937 if (flags
& NDR_OUT
) {
4938 ndr_print_struct(ndr
, "out", "lsa_CreateTrustedDomain");
4940 ndr_print_ptr(ndr
, "trustdom_handle", r
->out
.trustdom_handle
);
4942 ndr_print_policy_handle(ndr
, "trustdom_handle", r
->out
.trustdom_handle
);
4944 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
4950 NTSTATUS
ndr_push_lsa_EnumTrustDom(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumTrustDom
*r
)
4952 if (flags
& NDR_IN
) {
4953 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4954 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4955 if (r
->in
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4956 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.resume_handle
));
4957 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_size
));
4959 if (flags
& NDR_OUT
) {
4960 if (r
->out
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4961 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.resume_handle
));
4962 if (r
->out
.domains
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
4963 NDR_CHECK(ndr_push_lsa_DomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
4964 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
4966 return NT_STATUS_OK
;
4969 NTSTATUS
ndr_pull_lsa_EnumTrustDom(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumTrustDom
*r
)
4971 TALLOC_CTX
*_mem_save_handle_0
;
4972 TALLOC_CTX
*_mem_save_resume_handle_0
;
4973 TALLOC_CTX
*_mem_save_domains_0
;
4974 if (flags
& NDR_IN
) {
4975 ZERO_STRUCT(r
->out
);
4977 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4978 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
4980 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4981 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
4982 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
4983 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4984 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
4985 NDR_PULL_ALLOC(ndr
, r
->in
.resume_handle
);
4987 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
4988 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
4989 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.resume_handle
));
4990 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
4991 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_size
));
4992 if (r
->in
.max_size
< 0 || r
->in
.max_size
> 1000) {
4993 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
4995 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
4996 *r
->out
.resume_handle
= *r
->in
.resume_handle
;
4997 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
4998 ZERO_STRUCTP(r
->out
.domains
);
5000 if (flags
& NDR_OUT
) {
5001 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5002 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
5004 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5005 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
5006 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.resume_handle
));
5007 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5008 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5009 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
5011 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5012 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, LIBNDR_FLAG_REF_ALLOC
);
5013 NDR_CHECK(ndr_pull_lsa_DomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
5014 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, LIBNDR_FLAG_REF_ALLOC
);
5015 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5017 return NT_STATUS_OK
;
5020 _PUBLIC_
void ndr_print_lsa_EnumTrustDom(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumTrustDom
*r
)
5022 ndr_print_struct(ndr
, name
, "lsa_EnumTrustDom");
5024 if (flags
& NDR_SET_VALUES
) {
5025 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5027 if (flags
& NDR_IN
) {
5028 ndr_print_struct(ndr
, "in", "lsa_EnumTrustDom");
5030 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5032 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5034 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
5036 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
5038 ndr_print_uint32(ndr
, "max_size", r
->in
.max_size
);
5041 if (flags
& NDR_OUT
) {
5042 ndr_print_struct(ndr
, "out", "lsa_EnumTrustDom");
5044 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
5046 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
5048 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
5050 ndr_print_lsa_DomainList(ndr
, "domains", r
->out
.domains
);
5052 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5058 NTSTATUS
ndr_push_lsa_LookupNames(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupNames
*r
)
5060 uint32_t cntr_names_0
;
5061 if (flags
& NDR_IN
) {
5062 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5063 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5064 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
5065 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
5066 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
5067 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
5069 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
5070 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
5072 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5073 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
5074 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
5075 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5076 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
5078 if (flags
& NDR_OUT
) {
5079 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
5080 if (r
->out
.domains
) {
5081 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
5083 if (r
->out
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5084 NDR_CHECK(ndr_push_lsa_TransSidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
5085 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5086 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
5087 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5089 return NT_STATUS_OK
;
5092 NTSTATUS
ndr_pull_lsa_LookupNames(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupNames
*r
)
5094 uint32_t cntr_names_0
;
5095 uint32_t _ptr_domains
;
5096 TALLOC_CTX
*_mem_save_handle_0
;
5097 TALLOC_CTX
*_mem_save_names_0
;
5098 TALLOC_CTX
*_mem_save_domains_0
;
5099 TALLOC_CTX
*_mem_save_sids_0
;
5100 TALLOC_CTX
*_mem_save_count_0
;
5101 if (flags
& NDR_IN
) {
5102 ZERO_STRUCT(r
->out
);
5104 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5105 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5107 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5108 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5109 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5110 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5111 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_names
));
5112 if (r
->in
.num_names
< 0 || r
->in
.num_names
> 1000) {
5113 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
5115 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.names
));
5116 NDR_PULL_ALLOC_N(ndr
, r
->in
.names
, ndr_get_array_size(ndr
, &r
->in
.names
));
5117 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5118 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, 0);
5119 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
5120 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
5122 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
5123 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
5125 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
5126 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5127 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
5129 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5130 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
5131 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
5132 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
5133 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
5134 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5135 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
5137 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5138 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
5139 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
5140 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
5141 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
5142 *r
->out
.sids
= *r
->in
.sids
;
5143 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
5144 *r
->out
.count
= *r
->in
.count
;
5146 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.names
, r
->in
.num_names
));
5149 if (flags
& NDR_OUT
) {
5150 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
5152 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
5154 r
->out
.domains
= NULL
;
5156 if (r
->out
.domains
) {
5157 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5158 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
5159 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
5160 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
5162 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5163 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
5165 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5166 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
5167 NDR_CHECK(ndr_pull_lsa_TransSidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
5168 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
5169 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5170 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
5172 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5173 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
5174 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
5175 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
5176 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5178 return NT_STATUS_OK
;
5181 _PUBLIC_
void ndr_print_lsa_LookupNames(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupNames
*r
)
5183 uint32_t cntr_names_0
;
5184 ndr_print_struct(ndr
, name
, "lsa_LookupNames");
5186 if (flags
& NDR_SET_VALUES
) {
5187 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5189 if (flags
& NDR_IN
) {
5190 ndr_print_struct(ndr
, "in", "lsa_LookupNames");
5192 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5194 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5196 ndr_print_uint32(ndr
, "num_names", r
->in
.num_names
);
5197 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->in
.num_names
);
5199 for (cntr_names_0
=0;cntr_names_0
<r
->in
.num_names
;cntr_names_0
++) {
5201 asprintf(&idx_0
, "[%d]", cntr_names_0
);
5203 ndr_print_lsa_String(ndr
, "names", &r
->in
.names
[cntr_names_0
]);
5208 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
5210 ndr_print_lsa_TransSidArray(ndr
, "sids", r
->in
.sids
);
5212 ndr_print_uint16(ndr
, "level", r
->in
.level
);
5213 ndr_print_ptr(ndr
, "count", r
->in
.count
);
5215 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
5219 if (flags
& NDR_OUT
) {
5220 ndr_print_struct(ndr
, "out", "lsa_LookupNames");
5222 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
5224 if (r
->out
.domains
) {
5225 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
5228 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
5230 ndr_print_lsa_TransSidArray(ndr
, "sids", r
->out
.sids
);
5232 ndr_print_ptr(ndr
, "count", r
->out
.count
);
5234 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
5236 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5242 NTSTATUS
ndr_push_lsa_LookupSids(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupSids
*r
)
5244 if (flags
& NDR_IN
) {
5245 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5246 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5247 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5248 NDR_CHECK(ndr_push_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
5249 if (r
->in
.names
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5250 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.names
));
5251 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
5252 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5253 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
5255 if (flags
& NDR_OUT
) {
5256 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
5257 if (r
->out
.domains
) {
5258 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
5260 if (r
->out
.names
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5261 NDR_CHECK(ndr_push_lsa_TransNameArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
5262 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5263 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
5264 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5266 return NT_STATUS_OK
;
5269 NTSTATUS
ndr_pull_lsa_LookupSids(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupSids
*r
)
5271 uint32_t _ptr_domains
;
5272 TALLOC_CTX
*_mem_save_handle_0
;
5273 TALLOC_CTX
*_mem_save_sids_0
;
5274 TALLOC_CTX
*_mem_save_domains_0
;
5275 TALLOC_CTX
*_mem_save_names_0
;
5276 TALLOC_CTX
*_mem_save_count_0
;
5277 if (flags
& NDR_IN
) {
5278 ZERO_STRUCT(r
->out
);
5280 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5281 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5283 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5284 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5285 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5286 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5287 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5288 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
5290 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5291 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
5292 NDR_CHECK(ndr_pull_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
5293 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
5294 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5295 NDR_PULL_ALLOC(ndr
, r
->in
.names
);
5297 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5298 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, LIBNDR_FLAG_REF_ALLOC
);
5299 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.names
));
5300 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
5301 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
5302 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5303 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
5305 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5306 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
5307 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
5308 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
5309 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
5310 *r
->out
.names
= *r
->in
.names
;
5311 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
5312 *r
->out
.count
= *r
->in
.count
;
5314 if (flags
& NDR_OUT
) {
5315 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
5317 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
5319 r
->out
.domains
= NULL
;
5321 if (r
->out
.domains
) {
5322 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5323 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
5324 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
5325 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
5327 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5328 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
5330 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5331 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.names
, LIBNDR_FLAG_REF_ALLOC
);
5332 NDR_CHECK(ndr_pull_lsa_TransNameArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
5333 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
5334 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5335 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
5337 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5338 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
5339 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
5340 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
5341 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5343 return NT_STATUS_OK
;
5346 _PUBLIC_
void ndr_print_lsa_LookupSids(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupSids
*r
)
5348 ndr_print_struct(ndr
, name
, "lsa_LookupSids");
5350 if (flags
& NDR_SET_VALUES
) {
5351 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5353 if (flags
& NDR_IN
) {
5354 ndr_print_struct(ndr
, "in", "lsa_LookupSids");
5356 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5358 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5360 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
5362 ndr_print_lsa_SidArray(ndr
, "sids", r
->in
.sids
);
5364 ndr_print_ptr(ndr
, "names", r
->in
.names
);
5366 ndr_print_lsa_TransNameArray(ndr
, "names", r
->in
.names
);
5368 ndr_print_uint16(ndr
, "level", r
->in
.level
);
5369 ndr_print_ptr(ndr
, "count", r
->in
.count
);
5371 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
5375 if (flags
& NDR_OUT
) {
5376 ndr_print_struct(ndr
, "out", "lsa_LookupSids");
5378 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
5380 if (r
->out
.domains
) {
5381 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
5384 ndr_print_ptr(ndr
, "names", r
->out
.names
);
5386 ndr_print_lsa_TransNameArray(ndr
, "names", r
->out
.names
);
5388 ndr_print_ptr(ndr
, "count", r
->out
.count
);
5390 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
5392 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5398 NTSTATUS
ndr_push_lsa_CreateSecret(struct ndr_push
*ndr
, int flags
, const struct lsa_CreateSecret
*r
)
5400 if (flags
& NDR_IN
) {
5401 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5402 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5403 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.name
));
5404 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
5406 if (flags
& NDR_OUT
) {
5407 if (r
->out
.sec_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5408 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sec_handle
));
5409 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5411 return NT_STATUS_OK
;
5414 NTSTATUS
ndr_pull_lsa_CreateSecret(struct ndr_pull
*ndr
, int flags
, struct lsa_CreateSecret
*r
)
5416 TALLOC_CTX
*_mem_save_handle_0
;
5417 TALLOC_CTX
*_mem_save_sec_handle_0
;
5418 if (flags
& NDR_IN
) {
5419 ZERO_STRUCT(r
->out
);
5421 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5422 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5424 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5425 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5426 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5427 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5428 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.name
));
5429 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
5430 NDR_PULL_ALLOC(ndr
, r
->out
.sec_handle
);
5431 ZERO_STRUCTP(r
->out
.sec_handle
);
5433 if (flags
& NDR_OUT
) {
5434 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5435 NDR_PULL_ALLOC(ndr
, r
->out
.sec_handle
);
5437 _mem_save_sec_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5438 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sec_handle
, LIBNDR_FLAG_REF_ALLOC
);
5439 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sec_handle
));
5440 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sec_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5441 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5443 return NT_STATUS_OK
;
5446 _PUBLIC_
void ndr_print_lsa_CreateSecret(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CreateSecret
*r
)
5448 ndr_print_struct(ndr
, name
, "lsa_CreateSecret");
5450 if (flags
& NDR_SET_VALUES
) {
5451 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5453 if (flags
& NDR_IN
) {
5454 ndr_print_struct(ndr
, "in", "lsa_CreateSecret");
5456 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5458 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5460 ndr_print_lsa_String(ndr
, "name", &r
->in
.name
);
5461 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
5464 if (flags
& NDR_OUT
) {
5465 ndr_print_struct(ndr
, "out", "lsa_CreateSecret");
5467 ndr_print_ptr(ndr
, "sec_handle", r
->out
.sec_handle
);
5469 ndr_print_policy_handle(ndr
, "sec_handle", r
->out
.sec_handle
);
5471 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5477 NTSTATUS
ndr_push_lsa_OpenAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_OpenAccount
*r
)
5479 if (flags
& NDR_IN
) {
5480 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5481 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5482 if (r
->in
.sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5483 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
5484 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
5486 if (flags
& NDR_OUT
) {
5487 if (r
->out
.acct_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5488 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.acct_handle
));
5489 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5491 return NT_STATUS_OK
;
5494 NTSTATUS
ndr_pull_lsa_OpenAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_OpenAccount
*r
)
5496 TALLOC_CTX
*_mem_save_handle_0
;
5497 TALLOC_CTX
*_mem_save_sid_0
;
5498 TALLOC_CTX
*_mem_save_acct_handle_0
;
5499 if (flags
& NDR_IN
) {
5500 ZERO_STRUCT(r
->out
);
5502 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5503 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5505 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5506 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5507 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5508 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5509 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5510 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
5512 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5513 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
5514 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
5515 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
5516 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
5517 NDR_PULL_ALLOC(ndr
, r
->out
.acct_handle
);
5518 ZERO_STRUCTP(r
->out
.acct_handle
);
5520 if (flags
& NDR_OUT
) {
5521 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5522 NDR_PULL_ALLOC(ndr
, r
->out
.acct_handle
);
5524 _mem_save_acct_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5525 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.acct_handle
, LIBNDR_FLAG_REF_ALLOC
);
5526 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.acct_handle
));
5527 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_acct_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5528 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5530 return NT_STATUS_OK
;
5533 _PUBLIC_
void ndr_print_lsa_OpenAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_OpenAccount
*r
)
5535 ndr_print_struct(ndr
, name
, "lsa_OpenAccount");
5537 if (flags
& NDR_SET_VALUES
) {
5538 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5540 if (flags
& NDR_IN
) {
5541 ndr_print_struct(ndr
, "in", "lsa_OpenAccount");
5543 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5545 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5547 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
5549 ndr_print_dom_sid2(ndr
, "sid", r
->in
.sid
);
5551 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
5554 if (flags
& NDR_OUT
) {
5555 ndr_print_struct(ndr
, "out", "lsa_OpenAccount");
5557 ndr_print_ptr(ndr
, "acct_handle", r
->out
.acct_handle
);
5559 ndr_print_policy_handle(ndr
, "acct_handle", r
->out
.acct_handle
);
5561 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5567 NTSTATUS
ndr_push_lsa_EnumPrivsAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumPrivsAccount
*r
)
5569 if (flags
& NDR_IN
) {
5570 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5571 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5573 if (flags
& NDR_OUT
) {
5574 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.privs
));
5576 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr
, NDR_SCALARS
, r
->out
.privs
));
5578 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5580 return NT_STATUS_OK
;
5583 NTSTATUS
ndr_pull_lsa_EnumPrivsAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumPrivsAccount
*r
)
5585 uint32_t _ptr_privs
;
5586 TALLOC_CTX
*_mem_save_handle_0
;
5587 TALLOC_CTX
*_mem_save_privs_0
;
5588 if (flags
& NDR_IN
) {
5589 ZERO_STRUCT(r
->out
);
5591 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5592 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5594 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5595 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5596 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5597 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5599 if (flags
& NDR_OUT
) {
5600 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_privs
));
5602 NDR_PULL_ALLOC(ndr
, r
->out
.privs
);
5604 r
->out
.privs
= NULL
;
5607 _mem_save_privs_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5608 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.privs
, 0);
5609 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr
, NDR_SCALARS
, r
->out
.privs
));
5610 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_privs_0
, 0);
5612 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5614 return NT_STATUS_OK
;
5617 _PUBLIC_
void ndr_print_lsa_EnumPrivsAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumPrivsAccount
*r
)
5619 ndr_print_struct(ndr
, name
, "lsa_EnumPrivsAccount");
5621 if (flags
& NDR_SET_VALUES
) {
5622 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5624 if (flags
& NDR_IN
) {
5625 ndr_print_struct(ndr
, "in", "lsa_EnumPrivsAccount");
5627 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5629 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5633 if (flags
& NDR_OUT
) {
5634 ndr_print_struct(ndr
, "out", "lsa_EnumPrivsAccount");
5636 ndr_print_ptr(ndr
, "privs", r
->out
.privs
);
5639 ndr_print_lsa_PrivilegeSet(ndr
, "privs", r
->out
.privs
);
5642 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5648 NTSTATUS
ndr_push_lsa_AddPrivilegesToAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_AddPrivilegesToAccount
*r
)
5650 if (flags
& NDR_IN
) {
5651 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5652 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5653 if (r
->in
.privs
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5654 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr
, NDR_SCALARS
, r
->in
.privs
));
5656 if (flags
& NDR_OUT
) {
5657 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5659 return NT_STATUS_OK
;
5662 NTSTATUS
ndr_pull_lsa_AddPrivilegesToAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_AddPrivilegesToAccount
*r
)
5664 TALLOC_CTX
*_mem_save_handle_0
;
5665 TALLOC_CTX
*_mem_save_privs_0
;
5666 if (flags
& NDR_IN
) {
5667 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5668 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5670 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5671 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5672 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5673 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5674 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5675 NDR_PULL_ALLOC(ndr
, r
->in
.privs
);
5677 _mem_save_privs_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5678 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.privs
, LIBNDR_FLAG_REF_ALLOC
);
5679 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr
, NDR_SCALARS
, r
->in
.privs
));
5680 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_privs_0
, LIBNDR_FLAG_REF_ALLOC
);
5682 if (flags
& NDR_OUT
) {
5683 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5685 return NT_STATUS_OK
;
5688 _PUBLIC_
void ndr_print_lsa_AddPrivilegesToAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_AddPrivilegesToAccount
*r
)
5690 ndr_print_struct(ndr
, name
, "lsa_AddPrivilegesToAccount");
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_AddPrivilegesToAccount");
5698 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5700 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5702 ndr_print_ptr(ndr
, "privs", r
->in
.privs
);
5704 ndr_print_lsa_PrivilegeSet(ndr
, "privs", r
->in
.privs
);
5708 if (flags
& NDR_OUT
) {
5709 ndr_print_struct(ndr
, "out", "lsa_AddPrivilegesToAccount");
5711 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5717 NTSTATUS
ndr_push_lsa_RemovePrivilegesFromAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_RemovePrivilegesFromAccount
*r
)
5719 if (flags
& NDR_IN
) {
5720 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5721 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5722 NDR_CHECK(ndr_push_uint8(ndr
, NDR_SCALARS
, r
->in
.remove_all
));
5723 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.privs
));
5725 NDR_CHECK(ndr_push_lsa_PrivilegeSet(ndr
, NDR_SCALARS
, r
->in
.privs
));
5728 if (flags
& NDR_OUT
) {
5729 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5731 return NT_STATUS_OK
;
5734 NTSTATUS
ndr_pull_lsa_RemovePrivilegesFromAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_RemovePrivilegesFromAccount
*r
)
5736 uint32_t _ptr_privs
;
5737 TALLOC_CTX
*_mem_save_handle_0
;
5738 TALLOC_CTX
*_mem_save_privs_0
;
5739 if (flags
& NDR_IN
) {
5740 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5741 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5743 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5744 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5745 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5746 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5747 NDR_CHECK(ndr_pull_uint8(ndr
, NDR_SCALARS
, &r
->in
.remove_all
));
5748 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_privs
));
5750 NDR_PULL_ALLOC(ndr
, r
->in
.privs
);
5755 _mem_save_privs_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5756 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.privs
, 0);
5757 NDR_CHECK(ndr_pull_lsa_PrivilegeSet(ndr
, NDR_SCALARS
, r
->in
.privs
));
5758 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_privs_0
, 0);
5761 if (flags
& NDR_OUT
) {
5762 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5764 return NT_STATUS_OK
;
5767 _PUBLIC_
void ndr_print_lsa_RemovePrivilegesFromAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_RemovePrivilegesFromAccount
*r
)
5769 ndr_print_struct(ndr
, name
, "lsa_RemovePrivilegesFromAccount");
5771 if (flags
& NDR_SET_VALUES
) {
5772 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5774 if (flags
& NDR_IN
) {
5775 ndr_print_struct(ndr
, "in", "lsa_RemovePrivilegesFromAccount");
5777 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
5779 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
5781 ndr_print_uint8(ndr
, "remove_all", r
->in
.remove_all
);
5782 ndr_print_ptr(ndr
, "privs", r
->in
.privs
);
5785 ndr_print_lsa_PrivilegeSet(ndr
, "privs", r
->in
.privs
);
5790 if (flags
& NDR_OUT
) {
5791 ndr_print_struct(ndr
, "out", "lsa_RemovePrivilegesFromAccount");
5793 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5799 NTSTATUS
ndr_push_lsa_GetQuotasForAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_GetQuotasForAccount
*r
)
5801 if (flags
& NDR_IN
) {
5803 if (flags
& NDR_OUT
) {
5804 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5806 return NT_STATUS_OK
;
5809 NTSTATUS
ndr_pull_lsa_GetQuotasForAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_GetQuotasForAccount
*r
)
5811 if (flags
& NDR_IN
) {
5813 if (flags
& NDR_OUT
) {
5814 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5816 return NT_STATUS_OK
;
5819 _PUBLIC_
void ndr_print_lsa_GetQuotasForAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_GetQuotasForAccount
*r
)
5821 ndr_print_struct(ndr
, name
, "lsa_GetQuotasForAccount");
5823 if (flags
& NDR_SET_VALUES
) {
5824 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5826 if (flags
& NDR_IN
) {
5827 ndr_print_struct(ndr
, "in", "lsa_GetQuotasForAccount");
5831 if (flags
& NDR_OUT
) {
5832 ndr_print_struct(ndr
, "out", "lsa_GetQuotasForAccount");
5834 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5840 NTSTATUS
ndr_push_lsa_SetQuotasForAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_SetQuotasForAccount
*r
)
5842 if (flags
& NDR_IN
) {
5844 if (flags
& NDR_OUT
) {
5845 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5847 return NT_STATUS_OK
;
5850 NTSTATUS
ndr_pull_lsa_SetQuotasForAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_SetQuotasForAccount
*r
)
5852 if (flags
& NDR_IN
) {
5854 if (flags
& NDR_OUT
) {
5855 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5857 return NT_STATUS_OK
;
5860 _PUBLIC_
void ndr_print_lsa_SetQuotasForAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetQuotasForAccount
*r
)
5862 ndr_print_struct(ndr
, name
, "lsa_SetQuotasForAccount");
5864 if (flags
& NDR_SET_VALUES
) {
5865 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5867 if (flags
& NDR_IN
) {
5868 ndr_print_struct(ndr
, "in", "lsa_SetQuotasForAccount");
5872 if (flags
& NDR_OUT
) {
5873 ndr_print_struct(ndr
, "out", "lsa_SetQuotasForAccount");
5875 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5881 NTSTATUS
ndr_push_lsa_GetSystemAccessAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_GetSystemAccessAccount
*r
)
5883 if (flags
& NDR_IN
) {
5885 if (flags
& NDR_OUT
) {
5886 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5888 return NT_STATUS_OK
;
5891 NTSTATUS
ndr_pull_lsa_GetSystemAccessAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_GetSystemAccessAccount
*r
)
5893 if (flags
& NDR_IN
) {
5895 if (flags
& NDR_OUT
) {
5896 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5898 return NT_STATUS_OK
;
5901 _PUBLIC_
void ndr_print_lsa_GetSystemAccessAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_GetSystemAccessAccount
*r
)
5903 ndr_print_struct(ndr
, name
, "lsa_GetSystemAccessAccount");
5905 if (flags
& NDR_SET_VALUES
) {
5906 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5908 if (flags
& NDR_IN
) {
5909 ndr_print_struct(ndr
, "in", "lsa_GetSystemAccessAccount");
5913 if (flags
& NDR_OUT
) {
5914 ndr_print_struct(ndr
, "out", "lsa_GetSystemAccessAccount");
5916 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5922 NTSTATUS
ndr_push_lsa_SetSystemAccessAccount(struct ndr_push
*ndr
, int flags
, const struct lsa_SetSystemAccessAccount
*r
)
5924 if (flags
& NDR_IN
) {
5926 if (flags
& NDR_OUT
) {
5927 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5929 return NT_STATUS_OK
;
5932 NTSTATUS
ndr_pull_lsa_SetSystemAccessAccount(struct ndr_pull
*ndr
, int flags
, struct lsa_SetSystemAccessAccount
*r
)
5934 if (flags
& NDR_IN
) {
5936 if (flags
& NDR_OUT
) {
5937 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
5939 return NT_STATUS_OK
;
5942 _PUBLIC_
void ndr_print_lsa_SetSystemAccessAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetSystemAccessAccount
*r
)
5944 ndr_print_struct(ndr
, name
, "lsa_SetSystemAccessAccount");
5946 if (flags
& NDR_SET_VALUES
) {
5947 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
5949 if (flags
& NDR_IN
) {
5950 ndr_print_struct(ndr
, "in", "lsa_SetSystemAccessAccount");
5954 if (flags
& NDR_OUT
) {
5955 ndr_print_struct(ndr
, "out", "lsa_SetSystemAccessAccount");
5957 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
5963 NTSTATUS
ndr_push_lsa_OpenTrustedDomain(struct ndr_push
*ndr
, int flags
, const struct lsa_OpenTrustedDomain
*r
)
5965 if (flags
& NDR_IN
) {
5966 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5967 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5968 if (r
->in
.sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5969 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
5970 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
5972 if (flags
& NDR_OUT
) {
5973 if (r
->out
.trustdom_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
5974 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.trustdom_handle
));
5975 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
5977 return NT_STATUS_OK
;
5980 NTSTATUS
ndr_pull_lsa_OpenTrustedDomain(struct ndr_pull
*ndr
, int flags
, struct lsa_OpenTrustedDomain
*r
)
5982 TALLOC_CTX
*_mem_save_handle_0
;
5983 TALLOC_CTX
*_mem_save_sid_0
;
5984 TALLOC_CTX
*_mem_save_trustdom_handle_0
;
5985 if (flags
& NDR_IN
) {
5986 ZERO_STRUCT(r
->out
);
5988 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5989 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
5991 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5992 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
5993 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
5994 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
5995 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
5996 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
5998 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
5999 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
6000 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
6001 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
6002 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
6003 NDR_PULL_ALLOC(ndr
, r
->out
.trustdom_handle
);
6004 ZERO_STRUCTP(r
->out
.trustdom_handle
);
6006 if (flags
& NDR_OUT
) {
6007 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6008 NDR_PULL_ALLOC(ndr
, r
->out
.trustdom_handle
);
6010 _mem_save_trustdom_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6011 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.trustdom_handle
, LIBNDR_FLAG_REF_ALLOC
);
6012 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.trustdom_handle
));
6013 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_trustdom_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6014 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6016 return NT_STATUS_OK
;
6019 _PUBLIC_
void ndr_print_lsa_OpenTrustedDomain(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_OpenTrustedDomain
*r
)
6021 ndr_print_struct(ndr
, name
, "lsa_OpenTrustedDomain");
6023 if (flags
& NDR_SET_VALUES
) {
6024 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6026 if (flags
& NDR_IN
) {
6027 ndr_print_struct(ndr
, "in", "lsa_OpenTrustedDomain");
6029 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
6031 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
6033 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
6035 ndr_print_dom_sid2(ndr
, "sid", r
->in
.sid
);
6037 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
6040 if (flags
& NDR_OUT
) {
6041 ndr_print_struct(ndr
, "out", "lsa_OpenTrustedDomain");
6043 ndr_print_ptr(ndr
, "trustdom_handle", r
->out
.trustdom_handle
);
6045 ndr_print_policy_handle(ndr
, "trustdom_handle", r
->out
.trustdom_handle
);
6047 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6053 NTSTATUS
ndr_push_lsa_QueryTrustedDomainInfo(struct ndr_push
*ndr
, int flags
, const struct lsa_QueryTrustedDomainInfo
*r
)
6055 if (flags
& NDR_IN
) {
6056 if (r
->in
.trustdom_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6057 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.trustdom_handle
));
6058 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, r
->in
.level
));
6060 if (flags
& NDR_OUT
) {
6061 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.info
));
6063 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
6064 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
6066 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6068 return NT_STATUS_OK
;
6071 NTSTATUS
ndr_pull_lsa_QueryTrustedDomainInfo(struct ndr_pull
*ndr
, int flags
, struct lsa_QueryTrustedDomainInfo
*r
)
6074 TALLOC_CTX
*_mem_save_trustdom_handle_0
;
6075 TALLOC_CTX
*_mem_save_info_0
;
6076 if (flags
& NDR_IN
) {
6077 ZERO_STRUCT(r
->out
);
6079 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6080 NDR_PULL_ALLOC(ndr
, r
->in
.trustdom_handle
);
6082 _mem_save_trustdom_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6083 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.trustdom_handle
, LIBNDR_FLAG_REF_ALLOC
);
6084 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.trustdom_handle
));
6085 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_trustdom_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6086 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, &r
->in
.level
));
6088 if (flags
& NDR_OUT
) {
6089 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
6091 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
6096 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6097 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, 0);
6098 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
6099 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
6100 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
6102 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6104 return NT_STATUS_OK
;
6107 _PUBLIC_
void ndr_print_lsa_QueryTrustedDomainInfo(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QueryTrustedDomainInfo
*r
)
6109 ndr_print_struct(ndr
, name
, "lsa_QueryTrustedDomainInfo");
6111 if (flags
& NDR_SET_VALUES
) {
6112 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6114 if (flags
& NDR_IN
) {
6115 ndr_print_struct(ndr
, "in", "lsa_QueryTrustedDomainInfo");
6117 ndr_print_ptr(ndr
, "trustdom_handle", r
->in
.trustdom_handle
);
6119 ndr_print_policy_handle(ndr
, "trustdom_handle", r
->in
.trustdom_handle
);
6121 ndr_print_lsa_TrustDomInfoEnum(ndr
, "level", r
->in
.level
);
6124 if (flags
& NDR_OUT
) {
6125 ndr_print_struct(ndr
, "out", "lsa_QueryTrustedDomainInfo");
6127 ndr_print_ptr(ndr
, "info", r
->out
.info
);
6130 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
6131 ndr_print_lsa_TrustedDomainInfo(ndr
, "info", r
->out
.info
);
6134 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6140 NTSTATUS
ndr_push_lsa_SetInformationTrustedDomain(struct ndr_push
*ndr
, int flags
, const struct lsa_SetInformationTrustedDomain
*r
)
6142 if (flags
& NDR_IN
) {
6144 if (flags
& NDR_OUT
) {
6145 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6147 return NT_STATUS_OK
;
6150 NTSTATUS
ndr_pull_lsa_SetInformationTrustedDomain(struct ndr_pull
*ndr
, int flags
, struct lsa_SetInformationTrustedDomain
*r
)
6152 if (flags
& NDR_IN
) {
6154 if (flags
& NDR_OUT
) {
6155 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6157 return NT_STATUS_OK
;
6160 _PUBLIC_
void ndr_print_lsa_SetInformationTrustedDomain(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetInformationTrustedDomain
*r
)
6162 ndr_print_struct(ndr
, name
, "lsa_SetInformationTrustedDomain");
6164 if (flags
& NDR_SET_VALUES
) {
6165 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6167 if (flags
& NDR_IN
) {
6168 ndr_print_struct(ndr
, "in", "lsa_SetInformationTrustedDomain");
6172 if (flags
& NDR_OUT
) {
6173 ndr_print_struct(ndr
, "out", "lsa_SetInformationTrustedDomain");
6175 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6181 NTSTATUS
ndr_push_lsa_OpenSecret(struct ndr_push
*ndr
, int flags
, const struct lsa_OpenSecret
*r
)
6183 if (flags
& NDR_IN
) {
6184 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6185 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6186 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.name
));
6187 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
6189 if (flags
& NDR_OUT
) {
6190 if (r
->out
.sec_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6191 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sec_handle
));
6192 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6194 return NT_STATUS_OK
;
6197 NTSTATUS
ndr_pull_lsa_OpenSecret(struct ndr_pull
*ndr
, int flags
, struct lsa_OpenSecret
*r
)
6199 TALLOC_CTX
*_mem_save_handle_0
;
6200 TALLOC_CTX
*_mem_save_sec_handle_0
;
6201 if (flags
& NDR_IN
) {
6202 ZERO_STRUCT(r
->out
);
6204 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6205 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
6207 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6208 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
6209 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6210 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6211 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.name
));
6212 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
6213 NDR_PULL_ALLOC(ndr
, r
->out
.sec_handle
);
6214 ZERO_STRUCTP(r
->out
.sec_handle
);
6216 if (flags
& NDR_OUT
) {
6217 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6218 NDR_PULL_ALLOC(ndr
, r
->out
.sec_handle
);
6220 _mem_save_sec_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6221 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sec_handle
, LIBNDR_FLAG_REF_ALLOC
);
6222 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sec_handle
));
6223 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sec_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6224 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6226 return NT_STATUS_OK
;
6229 _PUBLIC_
void ndr_print_lsa_OpenSecret(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_OpenSecret
*r
)
6231 ndr_print_struct(ndr
, name
, "lsa_OpenSecret");
6233 if (flags
& NDR_SET_VALUES
) {
6234 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6236 if (flags
& NDR_IN
) {
6237 ndr_print_struct(ndr
, "in", "lsa_OpenSecret");
6239 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
6241 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
6243 ndr_print_lsa_String(ndr
, "name", &r
->in
.name
);
6244 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
6247 if (flags
& NDR_OUT
) {
6248 ndr_print_struct(ndr
, "out", "lsa_OpenSecret");
6250 ndr_print_ptr(ndr
, "sec_handle", r
->out
.sec_handle
);
6252 ndr_print_policy_handle(ndr
, "sec_handle", r
->out
.sec_handle
);
6254 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6260 NTSTATUS
ndr_push_lsa_SetSecret(struct ndr_push
*ndr
, int flags
, const struct lsa_SetSecret
*r
)
6262 if (flags
& NDR_IN
) {
6263 if (r
->in
.sec_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6264 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sec_handle
));
6265 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.new_val
));
6266 if (r
->in
.new_val
) {
6267 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.new_val
));
6269 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.old_val
));
6270 if (r
->in
.old_val
) {
6271 NDR_CHECK(ndr_push_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.old_val
));
6274 if (flags
& NDR_OUT
) {
6275 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6277 return NT_STATUS_OK
;
6280 NTSTATUS
ndr_pull_lsa_SetSecret(struct ndr_pull
*ndr
, int flags
, struct lsa_SetSecret
*r
)
6282 uint32_t _ptr_new_val
;
6283 uint32_t _ptr_old_val
;
6284 TALLOC_CTX
*_mem_save_sec_handle_0
;
6285 TALLOC_CTX
*_mem_save_new_val_0
;
6286 TALLOC_CTX
*_mem_save_old_val_0
;
6287 if (flags
& NDR_IN
) {
6288 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6289 NDR_PULL_ALLOC(ndr
, r
->in
.sec_handle
);
6291 _mem_save_sec_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6292 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sec_handle
, LIBNDR_FLAG_REF_ALLOC
);
6293 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sec_handle
));
6294 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sec_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6295 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_new_val
));
6297 NDR_PULL_ALLOC(ndr
, r
->in
.new_val
);
6299 r
->in
.new_val
= NULL
;
6301 if (r
->in
.new_val
) {
6302 _mem_save_new_val_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6303 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.new_val
, 0);
6304 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.new_val
));
6305 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_new_val_0
, 0);
6307 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_old_val
));
6309 NDR_PULL_ALLOC(ndr
, r
->in
.old_val
);
6311 r
->in
.old_val
= NULL
;
6313 if (r
->in
.old_val
) {
6314 _mem_save_old_val_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6315 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.old_val
, 0);
6316 NDR_CHECK(ndr_pull_lsa_DATA_BUF(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.old_val
));
6317 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_old_val_0
, 0);
6320 if (flags
& NDR_OUT
) {
6321 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6323 return NT_STATUS_OK
;
6326 _PUBLIC_
void ndr_print_lsa_SetSecret(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetSecret
*r
)
6328 ndr_print_struct(ndr
, name
, "lsa_SetSecret");
6330 if (flags
& NDR_SET_VALUES
) {
6331 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6333 if (flags
& NDR_IN
) {
6334 ndr_print_struct(ndr
, "in", "lsa_SetSecret");
6336 ndr_print_ptr(ndr
, "sec_handle", r
->in
.sec_handle
);
6338 ndr_print_policy_handle(ndr
, "sec_handle", r
->in
.sec_handle
);
6340 ndr_print_ptr(ndr
, "new_val", r
->in
.new_val
);
6342 if (r
->in
.new_val
) {
6343 ndr_print_lsa_DATA_BUF(ndr
, "new_val", r
->in
.new_val
);
6346 ndr_print_ptr(ndr
, "old_val", r
->in
.old_val
);
6348 if (r
->in
.old_val
) {
6349 ndr_print_lsa_DATA_BUF(ndr
, "old_val", r
->in
.old_val
);
6354 if (flags
& NDR_OUT
) {
6355 ndr_print_struct(ndr
, "out", "lsa_SetSecret");
6357 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6363 NTSTATUS
ndr_push_lsa_QuerySecret(struct ndr_push
*ndr
, int flags
, const struct lsa_QuerySecret
*r
)
6365 if (flags
& NDR_IN
) {
6366 if (r
->in
.sec_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6367 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sec_handle
));
6368 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.new_val
));
6369 if (r
->in
.new_val
) {
6370 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.new_val
));
6372 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.new_mtime
));
6373 if (r
->in
.new_mtime
) {
6374 NDR_CHECK(ndr_push_NTTIME_hyper(ndr
, NDR_SCALARS
, *r
->in
.new_mtime
));
6376 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.old_val
));
6377 if (r
->in
.old_val
) {
6378 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.old_val
));
6380 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.old_mtime
));
6381 if (r
->in
.old_mtime
) {
6382 NDR_CHECK(ndr_push_NTTIME_hyper(ndr
, NDR_SCALARS
, *r
->in
.old_mtime
));
6385 if (flags
& NDR_OUT
) {
6386 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.new_val
));
6387 if (r
->out
.new_val
) {
6388 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.new_val
));
6390 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.new_mtime
));
6391 if (r
->out
.new_mtime
) {
6392 NDR_CHECK(ndr_push_NTTIME_hyper(ndr
, NDR_SCALARS
, *r
->out
.new_mtime
));
6394 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.old_val
));
6395 if (r
->out
.old_val
) {
6396 NDR_CHECK(ndr_push_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.old_val
));
6398 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.old_mtime
));
6399 if (r
->out
.old_mtime
) {
6400 NDR_CHECK(ndr_push_NTTIME_hyper(ndr
, NDR_SCALARS
, *r
->out
.old_mtime
));
6402 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6404 return NT_STATUS_OK
;
6407 NTSTATUS
ndr_pull_lsa_QuerySecret(struct ndr_pull
*ndr
, int flags
, struct lsa_QuerySecret
*r
)
6409 uint32_t _ptr_new_val
;
6410 uint32_t _ptr_new_mtime
;
6411 uint32_t _ptr_old_val
;
6412 uint32_t _ptr_old_mtime
;
6413 TALLOC_CTX
*_mem_save_sec_handle_0
;
6414 TALLOC_CTX
*_mem_save_new_val_0
;
6415 TALLOC_CTX
*_mem_save_new_mtime_0
;
6416 TALLOC_CTX
*_mem_save_old_val_0
;
6417 TALLOC_CTX
*_mem_save_old_mtime_0
;
6418 if (flags
& NDR_IN
) {
6419 ZERO_STRUCT(r
->out
);
6421 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6422 NDR_PULL_ALLOC(ndr
, r
->in
.sec_handle
);
6424 _mem_save_sec_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6425 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sec_handle
, LIBNDR_FLAG_REF_ALLOC
);
6426 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sec_handle
));
6427 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sec_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6428 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_new_val
));
6430 NDR_PULL_ALLOC(ndr
, r
->in
.new_val
);
6432 r
->in
.new_val
= NULL
;
6434 if (r
->in
.new_val
) {
6435 _mem_save_new_val_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6436 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.new_val
, 0);
6437 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.new_val
));
6438 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_new_val_0
, 0);
6440 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_new_mtime
));
6441 if (_ptr_new_mtime
) {
6442 NDR_PULL_ALLOC(ndr
, r
->in
.new_mtime
);
6444 r
->in
.new_mtime
= NULL
;
6446 if (r
->in
.new_mtime
) {
6447 _mem_save_new_mtime_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6448 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.new_mtime
, 0);
6449 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr
, NDR_SCALARS
, r
->in
.new_mtime
));
6450 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_new_mtime_0
, 0);
6452 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_old_val
));
6454 NDR_PULL_ALLOC(ndr
, r
->in
.old_val
);
6456 r
->in
.old_val
= NULL
;
6458 if (r
->in
.old_val
) {
6459 _mem_save_old_val_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6460 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.old_val
, 0);
6461 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.old_val
));
6462 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_old_val_0
, 0);
6464 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_old_mtime
));
6465 if (_ptr_old_mtime
) {
6466 NDR_PULL_ALLOC(ndr
, r
->in
.old_mtime
);
6468 r
->in
.old_mtime
= NULL
;
6470 if (r
->in
.old_mtime
) {
6471 _mem_save_old_mtime_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6472 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.old_mtime
, 0);
6473 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr
, NDR_SCALARS
, r
->in
.old_mtime
));
6474 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_old_mtime_0
, 0);
6477 if (flags
& NDR_OUT
) {
6478 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_new_val
));
6480 NDR_PULL_ALLOC(ndr
, r
->out
.new_val
);
6482 r
->out
.new_val
= NULL
;
6484 if (r
->out
.new_val
) {
6485 _mem_save_new_val_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6486 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.new_val
, 0);
6487 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.new_val
));
6488 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_new_val_0
, 0);
6490 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_new_mtime
));
6491 if (_ptr_new_mtime
) {
6492 NDR_PULL_ALLOC(ndr
, r
->out
.new_mtime
);
6494 r
->out
.new_mtime
= NULL
;
6496 if (r
->out
.new_mtime
) {
6497 _mem_save_new_mtime_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6498 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.new_mtime
, 0);
6499 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr
, NDR_SCALARS
, r
->out
.new_mtime
));
6500 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_new_mtime_0
, 0);
6502 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_old_val
));
6504 NDR_PULL_ALLOC(ndr
, r
->out
.old_val
);
6506 r
->out
.old_val
= NULL
;
6508 if (r
->out
.old_val
) {
6509 _mem_save_old_val_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6510 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.old_val
, 0);
6511 NDR_CHECK(ndr_pull_lsa_DATA_BUF_PTR(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.old_val
));
6512 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_old_val_0
, 0);
6514 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_old_mtime
));
6515 if (_ptr_old_mtime
) {
6516 NDR_PULL_ALLOC(ndr
, r
->out
.old_mtime
);
6518 r
->out
.old_mtime
= NULL
;
6520 if (r
->out
.old_mtime
) {
6521 _mem_save_old_mtime_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6522 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.old_mtime
, 0);
6523 NDR_CHECK(ndr_pull_NTTIME_hyper(ndr
, NDR_SCALARS
, r
->out
.old_mtime
));
6524 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_old_mtime_0
, 0);
6526 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6528 return NT_STATUS_OK
;
6531 _PUBLIC_
void ndr_print_lsa_QuerySecret(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QuerySecret
*r
)
6533 ndr_print_struct(ndr
, name
, "lsa_QuerySecret");
6535 if (flags
& NDR_SET_VALUES
) {
6536 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6538 if (flags
& NDR_IN
) {
6539 ndr_print_struct(ndr
, "in", "lsa_QuerySecret");
6541 ndr_print_ptr(ndr
, "sec_handle", r
->in
.sec_handle
);
6543 ndr_print_policy_handle(ndr
, "sec_handle", r
->in
.sec_handle
);
6545 ndr_print_ptr(ndr
, "new_val", r
->in
.new_val
);
6547 if (r
->in
.new_val
) {
6548 ndr_print_lsa_DATA_BUF_PTR(ndr
, "new_val", r
->in
.new_val
);
6551 ndr_print_ptr(ndr
, "new_mtime", r
->in
.new_mtime
);
6553 if (r
->in
.new_mtime
) {
6554 ndr_print_NTTIME_hyper(ndr
, "new_mtime", *r
->in
.new_mtime
);
6557 ndr_print_ptr(ndr
, "old_val", r
->in
.old_val
);
6559 if (r
->in
.old_val
) {
6560 ndr_print_lsa_DATA_BUF_PTR(ndr
, "old_val", r
->in
.old_val
);
6563 ndr_print_ptr(ndr
, "old_mtime", r
->in
.old_mtime
);
6565 if (r
->in
.old_mtime
) {
6566 ndr_print_NTTIME_hyper(ndr
, "old_mtime", *r
->in
.old_mtime
);
6571 if (flags
& NDR_OUT
) {
6572 ndr_print_struct(ndr
, "out", "lsa_QuerySecret");
6574 ndr_print_ptr(ndr
, "new_val", r
->out
.new_val
);
6576 if (r
->out
.new_val
) {
6577 ndr_print_lsa_DATA_BUF_PTR(ndr
, "new_val", r
->out
.new_val
);
6580 ndr_print_ptr(ndr
, "new_mtime", r
->out
.new_mtime
);
6582 if (r
->out
.new_mtime
) {
6583 ndr_print_NTTIME_hyper(ndr
, "new_mtime", *r
->out
.new_mtime
);
6586 ndr_print_ptr(ndr
, "old_val", r
->out
.old_val
);
6588 if (r
->out
.old_val
) {
6589 ndr_print_lsa_DATA_BUF_PTR(ndr
, "old_val", r
->out
.old_val
);
6592 ndr_print_ptr(ndr
, "old_mtime", r
->out
.old_mtime
);
6594 if (r
->out
.old_mtime
) {
6595 ndr_print_NTTIME_hyper(ndr
, "old_mtime", *r
->out
.old_mtime
);
6598 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6604 NTSTATUS
ndr_push_lsa_LookupPrivValue(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupPrivValue
*r
)
6606 if (flags
& NDR_IN
) {
6607 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6608 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6609 if (r
->in
.name
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6610 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.name
));
6612 if (flags
& NDR_OUT
) {
6613 if (r
->out
.luid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6614 NDR_CHECK(ndr_push_lsa_LUID(ndr
, NDR_SCALARS
, r
->out
.luid
));
6615 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6617 return NT_STATUS_OK
;
6620 NTSTATUS
ndr_pull_lsa_LookupPrivValue(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupPrivValue
*r
)
6622 TALLOC_CTX
*_mem_save_handle_0
;
6623 TALLOC_CTX
*_mem_save_name_0
;
6624 TALLOC_CTX
*_mem_save_luid_0
;
6625 if (flags
& NDR_IN
) {
6626 ZERO_STRUCT(r
->out
);
6628 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6629 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
6631 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6632 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
6633 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6634 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6635 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6636 NDR_PULL_ALLOC(ndr
, r
->in
.name
);
6638 _mem_save_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6639 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.name
, LIBNDR_FLAG_REF_ALLOC
);
6640 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.name
));
6641 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_0
, LIBNDR_FLAG_REF_ALLOC
);
6642 NDR_PULL_ALLOC(ndr
, r
->out
.luid
);
6643 ZERO_STRUCTP(r
->out
.luid
);
6645 if (flags
& NDR_OUT
) {
6646 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6647 NDR_PULL_ALLOC(ndr
, r
->out
.luid
);
6649 _mem_save_luid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6650 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.luid
, LIBNDR_FLAG_REF_ALLOC
);
6651 NDR_CHECK(ndr_pull_lsa_LUID(ndr
, NDR_SCALARS
, r
->out
.luid
));
6652 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_luid_0
, LIBNDR_FLAG_REF_ALLOC
);
6653 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6655 return NT_STATUS_OK
;
6658 _PUBLIC_
void ndr_print_lsa_LookupPrivValue(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupPrivValue
*r
)
6660 ndr_print_struct(ndr
, name
, "lsa_LookupPrivValue");
6662 if (flags
& NDR_SET_VALUES
) {
6663 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6665 if (flags
& NDR_IN
) {
6666 ndr_print_struct(ndr
, "in", "lsa_LookupPrivValue");
6668 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
6670 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
6672 ndr_print_ptr(ndr
, "name", r
->in
.name
);
6674 ndr_print_lsa_String(ndr
, "name", r
->in
.name
);
6678 if (flags
& NDR_OUT
) {
6679 ndr_print_struct(ndr
, "out", "lsa_LookupPrivValue");
6681 ndr_print_ptr(ndr
, "luid", r
->out
.luid
);
6683 ndr_print_lsa_LUID(ndr
, "luid", r
->out
.luid
);
6685 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6691 NTSTATUS
ndr_push_lsa_LookupPrivName(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupPrivName
*r
)
6693 if (flags
& NDR_IN
) {
6694 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6695 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6696 if (r
->in
.luid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6697 NDR_CHECK(ndr_push_lsa_LUID(ndr
, NDR_SCALARS
, r
->in
.luid
));
6699 if (flags
& NDR_OUT
) {
6700 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.name
));
6702 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.name
));
6704 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6706 return NT_STATUS_OK
;
6709 NTSTATUS
ndr_pull_lsa_LookupPrivName(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupPrivName
*r
)
6712 TALLOC_CTX
*_mem_save_handle_0
;
6713 TALLOC_CTX
*_mem_save_luid_0
;
6714 TALLOC_CTX
*_mem_save_name_0
;
6715 if (flags
& NDR_IN
) {
6716 ZERO_STRUCT(r
->out
);
6718 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6719 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
6721 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6722 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
6723 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6724 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6725 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6726 NDR_PULL_ALLOC(ndr
, r
->in
.luid
);
6728 _mem_save_luid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6729 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.luid
, LIBNDR_FLAG_REF_ALLOC
);
6730 NDR_CHECK(ndr_pull_lsa_LUID(ndr
, NDR_SCALARS
, r
->in
.luid
));
6731 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_luid_0
, LIBNDR_FLAG_REF_ALLOC
);
6733 if (flags
& NDR_OUT
) {
6734 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_name
));
6736 NDR_PULL_ALLOC(ndr
, r
->out
.name
);
6741 _mem_save_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6742 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.name
, 0);
6743 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.name
));
6744 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_0
, 0);
6746 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6748 return NT_STATUS_OK
;
6751 _PUBLIC_
void ndr_print_lsa_LookupPrivName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupPrivName
*r
)
6753 ndr_print_struct(ndr
, name
, "lsa_LookupPrivName");
6755 if (flags
& NDR_SET_VALUES
) {
6756 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6758 if (flags
& NDR_IN
) {
6759 ndr_print_struct(ndr
, "in", "lsa_LookupPrivName");
6761 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
6763 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
6765 ndr_print_ptr(ndr
, "luid", r
->in
.luid
);
6767 ndr_print_lsa_LUID(ndr
, "luid", r
->in
.luid
);
6771 if (flags
& NDR_OUT
) {
6772 ndr_print_struct(ndr
, "out", "lsa_LookupPrivName");
6774 ndr_print_ptr(ndr
, "name", r
->out
.name
);
6777 ndr_print_lsa_StringLarge(ndr
, "name", r
->out
.name
);
6780 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6786 NTSTATUS
ndr_push_lsa_LookupPrivDisplayName(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupPrivDisplayName
*r
)
6788 if (flags
& NDR_IN
) {
6789 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6790 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6791 if (r
->in
.name
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6792 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.name
));
6793 if (r
->in
.language_id
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6794 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, *r
->in
.language_id
));
6795 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.unknown
));
6797 if (flags
& NDR_OUT
) {
6798 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.disp_name
));
6799 if (r
->out
.disp_name
) {
6800 NDR_CHECK(ndr_push_lsa_StringLarge(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.disp_name
));
6802 if (r
->out
.language_id
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6803 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, *r
->out
.language_id
));
6804 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6806 return NT_STATUS_OK
;
6809 NTSTATUS
ndr_pull_lsa_LookupPrivDisplayName(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupPrivDisplayName
*r
)
6811 uint32_t _ptr_disp_name
;
6812 TALLOC_CTX
*_mem_save_handle_0
;
6813 TALLOC_CTX
*_mem_save_name_0
;
6814 TALLOC_CTX
*_mem_save_disp_name_0
;
6815 TALLOC_CTX
*_mem_save_language_id_0
;
6816 if (flags
& NDR_IN
) {
6817 ZERO_STRUCT(r
->out
);
6819 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6820 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
6822 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6823 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
6824 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6825 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6826 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6827 NDR_PULL_ALLOC(ndr
, r
->in
.name
);
6829 _mem_save_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6830 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.name
, LIBNDR_FLAG_REF_ALLOC
);
6831 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.name
));
6832 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_0
, LIBNDR_FLAG_REF_ALLOC
);
6833 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6834 NDR_PULL_ALLOC(ndr
, r
->in
.language_id
);
6836 _mem_save_language_id_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6837 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.language_id
, LIBNDR_FLAG_REF_ALLOC
);
6838 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, r
->in
.language_id
));
6839 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_language_id_0
, LIBNDR_FLAG_REF_ALLOC
);
6840 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.unknown
));
6841 NDR_PULL_ALLOC(ndr
, r
->out
.language_id
);
6842 *r
->out
.language_id
= *r
->in
.language_id
;
6844 if (flags
& NDR_OUT
) {
6845 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_disp_name
));
6846 if (_ptr_disp_name
) {
6847 NDR_PULL_ALLOC(ndr
, r
->out
.disp_name
);
6849 r
->out
.disp_name
= NULL
;
6851 if (r
->out
.disp_name
) {
6852 _mem_save_disp_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6853 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.disp_name
, 0);
6854 NDR_CHECK(ndr_pull_lsa_StringLarge(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.disp_name
));
6855 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_disp_name_0
, 0);
6857 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6858 NDR_PULL_ALLOC(ndr
, r
->out
.language_id
);
6860 _mem_save_language_id_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6861 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.language_id
, LIBNDR_FLAG_REF_ALLOC
);
6862 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, r
->out
.language_id
));
6863 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_language_id_0
, LIBNDR_FLAG_REF_ALLOC
);
6864 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6866 return NT_STATUS_OK
;
6869 _PUBLIC_
void ndr_print_lsa_LookupPrivDisplayName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupPrivDisplayName
*r
)
6871 ndr_print_struct(ndr
, name
, "lsa_LookupPrivDisplayName");
6873 if (flags
& NDR_SET_VALUES
) {
6874 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6876 if (flags
& NDR_IN
) {
6877 ndr_print_struct(ndr
, "in", "lsa_LookupPrivDisplayName");
6879 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
6881 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
6883 ndr_print_ptr(ndr
, "name", r
->in
.name
);
6885 ndr_print_lsa_String(ndr
, "name", r
->in
.name
);
6887 ndr_print_ptr(ndr
, "language_id", r
->in
.language_id
);
6889 ndr_print_uint16(ndr
, "language_id", *r
->in
.language_id
);
6891 ndr_print_uint16(ndr
, "unknown", r
->in
.unknown
);
6894 if (flags
& NDR_OUT
) {
6895 ndr_print_struct(ndr
, "out", "lsa_LookupPrivDisplayName");
6897 ndr_print_ptr(ndr
, "disp_name", r
->out
.disp_name
);
6899 if (r
->out
.disp_name
) {
6900 ndr_print_lsa_StringLarge(ndr
, "disp_name", r
->out
.disp_name
);
6903 ndr_print_ptr(ndr
, "language_id", r
->out
.language_id
);
6905 ndr_print_uint16(ndr
, "language_id", *r
->out
.language_id
);
6907 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6913 NTSTATUS
ndr_push_lsa_DeleteObject(struct ndr_push
*ndr
, int flags
, const struct lsa_DeleteObject
*r
)
6915 if (flags
& NDR_IN
) {
6917 if (flags
& NDR_OUT
) {
6918 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6920 return NT_STATUS_OK
;
6923 NTSTATUS
ndr_pull_lsa_DeleteObject(struct ndr_pull
*ndr
, int flags
, struct lsa_DeleteObject
*r
)
6925 if (flags
& NDR_IN
) {
6927 if (flags
& NDR_OUT
) {
6928 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
6930 return NT_STATUS_OK
;
6933 _PUBLIC_
void ndr_print_lsa_DeleteObject(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_DeleteObject
*r
)
6935 ndr_print_struct(ndr
, name
, "lsa_DeleteObject");
6937 if (flags
& NDR_SET_VALUES
) {
6938 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
6940 if (flags
& NDR_IN
) {
6941 ndr_print_struct(ndr
, "in", "lsa_DeleteObject");
6945 if (flags
& NDR_OUT
) {
6946 ndr_print_struct(ndr
, "out", "lsa_DeleteObject");
6948 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
6954 NTSTATUS
ndr_push_lsa_EnumAccountsWithUserRight(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumAccountsWithUserRight
*r
)
6956 if (flags
& NDR_IN
) {
6957 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6958 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6959 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.name
));
6961 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.name
));
6964 if (flags
& NDR_OUT
) {
6965 if (r
->out
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
6966 NDR_CHECK(ndr_push_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
6967 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
6969 return NT_STATUS_OK
;
6972 NTSTATUS
ndr_pull_lsa_EnumAccountsWithUserRight(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumAccountsWithUserRight
*r
)
6975 TALLOC_CTX
*_mem_save_handle_0
;
6976 TALLOC_CTX
*_mem_save_name_0
;
6977 TALLOC_CTX
*_mem_save_sids_0
;
6978 if (flags
& NDR_IN
) {
6979 ZERO_STRUCT(r
->out
);
6981 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
6982 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
6984 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6985 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
6986 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
6987 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
6988 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_name
));
6990 NDR_PULL_ALLOC(ndr
, r
->in
.name
);
6995 _mem_save_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
6996 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.name
, 0);
6997 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.name
));
6998 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_0
, 0);
7000 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
7001 ZERO_STRUCTP(r
->out
.sids
);
7003 if (flags
& NDR_OUT
) {
7004 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7005 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
7007 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7008 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
7009 NDR_CHECK(ndr_pull_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
7010 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
7011 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7013 return NT_STATUS_OK
;
7016 _PUBLIC_
void ndr_print_lsa_EnumAccountsWithUserRight(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumAccountsWithUserRight
*r
)
7018 ndr_print_struct(ndr
, name
, "lsa_EnumAccountsWithUserRight");
7020 if (flags
& NDR_SET_VALUES
) {
7021 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7023 if (flags
& NDR_IN
) {
7024 ndr_print_struct(ndr
, "in", "lsa_EnumAccountsWithUserRight");
7026 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7028 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7030 ndr_print_ptr(ndr
, "name", r
->in
.name
);
7033 ndr_print_lsa_String(ndr
, "name", r
->in
.name
);
7038 if (flags
& NDR_OUT
) {
7039 ndr_print_struct(ndr
, "out", "lsa_EnumAccountsWithUserRight");
7041 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
7043 ndr_print_lsa_SidArray(ndr
, "sids", r
->out
.sids
);
7045 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7051 NTSTATUS
ndr_push_lsa_EnumAccountRights(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumAccountRights
*r
)
7053 if (flags
& NDR_IN
) {
7054 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7055 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7056 if (r
->in
.sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7057 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
7059 if (flags
& NDR_OUT
) {
7060 if (r
->out
.rights
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7061 NDR_CHECK(ndr_push_lsa_RightSet(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.rights
));
7062 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7064 return NT_STATUS_OK
;
7067 NTSTATUS
ndr_pull_lsa_EnumAccountRights(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumAccountRights
*r
)
7069 TALLOC_CTX
*_mem_save_handle_0
;
7070 TALLOC_CTX
*_mem_save_sid_0
;
7071 TALLOC_CTX
*_mem_save_rights_0
;
7072 if (flags
& NDR_IN
) {
7073 ZERO_STRUCT(r
->out
);
7075 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7076 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
7078 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7079 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7080 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7081 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7082 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7083 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
7085 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7086 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
7087 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
7088 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
7089 NDR_PULL_ALLOC(ndr
, r
->out
.rights
);
7090 ZERO_STRUCTP(r
->out
.rights
);
7092 if (flags
& NDR_OUT
) {
7093 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7094 NDR_PULL_ALLOC(ndr
, r
->out
.rights
);
7096 _mem_save_rights_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7097 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.rights
, LIBNDR_FLAG_REF_ALLOC
);
7098 NDR_CHECK(ndr_pull_lsa_RightSet(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.rights
));
7099 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_rights_0
, LIBNDR_FLAG_REF_ALLOC
);
7100 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7102 return NT_STATUS_OK
;
7105 _PUBLIC_
void ndr_print_lsa_EnumAccountRights(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumAccountRights
*r
)
7107 ndr_print_struct(ndr
, name
, "lsa_EnumAccountRights");
7109 if (flags
& NDR_SET_VALUES
) {
7110 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7112 if (flags
& NDR_IN
) {
7113 ndr_print_struct(ndr
, "in", "lsa_EnumAccountRights");
7115 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7117 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7119 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
7121 ndr_print_dom_sid2(ndr
, "sid", r
->in
.sid
);
7125 if (flags
& NDR_OUT
) {
7126 ndr_print_struct(ndr
, "out", "lsa_EnumAccountRights");
7128 ndr_print_ptr(ndr
, "rights", r
->out
.rights
);
7130 ndr_print_lsa_RightSet(ndr
, "rights", r
->out
.rights
);
7132 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7138 NTSTATUS
ndr_push_lsa_AddAccountRights(struct ndr_push
*ndr
, int flags
, const struct lsa_AddAccountRights
*r
)
7140 if (flags
& NDR_IN
) {
7141 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7142 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7143 if (r
->in
.sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7144 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
7145 if (r
->in
.rights
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7146 NDR_CHECK(ndr_push_lsa_RightSet(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.rights
));
7148 if (flags
& NDR_OUT
) {
7149 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7151 return NT_STATUS_OK
;
7154 NTSTATUS
ndr_pull_lsa_AddAccountRights(struct ndr_pull
*ndr
, int flags
, struct lsa_AddAccountRights
*r
)
7156 TALLOC_CTX
*_mem_save_handle_0
;
7157 TALLOC_CTX
*_mem_save_sid_0
;
7158 TALLOC_CTX
*_mem_save_rights_0
;
7159 if (flags
& NDR_IN
) {
7160 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7161 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
7163 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7164 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7165 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7166 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7167 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7168 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
7170 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7171 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
7172 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
7173 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
7174 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7175 NDR_PULL_ALLOC(ndr
, r
->in
.rights
);
7177 _mem_save_rights_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7178 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.rights
, LIBNDR_FLAG_REF_ALLOC
);
7179 NDR_CHECK(ndr_pull_lsa_RightSet(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.rights
));
7180 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_rights_0
, LIBNDR_FLAG_REF_ALLOC
);
7182 if (flags
& NDR_OUT
) {
7183 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7185 return NT_STATUS_OK
;
7188 _PUBLIC_
void ndr_print_lsa_AddAccountRights(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_AddAccountRights
*r
)
7190 ndr_print_struct(ndr
, name
, "lsa_AddAccountRights");
7192 if (flags
& NDR_SET_VALUES
) {
7193 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7195 if (flags
& NDR_IN
) {
7196 ndr_print_struct(ndr
, "in", "lsa_AddAccountRights");
7198 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7200 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7202 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
7204 ndr_print_dom_sid2(ndr
, "sid", r
->in
.sid
);
7206 ndr_print_ptr(ndr
, "rights", r
->in
.rights
);
7208 ndr_print_lsa_RightSet(ndr
, "rights", r
->in
.rights
);
7212 if (flags
& NDR_OUT
) {
7213 ndr_print_struct(ndr
, "out", "lsa_AddAccountRights");
7215 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7221 NTSTATUS
ndr_push_lsa_RemoveAccountRights(struct ndr_push
*ndr
, int flags
, const struct lsa_RemoveAccountRights
*r
)
7223 if (flags
& NDR_IN
) {
7224 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7225 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7226 if (r
->in
.sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7227 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
7228 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown
));
7229 if (r
->in
.rights
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7230 NDR_CHECK(ndr_push_lsa_RightSet(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.rights
));
7232 if (flags
& NDR_OUT
) {
7233 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7235 return NT_STATUS_OK
;
7238 NTSTATUS
ndr_pull_lsa_RemoveAccountRights(struct ndr_pull
*ndr
, int flags
, struct lsa_RemoveAccountRights
*r
)
7240 TALLOC_CTX
*_mem_save_handle_0
;
7241 TALLOC_CTX
*_mem_save_sid_0
;
7242 TALLOC_CTX
*_mem_save_rights_0
;
7243 if (flags
& NDR_IN
) {
7244 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7245 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
7247 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7248 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7249 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7250 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7251 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7252 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
7254 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7255 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
7256 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sid
));
7257 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
7258 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown
));
7259 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7260 NDR_PULL_ALLOC(ndr
, r
->in
.rights
);
7262 _mem_save_rights_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7263 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.rights
, LIBNDR_FLAG_REF_ALLOC
);
7264 NDR_CHECK(ndr_pull_lsa_RightSet(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.rights
));
7265 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_rights_0
, LIBNDR_FLAG_REF_ALLOC
);
7267 if (flags
& NDR_OUT
) {
7268 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7270 return NT_STATUS_OK
;
7273 _PUBLIC_
void ndr_print_lsa_RemoveAccountRights(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_RemoveAccountRights
*r
)
7275 ndr_print_struct(ndr
, name
, "lsa_RemoveAccountRights");
7277 if (flags
& NDR_SET_VALUES
) {
7278 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7280 if (flags
& NDR_IN
) {
7281 ndr_print_struct(ndr
, "in", "lsa_RemoveAccountRights");
7283 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7285 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7287 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
7289 ndr_print_dom_sid2(ndr
, "sid", r
->in
.sid
);
7291 ndr_print_uint32(ndr
, "unknown", r
->in
.unknown
);
7292 ndr_print_ptr(ndr
, "rights", r
->in
.rights
);
7294 ndr_print_lsa_RightSet(ndr
, "rights", r
->in
.rights
);
7298 if (flags
& NDR_OUT
) {
7299 ndr_print_struct(ndr
, "out", "lsa_RemoveAccountRights");
7301 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7307 NTSTATUS
ndr_push_lsa_QueryTrustedDomainInfoBySid(struct ndr_push
*ndr
, int flags
, const struct lsa_QueryTrustedDomainInfoBySid
*r
)
7309 if (flags
& NDR_IN
) {
7310 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7311 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7312 if (r
->in
.dom_sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7313 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.dom_sid
));
7314 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, r
->in
.level
));
7316 if (flags
& NDR_OUT
) {
7317 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.info
));
7319 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
7320 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
7322 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7324 return NT_STATUS_OK
;
7327 NTSTATUS
ndr_pull_lsa_QueryTrustedDomainInfoBySid(struct ndr_pull
*ndr
, int flags
, struct lsa_QueryTrustedDomainInfoBySid
*r
)
7330 TALLOC_CTX
*_mem_save_handle_0
;
7331 TALLOC_CTX
*_mem_save_dom_sid_0
;
7332 TALLOC_CTX
*_mem_save_info_0
;
7333 if (flags
& NDR_IN
) {
7334 ZERO_STRUCT(r
->out
);
7336 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7337 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
7339 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7340 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7341 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7342 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7343 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7344 NDR_PULL_ALLOC(ndr
, r
->in
.dom_sid
);
7346 _mem_save_dom_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7347 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.dom_sid
, LIBNDR_FLAG_REF_ALLOC
);
7348 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.dom_sid
));
7349 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dom_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
7350 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, &r
->in
.level
));
7352 if (flags
& NDR_OUT
) {
7353 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
7355 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
7360 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7361 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, 0);
7362 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
7363 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
7364 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
7366 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7368 return NT_STATUS_OK
;
7371 _PUBLIC_
void ndr_print_lsa_QueryTrustedDomainInfoBySid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QueryTrustedDomainInfoBySid
*r
)
7373 ndr_print_struct(ndr
, name
, "lsa_QueryTrustedDomainInfoBySid");
7375 if (flags
& NDR_SET_VALUES
) {
7376 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7378 if (flags
& NDR_IN
) {
7379 ndr_print_struct(ndr
, "in", "lsa_QueryTrustedDomainInfoBySid");
7381 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7383 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7385 ndr_print_ptr(ndr
, "dom_sid", r
->in
.dom_sid
);
7387 ndr_print_dom_sid2(ndr
, "dom_sid", r
->in
.dom_sid
);
7389 ndr_print_lsa_TrustDomInfoEnum(ndr
, "level", r
->in
.level
);
7392 if (flags
& NDR_OUT
) {
7393 ndr_print_struct(ndr
, "out", "lsa_QueryTrustedDomainInfoBySid");
7395 ndr_print_ptr(ndr
, "info", r
->out
.info
);
7398 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
7399 ndr_print_lsa_TrustedDomainInfo(ndr
, "info", r
->out
.info
);
7402 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7408 NTSTATUS
ndr_push_lsa_SetTrustedDomainInfo(struct ndr_push
*ndr
, int flags
, const struct lsa_SetTrustedDomainInfo
*r
)
7410 if (flags
& NDR_IN
) {
7412 if (flags
& NDR_OUT
) {
7413 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7415 return NT_STATUS_OK
;
7418 NTSTATUS
ndr_pull_lsa_SetTrustedDomainInfo(struct ndr_pull
*ndr
, int flags
, struct lsa_SetTrustedDomainInfo
*r
)
7420 if (flags
& NDR_IN
) {
7422 if (flags
& NDR_OUT
) {
7423 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7425 return NT_STATUS_OK
;
7428 _PUBLIC_
void ndr_print_lsa_SetTrustedDomainInfo(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetTrustedDomainInfo
*r
)
7430 ndr_print_struct(ndr
, name
, "lsa_SetTrustedDomainInfo");
7432 if (flags
& NDR_SET_VALUES
) {
7433 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7435 if (flags
& NDR_IN
) {
7436 ndr_print_struct(ndr
, "in", "lsa_SetTrustedDomainInfo");
7440 if (flags
& NDR_OUT
) {
7441 ndr_print_struct(ndr
, "out", "lsa_SetTrustedDomainInfo");
7443 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7449 NTSTATUS
ndr_push_lsa_DeleteTrustedDomain(struct ndr_push
*ndr
, int flags
, const struct lsa_DeleteTrustedDomain
*r
)
7451 if (flags
& NDR_IN
) {
7452 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7453 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7454 if (r
->in
.dom_sid
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7455 NDR_CHECK(ndr_push_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.dom_sid
));
7457 if (flags
& NDR_OUT
) {
7458 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7460 return NT_STATUS_OK
;
7463 NTSTATUS
ndr_pull_lsa_DeleteTrustedDomain(struct ndr_pull
*ndr
, int flags
, struct lsa_DeleteTrustedDomain
*r
)
7465 TALLOC_CTX
*_mem_save_handle_0
;
7466 TALLOC_CTX
*_mem_save_dom_sid_0
;
7467 if (flags
& NDR_IN
) {
7468 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7469 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
7471 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7472 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7473 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7474 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7475 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7476 NDR_PULL_ALLOC(ndr
, r
->in
.dom_sid
);
7478 _mem_save_dom_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7479 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.dom_sid
, LIBNDR_FLAG_REF_ALLOC
);
7480 NDR_CHECK(ndr_pull_dom_sid2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.dom_sid
));
7481 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dom_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
7483 if (flags
& NDR_OUT
) {
7484 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7486 return NT_STATUS_OK
;
7489 _PUBLIC_
void ndr_print_lsa_DeleteTrustedDomain(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_DeleteTrustedDomain
*r
)
7491 ndr_print_struct(ndr
, name
, "lsa_DeleteTrustedDomain");
7493 if (flags
& NDR_SET_VALUES
) {
7494 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7496 if (flags
& NDR_IN
) {
7497 ndr_print_struct(ndr
, "in", "lsa_DeleteTrustedDomain");
7499 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7501 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7503 ndr_print_ptr(ndr
, "dom_sid", r
->in
.dom_sid
);
7505 ndr_print_dom_sid2(ndr
, "dom_sid", r
->in
.dom_sid
);
7509 if (flags
& NDR_OUT
) {
7510 ndr_print_struct(ndr
, "out", "lsa_DeleteTrustedDomain");
7512 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7518 NTSTATUS
ndr_push_lsa_StorePrivateData(struct ndr_push
*ndr
, int flags
, const struct lsa_StorePrivateData
*r
)
7520 if (flags
& NDR_IN
) {
7522 if (flags
& NDR_OUT
) {
7523 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7525 return NT_STATUS_OK
;
7528 NTSTATUS
ndr_pull_lsa_StorePrivateData(struct ndr_pull
*ndr
, int flags
, struct lsa_StorePrivateData
*r
)
7530 if (flags
& NDR_IN
) {
7532 if (flags
& NDR_OUT
) {
7533 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7535 return NT_STATUS_OK
;
7538 _PUBLIC_
void ndr_print_lsa_StorePrivateData(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_StorePrivateData
*r
)
7540 ndr_print_struct(ndr
, name
, "lsa_StorePrivateData");
7542 if (flags
& NDR_SET_VALUES
) {
7543 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7545 if (flags
& NDR_IN
) {
7546 ndr_print_struct(ndr
, "in", "lsa_StorePrivateData");
7550 if (flags
& NDR_OUT
) {
7551 ndr_print_struct(ndr
, "out", "lsa_StorePrivateData");
7553 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7559 NTSTATUS
ndr_push_lsa_RetrievePrivateData(struct ndr_push
*ndr
, int flags
, const struct lsa_RetrievePrivateData
*r
)
7561 if (flags
& NDR_IN
) {
7563 if (flags
& NDR_OUT
) {
7564 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7566 return NT_STATUS_OK
;
7569 NTSTATUS
ndr_pull_lsa_RetrievePrivateData(struct ndr_pull
*ndr
, int flags
, struct lsa_RetrievePrivateData
*r
)
7571 if (flags
& NDR_IN
) {
7573 if (flags
& NDR_OUT
) {
7574 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7576 return NT_STATUS_OK
;
7579 _PUBLIC_
void ndr_print_lsa_RetrievePrivateData(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_RetrievePrivateData
*r
)
7581 ndr_print_struct(ndr
, name
, "lsa_RetrievePrivateData");
7583 if (flags
& NDR_SET_VALUES
) {
7584 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7586 if (flags
& NDR_IN
) {
7587 ndr_print_struct(ndr
, "in", "lsa_RetrievePrivateData");
7591 if (flags
& NDR_OUT
) {
7592 ndr_print_struct(ndr
, "out", "lsa_RetrievePrivateData");
7594 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7600 NTSTATUS
ndr_push_lsa_OpenPolicy2(struct ndr_push
*ndr
, int flags
, const struct lsa_OpenPolicy2
*r
)
7602 if (flags
& NDR_IN
) {
7603 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.system_name
));
7604 if (r
->in
.system_name
) {
7605 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.system_name
, CH_UTF16
)));
7606 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
7607 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.system_name
, CH_UTF16
)));
7608 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
));
7610 if (r
->in
.attr
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7611 NDR_CHECK(ndr_push_lsa_ObjectAttribute(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.attr
));
7612 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
7614 if (flags
& NDR_OUT
) {
7615 if (r
->out
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7616 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
7617 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7619 return NT_STATUS_OK
;
7622 NTSTATUS
ndr_pull_lsa_OpenPolicy2(struct ndr_pull
*ndr
, int flags
, struct lsa_OpenPolicy2
*r
)
7624 uint32_t _ptr_system_name
;
7625 TALLOC_CTX
*_mem_save_system_name_0
;
7626 TALLOC_CTX
*_mem_save_attr_0
;
7627 TALLOC_CTX
*_mem_save_handle_0
;
7628 if (flags
& NDR_IN
) {
7629 ZERO_STRUCT(r
->out
);
7631 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_system_name
));
7632 if (_ptr_system_name
) {
7633 NDR_PULL_ALLOC(ndr
, r
->in
.system_name
);
7635 r
->in
.system_name
= NULL
;
7637 if (r
->in
.system_name
) {
7638 _mem_save_system_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7639 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.system_name
, 0);
7640 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.system_name
));
7641 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.system_name
));
7642 if (ndr_get_array_length(ndr
, &r
->in
.system_name
) > ndr_get_array_size(ndr
, &r
->in
.system_name
)) {
7643 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
));
7645 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.system_name
), sizeof(uint16_t)));
7646 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
));
7647 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_system_name_0
, 0);
7649 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7650 NDR_PULL_ALLOC(ndr
, r
->in
.attr
);
7652 _mem_save_attr_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7653 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.attr
, LIBNDR_FLAG_REF_ALLOC
);
7654 NDR_CHECK(ndr_pull_lsa_ObjectAttribute(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.attr
));
7655 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_attr_0
, LIBNDR_FLAG_REF_ALLOC
);
7656 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
7657 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
7658 ZERO_STRUCTP(r
->out
.handle
);
7660 if (flags
& NDR_OUT
) {
7661 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7662 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
7664 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7665 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7666 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
7667 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7668 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7670 return NT_STATUS_OK
;
7673 _PUBLIC_
void ndr_print_lsa_OpenPolicy2(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_OpenPolicy2
*r
)
7675 ndr_print_struct(ndr
, name
, "lsa_OpenPolicy2");
7677 if (flags
& NDR_SET_VALUES
) {
7678 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7680 if (flags
& NDR_IN
) {
7681 ndr_print_struct(ndr
, "in", "lsa_OpenPolicy2");
7683 ndr_print_ptr(ndr
, "system_name", r
->in
.system_name
);
7685 if (r
->in
.system_name
) {
7686 ndr_print_string(ndr
, "system_name", r
->in
.system_name
);
7689 ndr_print_ptr(ndr
, "attr", r
->in
.attr
);
7691 ndr_print_lsa_ObjectAttribute(ndr
, "attr", r
->in
.attr
);
7693 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
7696 if (flags
& NDR_OUT
) {
7697 ndr_print_struct(ndr
, "out", "lsa_OpenPolicy2");
7699 ndr_print_ptr(ndr
, "handle", r
->out
.handle
);
7701 ndr_print_policy_handle(ndr
, "handle", r
->out
.handle
);
7703 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7709 NTSTATUS
ndr_push_lsa_GetUserName(struct ndr_push
*ndr
, int flags
, const struct lsa_GetUserName
*r
)
7711 if (flags
& NDR_IN
) {
7712 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.system_name
));
7713 if (r
->in
.system_name
) {
7714 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.system_name
, CH_UTF16
)));
7715 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, 0));
7716 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.system_name
, CH_UTF16
)));
7717 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
));
7719 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.account_name
));
7720 if (r
->in
.account_name
) {
7721 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.account_name
));
7723 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.authority_name
));
7724 if (r
->in
.authority_name
) {
7725 NDR_CHECK(ndr_push_lsa_StringPointer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.authority_name
));
7728 if (flags
& NDR_OUT
) {
7729 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.account_name
));
7730 if (r
->out
.account_name
) {
7731 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.account_name
));
7733 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.authority_name
));
7734 if (r
->out
.authority_name
) {
7735 NDR_CHECK(ndr_push_lsa_StringPointer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.authority_name
));
7737 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7739 return NT_STATUS_OK
;
7742 NTSTATUS
ndr_pull_lsa_GetUserName(struct ndr_pull
*ndr
, int flags
, struct lsa_GetUserName
*r
)
7744 uint32_t _ptr_system_name
;
7745 uint32_t _ptr_account_name
;
7746 uint32_t _ptr_authority_name
;
7747 TALLOC_CTX
*_mem_save_system_name_0
;
7748 TALLOC_CTX
*_mem_save_account_name_0
;
7749 TALLOC_CTX
*_mem_save_authority_name_0
;
7750 if (flags
& NDR_IN
) {
7751 ZERO_STRUCT(r
->out
);
7753 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_system_name
));
7754 if (_ptr_system_name
) {
7755 NDR_PULL_ALLOC(ndr
, r
->in
.system_name
);
7757 r
->in
.system_name
= NULL
;
7759 if (r
->in
.system_name
) {
7760 _mem_save_system_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7761 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.system_name
, 0);
7762 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.system_name
));
7763 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.system_name
));
7764 if (ndr_get_array_length(ndr
, &r
->in
.system_name
) > ndr_get_array_size(ndr
, &r
->in
.system_name
)) {
7765 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
));
7767 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.system_name
), sizeof(uint16_t)));
7768 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
));
7769 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_system_name_0
, 0);
7771 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_account_name
));
7772 if (_ptr_account_name
) {
7773 NDR_PULL_ALLOC(ndr
, r
->in
.account_name
);
7775 r
->in
.account_name
= NULL
;
7777 if (r
->in
.account_name
) {
7778 _mem_save_account_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7779 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.account_name
, 0);
7780 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.account_name
));
7781 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_account_name_0
, 0);
7783 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_authority_name
));
7784 if (_ptr_authority_name
) {
7785 NDR_PULL_ALLOC(ndr
, r
->in
.authority_name
);
7787 r
->in
.authority_name
= NULL
;
7789 if (r
->in
.authority_name
) {
7790 _mem_save_authority_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7791 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.authority_name
, 0);
7792 NDR_CHECK(ndr_pull_lsa_StringPointer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.authority_name
));
7793 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_authority_name_0
, 0);
7796 if (flags
& NDR_OUT
) {
7797 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_account_name
));
7798 if (_ptr_account_name
) {
7799 NDR_PULL_ALLOC(ndr
, r
->out
.account_name
);
7801 r
->out
.account_name
= NULL
;
7803 if (r
->out
.account_name
) {
7804 _mem_save_account_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7805 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.account_name
, 0);
7806 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.account_name
));
7807 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_account_name_0
, 0);
7809 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_authority_name
));
7810 if (_ptr_authority_name
) {
7811 NDR_PULL_ALLOC(ndr
, r
->out
.authority_name
);
7813 r
->out
.authority_name
= NULL
;
7815 if (r
->out
.authority_name
) {
7816 _mem_save_authority_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7817 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.authority_name
, 0);
7818 NDR_CHECK(ndr_pull_lsa_StringPointer(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.authority_name
));
7819 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_authority_name_0
, 0);
7821 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7823 return NT_STATUS_OK
;
7826 _PUBLIC_
void ndr_print_lsa_GetUserName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_GetUserName
*r
)
7828 ndr_print_struct(ndr
, name
, "lsa_GetUserName");
7830 if (flags
& NDR_SET_VALUES
) {
7831 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7833 if (flags
& NDR_IN
) {
7834 ndr_print_struct(ndr
, "in", "lsa_GetUserName");
7836 ndr_print_ptr(ndr
, "system_name", r
->in
.system_name
);
7838 if (r
->in
.system_name
) {
7839 ndr_print_string(ndr
, "system_name", r
->in
.system_name
);
7842 ndr_print_ptr(ndr
, "account_name", r
->in
.account_name
);
7844 if (r
->in
.account_name
) {
7845 ndr_print_lsa_String(ndr
, "account_name", r
->in
.account_name
);
7848 ndr_print_ptr(ndr
, "authority_name", r
->in
.authority_name
);
7850 if (r
->in
.authority_name
) {
7851 ndr_print_lsa_StringPointer(ndr
, "authority_name", r
->in
.authority_name
);
7856 if (flags
& NDR_OUT
) {
7857 ndr_print_struct(ndr
, "out", "lsa_GetUserName");
7859 ndr_print_ptr(ndr
, "account_name", r
->out
.account_name
);
7861 if (r
->out
.account_name
) {
7862 ndr_print_lsa_String(ndr
, "account_name", r
->out
.account_name
);
7865 ndr_print_ptr(ndr
, "authority_name", r
->out
.authority_name
);
7867 if (r
->out
.authority_name
) {
7868 ndr_print_lsa_StringPointer(ndr
, "authority_name", r
->out
.authority_name
);
7871 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7877 NTSTATUS
ndr_push_lsa_QueryInfoPolicy2(struct ndr_push
*ndr
, int flags
, const struct lsa_QueryInfoPolicy2
*r
)
7879 if (flags
& NDR_IN
) {
7880 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
7881 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7882 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
7884 if (flags
& NDR_OUT
) {
7885 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.info
));
7887 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
7888 NDR_CHECK(ndr_push_lsa_PolicyInformation(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
7890 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7892 return NT_STATUS_OK
;
7895 NTSTATUS
ndr_pull_lsa_QueryInfoPolicy2(struct ndr_pull
*ndr
, int flags
, struct lsa_QueryInfoPolicy2
*r
)
7898 TALLOC_CTX
*_mem_save_handle_0
;
7899 TALLOC_CTX
*_mem_save_info_0
;
7900 if (flags
& NDR_IN
) {
7901 ZERO_STRUCT(r
->out
);
7903 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
7904 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
7906 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7907 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
7908 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
7909 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
7910 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
7912 if (flags
& NDR_OUT
) {
7913 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
7915 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
7920 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
7921 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, 0);
7922 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
7923 NDR_CHECK(ndr_pull_lsa_PolicyInformation(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
7924 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
7926 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7928 return NT_STATUS_OK
;
7931 _PUBLIC_
void ndr_print_lsa_QueryInfoPolicy2(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QueryInfoPolicy2
*r
)
7933 ndr_print_struct(ndr
, name
, "lsa_QueryInfoPolicy2");
7935 if (flags
& NDR_SET_VALUES
) {
7936 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7938 if (flags
& NDR_IN
) {
7939 ndr_print_struct(ndr
, "in", "lsa_QueryInfoPolicy2");
7941 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
7943 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
7945 ndr_print_uint16(ndr
, "level", r
->in
.level
);
7948 if (flags
& NDR_OUT
) {
7949 ndr_print_struct(ndr
, "out", "lsa_QueryInfoPolicy2");
7951 ndr_print_ptr(ndr
, "info", r
->out
.info
);
7954 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
7955 ndr_print_lsa_PolicyInformation(ndr
, "info", r
->out
.info
);
7958 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
7964 NTSTATUS
ndr_push_lsa_SetInfoPolicy2(struct ndr_push
*ndr
, int flags
, const struct lsa_SetInfoPolicy2
*r
)
7966 if (flags
& NDR_IN
) {
7968 if (flags
& NDR_OUT
) {
7969 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
7971 return NT_STATUS_OK
;
7974 NTSTATUS
ndr_pull_lsa_SetInfoPolicy2(struct ndr_pull
*ndr
, int flags
, struct lsa_SetInfoPolicy2
*r
)
7976 if (flags
& NDR_IN
) {
7978 if (flags
& NDR_OUT
) {
7979 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
7981 return NT_STATUS_OK
;
7984 _PUBLIC_
void ndr_print_lsa_SetInfoPolicy2(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetInfoPolicy2
*r
)
7986 ndr_print_struct(ndr
, name
, "lsa_SetInfoPolicy2");
7988 if (flags
& NDR_SET_VALUES
) {
7989 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
7991 if (flags
& NDR_IN
) {
7992 ndr_print_struct(ndr
, "in", "lsa_SetInfoPolicy2");
7996 if (flags
& NDR_OUT
) {
7997 ndr_print_struct(ndr
, "out", "lsa_SetInfoPolicy2");
7999 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8005 NTSTATUS
ndr_push_lsa_QueryTrustedDomainInfoByName(struct ndr_push
*ndr
, int flags
, const struct lsa_QueryTrustedDomainInfoByName
*r
)
8007 if (flags
& NDR_IN
) {
8008 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8009 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8010 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.trusted_domain
));
8011 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, r
->in
.level
));
8013 if (flags
& NDR_OUT
) {
8014 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.info
));
8016 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
8017 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
8019 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8021 return NT_STATUS_OK
;
8024 NTSTATUS
ndr_pull_lsa_QueryTrustedDomainInfoByName(struct ndr_pull
*ndr
, int flags
, struct lsa_QueryTrustedDomainInfoByName
*r
)
8027 TALLOC_CTX
*_mem_save_handle_0
;
8028 TALLOC_CTX
*_mem_save_info_0
;
8029 if (flags
& NDR_IN
) {
8030 ZERO_STRUCT(r
->out
);
8032 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8033 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8035 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8036 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8037 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8038 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8039 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.trusted_domain
));
8040 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, &r
->in
.level
));
8042 if (flags
& NDR_OUT
) {
8043 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
8045 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
8050 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8051 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, 0);
8052 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
8053 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
8054 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
8056 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8058 return NT_STATUS_OK
;
8061 _PUBLIC_
void ndr_print_lsa_QueryTrustedDomainInfoByName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QueryTrustedDomainInfoByName
*r
)
8063 ndr_print_struct(ndr
, name
, "lsa_QueryTrustedDomainInfoByName");
8065 if (flags
& NDR_SET_VALUES
) {
8066 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8068 if (flags
& NDR_IN
) {
8069 ndr_print_struct(ndr
, "in", "lsa_QueryTrustedDomainInfoByName");
8071 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8073 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8075 ndr_print_lsa_String(ndr
, "trusted_domain", &r
->in
.trusted_domain
);
8076 ndr_print_lsa_TrustDomInfoEnum(ndr
, "level", r
->in
.level
);
8079 if (flags
& NDR_OUT
) {
8080 ndr_print_struct(ndr
, "out", "lsa_QueryTrustedDomainInfoByName");
8082 ndr_print_ptr(ndr
, "info", r
->out
.info
);
8085 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
8086 ndr_print_lsa_TrustedDomainInfo(ndr
, "info", r
->out
.info
);
8089 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8095 NTSTATUS
ndr_push_lsa_SetTrustedDomainInfoByName(struct ndr_push
*ndr
, int flags
, const struct lsa_SetTrustedDomainInfoByName
*r
)
8097 if (flags
& NDR_IN
) {
8098 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8099 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8100 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.trusted_domain
));
8101 NDR_CHECK(ndr_push_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, r
->in
.level
));
8102 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.info
));
8104 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
));
8105 NDR_CHECK(ndr_push_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.info
));
8108 if (flags
& NDR_OUT
) {
8109 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8111 return NT_STATUS_OK
;
8114 NTSTATUS
ndr_pull_lsa_SetTrustedDomainInfoByName(struct ndr_pull
*ndr
, int flags
, struct lsa_SetTrustedDomainInfoByName
*r
)
8117 TALLOC_CTX
*_mem_save_handle_0
;
8118 TALLOC_CTX
*_mem_save_info_0
;
8119 if (flags
& NDR_IN
) {
8120 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8121 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8123 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8124 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8125 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8126 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8127 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.trusted_domain
));
8128 NDR_CHECK(ndr_pull_lsa_TrustDomInfoEnum(ndr
, NDR_SCALARS
, &r
->in
.level
));
8129 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
8131 NDR_PULL_ALLOC(ndr
, r
->in
.info
);
8136 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8137 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.info
, 0);
8138 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
));
8139 NDR_CHECK(ndr_pull_lsa_TrustedDomainInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.info
));
8140 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
8143 if (flags
& NDR_OUT
) {
8144 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8146 return NT_STATUS_OK
;
8149 _PUBLIC_
void ndr_print_lsa_SetTrustedDomainInfoByName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetTrustedDomainInfoByName
*r
)
8151 ndr_print_struct(ndr
, name
, "lsa_SetTrustedDomainInfoByName");
8153 if (flags
& NDR_SET_VALUES
) {
8154 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8156 if (flags
& NDR_IN
) {
8157 ndr_print_struct(ndr
, "in", "lsa_SetTrustedDomainInfoByName");
8159 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8161 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8163 ndr_print_lsa_String(ndr
, "trusted_domain", &r
->in
.trusted_domain
);
8164 ndr_print_lsa_TrustDomInfoEnum(ndr
, "level", r
->in
.level
);
8165 ndr_print_ptr(ndr
, "info", r
->in
.info
);
8168 ndr_print_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
);
8169 ndr_print_lsa_TrustedDomainInfo(ndr
, "info", r
->in
.info
);
8174 if (flags
& NDR_OUT
) {
8175 ndr_print_struct(ndr
, "out", "lsa_SetTrustedDomainInfoByName");
8177 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8183 NTSTATUS
ndr_push_lsa_EnumTrustedDomainsEx(struct ndr_push
*ndr
, int flags
, const struct lsa_EnumTrustedDomainsEx
*r
)
8185 if (flags
& NDR_IN
) {
8186 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8187 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8188 if (r
->in
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8189 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.resume_handle
));
8190 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.max_size
));
8192 if (flags
& NDR_OUT
) {
8193 if (r
->out
.resume_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8194 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.resume_handle
));
8195 if (r
->out
.domains
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8196 NDR_CHECK(ndr_push_lsa_DomainListEx(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
8197 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8199 return NT_STATUS_OK
;
8202 NTSTATUS
ndr_pull_lsa_EnumTrustedDomainsEx(struct ndr_pull
*ndr
, int flags
, struct lsa_EnumTrustedDomainsEx
*r
)
8204 TALLOC_CTX
*_mem_save_handle_0
;
8205 TALLOC_CTX
*_mem_save_resume_handle_0
;
8206 TALLOC_CTX
*_mem_save_domains_0
;
8207 if (flags
& NDR_IN
) {
8208 ZERO_STRUCT(r
->out
);
8210 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8211 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8213 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8214 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8215 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8216 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8217 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8218 NDR_PULL_ALLOC(ndr
, r
->in
.resume_handle
);
8220 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8221 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
8222 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.resume_handle
));
8223 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8224 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.max_size
));
8225 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
8226 *r
->out
.resume_handle
= *r
->in
.resume_handle
;
8227 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
8228 ZERO_STRUCTP(r
->out
.domains
);
8230 if (flags
& NDR_OUT
) {
8231 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8232 NDR_PULL_ALLOC(ndr
, r
->out
.resume_handle
);
8234 _mem_save_resume_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8235 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.resume_handle
, LIBNDR_FLAG_REF_ALLOC
);
8236 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.resume_handle
));
8237 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_resume_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8238 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8239 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
8241 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8242 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, LIBNDR_FLAG_REF_ALLOC
);
8243 NDR_CHECK(ndr_pull_lsa_DomainListEx(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
8244 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, LIBNDR_FLAG_REF_ALLOC
);
8245 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8247 return NT_STATUS_OK
;
8250 _PUBLIC_
void ndr_print_lsa_EnumTrustedDomainsEx(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_EnumTrustedDomainsEx
*r
)
8252 ndr_print_struct(ndr
, name
, "lsa_EnumTrustedDomainsEx");
8254 if (flags
& NDR_SET_VALUES
) {
8255 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8257 if (flags
& NDR_IN
) {
8258 ndr_print_struct(ndr
, "in", "lsa_EnumTrustedDomainsEx");
8260 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8262 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8264 ndr_print_ptr(ndr
, "resume_handle", r
->in
.resume_handle
);
8266 ndr_print_uint32(ndr
, "resume_handle", *r
->in
.resume_handle
);
8268 ndr_print_uint32(ndr
, "max_size", r
->in
.max_size
);
8271 if (flags
& NDR_OUT
) {
8272 ndr_print_struct(ndr
, "out", "lsa_EnumTrustedDomainsEx");
8274 ndr_print_ptr(ndr
, "resume_handle", r
->out
.resume_handle
);
8276 ndr_print_uint32(ndr
, "resume_handle", *r
->out
.resume_handle
);
8278 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
8280 ndr_print_lsa_DomainListEx(ndr
, "domains", r
->out
.domains
);
8282 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8288 NTSTATUS
ndr_push_lsa_CreateTrustedDomainEx(struct ndr_push
*ndr
, int flags
, const struct lsa_CreateTrustedDomainEx
*r
)
8290 if (flags
& NDR_IN
) {
8292 if (flags
& NDR_OUT
) {
8293 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8295 return NT_STATUS_OK
;
8298 NTSTATUS
ndr_pull_lsa_CreateTrustedDomainEx(struct ndr_pull
*ndr
, int flags
, struct lsa_CreateTrustedDomainEx
*r
)
8300 if (flags
& NDR_IN
) {
8302 if (flags
& NDR_OUT
) {
8303 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8305 return NT_STATUS_OK
;
8308 _PUBLIC_
void ndr_print_lsa_CreateTrustedDomainEx(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CreateTrustedDomainEx
*r
)
8310 ndr_print_struct(ndr
, name
, "lsa_CreateTrustedDomainEx");
8312 if (flags
& NDR_SET_VALUES
) {
8313 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8315 if (flags
& NDR_IN
) {
8316 ndr_print_struct(ndr
, "in", "lsa_CreateTrustedDomainEx");
8320 if (flags
& NDR_OUT
) {
8321 ndr_print_struct(ndr
, "out", "lsa_CreateTrustedDomainEx");
8323 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8329 NTSTATUS
ndr_push_lsa_CloseTrustedDomainEx(struct ndr_push
*ndr
, int flags
, const struct lsa_CloseTrustedDomainEx
*r
)
8331 if (flags
& NDR_IN
) {
8332 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8333 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8335 if (flags
& NDR_OUT
) {
8336 if (r
->out
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8337 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
8338 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8340 return NT_STATUS_OK
;
8343 NTSTATUS
ndr_pull_lsa_CloseTrustedDomainEx(struct ndr_pull
*ndr
, int flags
, struct lsa_CloseTrustedDomainEx
*r
)
8345 TALLOC_CTX
*_mem_save_handle_0
;
8346 if (flags
& NDR_IN
) {
8347 ZERO_STRUCT(r
->out
);
8349 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8350 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8352 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8353 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8354 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8355 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8356 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
8357 *r
->out
.handle
= *r
->in
.handle
;
8359 if (flags
& NDR_OUT
) {
8360 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8361 NDR_PULL_ALLOC(ndr
, r
->out
.handle
);
8363 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8364 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8365 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.handle
));
8366 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8367 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8369 return NT_STATUS_OK
;
8372 _PUBLIC_
void ndr_print_lsa_CloseTrustedDomainEx(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CloseTrustedDomainEx
*r
)
8374 ndr_print_struct(ndr
, name
, "lsa_CloseTrustedDomainEx");
8376 if (flags
& NDR_SET_VALUES
) {
8377 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8379 if (flags
& NDR_IN
) {
8380 ndr_print_struct(ndr
, "in", "lsa_CloseTrustedDomainEx");
8382 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8384 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8388 if (flags
& NDR_OUT
) {
8389 ndr_print_struct(ndr
, "out", "lsa_CloseTrustedDomainEx");
8391 ndr_print_ptr(ndr
, "handle", r
->out
.handle
);
8393 ndr_print_policy_handle(ndr
, "handle", r
->out
.handle
);
8395 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8401 NTSTATUS
ndr_push_lsa_QueryDomainInformationPolicy(struct ndr_push
*ndr
, int flags
, const struct lsa_QueryDomainInformationPolicy
*r
)
8403 if (flags
& NDR_IN
) {
8404 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8405 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8406 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
8408 if (flags
& NDR_OUT
) {
8409 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.info
));
8411 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
8412 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
8414 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8416 return NT_STATUS_OK
;
8419 NTSTATUS
ndr_pull_lsa_QueryDomainInformationPolicy(struct ndr_pull
*ndr
, int flags
, struct lsa_QueryDomainInformationPolicy
*r
)
8422 TALLOC_CTX
*_mem_save_handle_0
;
8423 TALLOC_CTX
*_mem_save_info_0
;
8424 if (flags
& NDR_IN
) {
8425 ZERO_STRUCT(r
->out
);
8427 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8428 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8430 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8431 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8432 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8433 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8434 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
8436 if (flags
& NDR_OUT
) {
8437 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
8439 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
8444 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8445 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, 0);
8446 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
));
8447 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
8448 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
8450 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8452 return NT_STATUS_OK
;
8455 _PUBLIC_
void ndr_print_lsa_QueryDomainInformationPolicy(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_QueryDomainInformationPolicy
*r
)
8457 ndr_print_struct(ndr
, name
, "lsa_QueryDomainInformationPolicy");
8459 if (flags
& NDR_SET_VALUES
) {
8460 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8462 if (flags
& NDR_IN
) {
8463 ndr_print_struct(ndr
, "in", "lsa_QueryDomainInformationPolicy");
8465 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8467 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8469 ndr_print_uint16(ndr
, "level", r
->in
.level
);
8472 if (flags
& NDR_OUT
) {
8473 ndr_print_struct(ndr
, "out", "lsa_QueryDomainInformationPolicy");
8475 ndr_print_ptr(ndr
, "info", r
->out
.info
);
8478 ndr_print_set_switch_value(ndr
, r
->out
.info
, r
->in
.level
);
8479 ndr_print_lsa_DomainInformationPolicy(ndr
, "info", r
->out
.info
);
8482 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8488 NTSTATUS
ndr_push_lsa_SetDomainInformationPolicy(struct ndr_push
*ndr
, int flags
, const struct lsa_SetDomainInformationPolicy
*r
)
8490 if (flags
& NDR_IN
) {
8491 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8492 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8493 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
8494 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.info
));
8496 NDR_CHECK(ndr_push_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
));
8497 NDR_CHECK(ndr_push_lsa_DomainInformationPolicy(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.info
));
8500 if (flags
& NDR_OUT
) {
8501 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8503 return NT_STATUS_OK
;
8506 NTSTATUS
ndr_pull_lsa_SetDomainInformationPolicy(struct ndr_pull
*ndr
, int flags
, struct lsa_SetDomainInformationPolicy
*r
)
8509 TALLOC_CTX
*_mem_save_handle_0
;
8510 TALLOC_CTX
*_mem_save_info_0
;
8511 if (flags
& NDR_IN
) {
8512 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8513 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8515 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8516 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8517 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8518 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8519 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
8520 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_info
));
8522 NDR_PULL_ALLOC(ndr
, r
->in
.info
);
8527 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8528 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.info
, 0);
8529 NDR_CHECK(ndr_pull_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
));
8530 NDR_CHECK(ndr_pull_lsa_DomainInformationPolicy(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.info
));
8531 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, 0);
8534 if (flags
& NDR_OUT
) {
8535 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8537 return NT_STATUS_OK
;
8540 _PUBLIC_
void ndr_print_lsa_SetDomainInformationPolicy(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_SetDomainInformationPolicy
*r
)
8542 ndr_print_struct(ndr
, name
, "lsa_SetDomainInformationPolicy");
8544 if (flags
& NDR_SET_VALUES
) {
8545 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8547 if (flags
& NDR_IN
) {
8548 ndr_print_struct(ndr
, "in", "lsa_SetDomainInformationPolicy");
8550 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8552 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8554 ndr_print_uint16(ndr
, "level", r
->in
.level
);
8555 ndr_print_ptr(ndr
, "info", r
->in
.info
);
8558 ndr_print_set_switch_value(ndr
, r
->in
.info
, r
->in
.level
);
8559 ndr_print_lsa_DomainInformationPolicy(ndr
, "info", r
->in
.info
);
8564 if (flags
& NDR_OUT
) {
8565 ndr_print_struct(ndr
, "out", "lsa_SetDomainInformationPolicy");
8567 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8573 NTSTATUS
ndr_push_lsa_OpenTrustedDomainByName(struct ndr_push
*ndr
, int flags
, const struct lsa_OpenTrustedDomainByName
*r
)
8575 if (flags
& NDR_IN
) {
8576 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8577 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8578 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.name
));
8579 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.access_mask
));
8581 if (flags
& NDR_OUT
) {
8582 if (r
->out
.trustdom_handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8583 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.trustdom_handle
));
8584 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8586 return NT_STATUS_OK
;
8589 NTSTATUS
ndr_pull_lsa_OpenTrustedDomainByName(struct ndr_pull
*ndr
, int flags
, struct lsa_OpenTrustedDomainByName
*r
)
8591 TALLOC_CTX
*_mem_save_handle_0
;
8592 TALLOC_CTX
*_mem_save_trustdom_handle_0
;
8593 if (flags
& NDR_IN
) {
8594 ZERO_STRUCT(r
->out
);
8596 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8597 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8599 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8600 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8601 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8602 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8603 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
|NDR_BUFFERS
, &r
->in
.name
));
8604 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.access_mask
));
8605 NDR_PULL_ALLOC(ndr
, r
->out
.trustdom_handle
);
8606 ZERO_STRUCTP(r
->out
.trustdom_handle
);
8608 if (flags
& NDR_OUT
) {
8609 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8610 NDR_PULL_ALLOC(ndr
, r
->out
.trustdom_handle
);
8612 _mem_save_trustdom_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8613 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.trustdom_handle
, LIBNDR_FLAG_REF_ALLOC
);
8614 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.trustdom_handle
));
8615 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_trustdom_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8616 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8618 return NT_STATUS_OK
;
8621 _PUBLIC_
void ndr_print_lsa_OpenTrustedDomainByName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_OpenTrustedDomainByName
*r
)
8623 ndr_print_struct(ndr
, name
, "lsa_OpenTrustedDomainByName");
8625 if (flags
& NDR_SET_VALUES
) {
8626 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8628 if (flags
& NDR_IN
) {
8629 ndr_print_struct(ndr
, "in", "lsa_OpenTrustedDomainByName");
8631 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8633 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8635 ndr_print_lsa_String(ndr
, "name", &r
->in
.name
);
8636 ndr_print_uint32(ndr
, "access_mask", r
->in
.access_mask
);
8639 if (flags
& NDR_OUT
) {
8640 ndr_print_struct(ndr
, "out", "lsa_OpenTrustedDomainByName");
8642 ndr_print_ptr(ndr
, "trustdom_handle", r
->out
.trustdom_handle
);
8644 ndr_print_policy_handle(ndr
, "trustdom_handle", r
->out
.trustdom_handle
);
8646 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8652 NTSTATUS
ndr_push_lsa_TestCall(struct ndr_push
*ndr
, int flags
, const struct lsa_TestCall
*r
)
8654 if (flags
& NDR_IN
) {
8656 if (flags
& NDR_OUT
) {
8657 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8659 return NT_STATUS_OK
;
8662 NTSTATUS
ndr_pull_lsa_TestCall(struct ndr_pull
*ndr
, int flags
, struct lsa_TestCall
*r
)
8664 if (flags
& NDR_IN
) {
8666 if (flags
& NDR_OUT
) {
8667 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8669 return NT_STATUS_OK
;
8672 _PUBLIC_
void ndr_print_lsa_TestCall(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_TestCall
*r
)
8674 ndr_print_struct(ndr
, name
, "lsa_TestCall");
8676 if (flags
& NDR_SET_VALUES
) {
8677 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8679 if (flags
& NDR_IN
) {
8680 ndr_print_struct(ndr
, "in", "lsa_TestCall");
8684 if (flags
& NDR_OUT
) {
8685 ndr_print_struct(ndr
, "out", "lsa_TestCall");
8687 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8693 NTSTATUS
ndr_push_lsa_LookupSids2(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupSids2
*r
)
8695 if (flags
& NDR_IN
) {
8696 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8697 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8698 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8699 NDR_CHECK(ndr_push_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
8700 if (r
->in
.names
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8701 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.names
));
8702 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
8703 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8704 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
8705 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown1
));
8706 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown2
));
8708 if (flags
& NDR_OUT
) {
8709 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
8710 if (r
->out
.domains
) {
8711 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
8713 if (r
->out
.names
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8714 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
8715 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8716 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
8717 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8719 return NT_STATUS_OK
;
8722 NTSTATUS
ndr_pull_lsa_LookupSids2(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupSids2
*r
)
8724 uint32_t _ptr_domains
;
8725 TALLOC_CTX
*_mem_save_handle_0
;
8726 TALLOC_CTX
*_mem_save_sids_0
;
8727 TALLOC_CTX
*_mem_save_domains_0
;
8728 TALLOC_CTX
*_mem_save_names_0
;
8729 TALLOC_CTX
*_mem_save_count_0
;
8730 if (flags
& NDR_IN
) {
8731 ZERO_STRUCT(r
->out
);
8733 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8734 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8736 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8737 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8738 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8739 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8740 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8741 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
8743 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8744 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
8745 NDR_CHECK(ndr_pull_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
8746 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
8747 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8748 NDR_PULL_ALLOC(ndr
, r
->in
.names
);
8750 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8751 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, LIBNDR_FLAG_REF_ALLOC
);
8752 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.names
));
8753 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
8754 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
8755 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8756 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
8758 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8759 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
8760 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
8761 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
8762 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown1
));
8763 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown2
));
8764 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
8765 *r
->out
.names
= *r
->in
.names
;
8766 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
8767 *r
->out
.count
= *r
->in
.count
;
8769 if (flags
& NDR_OUT
) {
8770 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
8772 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
8774 r
->out
.domains
= NULL
;
8776 if (r
->out
.domains
) {
8777 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8778 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
8779 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
8780 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
8782 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8783 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
8785 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8786 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.names
, LIBNDR_FLAG_REF_ALLOC
);
8787 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
8788 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
8789 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8790 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
8792 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8793 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
8794 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
8795 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
8796 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8798 return NT_STATUS_OK
;
8801 _PUBLIC_
void ndr_print_lsa_LookupSids2(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupSids2
*r
)
8803 ndr_print_struct(ndr
, name
, "lsa_LookupSids2");
8805 if (flags
& NDR_SET_VALUES
) {
8806 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8808 if (flags
& NDR_IN
) {
8809 ndr_print_struct(ndr
, "in", "lsa_LookupSids2");
8811 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8813 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8815 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
8817 ndr_print_lsa_SidArray(ndr
, "sids", r
->in
.sids
);
8819 ndr_print_ptr(ndr
, "names", r
->in
.names
);
8821 ndr_print_lsa_TransNameArray2(ndr
, "names", r
->in
.names
);
8823 ndr_print_uint16(ndr
, "level", r
->in
.level
);
8824 ndr_print_ptr(ndr
, "count", r
->in
.count
);
8826 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
8828 ndr_print_uint32(ndr
, "unknown1", r
->in
.unknown1
);
8829 ndr_print_uint32(ndr
, "unknown2", r
->in
.unknown2
);
8832 if (flags
& NDR_OUT
) {
8833 ndr_print_struct(ndr
, "out", "lsa_LookupSids2");
8835 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
8837 if (r
->out
.domains
) {
8838 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
8841 ndr_print_ptr(ndr
, "names", r
->out
.names
);
8843 ndr_print_lsa_TransNameArray2(ndr
, "names", r
->out
.names
);
8845 ndr_print_ptr(ndr
, "count", r
->out
.count
);
8847 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
8849 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
8855 NTSTATUS
ndr_push_lsa_LookupNames2(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupNames2
*r
)
8857 uint32_t cntr_names_0
;
8858 if (flags
& NDR_IN
) {
8859 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8860 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8861 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
8862 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
8863 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
8864 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
8866 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
8867 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
8869 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8870 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
8871 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
8872 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8873 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
8874 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown1
));
8875 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown2
));
8877 if (flags
& NDR_OUT
) {
8878 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
8879 if (r
->out
.domains
) {
8880 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
8882 if (r
->out
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8883 NDR_CHECK(ndr_push_lsa_TransSidArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
8884 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
8885 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
8886 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
8888 return NT_STATUS_OK
;
8891 NTSTATUS
ndr_pull_lsa_LookupNames2(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupNames2
*r
)
8893 uint32_t cntr_names_0
;
8894 uint32_t _ptr_domains
;
8895 TALLOC_CTX
*_mem_save_handle_0
;
8896 TALLOC_CTX
*_mem_save_names_0
;
8897 TALLOC_CTX
*_mem_save_domains_0
;
8898 TALLOC_CTX
*_mem_save_sids_0
;
8899 TALLOC_CTX
*_mem_save_count_0
;
8900 if (flags
& NDR_IN
) {
8901 ZERO_STRUCT(r
->out
);
8903 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8904 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
8906 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8907 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
8908 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
8909 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
8910 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_names
));
8911 if (r
->in
.num_names
< 0 || r
->in
.num_names
> 1000) {
8912 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
8914 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.names
));
8915 NDR_PULL_ALLOC_N(ndr
, r
->in
.names
, ndr_get_array_size(ndr
, &r
->in
.names
));
8916 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8917 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, 0);
8918 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
8919 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
8921 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
8922 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
8924 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
8925 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8926 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
8928 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8929 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
8930 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
8931 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
8932 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
8933 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8934 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
8936 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8937 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
8938 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
8939 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
8940 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown1
));
8941 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown2
));
8942 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
8943 *r
->out
.sids
= *r
->in
.sids
;
8944 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
8945 *r
->out
.count
= *r
->in
.count
;
8947 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.names
, r
->in
.num_names
));
8950 if (flags
& NDR_OUT
) {
8951 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
8953 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
8955 r
->out
.domains
= NULL
;
8957 if (r
->out
.domains
) {
8958 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8959 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
8960 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
8961 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
8963 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8964 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
8966 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8967 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
8968 NDR_CHECK(ndr_pull_lsa_TransSidArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
8969 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
8970 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
8971 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
8973 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
8974 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
8975 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
8976 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
8977 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
8979 return NT_STATUS_OK
;
8982 _PUBLIC_
void ndr_print_lsa_LookupNames2(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupNames2
*r
)
8984 uint32_t cntr_names_0
;
8985 ndr_print_struct(ndr
, name
, "lsa_LookupNames2");
8987 if (flags
& NDR_SET_VALUES
) {
8988 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
8990 if (flags
& NDR_IN
) {
8991 ndr_print_struct(ndr
, "in", "lsa_LookupNames2");
8993 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
8995 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
8997 ndr_print_uint32(ndr
, "num_names", r
->in
.num_names
);
8998 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->in
.num_names
);
9000 for (cntr_names_0
=0;cntr_names_0
<r
->in
.num_names
;cntr_names_0
++) {
9002 asprintf(&idx_0
, "[%d]", cntr_names_0
);
9004 ndr_print_lsa_String(ndr
, "names", &r
->in
.names
[cntr_names_0
]);
9009 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
9011 ndr_print_lsa_TransSidArray2(ndr
, "sids", r
->in
.sids
);
9013 ndr_print_uint16(ndr
, "level", r
->in
.level
);
9014 ndr_print_ptr(ndr
, "count", r
->in
.count
);
9016 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
9018 ndr_print_uint32(ndr
, "unknown1", r
->in
.unknown1
);
9019 ndr_print_uint32(ndr
, "unknown2", r
->in
.unknown2
);
9022 if (flags
& NDR_OUT
) {
9023 ndr_print_struct(ndr
, "out", "lsa_LookupNames2");
9025 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
9027 if (r
->out
.domains
) {
9028 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
9031 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
9033 ndr_print_lsa_TransSidArray2(ndr
, "sids", r
->out
.sids
);
9035 ndr_print_ptr(ndr
, "count", r
->out
.count
);
9037 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
9039 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9045 NTSTATUS
ndr_push_lsa_CreateTrustedDomainEx2(struct ndr_push
*ndr
, int flags
, const struct lsa_CreateTrustedDomainEx2
*r
)
9047 if (flags
& NDR_IN
) {
9049 if (flags
& NDR_OUT
) {
9050 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9052 return NT_STATUS_OK
;
9055 NTSTATUS
ndr_pull_lsa_CreateTrustedDomainEx2(struct ndr_pull
*ndr
, int flags
, struct lsa_CreateTrustedDomainEx2
*r
)
9057 if (flags
& NDR_IN
) {
9059 if (flags
& NDR_OUT
) {
9060 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9062 return NT_STATUS_OK
;
9065 _PUBLIC_
void ndr_print_lsa_CreateTrustedDomainEx2(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CreateTrustedDomainEx2
*r
)
9067 ndr_print_struct(ndr
, name
, "lsa_CreateTrustedDomainEx2");
9069 if (flags
& NDR_SET_VALUES
) {
9070 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9072 if (flags
& NDR_IN
) {
9073 ndr_print_struct(ndr
, "in", "lsa_CreateTrustedDomainEx2");
9077 if (flags
& NDR_OUT
) {
9078 ndr_print_struct(ndr
, "out", "lsa_CreateTrustedDomainEx2");
9080 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9086 NTSTATUS
ndr_push_lsa_CREDRWRITE(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRWRITE
*r
)
9088 if (flags
& NDR_IN
) {
9090 if (flags
& NDR_OUT
) {
9091 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9093 return NT_STATUS_OK
;
9096 NTSTATUS
ndr_pull_lsa_CREDRWRITE(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRWRITE
*r
)
9098 if (flags
& NDR_IN
) {
9100 if (flags
& NDR_OUT
) {
9101 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9103 return NT_STATUS_OK
;
9106 _PUBLIC_
void ndr_print_lsa_CREDRWRITE(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRWRITE
*r
)
9108 ndr_print_struct(ndr
, name
, "lsa_CREDRWRITE");
9110 if (flags
& NDR_SET_VALUES
) {
9111 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9113 if (flags
& NDR_IN
) {
9114 ndr_print_struct(ndr
, "in", "lsa_CREDRWRITE");
9118 if (flags
& NDR_OUT
) {
9119 ndr_print_struct(ndr
, "out", "lsa_CREDRWRITE");
9121 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9127 NTSTATUS
ndr_push_lsa_CREDRREAD(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRREAD
*r
)
9129 if (flags
& NDR_IN
) {
9131 if (flags
& NDR_OUT
) {
9132 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9134 return NT_STATUS_OK
;
9137 NTSTATUS
ndr_pull_lsa_CREDRREAD(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRREAD
*r
)
9139 if (flags
& NDR_IN
) {
9141 if (flags
& NDR_OUT
) {
9142 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9144 return NT_STATUS_OK
;
9147 _PUBLIC_
void ndr_print_lsa_CREDRREAD(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRREAD
*r
)
9149 ndr_print_struct(ndr
, name
, "lsa_CREDRREAD");
9151 if (flags
& NDR_SET_VALUES
) {
9152 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9154 if (flags
& NDR_IN
) {
9155 ndr_print_struct(ndr
, "in", "lsa_CREDRREAD");
9159 if (flags
& NDR_OUT
) {
9160 ndr_print_struct(ndr
, "out", "lsa_CREDRREAD");
9162 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9168 NTSTATUS
ndr_push_lsa_CREDRENUMERATE(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRENUMERATE
*r
)
9170 if (flags
& NDR_IN
) {
9172 if (flags
& NDR_OUT
) {
9173 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9175 return NT_STATUS_OK
;
9178 NTSTATUS
ndr_pull_lsa_CREDRENUMERATE(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRENUMERATE
*r
)
9180 if (flags
& NDR_IN
) {
9182 if (flags
& NDR_OUT
) {
9183 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9185 return NT_STATUS_OK
;
9188 _PUBLIC_
void ndr_print_lsa_CREDRENUMERATE(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRENUMERATE
*r
)
9190 ndr_print_struct(ndr
, name
, "lsa_CREDRENUMERATE");
9192 if (flags
& NDR_SET_VALUES
) {
9193 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9195 if (flags
& NDR_IN
) {
9196 ndr_print_struct(ndr
, "in", "lsa_CREDRENUMERATE");
9200 if (flags
& NDR_OUT
) {
9201 ndr_print_struct(ndr
, "out", "lsa_CREDRENUMERATE");
9203 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9209 NTSTATUS
ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRWRITEDOMAINCREDENTIALS
*r
)
9211 if (flags
& NDR_IN
) {
9213 if (flags
& NDR_OUT
) {
9214 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9216 return NT_STATUS_OK
;
9219 NTSTATUS
ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRWRITEDOMAINCREDENTIALS
*r
)
9221 if (flags
& NDR_IN
) {
9223 if (flags
& NDR_OUT
) {
9224 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9226 return NT_STATUS_OK
;
9229 _PUBLIC_
void ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRWRITEDOMAINCREDENTIALS
*r
)
9231 ndr_print_struct(ndr
, name
, "lsa_CREDRWRITEDOMAINCREDENTIALS");
9233 if (flags
& NDR_SET_VALUES
) {
9234 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9236 if (flags
& NDR_IN
) {
9237 ndr_print_struct(ndr
, "in", "lsa_CREDRWRITEDOMAINCREDENTIALS");
9241 if (flags
& NDR_OUT
) {
9242 ndr_print_struct(ndr
, "out", "lsa_CREDRWRITEDOMAINCREDENTIALS");
9244 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9250 NTSTATUS
ndr_push_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRREADDOMAINCREDENTIALS
*r
)
9252 if (flags
& NDR_IN
) {
9254 if (flags
& NDR_OUT
) {
9255 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9257 return NT_STATUS_OK
;
9260 NTSTATUS
ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRREADDOMAINCREDENTIALS
*r
)
9262 if (flags
& NDR_IN
) {
9264 if (flags
& NDR_OUT
) {
9265 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9267 return NT_STATUS_OK
;
9270 _PUBLIC_
void ndr_print_lsa_CREDRREADDOMAINCREDENTIALS(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRREADDOMAINCREDENTIALS
*r
)
9272 ndr_print_struct(ndr
, name
, "lsa_CREDRREADDOMAINCREDENTIALS");
9274 if (flags
& NDR_SET_VALUES
) {
9275 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9277 if (flags
& NDR_IN
) {
9278 ndr_print_struct(ndr
, "in", "lsa_CREDRREADDOMAINCREDENTIALS");
9282 if (flags
& NDR_OUT
) {
9283 ndr_print_struct(ndr
, "out", "lsa_CREDRREADDOMAINCREDENTIALS");
9285 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9291 NTSTATUS
ndr_push_lsa_CREDRDELETE(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRDELETE
*r
)
9293 if (flags
& NDR_IN
) {
9295 if (flags
& NDR_OUT
) {
9296 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9298 return NT_STATUS_OK
;
9301 NTSTATUS
ndr_pull_lsa_CREDRDELETE(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRDELETE
*r
)
9303 if (flags
& NDR_IN
) {
9305 if (flags
& NDR_OUT
) {
9306 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9308 return NT_STATUS_OK
;
9311 _PUBLIC_
void ndr_print_lsa_CREDRDELETE(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRDELETE
*r
)
9313 ndr_print_struct(ndr
, name
, "lsa_CREDRDELETE");
9315 if (flags
& NDR_SET_VALUES
) {
9316 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9318 if (flags
& NDR_IN
) {
9319 ndr_print_struct(ndr
, "in", "lsa_CREDRDELETE");
9323 if (flags
& NDR_OUT
) {
9324 ndr_print_struct(ndr
, "out", "lsa_CREDRDELETE");
9326 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9332 NTSTATUS
ndr_push_lsa_CREDRGETTARGETINFO(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRGETTARGETINFO
*r
)
9334 if (flags
& NDR_IN
) {
9336 if (flags
& NDR_OUT
) {
9337 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9339 return NT_STATUS_OK
;
9342 NTSTATUS
ndr_pull_lsa_CREDRGETTARGETINFO(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRGETTARGETINFO
*r
)
9344 if (flags
& NDR_IN
) {
9346 if (flags
& NDR_OUT
) {
9347 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9349 return NT_STATUS_OK
;
9352 _PUBLIC_
void ndr_print_lsa_CREDRGETTARGETINFO(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRGETTARGETINFO
*r
)
9354 ndr_print_struct(ndr
, name
, "lsa_CREDRGETTARGETINFO");
9356 if (flags
& NDR_SET_VALUES
) {
9357 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9359 if (flags
& NDR_IN
) {
9360 ndr_print_struct(ndr
, "in", "lsa_CREDRGETTARGETINFO");
9364 if (flags
& NDR_OUT
) {
9365 ndr_print_struct(ndr
, "out", "lsa_CREDRGETTARGETINFO");
9367 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9373 NTSTATUS
ndr_push_lsa_CREDRPROFILELOADED(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRPROFILELOADED
*r
)
9375 if (flags
& NDR_IN
) {
9377 if (flags
& NDR_OUT
) {
9378 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9380 return NT_STATUS_OK
;
9383 NTSTATUS
ndr_pull_lsa_CREDRPROFILELOADED(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRPROFILELOADED
*r
)
9385 if (flags
& NDR_IN
) {
9387 if (flags
& NDR_OUT
) {
9388 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9390 return NT_STATUS_OK
;
9393 _PUBLIC_
void ndr_print_lsa_CREDRPROFILELOADED(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRPROFILELOADED
*r
)
9395 ndr_print_struct(ndr
, name
, "lsa_CREDRPROFILELOADED");
9397 if (flags
& NDR_SET_VALUES
) {
9398 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9400 if (flags
& NDR_IN
) {
9401 ndr_print_struct(ndr
, "in", "lsa_CREDRPROFILELOADED");
9405 if (flags
& NDR_OUT
) {
9406 ndr_print_struct(ndr
, "out", "lsa_CREDRPROFILELOADED");
9408 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9414 NTSTATUS
ndr_push_lsa_LookupNames3(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupNames3
*r
)
9416 uint32_t cntr_names_0
;
9417 if (flags
& NDR_IN
) {
9418 if (r
->in
.handle
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9419 NDR_CHECK(ndr_push_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
9420 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
9421 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
9422 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
9423 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
9425 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
9426 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
9428 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9429 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
9430 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
9431 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9432 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
9433 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown1
));
9434 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown2
));
9436 if (flags
& NDR_OUT
) {
9437 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
9438 if (r
->out
.domains
) {
9439 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
9441 if (r
->out
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9442 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
9443 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9444 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
9445 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9447 return NT_STATUS_OK
;
9450 NTSTATUS
ndr_pull_lsa_LookupNames3(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupNames3
*r
)
9452 uint32_t cntr_names_0
;
9453 uint32_t _ptr_domains
;
9454 TALLOC_CTX
*_mem_save_handle_0
;
9455 TALLOC_CTX
*_mem_save_names_0
;
9456 TALLOC_CTX
*_mem_save_domains_0
;
9457 TALLOC_CTX
*_mem_save_sids_0
;
9458 TALLOC_CTX
*_mem_save_count_0
;
9459 if (flags
& NDR_IN
) {
9460 ZERO_STRUCT(r
->out
);
9462 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9463 NDR_PULL_ALLOC(ndr
, r
->in
.handle
);
9465 _mem_save_handle_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9466 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.handle
, LIBNDR_FLAG_REF_ALLOC
);
9467 NDR_CHECK(ndr_pull_policy_handle(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.handle
));
9468 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_handle_0
, LIBNDR_FLAG_REF_ALLOC
);
9469 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_names
));
9470 if (r
->in
.num_names
< 0 || r
->in
.num_names
> 1000) {
9471 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
9473 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.names
));
9474 NDR_PULL_ALLOC_N(ndr
, r
->in
.names
, ndr_get_array_size(ndr
, &r
->in
.names
));
9475 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9476 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, 0);
9477 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
9478 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
9480 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
9481 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
9483 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
9484 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9485 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
9487 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9488 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
9489 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
9490 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
9491 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
9492 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9493 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
9495 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9496 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
9497 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
9498 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
9499 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown1
));
9500 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown2
));
9501 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
9502 *r
->out
.sids
= *r
->in
.sids
;
9503 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
9504 *r
->out
.count
= *r
->in
.count
;
9506 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.names
, r
->in
.num_names
));
9509 if (flags
& NDR_OUT
) {
9510 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
9512 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
9514 r
->out
.domains
= NULL
;
9516 if (r
->out
.domains
) {
9517 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9518 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
9519 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
9520 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
9522 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9523 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
9525 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9526 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
9527 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
9528 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
9529 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9530 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
9532 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9533 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
9534 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
9535 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
9536 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9538 return NT_STATUS_OK
;
9541 _PUBLIC_
void ndr_print_lsa_LookupNames3(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupNames3
*r
)
9543 uint32_t cntr_names_0
;
9544 ndr_print_struct(ndr
, name
, "lsa_LookupNames3");
9546 if (flags
& NDR_SET_VALUES
) {
9547 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9549 if (flags
& NDR_IN
) {
9550 ndr_print_struct(ndr
, "in", "lsa_LookupNames3");
9552 ndr_print_ptr(ndr
, "handle", r
->in
.handle
);
9554 ndr_print_policy_handle(ndr
, "handle", r
->in
.handle
);
9556 ndr_print_uint32(ndr
, "num_names", r
->in
.num_names
);
9557 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->in
.num_names
);
9559 for (cntr_names_0
=0;cntr_names_0
<r
->in
.num_names
;cntr_names_0
++) {
9561 asprintf(&idx_0
, "[%d]", cntr_names_0
);
9563 ndr_print_lsa_String(ndr
, "names", &r
->in
.names
[cntr_names_0
]);
9568 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
9570 ndr_print_lsa_TransSidArray3(ndr
, "sids", r
->in
.sids
);
9572 ndr_print_uint16(ndr
, "level", r
->in
.level
);
9573 ndr_print_ptr(ndr
, "count", r
->in
.count
);
9575 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
9577 ndr_print_uint32(ndr
, "unknown1", r
->in
.unknown1
);
9578 ndr_print_uint32(ndr
, "unknown2", r
->in
.unknown2
);
9581 if (flags
& NDR_OUT
) {
9582 ndr_print_struct(ndr
, "out", "lsa_LookupNames3");
9584 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
9586 if (r
->out
.domains
) {
9587 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
9590 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
9592 ndr_print_lsa_TransSidArray3(ndr
, "sids", r
->out
.sids
);
9594 ndr_print_ptr(ndr
, "count", r
->out
.count
);
9596 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
9598 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9604 NTSTATUS
ndr_push_lsa_CREDRGETSESSIONTYPES(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRGETSESSIONTYPES
*r
)
9606 if (flags
& NDR_IN
) {
9608 if (flags
& NDR_OUT
) {
9609 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9611 return NT_STATUS_OK
;
9614 NTSTATUS
ndr_pull_lsa_CREDRGETSESSIONTYPES(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRGETSESSIONTYPES
*r
)
9616 if (flags
& NDR_IN
) {
9618 if (flags
& NDR_OUT
) {
9619 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9621 return NT_STATUS_OK
;
9624 _PUBLIC_
void ndr_print_lsa_CREDRGETSESSIONTYPES(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRGETSESSIONTYPES
*r
)
9626 ndr_print_struct(ndr
, name
, "lsa_CREDRGETSESSIONTYPES");
9628 if (flags
& NDR_SET_VALUES
) {
9629 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9631 if (flags
& NDR_IN
) {
9632 ndr_print_struct(ndr
, "in", "lsa_CREDRGETSESSIONTYPES");
9636 if (flags
& NDR_OUT
) {
9637 ndr_print_struct(ndr
, "out", "lsa_CREDRGETSESSIONTYPES");
9639 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9645 NTSTATUS
ndr_push_lsa_LSARREGISTERAUDITEVENT(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARREGISTERAUDITEVENT
*r
)
9647 if (flags
& NDR_IN
) {
9649 if (flags
& NDR_OUT
) {
9650 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9652 return NT_STATUS_OK
;
9655 NTSTATUS
ndr_pull_lsa_LSARREGISTERAUDITEVENT(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARREGISTERAUDITEVENT
*r
)
9657 if (flags
& NDR_IN
) {
9659 if (flags
& NDR_OUT
) {
9660 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9662 return NT_STATUS_OK
;
9665 _PUBLIC_
void ndr_print_lsa_LSARREGISTERAUDITEVENT(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARREGISTERAUDITEVENT
*r
)
9667 ndr_print_struct(ndr
, name
, "lsa_LSARREGISTERAUDITEVENT");
9669 if (flags
& NDR_SET_VALUES
) {
9670 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9672 if (flags
& NDR_IN
) {
9673 ndr_print_struct(ndr
, "in", "lsa_LSARREGISTERAUDITEVENT");
9677 if (flags
& NDR_OUT
) {
9678 ndr_print_struct(ndr
, "out", "lsa_LSARREGISTERAUDITEVENT");
9680 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9686 NTSTATUS
ndr_push_lsa_LSARGENAUDITEVENT(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARGENAUDITEVENT
*r
)
9688 if (flags
& NDR_IN
) {
9690 if (flags
& NDR_OUT
) {
9691 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9693 return NT_STATUS_OK
;
9696 NTSTATUS
ndr_pull_lsa_LSARGENAUDITEVENT(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARGENAUDITEVENT
*r
)
9698 if (flags
& NDR_IN
) {
9700 if (flags
& NDR_OUT
) {
9701 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9703 return NT_STATUS_OK
;
9706 _PUBLIC_
void ndr_print_lsa_LSARGENAUDITEVENT(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARGENAUDITEVENT
*r
)
9708 ndr_print_struct(ndr
, name
, "lsa_LSARGENAUDITEVENT");
9710 if (flags
& NDR_SET_VALUES
) {
9711 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9713 if (flags
& NDR_IN
) {
9714 ndr_print_struct(ndr
, "in", "lsa_LSARGENAUDITEVENT");
9718 if (flags
& NDR_OUT
) {
9719 ndr_print_struct(ndr
, "out", "lsa_LSARGENAUDITEVENT");
9721 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9727 NTSTATUS
ndr_push_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARUNREGISTERAUDITEVENT
*r
)
9729 if (flags
& NDR_IN
) {
9731 if (flags
& NDR_OUT
) {
9732 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9734 return NT_STATUS_OK
;
9737 NTSTATUS
ndr_pull_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARUNREGISTERAUDITEVENT
*r
)
9739 if (flags
& NDR_IN
) {
9741 if (flags
& NDR_OUT
) {
9742 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9744 return NT_STATUS_OK
;
9747 _PUBLIC_
void ndr_print_lsa_LSARUNREGISTERAUDITEVENT(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARUNREGISTERAUDITEVENT
*r
)
9749 ndr_print_struct(ndr
, name
, "lsa_LSARUNREGISTERAUDITEVENT");
9751 if (flags
& NDR_SET_VALUES
) {
9752 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9754 if (flags
& NDR_IN
) {
9755 ndr_print_struct(ndr
, "in", "lsa_LSARUNREGISTERAUDITEVENT");
9759 if (flags
& NDR_OUT
) {
9760 ndr_print_struct(ndr
, "out", "lsa_LSARUNREGISTERAUDITEVENT");
9762 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9768 NTSTATUS
ndr_push_lsa_LSARQUERYFORESTTRUSTINFORMATION(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARQUERYFORESTTRUSTINFORMATION
*r
)
9770 if (flags
& NDR_IN
) {
9772 if (flags
& NDR_OUT
) {
9773 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9775 return NT_STATUS_OK
;
9778 NTSTATUS
ndr_pull_lsa_LSARQUERYFORESTTRUSTINFORMATION(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARQUERYFORESTTRUSTINFORMATION
*r
)
9780 if (flags
& NDR_IN
) {
9782 if (flags
& NDR_OUT
) {
9783 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9785 return NT_STATUS_OK
;
9788 _PUBLIC_
void ndr_print_lsa_LSARQUERYFORESTTRUSTINFORMATION(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARQUERYFORESTTRUSTINFORMATION
*r
)
9790 ndr_print_struct(ndr
, name
, "lsa_LSARQUERYFORESTTRUSTINFORMATION");
9792 if (flags
& NDR_SET_VALUES
) {
9793 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9795 if (flags
& NDR_IN
) {
9796 ndr_print_struct(ndr
, "in", "lsa_LSARQUERYFORESTTRUSTINFORMATION");
9800 if (flags
& NDR_OUT
) {
9801 ndr_print_struct(ndr
, "out", "lsa_LSARQUERYFORESTTRUSTINFORMATION");
9803 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9809 NTSTATUS
ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARSETFORESTTRUSTINFORMATION
*r
)
9811 if (flags
& NDR_IN
) {
9813 if (flags
& NDR_OUT
) {
9814 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9816 return NT_STATUS_OK
;
9819 NTSTATUS
ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARSETFORESTTRUSTINFORMATION
*r
)
9821 if (flags
& NDR_IN
) {
9823 if (flags
& NDR_OUT
) {
9824 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9826 return NT_STATUS_OK
;
9829 _PUBLIC_
void ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARSETFORESTTRUSTINFORMATION
*r
)
9831 ndr_print_struct(ndr
, name
, "lsa_LSARSETFORESTTRUSTINFORMATION");
9833 if (flags
& NDR_SET_VALUES
) {
9834 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9836 if (flags
& NDR_IN
) {
9837 ndr_print_struct(ndr
, "in", "lsa_LSARSETFORESTTRUSTINFORMATION");
9841 if (flags
& NDR_OUT
) {
9842 ndr_print_struct(ndr
, "out", "lsa_LSARSETFORESTTRUSTINFORMATION");
9844 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9850 NTSTATUS
ndr_push_lsa_CREDRRENAME(struct ndr_push
*ndr
, int flags
, const struct lsa_CREDRRENAME
*r
)
9852 if (flags
& NDR_IN
) {
9854 if (flags
& NDR_OUT
) {
9855 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9857 return NT_STATUS_OK
;
9860 NTSTATUS
ndr_pull_lsa_CREDRRENAME(struct ndr_pull
*ndr
, int flags
, struct lsa_CREDRRENAME
*r
)
9862 if (flags
& NDR_IN
) {
9864 if (flags
& NDR_OUT
) {
9865 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9867 return NT_STATUS_OK
;
9870 _PUBLIC_
void ndr_print_lsa_CREDRRENAME(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_CREDRRENAME
*r
)
9872 ndr_print_struct(ndr
, name
, "lsa_CREDRRENAME");
9874 if (flags
& NDR_SET_VALUES
) {
9875 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9877 if (flags
& NDR_IN
) {
9878 ndr_print_struct(ndr
, "in", "lsa_CREDRRENAME");
9882 if (flags
& NDR_OUT
) {
9883 ndr_print_struct(ndr
, "out", "lsa_CREDRRENAME");
9885 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
9891 NTSTATUS
ndr_push_lsa_LookupSids3(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupSids3
*r
)
9893 if (flags
& NDR_IN
) {
9894 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9895 NDR_CHECK(ndr_push_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
9896 if (r
->in
.names
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9897 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.names
));
9898 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
9899 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9900 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
9901 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown1
));
9902 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown2
));
9904 if (flags
& NDR_OUT
) {
9905 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
9906 if (r
->out
.domains
) {
9907 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
9909 if (r
->out
.names
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9910 NDR_CHECK(ndr_push_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
9911 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
9912 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
9913 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
9915 return NT_STATUS_OK
;
9918 NTSTATUS
ndr_pull_lsa_LookupSids3(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupSids3
*r
)
9920 uint32_t _ptr_domains
;
9921 TALLOC_CTX
*_mem_save_sids_0
;
9922 TALLOC_CTX
*_mem_save_domains_0
;
9923 TALLOC_CTX
*_mem_save_names_0
;
9924 TALLOC_CTX
*_mem_save_count_0
;
9925 if (flags
& NDR_IN
) {
9926 ZERO_STRUCT(r
->out
);
9928 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9929 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
9931 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9932 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
9933 NDR_CHECK(ndr_pull_lsa_SidArray(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
9934 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
9935 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9936 NDR_PULL_ALLOC(ndr
, r
->in
.names
);
9938 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9939 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, LIBNDR_FLAG_REF_ALLOC
);
9940 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.names
));
9941 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
9942 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
9943 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9944 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
9946 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9947 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
9948 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
9949 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
9950 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown1
));
9951 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown2
));
9952 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
9953 *r
->out
.names
= *r
->in
.names
;
9954 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
9955 *r
->out
.count
= *r
->in
.count
;
9957 if (flags
& NDR_OUT
) {
9958 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
9960 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
9962 r
->out
.domains
= NULL
;
9964 if (r
->out
.domains
) {
9965 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9966 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
9967 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
9968 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
9970 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9971 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
9973 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9974 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.names
, LIBNDR_FLAG_REF_ALLOC
);
9975 NDR_CHECK(ndr_pull_lsa_TransNameArray2(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
9976 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
9977 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
9978 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
9980 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
9981 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
9982 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
9983 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
9984 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
9986 return NT_STATUS_OK
;
9989 _PUBLIC_
void ndr_print_lsa_LookupSids3(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupSids3
*r
)
9991 ndr_print_struct(ndr
, name
, "lsa_LookupSids3");
9993 if (flags
& NDR_SET_VALUES
) {
9994 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
9996 if (flags
& NDR_IN
) {
9997 ndr_print_struct(ndr
, "in", "lsa_LookupSids3");
9999 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
10001 ndr_print_lsa_SidArray(ndr
, "sids", r
->in
.sids
);
10003 ndr_print_ptr(ndr
, "names", r
->in
.names
);
10005 ndr_print_lsa_TransNameArray2(ndr
, "names", r
->in
.names
);
10007 ndr_print_uint16(ndr
, "level", r
->in
.level
);
10008 ndr_print_ptr(ndr
, "count", r
->in
.count
);
10010 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
10012 ndr_print_uint32(ndr
, "unknown1", r
->in
.unknown1
);
10013 ndr_print_uint32(ndr
, "unknown2", r
->in
.unknown2
);
10016 if (flags
& NDR_OUT
) {
10017 ndr_print_struct(ndr
, "out", "lsa_LookupSids3");
10019 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
10021 if (r
->out
.domains
) {
10022 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
10025 ndr_print_ptr(ndr
, "names", r
->out
.names
);
10027 ndr_print_lsa_TransNameArray2(ndr
, "names", r
->out
.names
);
10029 ndr_print_ptr(ndr
, "count", r
->out
.count
);
10031 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
10033 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
10039 NTSTATUS
ndr_push_lsa_LookupNames4(struct ndr_push
*ndr
, int flags
, const struct lsa_LookupNames4
*r
)
10041 uint32_t cntr_names_0
;
10042 if (flags
& NDR_IN
) {
10043 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
10044 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.num_names
));
10045 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
10046 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
10048 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
10049 NDR_CHECK(ndr_push_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
10051 if (r
->in
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
10052 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
10053 NDR_CHECK(ndr_push_uint16(ndr
, NDR_SCALARS
, r
->in
.level
));
10054 if (r
->in
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
10055 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->in
.count
));
10056 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown1
));
10057 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.unknown2
));
10059 if (flags
& NDR_OUT
) {
10060 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->out
.domains
));
10061 if (r
->out
.domains
) {
10062 NDR_CHECK(ndr_push_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
10064 if (r
->out
.sids
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
10065 NDR_CHECK(ndr_push_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
10066 if (r
->out
.count
== NULL
) return NT_STATUS_INVALID_PARAMETER_MIX
;
10067 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.count
));
10068 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
10070 return NT_STATUS_OK
;
10073 NTSTATUS
ndr_pull_lsa_LookupNames4(struct ndr_pull
*ndr
, int flags
, struct lsa_LookupNames4
*r
)
10075 uint32_t cntr_names_0
;
10076 uint32_t _ptr_domains
;
10077 TALLOC_CTX
*_mem_save_names_0
;
10078 TALLOC_CTX
*_mem_save_domains_0
;
10079 TALLOC_CTX
*_mem_save_sids_0
;
10080 TALLOC_CTX
*_mem_save_count_0
;
10081 if (flags
& NDR_IN
) {
10082 ZERO_STRUCT(r
->out
);
10084 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.num_names
));
10085 if (r
->in
.num_names
< 0 || r
->in
.num_names
> 1000) {
10086 return ndr_pull_error(ndr
, NDR_ERR_RANGE
, "value out of range");
10088 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.names
));
10089 NDR_PULL_ALLOC_N(ndr
, r
->in
.names
, ndr_get_array_size(ndr
, &r
->in
.names
));
10090 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
10091 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.names
, 0);
10092 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
10093 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_SCALARS
, &r
->in
.names
[cntr_names_0
]));
10095 for (cntr_names_0
= 0; cntr_names_0
< r
->in
.num_names
; cntr_names_0
++) {
10096 NDR_CHECK(ndr_pull_lsa_String(ndr
, NDR_BUFFERS
, &r
->in
.names
[cntr_names_0
]));
10098 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, 0);
10099 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
10100 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
10102 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
10103 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
10104 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->in
.sids
));
10105 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
10106 NDR_CHECK(ndr_pull_uint16(ndr
, NDR_SCALARS
, &r
->in
.level
));
10107 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
10108 NDR_PULL_ALLOC(ndr
, r
->in
.count
);
10110 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
10111 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.count
, LIBNDR_FLAG_REF_ALLOC
);
10112 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->in
.count
));
10113 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
10114 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown1
));
10115 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.unknown2
));
10116 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
10117 *r
->out
.sids
= *r
->in
.sids
;
10118 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
10119 *r
->out
.count
= *r
->in
.count
;
10121 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->in
.names
, r
->in
.num_names
));
10124 if (flags
& NDR_OUT
) {
10125 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domains
));
10126 if (_ptr_domains
) {
10127 NDR_PULL_ALLOC(ndr
, r
->out
.domains
);
10129 r
->out
.domains
= NULL
;
10131 if (r
->out
.domains
) {
10132 _mem_save_domains_0
= NDR_PULL_GET_MEM_CTX(ndr
);
10133 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domains
, 0);
10134 NDR_CHECK(ndr_pull_lsa_RefDomainList(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.domains
));
10135 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domains_0
, 0);
10137 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
10138 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
10140 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
10141 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
10142 NDR_CHECK(ndr_pull_lsa_TransSidArray3(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.sids
));
10143 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
10144 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
10145 NDR_PULL_ALLOC(ndr
, r
->out
.count
);
10147 _mem_save_count_0
= NDR_PULL_GET_MEM_CTX(ndr
);
10148 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.count
, LIBNDR_FLAG_REF_ALLOC
);
10149 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.count
));
10150 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_count_0
, LIBNDR_FLAG_REF_ALLOC
);
10151 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
10153 return NT_STATUS_OK
;
10156 _PUBLIC_
void ndr_print_lsa_LookupNames4(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LookupNames4
*r
)
10158 uint32_t cntr_names_0
;
10159 ndr_print_struct(ndr
, name
, "lsa_LookupNames4");
10161 if (flags
& NDR_SET_VALUES
) {
10162 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
10164 if (flags
& NDR_IN
) {
10165 ndr_print_struct(ndr
, "in", "lsa_LookupNames4");
10167 ndr_print_uint32(ndr
, "num_names", r
->in
.num_names
);
10168 ndr
->print(ndr
, "%s: ARRAY(%d)", "names", r
->in
.num_names
);
10170 for (cntr_names_0
=0;cntr_names_0
<r
->in
.num_names
;cntr_names_0
++) {
10172 asprintf(&idx_0
, "[%d]", cntr_names_0
);
10174 ndr_print_lsa_String(ndr
, "names", &r
->in
.names
[cntr_names_0
]);
10179 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
10181 ndr_print_lsa_TransSidArray3(ndr
, "sids", r
->in
.sids
);
10183 ndr_print_uint16(ndr
, "level", r
->in
.level
);
10184 ndr_print_ptr(ndr
, "count", r
->in
.count
);
10186 ndr_print_uint32(ndr
, "count", *r
->in
.count
);
10188 ndr_print_uint32(ndr
, "unknown1", r
->in
.unknown1
);
10189 ndr_print_uint32(ndr
, "unknown2", r
->in
.unknown2
);
10192 if (flags
& NDR_OUT
) {
10193 ndr_print_struct(ndr
, "out", "lsa_LookupNames4");
10195 ndr_print_ptr(ndr
, "domains", r
->out
.domains
);
10197 if (r
->out
.domains
) {
10198 ndr_print_lsa_RefDomainList(ndr
, "domains", r
->out
.domains
);
10201 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
10203 ndr_print_lsa_TransSidArray3(ndr
, "sids", r
->out
.sids
);
10205 ndr_print_ptr(ndr
, "count", r
->out
.count
);
10207 ndr_print_uint32(ndr
, "count", *r
->out
.count
);
10209 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
10215 NTSTATUS
ndr_push_lsa_LSAROPENPOLICYSCE(struct ndr_push
*ndr
, int flags
, const struct lsa_LSAROPENPOLICYSCE
*r
)
10217 if (flags
& NDR_IN
) {
10219 if (flags
& NDR_OUT
) {
10220 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
10222 return NT_STATUS_OK
;
10225 NTSTATUS
ndr_pull_lsa_LSAROPENPOLICYSCE(struct ndr_pull
*ndr
, int flags
, struct lsa_LSAROPENPOLICYSCE
*r
)
10227 if (flags
& NDR_IN
) {
10229 if (flags
& NDR_OUT
) {
10230 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
10232 return NT_STATUS_OK
;
10235 _PUBLIC_
void ndr_print_lsa_LSAROPENPOLICYSCE(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSAROPENPOLICYSCE
*r
)
10237 ndr_print_struct(ndr
, name
, "lsa_LSAROPENPOLICYSCE");
10239 if (flags
& NDR_SET_VALUES
) {
10240 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
10242 if (flags
& NDR_IN
) {
10243 ndr_print_struct(ndr
, "in", "lsa_LSAROPENPOLICYSCE");
10247 if (flags
& NDR_OUT
) {
10248 ndr_print_struct(ndr
, "out", "lsa_LSAROPENPOLICYSCE");
10250 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
10256 NTSTATUS
ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE
*r
)
10258 if (flags
& NDR_IN
) {
10260 if (flags
& NDR_OUT
) {
10261 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
10263 return NT_STATUS_OK
;
10266 NTSTATUS
ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE
*r
)
10268 if (flags
& NDR_IN
) {
10270 if (flags
& NDR_OUT
) {
10271 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
10273 return NT_STATUS_OK
;
10276 _PUBLIC_
void ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE
*r
)
10278 ndr_print_struct(ndr
, name
, "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
10280 if (flags
& NDR_SET_VALUES
) {
10281 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
10283 if (flags
& NDR_IN
) {
10284 ndr_print_struct(ndr
, "in", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
10288 if (flags
& NDR_OUT
) {
10289 ndr_print_struct(ndr
, "out", "lsa_LSARADTREGISTERSECURITYEVENTSOURCE");
10291 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
10297 NTSTATUS
ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
*r
)
10299 if (flags
& NDR_IN
) {
10301 if (flags
& NDR_OUT
) {
10302 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
10304 return NT_STATUS_OK
;
10307 NTSTATUS
ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
*r
)
10309 if (flags
& NDR_IN
) {
10311 if (flags
& NDR_OUT
) {
10312 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
10314 return NT_STATUS_OK
;
10317 _PUBLIC_
void ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
*r
)
10319 ndr_print_struct(ndr
, name
, "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
10321 if (flags
& NDR_SET_VALUES
) {
10322 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
10324 if (flags
& NDR_IN
) {
10325 ndr_print_struct(ndr
, "in", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
10329 if (flags
& NDR_OUT
) {
10330 ndr_print_struct(ndr
, "out", "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE");
10332 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
10338 NTSTATUS
ndr_push_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_push
*ndr
, int flags
, const struct lsa_LSARADTREPORTSECURITYEVENT
*r
)
10340 if (flags
& NDR_IN
) {
10342 if (flags
& NDR_OUT
) {
10343 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
10345 return NT_STATUS_OK
;
10348 NTSTATUS
ndr_pull_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_pull
*ndr
, int flags
, struct lsa_LSARADTREPORTSECURITYEVENT
*r
)
10350 if (flags
& NDR_IN
) {
10352 if (flags
& NDR_OUT
) {
10353 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
10355 return NT_STATUS_OK
;
10358 _PUBLIC_
void ndr_print_lsa_LSARADTREPORTSECURITYEVENT(struct ndr_print
*ndr
, const char *name
, int flags
, const struct lsa_LSARADTREPORTSECURITYEVENT
*r
)
10360 ndr_print_struct(ndr
, name
, "lsa_LSARADTREPORTSECURITYEVENT");
10362 if (flags
& NDR_SET_VALUES
) {
10363 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
10365 if (flags
& NDR_IN
) {
10366 ndr_print_struct(ndr
, "in", "lsa_LSARADTREPORTSECURITYEVENT");
10370 if (flags
& NDR_OUT
) {
10371 ndr_print_struct(ndr
, "out", "lsa_LSARADTREPORTSECURITYEVENT");
10373 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
10379 const struct dcerpc_interface_call lsarpc_calls
[] = {
10382 sizeof(struct lsa_Close
),
10383 (ndr_push_flags_fn_t
) ndr_push_lsa_Close
,
10384 (ndr_pull_flags_fn_t
) ndr_pull_lsa_Close
,
10385 (ndr_print_function_t
) ndr_print_lsa_Close
,
10390 sizeof(struct lsa_Delete
),
10391 (ndr_push_flags_fn_t
) ndr_push_lsa_Delete
,
10392 (ndr_pull_flags_fn_t
) ndr_pull_lsa_Delete
,
10393 (ndr_print_function_t
) ndr_print_lsa_Delete
,
10398 sizeof(struct lsa_EnumPrivs
),
10399 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumPrivs
,
10400 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumPrivs
,
10401 (ndr_print_function_t
) ndr_print_lsa_EnumPrivs
,
10405 "lsa_QuerySecurity",
10406 sizeof(struct lsa_QuerySecurity
),
10407 (ndr_push_flags_fn_t
) ndr_push_lsa_QuerySecurity
,
10408 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QuerySecurity
,
10409 (ndr_print_function_t
) ndr_print_lsa_QuerySecurity
,
10414 sizeof(struct lsa_SetSecObj
),
10415 (ndr_push_flags_fn_t
) ndr_push_lsa_SetSecObj
,
10416 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetSecObj
,
10417 (ndr_print_function_t
) ndr_print_lsa_SetSecObj
,
10421 "lsa_ChangePassword",
10422 sizeof(struct lsa_ChangePassword
),
10423 (ndr_push_flags_fn_t
) ndr_push_lsa_ChangePassword
,
10424 (ndr_pull_flags_fn_t
) ndr_pull_lsa_ChangePassword
,
10425 (ndr_print_function_t
) ndr_print_lsa_ChangePassword
,
10430 sizeof(struct lsa_OpenPolicy
),
10431 (ndr_push_flags_fn_t
) ndr_push_lsa_OpenPolicy
,
10432 (ndr_pull_flags_fn_t
) ndr_pull_lsa_OpenPolicy
,
10433 (ndr_print_function_t
) ndr_print_lsa_OpenPolicy
,
10437 "lsa_QueryInfoPolicy",
10438 sizeof(struct lsa_QueryInfoPolicy
),
10439 (ndr_push_flags_fn_t
) ndr_push_lsa_QueryInfoPolicy
,
10440 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QueryInfoPolicy
,
10441 (ndr_print_function_t
) ndr_print_lsa_QueryInfoPolicy
,
10445 "lsa_SetInfoPolicy",
10446 sizeof(struct lsa_SetInfoPolicy
),
10447 (ndr_push_flags_fn_t
) ndr_push_lsa_SetInfoPolicy
,
10448 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetInfoPolicy
,
10449 (ndr_print_function_t
) ndr_print_lsa_SetInfoPolicy
,
10453 "lsa_ClearAuditLog",
10454 sizeof(struct lsa_ClearAuditLog
),
10455 (ndr_push_flags_fn_t
) ndr_push_lsa_ClearAuditLog
,
10456 (ndr_pull_flags_fn_t
) ndr_pull_lsa_ClearAuditLog
,
10457 (ndr_print_function_t
) ndr_print_lsa_ClearAuditLog
,
10461 "lsa_CreateAccount",
10462 sizeof(struct lsa_CreateAccount
),
10463 (ndr_push_flags_fn_t
) ndr_push_lsa_CreateAccount
,
10464 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CreateAccount
,
10465 (ndr_print_function_t
) ndr_print_lsa_CreateAccount
,
10469 "lsa_EnumAccounts",
10470 sizeof(struct lsa_EnumAccounts
),
10471 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumAccounts
,
10472 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumAccounts
,
10473 (ndr_print_function_t
) ndr_print_lsa_EnumAccounts
,
10477 "lsa_CreateTrustedDomain",
10478 sizeof(struct lsa_CreateTrustedDomain
),
10479 (ndr_push_flags_fn_t
) ndr_push_lsa_CreateTrustedDomain
,
10480 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CreateTrustedDomain
,
10481 (ndr_print_function_t
) ndr_print_lsa_CreateTrustedDomain
,
10485 "lsa_EnumTrustDom",
10486 sizeof(struct lsa_EnumTrustDom
),
10487 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumTrustDom
,
10488 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumTrustDom
,
10489 (ndr_print_function_t
) ndr_print_lsa_EnumTrustDom
,
10494 sizeof(struct lsa_LookupNames
),
10495 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupNames
,
10496 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupNames
,
10497 (ndr_print_function_t
) ndr_print_lsa_LookupNames
,
10502 sizeof(struct lsa_LookupSids
),
10503 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupSids
,
10504 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupSids
,
10505 (ndr_print_function_t
) ndr_print_lsa_LookupSids
,
10509 "lsa_CreateSecret",
10510 sizeof(struct lsa_CreateSecret
),
10511 (ndr_push_flags_fn_t
) ndr_push_lsa_CreateSecret
,
10512 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CreateSecret
,
10513 (ndr_print_function_t
) ndr_print_lsa_CreateSecret
,
10518 sizeof(struct lsa_OpenAccount
),
10519 (ndr_push_flags_fn_t
) ndr_push_lsa_OpenAccount
,
10520 (ndr_pull_flags_fn_t
) ndr_pull_lsa_OpenAccount
,
10521 (ndr_print_function_t
) ndr_print_lsa_OpenAccount
,
10525 "lsa_EnumPrivsAccount",
10526 sizeof(struct lsa_EnumPrivsAccount
),
10527 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumPrivsAccount
,
10528 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumPrivsAccount
,
10529 (ndr_print_function_t
) ndr_print_lsa_EnumPrivsAccount
,
10533 "lsa_AddPrivilegesToAccount",
10534 sizeof(struct lsa_AddPrivilegesToAccount
),
10535 (ndr_push_flags_fn_t
) ndr_push_lsa_AddPrivilegesToAccount
,
10536 (ndr_pull_flags_fn_t
) ndr_pull_lsa_AddPrivilegesToAccount
,
10537 (ndr_print_function_t
) ndr_print_lsa_AddPrivilegesToAccount
,
10541 "lsa_RemovePrivilegesFromAccount",
10542 sizeof(struct lsa_RemovePrivilegesFromAccount
),
10543 (ndr_push_flags_fn_t
) ndr_push_lsa_RemovePrivilegesFromAccount
,
10544 (ndr_pull_flags_fn_t
) ndr_pull_lsa_RemovePrivilegesFromAccount
,
10545 (ndr_print_function_t
) ndr_print_lsa_RemovePrivilegesFromAccount
,
10549 "lsa_GetQuotasForAccount",
10550 sizeof(struct lsa_GetQuotasForAccount
),
10551 (ndr_push_flags_fn_t
) ndr_push_lsa_GetQuotasForAccount
,
10552 (ndr_pull_flags_fn_t
) ndr_pull_lsa_GetQuotasForAccount
,
10553 (ndr_print_function_t
) ndr_print_lsa_GetQuotasForAccount
,
10557 "lsa_SetQuotasForAccount",
10558 sizeof(struct lsa_SetQuotasForAccount
),
10559 (ndr_push_flags_fn_t
) ndr_push_lsa_SetQuotasForAccount
,
10560 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetQuotasForAccount
,
10561 (ndr_print_function_t
) ndr_print_lsa_SetQuotasForAccount
,
10565 "lsa_GetSystemAccessAccount",
10566 sizeof(struct lsa_GetSystemAccessAccount
),
10567 (ndr_push_flags_fn_t
) ndr_push_lsa_GetSystemAccessAccount
,
10568 (ndr_pull_flags_fn_t
) ndr_pull_lsa_GetSystemAccessAccount
,
10569 (ndr_print_function_t
) ndr_print_lsa_GetSystemAccessAccount
,
10573 "lsa_SetSystemAccessAccount",
10574 sizeof(struct lsa_SetSystemAccessAccount
),
10575 (ndr_push_flags_fn_t
) ndr_push_lsa_SetSystemAccessAccount
,
10576 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetSystemAccessAccount
,
10577 (ndr_print_function_t
) ndr_print_lsa_SetSystemAccessAccount
,
10581 "lsa_OpenTrustedDomain",
10582 sizeof(struct lsa_OpenTrustedDomain
),
10583 (ndr_push_flags_fn_t
) ndr_push_lsa_OpenTrustedDomain
,
10584 (ndr_pull_flags_fn_t
) ndr_pull_lsa_OpenTrustedDomain
,
10585 (ndr_print_function_t
) ndr_print_lsa_OpenTrustedDomain
,
10589 "lsa_QueryTrustedDomainInfo",
10590 sizeof(struct lsa_QueryTrustedDomainInfo
),
10591 (ndr_push_flags_fn_t
) ndr_push_lsa_QueryTrustedDomainInfo
,
10592 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QueryTrustedDomainInfo
,
10593 (ndr_print_function_t
) ndr_print_lsa_QueryTrustedDomainInfo
,
10597 "lsa_SetInformationTrustedDomain",
10598 sizeof(struct lsa_SetInformationTrustedDomain
),
10599 (ndr_push_flags_fn_t
) ndr_push_lsa_SetInformationTrustedDomain
,
10600 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetInformationTrustedDomain
,
10601 (ndr_print_function_t
) ndr_print_lsa_SetInformationTrustedDomain
,
10606 sizeof(struct lsa_OpenSecret
),
10607 (ndr_push_flags_fn_t
) ndr_push_lsa_OpenSecret
,
10608 (ndr_pull_flags_fn_t
) ndr_pull_lsa_OpenSecret
,
10609 (ndr_print_function_t
) ndr_print_lsa_OpenSecret
,
10614 sizeof(struct lsa_SetSecret
),
10615 (ndr_push_flags_fn_t
) ndr_push_lsa_SetSecret
,
10616 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetSecret
,
10617 (ndr_print_function_t
) ndr_print_lsa_SetSecret
,
10622 sizeof(struct lsa_QuerySecret
),
10623 (ndr_push_flags_fn_t
) ndr_push_lsa_QuerySecret
,
10624 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QuerySecret
,
10625 (ndr_print_function_t
) ndr_print_lsa_QuerySecret
,
10629 "lsa_LookupPrivValue",
10630 sizeof(struct lsa_LookupPrivValue
),
10631 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupPrivValue
,
10632 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupPrivValue
,
10633 (ndr_print_function_t
) ndr_print_lsa_LookupPrivValue
,
10637 "lsa_LookupPrivName",
10638 sizeof(struct lsa_LookupPrivName
),
10639 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupPrivName
,
10640 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupPrivName
,
10641 (ndr_print_function_t
) ndr_print_lsa_LookupPrivName
,
10645 "lsa_LookupPrivDisplayName",
10646 sizeof(struct lsa_LookupPrivDisplayName
),
10647 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupPrivDisplayName
,
10648 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupPrivDisplayName
,
10649 (ndr_print_function_t
) ndr_print_lsa_LookupPrivDisplayName
,
10653 "lsa_DeleteObject",
10654 sizeof(struct lsa_DeleteObject
),
10655 (ndr_push_flags_fn_t
) ndr_push_lsa_DeleteObject
,
10656 (ndr_pull_flags_fn_t
) ndr_pull_lsa_DeleteObject
,
10657 (ndr_print_function_t
) ndr_print_lsa_DeleteObject
,
10661 "lsa_EnumAccountsWithUserRight",
10662 sizeof(struct lsa_EnumAccountsWithUserRight
),
10663 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumAccountsWithUserRight
,
10664 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumAccountsWithUserRight
,
10665 (ndr_print_function_t
) ndr_print_lsa_EnumAccountsWithUserRight
,
10669 "lsa_EnumAccountRights",
10670 sizeof(struct lsa_EnumAccountRights
),
10671 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumAccountRights
,
10672 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumAccountRights
,
10673 (ndr_print_function_t
) ndr_print_lsa_EnumAccountRights
,
10677 "lsa_AddAccountRights",
10678 sizeof(struct lsa_AddAccountRights
),
10679 (ndr_push_flags_fn_t
) ndr_push_lsa_AddAccountRights
,
10680 (ndr_pull_flags_fn_t
) ndr_pull_lsa_AddAccountRights
,
10681 (ndr_print_function_t
) ndr_print_lsa_AddAccountRights
,
10685 "lsa_RemoveAccountRights",
10686 sizeof(struct lsa_RemoveAccountRights
),
10687 (ndr_push_flags_fn_t
) ndr_push_lsa_RemoveAccountRights
,
10688 (ndr_pull_flags_fn_t
) ndr_pull_lsa_RemoveAccountRights
,
10689 (ndr_print_function_t
) ndr_print_lsa_RemoveAccountRights
,
10693 "lsa_QueryTrustedDomainInfoBySid",
10694 sizeof(struct lsa_QueryTrustedDomainInfoBySid
),
10695 (ndr_push_flags_fn_t
) ndr_push_lsa_QueryTrustedDomainInfoBySid
,
10696 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QueryTrustedDomainInfoBySid
,
10697 (ndr_print_function_t
) ndr_print_lsa_QueryTrustedDomainInfoBySid
,
10701 "lsa_SetTrustedDomainInfo",
10702 sizeof(struct lsa_SetTrustedDomainInfo
),
10703 (ndr_push_flags_fn_t
) ndr_push_lsa_SetTrustedDomainInfo
,
10704 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetTrustedDomainInfo
,
10705 (ndr_print_function_t
) ndr_print_lsa_SetTrustedDomainInfo
,
10709 "lsa_DeleteTrustedDomain",
10710 sizeof(struct lsa_DeleteTrustedDomain
),
10711 (ndr_push_flags_fn_t
) ndr_push_lsa_DeleteTrustedDomain
,
10712 (ndr_pull_flags_fn_t
) ndr_pull_lsa_DeleteTrustedDomain
,
10713 (ndr_print_function_t
) ndr_print_lsa_DeleteTrustedDomain
,
10717 "lsa_StorePrivateData",
10718 sizeof(struct lsa_StorePrivateData
),
10719 (ndr_push_flags_fn_t
) ndr_push_lsa_StorePrivateData
,
10720 (ndr_pull_flags_fn_t
) ndr_pull_lsa_StorePrivateData
,
10721 (ndr_print_function_t
) ndr_print_lsa_StorePrivateData
,
10725 "lsa_RetrievePrivateData",
10726 sizeof(struct lsa_RetrievePrivateData
),
10727 (ndr_push_flags_fn_t
) ndr_push_lsa_RetrievePrivateData
,
10728 (ndr_pull_flags_fn_t
) ndr_pull_lsa_RetrievePrivateData
,
10729 (ndr_print_function_t
) ndr_print_lsa_RetrievePrivateData
,
10734 sizeof(struct lsa_OpenPolicy2
),
10735 (ndr_push_flags_fn_t
) ndr_push_lsa_OpenPolicy2
,
10736 (ndr_pull_flags_fn_t
) ndr_pull_lsa_OpenPolicy2
,
10737 (ndr_print_function_t
) ndr_print_lsa_OpenPolicy2
,
10742 sizeof(struct lsa_GetUserName
),
10743 (ndr_push_flags_fn_t
) ndr_push_lsa_GetUserName
,
10744 (ndr_pull_flags_fn_t
) ndr_pull_lsa_GetUserName
,
10745 (ndr_print_function_t
) ndr_print_lsa_GetUserName
,
10749 "lsa_QueryInfoPolicy2",
10750 sizeof(struct lsa_QueryInfoPolicy2
),
10751 (ndr_push_flags_fn_t
) ndr_push_lsa_QueryInfoPolicy2
,
10752 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QueryInfoPolicy2
,
10753 (ndr_print_function_t
) ndr_print_lsa_QueryInfoPolicy2
,
10757 "lsa_SetInfoPolicy2",
10758 sizeof(struct lsa_SetInfoPolicy2
),
10759 (ndr_push_flags_fn_t
) ndr_push_lsa_SetInfoPolicy2
,
10760 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetInfoPolicy2
,
10761 (ndr_print_function_t
) ndr_print_lsa_SetInfoPolicy2
,
10765 "lsa_QueryTrustedDomainInfoByName",
10766 sizeof(struct lsa_QueryTrustedDomainInfoByName
),
10767 (ndr_push_flags_fn_t
) ndr_push_lsa_QueryTrustedDomainInfoByName
,
10768 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QueryTrustedDomainInfoByName
,
10769 (ndr_print_function_t
) ndr_print_lsa_QueryTrustedDomainInfoByName
,
10773 "lsa_SetTrustedDomainInfoByName",
10774 sizeof(struct lsa_SetTrustedDomainInfoByName
),
10775 (ndr_push_flags_fn_t
) ndr_push_lsa_SetTrustedDomainInfoByName
,
10776 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetTrustedDomainInfoByName
,
10777 (ndr_print_function_t
) ndr_print_lsa_SetTrustedDomainInfoByName
,
10781 "lsa_EnumTrustedDomainsEx",
10782 sizeof(struct lsa_EnumTrustedDomainsEx
),
10783 (ndr_push_flags_fn_t
) ndr_push_lsa_EnumTrustedDomainsEx
,
10784 (ndr_pull_flags_fn_t
) ndr_pull_lsa_EnumTrustedDomainsEx
,
10785 (ndr_print_function_t
) ndr_print_lsa_EnumTrustedDomainsEx
,
10789 "lsa_CreateTrustedDomainEx",
10790 sizeof(struct lsa_CreateTrustedDomainEx
),
10791 (ndr_push_flags_fn_t
) ndr_push_lsa_CreateTrustedDomainEx
,
10792 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CreateTrustedDomainEx
,
10793 (ndr_print_function_t
) ndr_print_lsa_CreateTrustedDomainEx
,
10797 "lsa_CloseTrustedDomainEx",
10798 sizeof(struct lsa_CloseTrustedDomainEx
),
10799 (ndr_push_flags_fn_t
) ndr_push_lsa_CloseTrustedDomainEx
,
10800 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CloseTrustedDomainEx
,
10801 (ndr_print_function_t
) ndr_print_lsa_CloseTrustedDomainEx
,
10805 "lsa_QueryDomainInformationPolicy",
10806 sizeof(struct lsa_QueryDomainInformationPolicy
),
10807 (ndr_push_flags_fn_t
) ndr_push_lsa_QueryDomainInformationPolicy
,
10808 (ndr_pull_flags_fn_t
) ndr_pull_lsa_QueryDomainInformationPolicy
,
10809 (ndr_print_function_t
) ndr_print_lsa_QueryDomainInformationPolicy
,
10813 "lsa_SetDomainInformationPolicy",
10814 sizeof(struct lsa_SetDomainInformationPolicy
),
10815 (ndr_push_flags_fn_t
) ndr_push_lsa_SetDomainInformationPolicy
,
10816 (ndr_pull_flags_fn_t
) ndr_pull_lsa_SetDomainInformationPolicy
,
10817 (ndr_print_function_t
) ndr_print_lsa_SetDomainInformationPolicy
,
10821 "lsa_OpenTrustedDomainByName",
10822 sizeof(struct lsa_OpenTrustedDomainByName
),
10823 (ndr_push_flags_fn_t
) ndr_push_lsa_OpenTrustedDomainByName
,
10824 (ndr_pull_flags_fn_t
) ndr_pull_lsa_OpenTrustedDomainByName
,
10825 (ndr_print_function_t
) ndr_print_lsa_OpenTrustedDomainByName
,
10830 sizeof(struct lsa_TestCall
),
10831 (ndr_push_flags_fn_t
) ndr_push_lsa_TestCall
,
10832 (ndr_pull_flags_fn_t
) ndr_pull_lsa_TestCall
,
10833 (ndr_print_function_t
) ndr_print_lsa_TestCall
,
10838 sizeof(struct lsa_LookupSids2
),
10839 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupSids2
,
10840 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupSids2
,
10841 (ndr_print_function_t
) ndr_print_lsa_LookupSids2
,
10845 "lsa_LookupNames2",
10846 sizeof(struct lsa_LookupNames2
),
10847 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupNames2
,
10848 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupNames2
,
10849 (ndr_print_function_t
) ndr_print_lsa_LookupNames2
,
10853 "lsa_CreateTrustedDomainEx2",
10854 sizeof(struct lsa_CreateTrustedDomainEx2
),
10855 (ndr_push_flags_fn_t
) ndr_push_lsa_CreateTrustedDomainEx2
,
10856 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CreateTrustedDomainEx2
,
10857 (ndr_print_function_t
) ndr_print_lsa_CreateTrustedDomainEx2
,
10862 sizeof(struct lsa_CREDRWRITE
),
10863 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRWRITE
,
10864 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRWRITE
,
10865 (ndr_print_function_t
) ndr_print_lsa_CREDRWRITE
,
10870 sizeof(struct lsa_CREDRREAD
),
10871 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRREAD
,
10872 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRREAD
,
10873 (ndr_print_function_t
) ndr_print_lsa_CREDRREAD
,
10877 "lsa_CREDRENUMERATE",
10878 sizeof(struct lsa_CREDRENUMERATE
),
10879 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRENUMERATE
,
10880 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRENUMERATE
,
10881 (ndr_print_function_t
) ndr_print_lsa_CREDRENUMERATE
,
10885 "lsa_CREDRWRITEDOMAINCREDENTIALS",
10886 sizeof(struct lsa_CREDRWRITEDOMAINCREDENTIALS
),
10887 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRWRITEDOMAINCREDENTIALS
,
10888 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRWRITEDOMAINCREDENTIALS
,
10889 (ndr_print_function_t
) ndr_print_lsa_CREDRWRITEDOMAINCREDENTIALS
,
10893 "lsa_CREDRREADDOMAINCREDENTIALS",
10894 sizeof(struct lsa_CREDRREADDOMAINCREDENTIALS
),
10895 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRREADDOMAINCREDENTIALS
,
10896 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRREADDOMAINCREDENTIALS
,
10897 (ndr_print_function_t
) ndr_print_lsa_CREDRREADDOMAINCREDENTIALS
,
10902 sizeof(struct lsa_CREDRDELETE
),
10903 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRDELETE
,
10904 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRDELETE
,
10905 (ndr_print_function_t
) ndr_print_lsa_CREDRDELETE
,
10909 "lsa_CREDRGETTARGETINFO",
10910 sizeof(struct lsa_CREDRGETTARGETINFO
),
10911 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRGETTARGETINFO
,
10912 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRGETTARGETINFO
,
10913 (ndr_print_function_t
) ndr_print_lsa_CREDRGETTARGETINFO
,
10917 "lsa_CREDRPROFILELOADED",
10918 sizeof(struct lsa_CREDRPROFILELOADED
),
10919 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRPROFILELOADED
,
10920 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRPROFILELOADED
,
10921 (ndr_print_function_t
) ndr_print_lsa_CREDRPROFILELOADED
,
10925 "lsa_LookupNames3",
10926 sizeof(struct lsa_LookupNames3
),
10927 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupNames3
,
10928 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupNames3
,
10929 (ndr_print_function_t
) ndr_print_lsa_LookupNames3
,
10933 "lsa_CREDRGETSESSIONTYPES",
10934 sizeof(struct lsa_CREDRGETSESSIONTYPES
),
10935 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRGETSESSIONTYPES
,
10936 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRGETSESSIONTYPES
,
10937 (ndr_print_function_t
) ndr_print_lsa_CREDRGETSESSIONTYPES
,
10941 "lsa_LSARREGISTERAUDITEVENT",
10942 sizeof(struct lsa_LSARREGISTERAUDITEVENT
),
10943 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARREGISTERAUDITEVENT
,
10944 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARREGISTERAUDITEVENT
,
10945 (ndr_print_function_t
) ndr_print_lsa_LSARREGISTERAUDITEVENT
,
10949 "lsa_LSARGENAUDITEVENT",
10950 sizeof(struct lsa_LSARGENAUDITEVENT
),
10951 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARGENAUDITEVENT
,
10952 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARGENAUDITEVENT
,
10953 (ndr_print_function_t
) ndr_print_lsa_LSARGENAUDITEVENT
,
10957 "lsa_LSARUNREGISTERAUDITEVENT",
10958 sizeof(struct lsa_LSARUNREGISTERAUDITEVENT
),
10959 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARUNREGISTERAUDITEVENT
,
10960 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARUNREGISTERAUDITEVENT
,
10961 (ndr_print_function_t
) ndr_print_lsa_LSARUNREGISTERAUDITEVENT
,
10965 "lsa_LSARQUERYFORESTTRUSTINFORMATION",
10966 sizeof(struct lsa_LSARQUERYFORESTTRUSTINFORMATION
),
10967 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARQUERYFORESTTRUSTINFORMATION
,
10968 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARQUERYFORESTTRUSTINFORMATION
,
10969 (ndr_print_function_t
) ndr_print_lsa_LSARQUERYFORESTTRUSTINFORMATION
,
10973 "lsa_LSARSETFORESTTRUSTINFORMATION",
10974 sizeof(struct lsa_LSARSETFORESTTRUSTINFORMATION
),
10975 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARSETFORESTTRUSTINFORMATION
,
10976 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARSETFORESTTRUSTINFORMATION
,
10977 (ndr_print_function_t
) ndr_print_lsa_LSARSETFORESTTRUSTINFORMATION
,
10982 sizeof(struct lsa_CREDRRENAME
),
10983 (ndr_push_flags_fn_t
) ndr_push_lsa_CREDRRENAME
,
10984 (ndr_pull_flags_fn_t
) ndr_pull_lsa_CREDRRENAME
,
10985 (ndr_print_function_t
) ndr_print_lsa_CREDRRENAME
,
10990 sizeof(struct lsa_LookupSids3
),
10991 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupSids3
,
10992 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupSids3
,
10993 (ndr_print_function_t
) ndr_print_lsa_LookupSids3
,
10997 "lsa_LookupNames4",
10998 sizeof(struct lsa_LookupNames4
),
10999 (ndr_push_flags_fn_t
) ndr_push_lsa_LookupNames4
,
11000 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LookupNames4
,
11001 (ndr_print_function_t
) ndr_print_lsa_LookupNames4
,
11005 "lsa_LSAROPENPOLICYSCE",
11006 sizeof(struct lsa_LSAROPENPOLICYSCE
),
11007 (ndr_push_flags_fn_t
) ndr_push_lsa_LSAROPENPOLICYSCE
,
11008 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSAROPENPOLICYSCE
,
11009 (ndr_print_function_t
) ndr_print_lsa_LSAROPENPOLICYSCE
,
11013 "lsa_LSARADTREGISTERSECURITYEVENTSOURCE",
11014 sizeof(struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE
),
11015 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARADTREGISTERSECURITYEVENTSOURCE
,
11016 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARADTREGISTERSECURITYEVENTSOURCE
,
11017 (ndr_print_function_t
) ndr_print_lsa_LSARADTREGISTERSECURITYEVENTSOURCE
,
11021 "lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE",
11022 sizeof(struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
),
11023 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
,
11024 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
,
11025 (ndr_print_function_t
) ndr_print_lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
,
11029 "lsa_LSARADTREPORTSECURITYEVENT",
11030 sizeof(struct lsa_LSARADTREPORTSECURITYEVENT
),
11031 (ndr_push_flags_fn_t
) ndr_push_lsa_LSARADTREPORTSECURITYEVENT
,
11032 (ndr_pull_flags_fn_t
) ndr_pull_lsa_LSARADTREPORTSECURITYEVENT
,
11033 (ndr_print_function_t
) ndr_print_lsa_LSARADTREPORTSECURITYEVENT
,
11036 { NULL
, 0, NULL
, NULL
, NULL
, False
}
11039 const char * const lsarpc_endpoint_strings
[] = {
11040 "ncacn_np:[\\pipe\\lsarpc]",
11041 "ncacn_np:[\\pipe\\netlogon]",
11042 "ncacn_np:[\\pipe\\lsass]",
11047 const struct dcerpc_endpoint_list lsarpc_endpoints
= {
11049 .names
= lsarpc_endpoint_strings
11052 const char * const lsarpc_authservice_strings
[] = {
11056 const struct dcerpc_authservice_list lsarpc_authservices
= {
11058 .names
= lsarpc_authservice_strings
11062 const struct dcerpc_interface_table dcerpc_table_lsarpc
= {
11065 {0x12345778,0x1234,0xabcd,{0xef,0x00},{0x01,0x23,0x45,0x67,0x89,0xab}},
11066 DCERPC_LSARPC_VERSION
11068 .helpstring
= DCERPC_LSARPC_HELPSTRING
,
11070 .calls
= lsarpc_calls
,
11071 .endpoints
= &lsarpc_endpoints
,
11072 .authservices
= &lsarpc_authservices