1 /* parser auto-generated by pidl */
4 #include "librpc/gen_ndr/ndr_wbint.h"
6 #include "librpc/gen_ndr/ndr_lsa.h"
7 #include "librpc/gen_ndr/ndr_netlogon.h"
8 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_userinfo(struct ndr_push
*ndr
, int ndr_flags
, const struct wbint_userinfo
*r
)
10 if (ndr_flags
& NDR_SCALARS
) {
11 NDR_CHECK(ndr_push_align(ndr
, 8));
12 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->acct_name
));
13 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->full_name
));
14 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->homedir
));
15 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->shell
));
16 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->primary_gid
));
17 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, &r
->user_sid
));
18 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, &r
->group_sid
));
19 NDR_CHECK(ndr_push_trailer_align(ndr
, 8));
21 if (ndr_flags
& NDR_BUFFERS
) {
23 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->acct_name
, CH_UTF8
)));
24 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
25 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->acct_name
, CH_UTF8
)));
26 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->acct_name
, ndr_charset_length(r
->acct_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
29 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->full_name
, CH_UTF8
)));
30 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
31 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->full_name
, CH_UTF8
)));
32 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->full_name
, ndr_charset_length(r
->full_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
35 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->homedir
, CH_UTF8
)));
36 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
37 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->homedir
, CH_UTF8
)));
38 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->homedir
, ndr_charset_length(r
->homedir
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
41 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->shell
, CH_UTF8
)));
42 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
43 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->shell
, CH_UTF8
)));
44 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->shell
, ndr_charset_length(r
->shell
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
47 return NDR_ERR_SUCCESS
;
50 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_userinfo(struct ndr_pull
*ndr
, int ndr_flags
, struct wbint_userinfo
*r
)
52 uint32_t _ptr_acct_name
;
53 TALLOC_CTX
*_mem_save_acct_name_0
;
54 uint32_t _ptr_full_name
;
55 TALLOC_CTX
*_mem_save_full_name_0
;
56 uint32_t _ptr_homedir
;
57 TALLOC_CTX
*_mem_save_homedir_0
;
59 TALLOC_CTX
*_mem_save_shell_0
;
60 if (ndr_flags
& NDR_SCALARS
) {
61 NDR_CHECK(ndr_pull_align(ndr
, 8));
62 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_acct_name
));
64 NDR_PULL_ALLOC(ndr
, r
->acct_name
);
68 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_full_name
));
70 NDR_PULL_ALLOC(ndr
, r
->full_name
);
74 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_homedir
));
76 NDR_PULL_ALLOC(ndr
, r
->homedir
);
80 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_shell
));
82 NDR_PULL_ALLOC(ndr
, r
->shell
);
86 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->primary_gid
));
87 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, &r
->user_sid
));
88 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, &r
->group_sid
));
89 NDR_CHECK(ndr_pull_trailer_align(ndr
, 8));
91 if (ndr_flags
& NDR_BUFFERS
) {
93 _mem_save_acct_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
94 NDR_PULL_SET_MEM_CTX(ndr
, r
->acct_name
, 0);
95 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->acct_name
));
96 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->acct_name
));
97 if (ndr_get_array_length(ndr
, &r
->acct_name
) > ndr_get_array_size(ndr
, &r
->acct_name
)) {
98 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->acct_name
), ndr_get_array_length(ndr
, &r
->acct_name
));
100 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->acct_name
), sizeof(uint8_t)));
101 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->acct_name
, ndr_get_array_length(ndr
, &r
->acct_name
), sizeof(uint8_t), CH_UTF8
));
102 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_acct_name_0
, 0);
105 _mem_save_full_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
106 NDR_PULL_SET_MEM_CTX(ndr
, r
->full_name
, 0);
107 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->full_name
));
108 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->full_name
));
109 if (ndr_get_array_length(ndr
, &r
->full_name
) > ndr_get_array_size(ndr
, &r
->full_name
)) {
110 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->full_name
), ndr_get_array_length(ndr
, &r
->full_name
));
112 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->full_name
), sizeof(uint8_t)));
113 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->full_name
, ndr_get_array_length(ndr
, &r
->full_name
), sizeof(uint8_t), CH_UTF8
));
114 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_full_name_0
, 0);
117 _mem_save_homedir_0
= NDR_PULL_GET_MEM_CTX(ndr
);
118 NDR_PULL_SET_MEM_CTX(ndr
, r
->homedir
, 0);
119 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->homedir
));
120 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->homedir
));
121 if (ndr_get_array_length(ndr
, &r
->homedir
) > ndr_get_array_size(ndr
, &r
->homedir
)) {
122 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->homedir
), ndr_get_array_length(ndr
, &r
->homedir
));
124 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->homedir
), sizeof(uint8_t)));
125 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->homedir
, ndr_get_array_length(ndr
, &r
->homedir
), sizeof(uint8_t), CH_UTF8
));
126 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_homedir_0
, 0);
129 _mem_save_shell_0
= NDR_PULL_GET_MEM_CTX(ndr
);
130 NDR_PULL_SET_MEM_CTX(ndr
, r
->shell
, 0);
131 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->shell
));
132 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->shell
));
133 if (ndr_get_array_length(ndr
, &r
->shell
) > ndr_get_array_size(ndr
, &r
->shell
)) {
134 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->shell
), ndr_get_array_length(ndr
, &r
->shell
));
136 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->shell
), sizeof(uint8_t)));
137 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->shell
, ndr_get_array_length(ndr
, &r
->shell
), sizeof(uint8_t), CH_UTF8
));
138 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_shell_0
, 0);
141 return NDR_ERR_SUCCESS
;
144 _PUBLIC_
void ndr_print_wbint_userinfo(struct ndr_print
*ndr
, const char *name
, const struct wbint_userinfo
*r
)
146 ndr_print_struct(ndr
, name
, "wbint_userinfo");
148 ndr_print_ptr(ndr
, "acct_name", r
->acct_name
);
151 ndr_print_string(ndr
, "acct_name", r
->acct_name
);
154 ndr_print_ptr(ndr
, "full_name", r
->full_name
);
157 ndr_print_string(ndr
, "full_name", r
->full_name
);
160 ndr_print_ptr(ndr
, "homedir", r
->homedir
);
163 ndr_print_string(ndr
, "homedir", r
->homedir
);
166 ndr_print_ptr(ndr
, "shell", r
->shell
);
169 ndr_print_string(ndr
, "shell", r
->shell
);
172 ndr_print_hyper(ndr
, "primary_gid", r
->primary_gid
);
173 ndr_print_dom_sid(ndr
, "user_sid", &r
->user_sid
);
174 ndr_print_dom_sid(ndr
, "group_sid", &r
->group_sid
);
178 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_SidArray(struct ndr_push
*ndr
, int ndr_flags
, const struct wbint_SidArray
*r
)
180 uint32_t cntr_sids_0
;
181 if (ndr_flags
& NDR_SCALARS
) {
182 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->num_sids
));
183 NDR_CHECK(ndr_push_align(ndr
, 4));
184 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_sids
));
185 for (cntr_sids_0
= 0; cntr_sids_0
< r
->num_sids
; cntr_sids_0
++) {
186 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_0
]));
188 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
190 if (ndr_flags
& NDR_BUFFERS
) {
192 return NDR_ERR_SUCCESS
;
195 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_SidArray(struct ndr_pull
*ndr
, int ndr_flags
, struct wbint_SidArray
*r
)
197 uint32_t cntr_sids_0
;
198 TALLOC_CTX
*_mem_save_sids_0
;
199 if (ndr_flags
& NDR_SCALARS
) {
200 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->sids
));
201 NDR_CHECK(ndr_pull_align(ndr
, 4));
202 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_sids
));
203 NDR_PULL_ALLOC_N(ndr
, r
->sids
, ndr_get_array_size(ndr
, &r
->sids
));
204 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
205 NDR_PULL_SET_MEM_CTX(ndr
, r
->sids
, 0);
206 for (cntr_sids_0
= 0; cntr_sids_0
< r
->num_sids
; cntr_sids_0
++) {
207 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, &r
->sids
[cntr_sids_0
]));
209 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, 0);
211 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->sids
, r
->num_sids
));
213 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
215 if (ndr_flags
& NDR_BUFFERS
) {
217 return NDR_ERR_SUCCESS
;
220 _PUBLIC_
void ndr_print_wbint_SidArray(struct ndr_print
*ndr
, const char *name
, const struct wbint_SidArray
*r
)
222 uint32_t cntr_sids_0
;
223 ndr_print_struct(ndr
, name
, "wbint_SidArray");
225 ndr_print_uint32(ndr
, "num_sids", r
->num_sids
);
226 ndr
->print(ndr
, "%s: ARRAY(%d)", "sids", (int)r
->num_sids
);
228 for (cntr_sids_0
=0;cntr_sids_0
<r
->num_sids
;cntr_sids_0
++) {
230 if (asprintf(&idx_0
, "[%d]", cntr_sids_0
) != -1) {
231 ndr_print_dom_sid(ndr
, "sids", &r
->sids
[cntr_sids_0
]);
239 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_RidArray(struct ndr_push
*ndr
, int ndr_flags
, const struct wbint_RidArray
*r
)
241 uint32_t cntr_rids_0
;
242 if (ndr_flags
& NDR_SCALARS
) {
243 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->num_rids
));
244 NDR_CHECK(ndr_push_align(ndr
, 4));
245 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_rids
));
246 for (cntr_rids_0
= 0; cntr_rids_0
< r
->num_rids
; cntr_rids_0
++) {
247 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->rids
[cntr_rids_0
]));
249 NDR_CHECK(ndr_push_trailer_align(ndr
, 4));
251 if (ndr_flags
& NDR_BUFFERS
) {
253 return NDR_ERR_SUCCESS
;
256 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_RidArray(struct ndr_pull
*ndr
, int ndr_flags
, struct wbint_RidArray
*r
)
258 uint32_t cntr_rids_0
;
259 TALLOC_CTX
*_mem_save_rids_0
;
260 if (ndr_flags
& NDR_SCALARS
) {
261 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->rids
));
262 NDR_CHECK(ndr_pull_align(ndr
, 4));
263 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_rids
));
264 NDR_PULL_ALLOC_N(ndr
, r
->rids
, ndr_get_array_size(ndr
, &r
->rids
));
265 _mem_save_rids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
266 NDR_PULL_SET_MEM_CTX(ndr
, r
->rids
, 0);
267 for (cntr_rids_0
= 0; cntr_rids_0
< r
->num_rids
; cntr_rids_0
++) {
268 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->rids
[cntr_rids_0
]));
270 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_rids_0
, 0);
272 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->rids
, r
->num_rids
));
274 NDR_CHECK(ndr_pull_trailer_align(ndr
, 4));
276 if (ndr_flags
& NDR_BUFFERS
) {
278 return NDR_ERR_SUCCESS
;
281 _PUBLIC_
void ndr_print_wbint_RidArray(struct ndr_print
*ndr
, const char *name
, const struct wbint_RidArray
*r
)
283 uint32_t cntr_rids_0
;
284 ndr_print_struct(ndr
, name
, "wbint_RidArray");
286 ndr_print_uint32(ndr
, "num_rids", r
->num_rids
);
287 ndr
->print(ndr
, "%s: ARRAY(%d)", "rids", (int)r
->num_rids
);
289 for (cntr_rids_0
=0;cntr_rids_0
<r
->num_rids
;cntr_rids_0
++) {
291 if (asprintf(&idx_0
, "[%d]", cntr_rids_0
) != -1) {
292 ndr_print_uint32(ndr
, "rids", r
->rids
[cntr_rids_0
]);
300 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_Principal(struct ndr_push
*ndr
, int ndr_flags
, const struct wbint_Principal
*r
)
302 if (ndr_flags
& NDR_SCALARS
) {
303 NDR_CHECK(ndr_push_align(ndr
, 5));
304 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, &r
->sid
));
305 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->type
));
306 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->name
));
307 NDR_CHECK(ndr_push_trailer_align(ndr
, 5));
309 if (ndr_flags
& NDR_BUFFERS
) {
311 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->name
, CH_UTF8
)));
312 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
313 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->name
, CH_UTF8
)));
314 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->name
, ndr_charset_length(r
->name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
317 return NDR_ERR_SUCCESS
;
320 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_Principal(struct ndr_pull
*ndr
, int ndr_flags
, struct wbint_Principal
*r
)
323 TALLOC_CTX
*_mem_save_name_0
;
324 if (ndr_flags
& NDR_SCALARS
) {
325 NDR_CHECK(ndr_pull_align(ndr
, 5));
326 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, &r
->sid
));
327 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->type
));
328 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_name
));
330 NDR_PULL_ALLOC(ndr
, r
->name
);
334 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
336 if (ndr_flags
& NDR_BUFFERS
) {
338 _mem_save_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
339 NDR_PULL_SET_MEM_CTX(ndr
, r
->name
, 0);
340 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->name
));
341 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->name
));
342 if (ndr_get_array_length(ndr
, &r
->name
) > ndr_get_array_size(ndr
, &r
->name
)) {
343 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->name
), ndr_get_array_length(ndr
, &r
->name
));
345 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->name
), sizeof(uint8_t)));
346 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->name
, ndr_get_array_length(ndr
, &r
->name
), sizeof(uint8_t), CH_UTF8
));
347 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_0
, 0);
350 return NDR_ERR_SUCCESS
;
353 _PUBLIC_
void ndr_print_wbint_Principal(struct ndr_print
*ndr
, const char *name
, const struct wbint_Principal
*r
)
355 ndr_print_struct(ndr
, name
, "wbint_Principal");
357 ndr_print_dom_sid(ndr
, "sid", &r
->sid
);
358 ndr_print_lsa_SidType(ndr
, "type", r
->type
);
359 ndr_print_ptr(ndr
, "name", r
->name
);
362 ndr_print_string(ndr
, "name", r
->name
);
368 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_Principals(struct ndr_push
*ndr
, int ndr_flags
, const struct wbint_Principals
*r
)
370 uint32_t cntr_principals_0
;
371 if (ndr_flags
& NDR_SCALARS
) {
372 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->num_principals
));
373 NDR_CHECK(ndr_push_align(ndr
, 5));
374 NDR_CHECK(ndr_push_int32(ndr
, NDR_SCALARS
, r
->num_principals
));
375 for (cntr_principals_0
= 0; cntr_principals_0
< r
->num_principals
; cntr_principals_0
++) {
376 NDR_CHECK(ndr_push_wbint_Principal(ndr
, NDR_SCALARS
, &r
->principals
[cntr_principals_0
]));
378 NDR_CHECK(ndr_push_trailer_align(ndr
, 5));
380 if (ndr_flags
& NDR_BUFFERS
) {
381 for (cntr_principals_0
= 0; cntr_principals_0
< r
->num_principals
; cntr_principals_0
++) {
382 NDR_CHECK(ndr_push_wbint_Principal(ndr
, NDR_BUFFERS
, &r
->principals
[cntr_principals_0
]));
385 return NDR_ERR_SUCCESS
;
388 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_Principals(struct ndr_pull
*ndr
, int ndr_flags
, struct wbint_Principals
*r
)
390 uint32_t cntr_principals_0
;
391 TALLOC_CTX
*_mem_save_principals_0
;
392 if (ndr_flags
& NDR_SCALARS
) {
393 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->principals
));
394 NDR_CHECK(ndr_pull_align(ndr
, 5));
395 NDR_CHECK(ndr_pull_int32(ndr
, NDR_SCALARS
, &r
->num_principals
));
396 NDR_PULL_ALLOC_N(ndr
, r
->principals
, ndr_get_array_size(ndr
, &r
->principals
));
397 _mem_save_principals_0
= NDR_PULL_GET_MEM_CTX(ndr
);
398 NDR_PULL_SET_MEM_CTX(ndr
, r
->principals
, 0);
399 for (cntr_principals_0
= 0; cntr_principals_0
< r
->num_principals
; cntr_principals_0
++) {
400 NDR_CHECK(ndr_pull_wbint_Principal(ndr
, NDR_SCALARS
, &r
->principals
[cntr_principals_0
]));
402 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_principals_0
, 0);
404 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->principals
, r
->num_principals
));
406 NDR_CHECK(ndr_pull_trailer_align(ndr
, 5));
408 if (ndr_flags
& NDR_BUFFERS
) {
409 _mem_save_principals_0
= NDR_PULL_GET_MEM_CTX(ndr
);
410 NDR_PULL_SET_MEM_CTX(ndr
, r
->principals
, 0);
411 for (cntr_principals_0
= 0; cntr_principals_0
< r
->num_principals
; cntr_principals_0
++) {
412 NDR_CHECK(ndr_pull_wbint_Principal(ndr
, NDR_BUFFERS
, &r
->principals
[cntr_principals_0
]));
414 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_principals_0
, 0);
416 return NDR_ERR_SUCCESS
;
419 _PUBLIC_
void ndr_print_wbint_Principals(struct ndr_print
*ndr
, const char *name
, const struct wbint_Principals
*r
)
421 uint32_t cntr_principals_0
;
422 ndr_print_struct(ndr
, name
, "wbint_Principals");
424 ndr_print_int32(ndr
, "num_principals", r
->num_principals
);
425 ndr
->print(ndr
, "%s: ARRAY(%d)", "principals", (int)r
->num_principals
);
427 for (cntr_principals_0
=0;cntr_principals_0
<r
->num_principals
;cntr_principals_0
++) {
429 if (asprintf(&idx_0
, "[%d]", cntr_principals_0
) != -1) {
430 ndr_print_wbint_Principal(ndr
, "principals", &r
->principals
[cntr_principals_0
]);
438 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_userinfos(struct ndr_push
*ndr
, int ndr_flags
, const struct wbint_userinfos
*r
)
440 uint32_t cntr_userinfos_0
;
441 if (ndr_flags
& NDR_SCALARS
) {
442 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, r
->num_userinfos
));
443 NDR_CHECK(ndr_push_align(ndr
, 8));
444 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->num_userinfos
));
445 for (cntr_userinfos_0
= 0; cntr_userinfos_0
< r
->num_userinfos
; cntr_userinfos_0
++) {
446 NDR_CHECK(ndr_push_wbint_userinfo(ndr
, NDR_SCALARS
, &r
->userinfos
[cntr_userinfos_0
]));
448 NDR_CHECK(ndr_push_trailer_align(ndr
, 8));
450 if (ndr_flags
& NDR_BUFFERS
) {
451 for (cntr_userinfos_0
= 0; cntr_userinfos_0
< r
->num_userinfos
; cntr_userinfos_0
++) {
452 NDR_CHECK(ndr_push_wbint_userinfo(ndr
, NDR_BUFFERS
, &r
->userinfos
[cntr_userinfos_0
]));
455 return NDR_ERR_SUCCESS
;
458 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_userinfos(struct ndr_pull
*ndr
, int ndr_flags
, struct wbint_userinfos
*r
)
460 uint32_t cntr_userinfos_0
;
461 TALLOC_CTX
*_mem_save_userinfos_0
;
462 if (ndr_flags
& NDR_SCALARS
) {
463 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->userinfos
));
464 NDR_CHECK(ndr_pull_align(ndr
, 8));
465 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->num_userinfos
));
466 NDR_PULL_ALLOC_N(ndr
, r
->userinfos
, ndr_get_array_size(ndr
, &r
->userinfos
));
467 _mem_save_userinfos_0
= NDR_PULL_GET_MEM_CTX(ndr
);
468 NDR_PULL_SET_MEM_CTX(ndr
, r
->userinfos
, 0);
469 for (cntr_userinfos_0
= 0; cntr_userinfos_0
< r
->num_userinfos
; cntr_userinfos_0
++) {
470 NDR_CHECK(ndr_pull_wbint_userinfo(ndr
, NDR_SCALARS
, &r
->userinfos
[cntr_userinfos_0
]));
472 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_userinfos_0
, 0);
474 NDR_CHECK(ndr_check_array_size(ndr
, (void*)&r
->userinfos
, r
->num_userinfos
));
476 NDR_CHECK(ndr_pull_trailer_align(ndr
, 8));
478 if (ndr_flags
& NDR_BUFFERS
) {
479 _mem_save_userinfos_0
= NDR_PULL_GET_MEM_CTX(ndr
);
480 NDR_PULL_SET_MEM_CTX(ndr
, r
->userinfos
, 0);
481 for (cntr_userinfos_0
= 0; cntr_userinfos_0
< r
->num_userinfos
; cntr_userinfos_0
++) {
482 NDR_CHECK(ndr_pull_wbint_userinfo(ndr
, NDR_BUFFERS
, &r
->userinfos
[cntr_userinfos_0
]));
484 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_userinfos_0
, 0);
486 return NDR_ERR_SUCCESS
;
489 _PUBLIC_
void ndr_print_wbint_userinfos(struct ndr_print
*ndr
, const char *name
, const struct wbint_userinfos
*r
)
491 uint32_t cntr_userinfos_0
;
492 ndr_print_struct(ndr
, name
, "wbint_userinfos");
494 ndr_print_uint32(ndr
, "num_userinfos", r
->num_userinfos
);
495 ndr
->print(ndr
, "%s: ARRAY(%d)", "userinfos", (int)r
->num_userinfos
);
497 for (cntr_userinfos_0
=0;cntr_userinfos_0
<r
->num_userinfos
;cntr_userinfos_0
++) {
499 if (asprintf(&idx_0
, "[%d]", cntr_userinfos_0
) != -1) {
500 ndr_print_wbint_userinfo(ndr
, "userinfos", &r
->userinfos
[cntr_userinfos_0
]);
508 _PUBLIC_
enum ndr_err_code
ndr_push_wbint_IdType(struct ndr_push
*ndr
, int ndr_flags
, enum wbint_IdType r
)
510 NDR_CHECK(ndr_push_enum_uint1632(ndr
, NDR_SCALARS
, r
));
511 return NDR_ERR_SUCCESS
;
514 _PUBLIC_
enum ndr_err_code
ndr_pull_wbint_IdType(struct ndr_pull
*ndr
, int ndr_flags
, enum wbint_IdType
*r
)
517 NDR_CHECK(ndr_pull_enum_uint1632(ndr
, NDR_SCALARS
, &v
));
519 return NDR_ERR_SUCCESS
;
522 _PUBLIC_
void ndr_print_wbint_IdType(struct ndr_print
*ndr
, const char *name
, enum wbint_IdType r
)
524 const char *val
= NULL
;
527 case WBINT_ID_TYPE_NOT_SPECIFIED
: val
= "WBINT_ID_TYPE_NOT_SPECIFIED"; break;
528 case WBINT_ID_TYPE_UID
: val
= "WBINT_ID_TYPE_UID"; break;
529 case WBINT_ID_TYPE_GID
: val
= "WBINT_ID_TYPE_GID"; break;
531 ndr_print_enum(ndr
, name
, "ENUM", val
, r
);
534 static enum ndr_err_code
ndr_push_wbint_Ping(struct ndr_push
*ndr
, int flags
, const struct wbint_Ping
*r
)
536 if (flags
& NDR_IN
) {
537 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.in_data
));
539 if (flags
& NDR_OUT
) {
540 if (r
->out
.out_data
== NULL
) {
541 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
543 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.out_data
));
545 return NDR_ERR_SUCCESS
;
548 static enum ndr_err_code
ndr_pull_wbint_Ping(struct ndr_pull
*ndr
, int flags
, struct wbint_Ping
*r
)
550 TALLOC_CTX
*_mem_save_out_data_0
;
551 if (flags
& NDR_IN
) {
554 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.in_data
));
555 NDR_PULL_ALLOC(ndr
, r
->out
.out_data
);
556 ZERO_STRUCTP(r
->out
.out_data
);
558 if (flags
& NDR_OUT
) {
559 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
560 NDR_PULL_ALLOC(ndr
, r
->out
.out_data
);
562 _mem_save_out_data_0
= NDR_PULL_GET_MEM_CTX(ndr
);
563 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.out_data
, LIBNDR_FLAG_REF_ALLOC
);
564 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.out_data
));
565 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_out_data_0
, LIBNDR_FLAG_REF_ALLOC
);
567 return NDR_ERR_SUCCESS
;
570 _PUBLIC_
void ndr_print_wbint_Ping(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_Ping
*r
)
572 ndr_print_struct(ndr
, name
, "wbint_Ping");
574 if (flags
& NDR_SET_VALUES
) {
575 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
577 if (flags
& NDR_IN
) {
578 ndr_print_struct(ndr
, "in", "wbint_Ping");
580 ndr_print_uint32(ndr
, "in_data", r
->in
.in_data
);
583 if (flags
& NDR_OUT
) {
584 ndr_print_struct(ndr
, "out", "wbint_Ping");
586 ndr_print_ptr(ndr
, "out_data", r
->out
.out_data
);
588 ndr_print_uint32(ndr
, "out_data", *r
->out
.out_data
);
595 static enum ndr_err_code
ndr_push_wbint_LookupSid(struct ndr_push
*ndr
, int flags
, const struct wbint_LookupSid
*r
)
597 if (flags
& NDR_IN
) {
598 if (r
->in
.sid
== NULL
) {
599 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
601 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
603 if (flags
& NDR_OUT
) {
604 if (r
->out
.type
== NULL
) {
605 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
607 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, *r
->out
.type
));
608 if (r
->out
.domain
== NULL
) {
609 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
611 NDR_CHECK(ndr_push_unique_ptr(ndr
, *r
->out
.domain
));
612 if (*r
->out
.domain
) {
613 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(*r
->out
.domain
, CH_UTF8
)));
614 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
615 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(*r
->out
.domain
, CH_UTF8
)));
616 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, *r
->out
.domain
, ndr_charset_length(*r
->out
.domain
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
618 if (r
->out
.name
== NULL
) {
619 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
621 NDR_CHECK(ndr_push_unique_ptr(ndr
, *r
->out
.name
));
623 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(*r
->out
.name
, CH_UTF8
)));
624 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
625 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(*r
->out
.name
, CH_UTF8
)));
626 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, *r
->out
.name
, ndr_charset_length(*r
->out
.name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
628 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
630 return NDR_ERR_SUCCESS
;
633 static enum ndr_err_code
ndr_pull_wbint_LookupSid(struct ndr_pull
*ndr
, int flags
, struct wbint_LookupSid
*r
)
635 uint32_t _ptr_domain
;
637 TALLOC_CTX
*_mem_save_sid_0
;
638 TALLOC_CTX
*_mem_save_type_0
;
639 TALLOC_CTX
*_mem_save_domain_0
;
640 TALLOC_CTX
*_mem_save_domain_1
;
641 TALLOC_CTX
*_mem_save_name_0
;
642 TALLOC_CTX
*_mem_save_name_1
;
643 if (flags
& NDR_IN
) {
646 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
647 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
649 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
650 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
651 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
652 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
653 NDR_PULL_ALLOC(ndr
, r
->out
.type
);
654 ZERO_STRUCTP(r
->out
.type
);
655 NDR_PULL_ALLOC(ndr
, r
->out
.domain
);
656 ZERO_STRUCTP(r
->out
.domain
);
657 NDR_PULL_ALLOC(ndr
, r
->out
.name
);
658 ZERO_STRUCTP(r
->out
.name
);
660 if (flags
& NDR_OUT
) {
661 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
662 NDR_PULL_ALLOC(ndr
, r
->out
.type
);
664 _mem_save_type_0
= NDR_PULL_GET_MEM_CTX(ndr
);
665 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.type
, LIBNDR_FLAG_REF_ALLOC
);
666 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, r
->out
.type
));
667 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_type_0
, LIBNDR_FLAG_REF_ALLOC
);
668 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
669 NDR_PULL_ALLOC(ndr
, r
->out
.domain
);
671 _mem_save_domain_0
= NDR_PULL_GET_MEM_CTX(ndr
);
672 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.domain
, LIBNDR_FLAG_REF_ALLOC
);
673 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domain
));
675 NDR_PULL_ALLOC(ndr
, *r
->out
.domain
);
677 *r
->out
.domain
= NULL
;
679 if (*r
->out
.domain
) {
680 _mem_save_domain_1
= NDR_PULL_GET_MEM_CTX(ndr
);
681 NDR_PULL_SET_MEM_CTX(ndr
, *r
->out
.domain
, 0);
682 NDR_CHECK(ndr_pull_array_size(ndr
, r
->out
.domain
));
683 NDR_CHECK(ndr_pull_array_length(ndr
, r
->out
.domain
));
684 if (ndr_get_array_length(ndr
, r
->out
.domain
) > ndr_get_array_size(ndr
, r
->out
.domain
)) {
685 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, r
->out
.domain
), ndr_get_array_length(ndr
, r
->out
.domain
));
687 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, r
->out
.domain
), sizeof(uint8_t)));
688 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, r
->out
.domain
, ndr_get_array_length(ndr
, r
->out
.domain
), sizeof(uint8_t), CH_UTF8
));
689 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domain_1
, 0);
691 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domain_0
, LIBNDR_FLAG_REF_ALLOC
);
692 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
693 NDR_PULL_ALLOC(ndr
, r
->out
.name
);
695 _mem_save_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
696 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.name
, LIBNDR_FLAG_REF_ALLOC
);
697 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_name
));
699 NDR_PULL_ALLOC(ndr
, *r
->out
.name
);
704 _mem_save_name_1
= NDR_PULL_GET_MEM_CTX(ndr
);
705 NDR_PULL_SET_MEM_CTX(ndr
, *r
->out
.name
, 0);
706 NDR_CHECK(ndr_pull_array_size(ndr
, r
->out
.name
));
707 NDR_CHECK(ndr_pull_array_length(ndr
, r
->out
.name
));
708 if (ndr_get_array_length(ndr
, r
->out
.name
) > ndr_get_array_size(ndr
, r
->out
.name
)) {
709 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, r
->out
.name
), ndr_get_array_length(ndr
, r
->out
.name
));
711 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, r
->out
.name
), sizeof(uint8_t)));
712 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, r
->out
.name
, ndr_get_array_length(ndr
, r
->out
.name
), sizeof(uint8_t), CH_UTF8
));
713 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_1
, 0);
715 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_name_0
, LIBNDR_FLAG_REF_ALLOC
);
716 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
718 return NDR_ERR_SUCCESS
;
721 _PUBLIC_
void ndr_print_wbint_LookupSid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_LookupSid
*r
)
723 ndr_print_struct(ndr
, name
, "wbint_LookupSid");
725 if (flags
& NDR_SET_VALUES
) {
726 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
728 if (flags
& NDR_IN
) {
729 ndr_print_struct(ndr
, "in", "wbint_LookupSid");
731 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
733 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
737 if (flags
& NDR_OUT
) {
738 ndr_print_struct(ndr
, "out", "wbint_LookupSid");
740 ndr_print_ptr(ndr
, "type", r
->out
.type
);
742 ndr_print_lsa_SidType(ndr
, "type", *r
->out
.type
);
744 ndr_print_ptr(ndr
, "domain", r
->out
.domain
);
746 ndr_print_ptr(ndr
, "domain", *r
->out
.domain
);
748 if (*r
->out
.domain
) {
749 ndr_print_string(ndr
, "domain", *r
->out
.domain
);
753 ndr_print_ptr(ndr
, "name", r
->out
.name
);
755 ndr_print_ptr(ndr
, "name", *r
->out
.name
);
758 ndr_print_string(ndr
, "name", *r
->out
.name
);
762 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
768 static enum ndr_err_code
ndr_push_wbint_LookupName(struct ndr_push
*ndr
, int flags
, const struct wbint_LookupName
*r
)
770 if (flags
& NDR_IN
) {
771 if (r
->in
.domain
== NULL
) {
772 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
774 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.domain
, CH_UTF8
)));
775 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
776 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.domain
, CH_UTF8
)));
777 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.domain
, ndr_charset_length(r
->in
.domain
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
778 if (r
->in
.name
== NULL
) {
779 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
781 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.name
, CH_UTF8
)));
782 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
783 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.name
, CH_UTF8
)));
784 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.name
, ndr_charset_length(r
->in
.name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
785 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.flags
));
787 if (flags
& NDR_OUT
) {
788 if (r
->out
.type
== NULL
) {
789 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
791 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, *r
->out
.type
));
792 if (r
->out
.sid
== NULL
) {
793 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
795 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->out
.sid
));
796 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
798 return NDR_ERR_SUCCESS
;
801 static enum ndr_err_code
ndr_pull_wbint_LookupName(struct ndr_pull
*ndr
, int flags
, struct wbint_LookupName
*r
)
803 TALLOC_CTX
*_mem_save_type_0
;
804 TALLOC_CTX
*_mem_save_sid_0
;
805 if (flags
& NDR_IN
) {
808 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.domain
));
809 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.domain
));
810 if (ndr_get_array_length(ndr
, &r
->in
.domain
) > ndr_get_array_size(ndr
, &r
->in
.domain
)) {
811 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
.domain
), ndr_get_array_length(ndr
, &r
->in
.domain
));
813 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.domain
), sizeof(uint8_t)));
814 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.domain
, ndr_get_array_length(ndr
, &r
->in
.domain
), sizeof(uint8_t), CH_UTF8
));
815 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.name
));
816 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.name
));
817 if (ndr_get_array_length(ndr
, &r
->in
.name
) > ndr_get_array_size(ndr
, &r
->in
.name
)) {
818 return ndr_pull_error(ndr
, NDR_ERR_ARRAY_SIZE
, "Bad array size %u should exceed array length %u", ndr_get_array_size(ndr
, &r
->in
.name
), ndr_get_array_length(ndr
, &r
->in
.name
));
820 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.name
), sizeof(uint8_t)));
821 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.name
, ndr_get_array_length(ndr
, &r
->in
.name
), sizeof(uint8_t), CH_UTF8
));
822 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.flags
));
823 NDR_PULL_ALLOC(ndr
, r
->out
.type
);
824 ZERO_STRUCTP(r
->out
.type
);
825 NDR_PULL_ALLOC(ndr
, r
->out
.sid
);
826 ZERO_STRUCTP(r
->out
.sid
);
828 if (flags
& NDR_OUT
) {
829 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
830 NDR_PULL_ALLOC(ndr
, r
->out
.type
);
832 _mem_save_type_0
= NDR_PULL_GET_MEM_CTX(ndr
);
833 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.type
, LIBNDR_FLAG_REF_ALLOC
);
834 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, r
->out
.type
));
835 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_type_0
, LIBNDR_FLAG_REF_ALLOC
);
836 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
837 NDR_PULL_ALLOC(ndr
, r
->out
.sid
);
839 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
840 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sid
, LIBNDR_FLAG_REF_ALLOC
);
841 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->out
.sid
));
842 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
843 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
845 return NDR_ERR_SUCCESS
;
848 _PUBLIC_
void ndr_print_wbint_LookupName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_LookupName
*r
)
850 ndr_print_struct(ndr
, name
, "wbint_LookupName");
852 if (flags
& NDR_SET_VALUES
) {
853 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
855 if (flags
& NDR_IN
) {
856 ndr_print_struct(ndr
, "in", "wbint_LookupName");
858 ndr_print_ptr(ndr
, "domain", r
->in
.domain
);
860 ndr_print_string(ndr
, "domain", r
->in
.domain
);
862 ndr_print_ptr(ndr
, "name", r
->in
.name
);
864 ndr_print_string(ndr
, "name", r
->in
.name
);
866 ndr_print_uint32(ndr
, "flags", r
->in
.flags
);
869 if (flags
& NDR_OUT
) {
870 ndr_print_struct(ndr
, "out", "wbint_LookupName");
872 ndr_print_ptr(ndr
, "type", r
->out
.type
);
874 ndr_print_lsa_SidType(ndr
, "type", *r
->out
.type
);
876 ndr_print_ptr(ndr
, "sid", r
->out
.sid
);
878 ndr_print_dom_sid(ndr
, "sid", r
->out
.sid
);
880 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
886 static enum ndr_err_code
ndr_push_wbint_Sid2Uid(struct ndr_push
*ndr
, int flags
, const struct wbint_Sid2Uid
*r
)
888 if (flags
& NDR_IN
) {
889 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.dom_name
));
890 if (r
->in
.dom_name
) {
891 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
892 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
893 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
894 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.dom_name
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
896 if (r
->in
.sid
== NULL
) {
897 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
899 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
901 if (flags
& NDR_OUT
) {
902 if (r
->out
.uid
== NULL
) {
903 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
905 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, *r
->out
.uid
));
906 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
908 return NDR_ERR_SUCCESS
;
911 static enum ndr_err_code
ndr_pull_wbint_Sid2Uid(struct ndr_pull
*ndr
, int flags
, struct wbint_Sid2Uid
*r
)
913 uint32_t _ptr_dom_name
;
914 TALLOC_CTX
*_mem_save_dom_name_0
;
915 TALLOC_CTX
*_mem_save_sid_0
;
916 TALLOC_CTX
*_mem_save_uid_0
;
917 if (flags
& NDR_IN
) {
920 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_dom_name
));
922 NDR_PULL_ALLOC(ndr
, r
->in
.dom_name
);
924 r
->in
.dom_name
= NULL
;
926 if (r
->in
.dom_name
) {
927 _mem_save_dom_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
928 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.dom_name
, 0);
929 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.dom_name
));
930 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.dom_name
));
931 if (ndr_get_array_length(ndr
, &r
->in
.dom_name
) > ndr_get_array_size(ndr
, &r
->in
.dom_name
)) {
932 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
.dom_name
), ndr_get_array_length(ndr
, &r
->in
.dom_name
));
934 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t)));
935 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.dom_name
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t), CH_UTF8
));
936 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dom_name_0
, 0);
938 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
939 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
941 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
942 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
943 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
944 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
945 NDR_PULL_ALLOC(ndr
, r
->out
.uid
);
946 ZERO_STRUCTP(r
->out
.uid
);
948 if (flags
& NDR_OUT
) {
949 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
950 NDR_PULL_ALLOC(ndr
, r
->out
.uid
);
952 _mem_save_uid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
953 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.uid
, LIBNDR_FLAG_REF_ALLOC
);
954 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, r
->out
.uid
));
955 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_uid_0
, LIBNDR_FLAG_REF_ALLOC
);
956 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
958 return NDR_ERR_SUCCESS
;
961 _PUBLIC_
void ndr_print_wbint_Sid2Uid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_Sid2Uid
*r
)
963 ndr_print_struct(ndr
, name
, "wbint_Sid2Uid");
965 if (flags
& NDR_SET_VALUES
) {
966 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
968 if (flags
& NDR_IN
) {
969 ndr_print_struct(ndr
, "in", "wbint_Sid2Uid");
971 ndr_print_ptr(ndr
, "dom_name", r
->in
.dom_name
);
973 if (r
->in
.dom_name
) {
974 ndr_print_string(ndr
, "dom_name", r
->in
.dom_name
);
977 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
979 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
983 if (flags
& NDR_OUT
) {
984 ndr_print_struct(ndr
, "out", "wbint_Sid2Uid");
986 ndr_print_ptr(ndr
, "uid", r
->out
.uid
);
988 ndr_print_hyper(ndr
, "uid", *r
->out
.uid
);
990 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
996 static enum ndr_err_code
ndr_push_wbint_Sid2Gid(struct ndr_push
*ndr
, int flags
, const struct wbint_Sid2Gid
*r
)
998 if (flags
& NDR_IN
) {
999 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.dom_name
));
1000 if (r
->in
.dom_name
) {
1001 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
1002 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
1003 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
1004 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.dom_name
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
1006 if (r
->in
.sid
== NULL
) {
1007 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1009 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1011 if (flags
& NDR_OUT
) {
1012 if (r
->out
.gid
== NULL
) {
1013 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1015 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, *r
->out
.gid
));
1016 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1018 return NDR_ERR_SUCCESS
;
1021 static enum ndr_err_code
ndr_pull_wbint_Sid2Gid(struct ndr_pull
*ndr
, int flags
, struct wbint_Sid2Gid
*r
)
1023 uint32_t _ptr_dom_name
;
1024 TALLOC_CTX
*_mem_save_dom_name_0
;
1025 TALLOC_CTX
*_mem_save_sid_0
;
1026 TALLOC_CTX
*_mem_save_gid_0
;
1027 if (flags
& NDR_IN
) {
1028 ZERO_STRUCT(r
->out
);
1030 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_dom_name
));
1031 if (_ptr_dom_name
) {
1032 NDR_PULL_ALLOC(ndr
, r
->in
.dom_name
);
1034 r
->in
.dom_name
= NULL
;
1036 if (r
->in
.dom_name
) {
1037 _mem_save_dom_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1038 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.dom_name
, 0);
1039 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.dom_name
));
1040 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.dom_name
));
1041 if (ndr_get_array_length(ndr
, &r
->in
.dom_name
) > ndr_get_array_size(ndr
, &r
->in
.dom_name
)) {
1042 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
.dom_name
), ndr_get_array_length(ndr
, &r
->in
.dom_name
));
1044 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t)));
1045 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.dom_name
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t), CH_UTF8
));
1046 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dom_name_0
, 0);
1048 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1049 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
1051 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1052 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
1053 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1054 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
1055 NDR_PULL_ALLOC(ndr
, r
->out
.gid
);
1056 ZERO_STRUCTP(r
->out
.gid
);
1058 if (flags
& NDR_OUT
) {
1059 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1060 NDR_PULL_ALLOC(ndr
, r
->out
.gid
);
1062 _mem_save_gid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1063 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.gid
, LIBNDR_FLAG_REF_ALLOC
);
1064 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, r
->out
.gid
));
1065 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_gid_0
, LIBNDR_FLAG_REF_ALLOC
);
1066 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1068 return NDR_ERR_SUCCESS
;
1071 _PUBLIC_
void ndr_print_wbint_Sid2Gid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_Sid2Gid
*r
)
1073 ndr_print_struct(ndr
, name
, "wbint_Sid2Gid");
1075 if (flags
& NDR_SET_VALUES
) {
1076 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1078 if (flags
& NDR_IN
) {
1079 ndr_print_struct(ndr
, "in", "wbint_Sid2Gid");
1081 ndr_print_ptr(ndr
, "dom_name", r
->in
.dom_name
);
1083 if (r
->in
.dom_name
) {
1084 ndr_print_string(ndr
, "dom_name", r
->in
.dom_name
);
1087 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
1089 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
1093 if (flags
& NDR_OUT
) {
1094 ndr_print_struct(ndr
, "out", "wbint_Sid2Gid");
1096 ndr_print_ptr(ndr
, "gid", r
->out
.gid
);
1098 ndr_print_hyper(ndr
, "gid", *r
->out
.gid
);
1100 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1106 static enum ndr_err_code
ndr_push_wbint_Uid2Sid(struct ndr_push
*ndr
, int flags
, const struct wbint_Uid2Sid
*r
)
1108 if (flags
& NDR_IN
) {
1109 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.dom_name
));
1110 if (r
->in
.dom_name
) {
1111 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
1112 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
1113 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
1114 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.dom_name
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
1116 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->in
.uid
));
1118 if (flags
& NDR_OUT
) {
1119 if (r
->out
.sid
== NULL
) {
1120 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1122 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->out
.sid
));
1123 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1125 return NDR_ERR_SUCCESS
;
1128 static enum ndr_err_code
ndr_pull_wbint_Uid2Sid(struct ndr_pull
*ndr
, int flags
, struct wbint_Uid2Sid
*r
)
1130 uint32_t _ptr_dom_name
;
1131 TALLOC_CTX
*_mem_save_dom_name_0
;
1132 TALLOC_CTX
*_mem_save_sid_0
;
1133 if (flags
& NDR_IN
) {
1134 ZERO_STRUCT(r
->out
);
1136 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_dom_name
));
1137 if (_ptr_dom_name
) {
1138 NDR_PULL_ALLOC(ndr
, r
->in
.dom_name
);
1140 r
->in
.dom_name
= NULL
;
1142 if (r
->in
.dom_name
) {
1143 _mem_save_dom_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1144 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.dom_name
, 0);
1145 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.dom_name
));
1146 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.dom_name
));
1147 if (ndr_get_array_length(ndr
, &r
->in
.dom_name
) > ndr_get_array_size(ndr
, &r
->in
.dom_name
)) {
1148 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
.dom_name
), ndr_get_array_length(ndr
, &r
->in
.dom_name
));
1150 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t)));
1151 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.dom_name
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t), CH_UTF8
));
1152 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dom_name_0
, 0);
1154 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->in
.uid
));
1155 NDR_PULL_ALLOC(ndr
, r
->out
.sid
);
1156 ZERO_STRUCTP(r
->out
.sid
);
1158 if (flags
& NDR_OUT
) {
1159 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1160 NDR_PULL_ALLOC(ndr
, r
->out
.sid
);
1162 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1163 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sid
, LIBNDR_FLAG_REF_ALLOC
);
1164 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->out
.sid
));
1165 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
1166 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1168 return NDR_ERR_SUCCESS
;
1171 _PUBLIC_
void ndr_print_wbint_Uid2Sid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_Uid2Sid
*r
)
1173 ndr_print_struct(ndr
, name
, "wbint_Uid2Sid");
1175 if (flags
& NDR_SET_VALUES
) {
1176 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1178 if (flags
& NDR_IN
) {
1179 ndr_print_struct(ndr
, "in", "wbint_Uid2Sid");
1181 ndr_print_ptr(ndr
, "dom_name", r
->in
.dom_name
);
1183 if (r
->in
.dom_name
) {
1184 ndr_print_string(ndr
, "dom_name", r
->in
.dom_name
);
1187 ndr_print_hyper(ndr
, "uid", r
->in
.uid
);
1190 if (flags
& NDR_OUT
) {
1191 ndr_print_struct(ndr
, "out", "wbint_Uid2Sid");
1193 ndr_print_ptr(ndr
, "sid", r
->out
.sid
);
1195 ndr_print_dom_sid(ndr
, "sid", r
->out
.sid
);
1197 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1203 static enum ndr_err_code
ndr_push_wbint_Gid2Sid(struct ndr_push
*ndr
, int flags
, const struct wbint_Gid2Sid
*r
)
1205 if (flags
& NDR_IN
) {
1206 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.dom_name
));
1207 if (r
->in
.dom_name
) {
1208 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
1209 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
1210 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
)));
1211 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.dom_name
, ndr_charset_length(r
->in
.dom_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
1213 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->in
.gid
));
1215 if (flags
& NDR_OUT
) {
1216 if (r
->out
.sid
== NULL
) {
1217 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1219 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->out
.sid
));
1220 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1222 return NDR_ERR_SUCCESS
;
1225 static enum ndr_err_code
ndr_pull_wbint_Gid2Sid(struct ndr_pull
*ndr
, int flags
, struct wbint_Gid2Sid
*r
)
1227 uint32_t _ptr_dom_name
;
1228 TALLOC_CTX
*_mem_save_dom_name_0
;
1229 TALLOC_CTX
*_mem_save_sid_0
;
1230 if (flags
& NDR_IN
) {
1231 ZERO_STRUCT(r
->out
);
1233 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_dom_name
));
1234 if (_ptr_dom_name
) {
1235 NDR_PULL_ALLOC(ndr
, r
->in
.dom_name
);
1237 r
->in
.dom_name
= NULL
;
1239 if (r
->in
.dom_name
) {
1240 _mem_save_dom_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1241 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.dom_name
, 0);
1242 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.dom_name
));
1243 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.dom_name
));
1244 if (ndr_get_array_length(ndr
, &r
->in
.dom_name
) > ndr_get_array_size(ndr
, &r
->in
.dom_name
)) {
1245 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
.dom_name
), ndr_get_array_length(ndr
, &r
->in
.dom_name
));
1247 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t)));
1248 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.dom_name
, ndr_get_array_length(ndr
, &r
->in
.dom_name
), sizeof(uint8_t), CH_UTF8
));
1249 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dom_name_0
, 0);
1251 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->in
.gid
));
1252 NDR_PULL_ALLOC(ndr
, r
->out
.sid
);
1253 ZERO_STRUCTP(r
->out
.sid
);
1255 if (flags
& NDR_OUT
) {
1256 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1257 NDR_PULL_ALLOC(ndr
, r
->out
.sid
);
1259 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1260 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sid
, LIBNDR_FLAG_REF_ALLOC
);
1261 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->out
.sid
));
1262 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
1263 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1265 return NDR_ERR_SUCCESS
;
1268 _PUBLIC_
void ndr_print_wbint_Gid2Sid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_Gid2Sid
*r
)
1270 ndr_print_struct(ndr
, name
, "wbint_Gid2Sid");
1272 if (flags
& NDR_SET_VALUES
) {
1273 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1275 if (flags
& NDR_IN
) {
1276 ndr_print_struct(ndr
, "in", "wbint_Gid2Sid");
1278 ndr_print_ptr(ndr
, "dom_name", r
->in
.dom_name
);
1280 if (r
->in
.dom_name
) {
1281 ndr_print_string(ndr
, "dom_name", r
->in
.dom_name
);
1284 ndr_print_hyper(ndr
, "gid", r
->in
.gid
);
1287 if (flags
& NDR_OUT
) {
1288 ndr_print_struct(ndr
, "out", "wbint_Gid2Sid");
1290 ndr_print_ptr(ndr
, "sid", r
->out
.sid
);
1292 ndr_print_dom_sid(ndr
, "sid", r
->out
.sid
);
1294 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1300 static enum ndr_err_code
ndr_push_wbint_AllocateUid(struct ndr_push
*ndr
, int flags
, const struct wbint_AllocateUid
*r
)
1302 if (flags
& NDR_IN
) {
1304 if (flags
& NDR_OUT
) {
1305 if (r
->out
.uid
== NULL
) {
1306 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1308 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, *r
->out
.uid
));
1309 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1311 return NDR_ERR_SUCCESS
;
1314 static enum ndr_err_code
ndr_pull_wbint_AllocateUid(struct ndr_pull
*ndr
, int flags
, struct wbint_AllocateUid
*r
)
1316 TALLOC_CTX
*_mem_save_uid_0
;
1317 if (flags
& NDR_IN
) {
1318 ZERO_STRUCT(r
->out
);
1320 NDR_PULL_ALLOC(ndr
, r
->out
.uid
);
1321 ZERO_STRUCTP(r
->out
.uid
);
1323 if (flags
& NDR_OUT
) {
1324 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1325 NDR_PULL_ALLOC(ndr
, r
->out
.uid
);
1327 _mem_save_uid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1328 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.uid
, LIBNDR_FLAG_REF_ALLOC
);
1329 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, r
->out
.uid
));
1330 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_uid_0
, LIBNDR_FLAG_REF_ALLOC
);
1331 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1333 return NDR_ERR_SUCCESS
;
1336 _PUBLIC_
void ndr_print_wbint_AllocateUid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_AllocateUid
*r
)
1338 ndr_print_struct(ndr
, name
, "wbint_AllocateUid");
1340 if (flags
& NDR_SET_VALUES
) {
1341 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1343 if (flags
& NDR_IN
) {
1344 ndr_print_struct(ndr
, "in", "wbint_AllocateUid");
1348 if (flags
& NDR_OUT
) {
1349 ndr_print_struct(ndr
, "out", "wbint_AllocateUid");
1351 ndr_print_ptr(ndr
, "uid", r
->out
.uid
);
1353 ndr_print_hyper(ndr
, "uid", *r
->out
.uid
);
1355 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1361 static enum ndr_err_code
ndr_push_wbint_AllocateGid(struct ndr_push
*ndr
, int flags
, const struct wbint_AllocateGid
*r
)
1363 if (flags
& NDR_IN
) {
1365 if (flags
& NDR_OUT
) {
1366 if (r
->out
.gid
== NULL
) {
1367 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1369 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, *r
->out
.gid
));
1370 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1372 return NDR_ERR_SUCCESS
;
1375 static enum ndr_err_code
ndr_pull_wbint_AllocateGid(struct ndr_pull
*ndr
, int flags
, struct wbint_AllocateGid
*r
)
1377 TALLOC_CTX
*_mem_save_gid_0
;
1378 if (flags
& NDR_IN
) {
1379 ZERO_STRUCT(r
->out
);
1381 NDR_PULL_ALLOC(ndr
, r
->out
.gid
);
1382 ZERO_STRUCTP(r
->out
.gid
);
1384 if (flags
& NDR_OUT
) {
1385 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1386 NDR_PULL_ALLOC(ndr
, r
->out
.gid
);
1388 _mem_save_gid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1389 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.gid
, LIBNDR_FLAG_REF_ALLOC
);
1390 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, r
->out
.gid
));
1391 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_gid_0
, LIBNDR_FLAG_REF_ALLOC
);
1392 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1394 return NDR_ERR_SUCCESS
;
1397 _PUBLIC_
void ndr_print_wbint_AllocateGid(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_AllocateGid
*r
)
1399 ndr_print_struct(ndr
, name
, "wbint_AllocateGid");
1401 if (flags
& NDR_SET_VALUES
) {
1402 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1404 if (flags
& NDR_IN
) {
1405 ndr_print_struct(ndr
, "in", "wbint_AllocateGid");
1409 if (flags
& NDR_OUT
) {
1410 ndr_print_struct(ndr
, "out", "wbint_AllocateGid");
1412 ndr_print_ptr(ndr
, "gid", r
->out
.gid
);
1414 ndr_print_hyper(ndr
, "gid", *r
->out
.gid
);
1416 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1422 static enum ndr_err_code
ndr_push_wbint_QueryUser(struct ndr_push
*ndr
, int flags
, const struct wbint_QueryUser
*r
)
1424 if (flags
& NDR_IN
) {
1425 if (r
->in
.sid
== NULL
) {
1426 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1428 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1430 if (flags
& NDR_OUT
) {
1431 if (r
->out
.info
== NULL
) {
1432 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1434 NDR_CHECK(ndr_push_wbint_userinfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
1435 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1437 return NDR_ERR_SUCCESS
;
1440 static enum ndr_err_code
ndr_pull_wbint_QueryUser(struct ndr_pull
*ndr
, int flags
, struct wbint_QueryUser
*r
)
1442 TALLOC_CTX
*_mem_save_sid_0
;
1443 TALLOC_CTX
*_mem_save_info_0
;
1444 if (flags
& NDR_IN
) {
1445 ZERO_STRUCT(r
->out
);
1447 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1448 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
1450 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1451 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
1452 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1453 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
1454 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
1455 ZERO_STRUCTP(r
->out
.info
);
1457 if (flags
& NDR_OUT
) {
1458 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1459 NDR_PULL_ALLOC(ndr
, r
->out
.info
);
1461 _mem_save_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1462 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.info
, LIBNDR_FLAG_REF_ALLOC
);
1463 NDR_CHECK(ndr_pull_wbint_userinfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.info
));
1464 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_info_0
, LIBNDR_FLAG_REF_ALLOC
);
1465 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1467 return NDR_ERR_SUCCESS
;
1470 _PUBLIC_
void ndr_print_wbint_QueryUser(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_QueryUser
*r
)
1472 ndr_print_struct(ndr
, name
, "wbint_QueryUser");
1474 if (flags
& NDR_SET_VALUES
) {
1475 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1477 if (flags
& NDR_IN
) {
1478 ndr_print_struct(ndr
, "in", "wbint_QueryUser");
1480 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
1482 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
1486 if (flags
& NDR_OUT
) {
1487 ndr_print_struct(ndr
, "out", "wbint_QueryUser");
1489 ndr_print_ptr(ndr
, "info", r
->out
.info
);
1491 ndr_print_wbint_userinfo(ndr
, "info", r
->out
.info
);
1493 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1499 static enum ndr_err_code
ndr_push_wbint_LookupUserAliases(struct ndr_push
*ndr
, int flags
, const struct wbint_LookupUserAliases
*r
)
1501 if (flags
& NDR_IN
) {
1502 if (r
->in
.sids
== NULL
) {
1503 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1505 NDR_CHECK(ndr_push_wbint_SidArray(ndr
, NDR_SCALARS
, r
->in
.sids
));
1507 if (flags
& NDR_OUT
) {
1508 if (r
->out
.rids
== NULL
) {
1509 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1511 NDR_CHECK(ndr_push_wbint_RidArray(ndr
, NDR_SCALARS
, r
->out
.rids
));
1512 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1514 return NDR_ERR_SUCCESS
;
1517 static enum ndr_err_code
ndr_pull_wbint_LookupUserAliases(struct ndr_pull
*ndr
, int flags
, struct wbint_LookupUserAliases
*r
)
1519 TALLOC_CTX
*_mem_save_sids_0
;
1520 TALLOC_CTX
*_mem_save_rids_0
;
1521 if (flags
& NDR_IN
) {
1522 ZERO_STRUCT(r
->out
);
1524 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1525 NDR_PULL_ALLOC(ndr
, r
->in
.sids
);
1527 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1528 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sids
, LIBNDR_FLAG_REF_ALLOC
);
1529 NDR_CHECK(ndr_pull_wbint_SidArray(ndr
, NDR_SCALARS
, r
->in
.sids
));
1530 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
1531 NDR_PULL_ALLOC(ndr
, r
->out
.rids
);
1532 ZERO_STRUCTP(r
->out
.rids
);
1534 if (flags
& NDR_OUT
) {
1535 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1536 NDR_PULL_ALLOC(ndr
, r
->out
.rids
);
1538 _mem_save_rids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1539 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.rids
, LIBNDR_FLAG_REF_ALLOC
);
1540 NDR_CHECK(ndr_pull_wbint_RidArray(ndr
, NDR_SCALARS
, r
->out
.rids
));
1541 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_rids_0
, LIBNDR_FLAG_REF_ALLOC
);
1542 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1544 return NDR_ERR_SUCCESS
;
1547 _PUBLIC_
void ndr_print_wbint_LookupUserAliases(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_LookupUserAliases
*r
)
1549 ndr_print_struct(ndr
, name
, "wbint_LookupUserAliases");
1551 if (flags
& NDR_SET_VALUES
) {
1552 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1554 if (flags
& NDR_IN
) {
1555 ndr_print_struct(ndr
, "in", "wbint_LookupUserAliases");
1557 ndr_print_ptr(ndr
, "sids", r
->in
.sids
);
1559 ndr_print_wbint_SidArray(ndr
, "sids", r
->in
.sids
);
1563 if (flags
& NDR_OUT
) {
1564 ndr_print_struct(ndr
, "out", "wbint_LookupUserAliases");
1566 ndr_print_ptr(ndr
, "rids", r
->out
.rids
);
1568 ndr_print_wbint_RidArray(ndr
, "rids", r
->out
.rids
);
1570 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1576 static enum ndr_err_code
ndr_push_wbint_LookupUserGroups(struct ndr_push
*ndr
, int flags
, const struct wbint_LookupUserGroups
*r
)
1578 if (flags
& NDR_IN
) {
1579 if (r
->in
.sid
== NULL
) {
1580 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1582 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1584 if (flags
& NDR_OUT
) {
1585 if (r
->out
.sids
== NULL
) {
1586 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1588 NDR_CHECK(ndr_push_wbint_SidArray(ndr
, NDR_SCALARS
, r
->out
.sids
));
1589 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1591 return NDR_ERR_SUCCESS
;
1594 static enum ndr_err_code
ndr_pull_wbint_LookupUserGroups(struct ndr_pull
*ndr
, int flags
, struct wbint_LookupUserGroups
*r
)
1596 TALLOC_CTX
*_mem_save_sid_0
;
1597 TALLOC_CTX
*_mem_save_sids_0
;
1598 if (flags
& NDR_IN
) {
1599 ZERO_STRUCT(r
->out
);
1601 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1602 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
1604 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1605 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
1606 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1607 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
1608 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
1609 ZERO_STRUCTP(r
->out
.sids
);
1611 if (flags
& NDR_OUT
) {
1612 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1613 NDR_PULL_ALLOC(ndr
, r
->out
.sids
);
1615 _mem_save_sids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1616 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sids
, LIBNDR_FLAG_REF_ALLOC
);
1617 NDR_CHECK(ndr_pull_wbint_SidArray(ndr
, NDR_SCALARS
, r
->out
.sids
));
1618 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sids_0
, LIBNDR_FLAG_REF_ALLOC
);
1619 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1621 return NDR_ERR_SUCCESS
;
1624 _PUBLIC_
void ndr_print_wbint_LookupUserGroups(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_LookupUserGroups
*r
)
1626 ndr_print_struct(ndr
, name
, "wbint_LookupUserGroups");
1628 if (flags
& NDR_SET_VALUES
) {
1629 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1631 if (flags
& NDR_IN
) {
1632 ndr_print_struct(ndr
, "in", "wbint_LookupUserGroups");
1634 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
1636 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
1640 if (flags
& NDR_OUT
) {
1641 ndr_print_struct(ndr
, "out", "wbint_LookupUserGroups");
1643 ndr_print_ptr(ndr
, "sids", r
->out
.sids
);
1645 ndr_print_wbint_SidArray(ndr
, "sids", r
->out
.sids
);
1647 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1653 static enum ndr_err_code
ndr_push_wbint_QuerySequenceNumber(struct ndr_push
*ndr
, int flags
, const struct wbint_QuerySequenceNumber
*r
)
1655 if (flags
& NDR_IN
) {
1657 if (flags
& NDR_OUT
) {
1658 if (r
->out
.sequence
== NULL
) {
1659 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1661 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, *r
->out
.sequence
));
1662 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1664 return NDR_ERR_SUCCESS
;
1667 static enum ndr_err_code
ndr_pull_wbint_QuerySequenceNumber(struct ndr_pull
*ndr
, int flags
, struct wbint_QuerySequenceNumber
*r
)
1669 TALLOC_CTX
*_mem_save_sequence_0
;
1670 if (flags
& NDR_IN
) {
1671 ZERO_STRUCT(r
->out
);
1673 NDR_PULL_ALLOC(ndr
, r
->out
.sequence
);
1674 ZERO_STRUCTP(r
->out
.sequence
);
1676 if (flags
& NDR_OUT
) {
1677 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1678 NDR_PULL_ALLOC(ndr
, r
->out
.sequence
);
1680 _mem_save_sequence_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1681 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.sequence
, LIBNDR_FLAG_REF_ALLOC
);
1682 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, r
->out
.sequence
));
1683 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sequence_0
, LIBNDR_FLAG_REF_ALLOC
);
1684 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1686 return NDR_ERR_SUCCESS
;
1689 _PUBLIC_
void ndr_print_wbint_QuerySequenceNumber(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_QuerySequenceNumber
*r
)
1691 ndr_print_struct(ndr
, name
, "wbint_QuerySequenceNumber");
1693 if (flags
& NDR_SET_VALUES
) {
1694 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1696 if (flags
& NDR_IN
) {
1697 ndr_print_struct(ndr
, "in", "wbint_QuerySequenceNumber");
1701 if (flags
& NDR_OUT
) {
1702 ndr_print_struct(ndr
, "out", "wbint_QuerySequenceNumber");
1704 ndr_print_ptr(ndr
, "sequence", r
->out
.sequence
);
1706 ndr_print_uint32(ndr
, "sequence", *r
->out
.sequence
);
1708 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1714 static enum ndr_err_code
ndr_push_wbint_LookupGroupMembers(struct ndr_push
*ndr
, int flags
, const struct wbint_LookupGroupMembers
*r
)
1716 if (flags
& NDR_IN
) {
1717 if (r
->in
.sid
== NULL
) {
1718 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1720 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1721 NDR_CHECK(ndr_push_lsa_SidType(ndr
, NDR_SCALARS
, r
->in
.type
));
1723 if (flags
& NDR_OUT
) {
1724 if (r
->out
.members
== NULL
) {
1725 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1727 NDR_CHECK(ndr_push_wbint_Principals(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.members
));
1728 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1730 return NDR_ERR_SUCCESS
;
1733 static enum ndr_err_code
ndr_pull_wbint_LookupGroupMembers(struct ndr_pull
*ndr
, int flags
, struct wbint_LookupGroupMembers
*r
)
1735 TALLOC_CTX
*_mem_save_sid_0
;
1736 TALLOC_CTX
*_mem_save_members_0
;
1737 if (flags
& NDR_IN
) {
1738 ZERO_STRUCT(r
->out
);
1740 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1741 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
1743 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1744 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
1745 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
1746 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
1747 NDR_CHECK(ndr_pull_lsa_SidType(ndr
, NDR_SCALARS
, &r
->in
.type
));
1748 NDR_PULL_ALLOC(ndr
, r
->out
.members
);
1749 ZERO_STRUCTP(r
->out
.members
);
1751 if (flags
& NDR_OUT
) {
1752 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1753 NDR_PULL_ALLOC(ndr
, r
->out
.members
);
1755 _mem_save_members_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1756 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.members
, LIBNDR_FLAG_REF_ALLOC
);
1757 NDR_CHECK(ndr_pull_wbint_Principals(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.members
));
1758 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_members_0
, LIBNDR_FLAG_REF_ALLOC
);
1759 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1761 return NDR_ERR_SUCCESS
;
1764 _PUBLIC_
void ndr_print_wbint_LookupGroupMembers(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_LookupGroupMembers
*r
)
1766 ndr_print_struct(ndr
, name
, "wbint_LookupGroupMembers");
1768 if (flags
& NDR_SET_VALUES
) {
1769 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1771 if (flags
& NDR_IN
) {
1772 ndr_print_struct(ndr
, "in", "wbint_LookupGroupMembers");
1774 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
1776 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
1778 ndr_print_lsa_SidType(ndr
, "type", r
->in
.type
);
1781 if (flags
& NDR_OUT
) {
1782 ndr_print_struct(ndr
, "out", "wbint_LookupGroupMembers");
1784 ndr_print_ptr(ndr
, "members", r
->out
.members
);
1786 ndr_print_wbint_Principals(ndr
, "members", r
->out
.members
);
1788 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1794 static enum ndr_err_code
ndr_push_wbint_QueryUserList(struct ndr_push
*ndr
, int flags
, const struct wbint_QueryUserList
*r
)
1796 if (flags
& NDR_IN
) {
1798 if (flags
& NDR_OUT
) {
1799 if (r
->out
.users
== NULL
) {
1800 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1802 NDR_CHECK(ndr_push_wbint_userinfos(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.users
));
1803 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1805 return NDR_ERR_SUCCESS
;
1808 static enum ndr_err_code
ndr_pull_wbint_QueryUserList(struct ndr_pull
*ndr
, int flags
, struct wbint_QueryUserList
*r
)
1810 TALLOC_CTX
*_mem_save_users_0
;
1811 if (flags
& NDR_IN
) {
1812 ZERO_STRUCT(r
->out
);
1814 NDR_PULL_ALLOC(ndr
, r
->out
.users
);
1815 ZERO_STRUCTP(r
->out
.users
);
1817 if (flags
& NDR_OUT
) {
1818 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1819 NDR_PULL_ALLOC(ndr
, r
->out
.users
);
1821 _mem_save_users_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1822 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.users
, LIBNDR_FLAG_REF_ALLOC
);
1823 NDR_CHECK(ndr_pull_wbint_userinfos(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.users
));
1824 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_users_0
, LIBNDR_FLAG_REF_ALLOC
);
1825 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1827 return NDR_ERR_SUCCESS
;
1830 _PUBLIC_
void ndr_print_wbint_QueryUserList(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_QueryUserList
*r
)
1832 ndr_print_struct(ndr
, name
, "wbint_QueryUserList");
1834 if (flags
& NDR_SET_VALUES
) {
1835 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1837 if (flags
& NDR_IN
) {
1838 ndr_print_struct(ndr
, "in", "wbint_QueryUserList");
1842 if (flags
& NDR_OUT
) {
1843 ndr_print_struct(ndr
, "out", "wbint_QueryUserList");
1845 ndr_print_ptr(ndr
, "users", r
->out
.users
);
1847 ndr_print_wbint_userinfos(ndr
, "users", r
->out
.users
);
1849 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1855 static enum ndr_err_code
ndr_push_wbint_QueryGroupList(struct ndr_push
*ndr
, int flags
, const struct wbint_QueryGroupList
*r
)
1857 if (flags
& NDR_IN
) {
1859 if (flags
& NDR_OUT
) {
1860 if (r
->out
.groups
== NULL
) {
1861 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1863 NDR_CHECK(ndr_push_wbint_Principals(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.groups
));
1864 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1866 return NDR_ERR_SUCCESS
;
1869 static enum ndr_err_code
ndr_pull_wbint_QueryGroupList(struct ndr_pull
*ndr
, int flags
, struct wbint_QueryGroupList
*r
)
1871 TALLOC_CTX
*_mem_save_groups_0
;
1872 if (flags
& NDR_IN
) {
1873 ZERO_STRUCT(r
->out
);
1875 NDR_PULL_ALLOC(ndr
, r
->out
.groups
);
1876 ZERO_STRUCTP(r
->out
.groups
);
1878 if (flags
& NDR_OUT
) {
1879 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
1880 NDR_PULL_ALLOC(ndr
, r
->out
.groups
);
1882 _mem_save_groups_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1883 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.groups
, LIBNDR_FLAG_REF_ALLOC
);
1884 NDR_CHECK(ndr_pull_wbint_Principals(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.groups
));
1885 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_groups_0
, LIBNDR_FLAG_REF_ALLOC
);
1886 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
1888 return NDR_ERR_SUCCESS
;
1891 _PUBLIC_
void ndr_print_wbint_QueryGroupList(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_QueryGroupList
*r
)
1893 ndr_print_struct(ndr
, name
, "wbint_QueryGroupList");
1895 if (flags
& NDR_SET_VALUES
) {
1896 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
1898 if (flags
& NDR_IN
) {
1899 ndr_print_struct(ndr
, "in", "wbint_QueryGroupList");
1903 if (flags
& NDR_OUT
) {
1904 ndr_print_struct(ndr
, "out", "wbint_QueryGroupList");
1906 ndr_print_ptr(ndr
, "groups", r
->out
.groups
);
1908 ndr_print_wbint_Principals(ndr
, "groups", r
->out
.groups
);
1910 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
1916 static enum ndr_err_code
ndr_push_wbint_DsGetDcName(struct ndr_push
*ndr
, int flags
, const struct wbint_DsGetDcName
*r
)
1918 if (flags
& NDR_IN
) {
1919 if (r
->in
.domain_name
== NULL
) {
1920 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1922 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.domain_name
, CH_UTF8
)));
1923 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
1924 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.domain_name
, CH_UTF8
)));
1925 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.domain_name
, ndr_charset_length(r
->in
.domain_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
1926 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.domain_guid
));
1927 if (r
->in
.domain_guid
) {
1928 NDR_CHECK(ndr_push_GUID(ndr
, NDR_SCALARS
, r
->in
.domain_guid
));
1930 NDR_CHECK(ndr_push_unique_ptr(ndr
, r
->in
.site_name
));
1931 if (r
->in
.site_name
) {
1932 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.site_name
, CH_UTF8
)));
1933 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, 0));
1934 NDR_CHECK(ndr_push_uint3264(ndr
, NDR_SCALARS
, ndr_charset_length(r
->in
.site_name
, CH_UTF8
)));
1935 NDR_CHECK(ndr_push_charset(ndr
, NDR_SCALARS
, r
->in
.site_name
, ndr_charset_length(r
->in
.site_name
, CH_UTF8
), sizeof(uint8_t), CH_UTF8
));
1937 NDR_CHECK(ndr_push_uint32(ndr
, NDR_SCALARS
, r
->in
.flags
));
1939 if (flags
& NDR_OUT
) {
1940 if (r
->out
.dc_info
== NULL
) {
1941 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
1943 NDR_CHECK(ndr_push_unique_ptr(ndr
, *r
->out
.dc_info
));
1944 if (*r
->out
.dc_info
) {
1945 NDR_CHECK(ndr_push_netr_DsRGetDCNameInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, *r
->out
.dc_info
));
1947 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
1949 return NDR_ERR_SUCCESS
;
1952 static enum ndr_err_code
ndr_pull_wbint_DsGetDcName(struct ndr_pull
*ndr
, int flags
, struct wbint_DsGetDcName
*r
)
1954 uint32_t _ptr_domain_guid
;
1955 uint32_t _ptr_site_name
;
1956 uint32_t _ptr_dc_info
;
1957 TALLOC_CTX
*_mem_save_domain_guid_0
;
1958 TALLOC_CTX
*_mem_save_site_name_0
;
1959 TALLOC_CTX
*_mem_save_dc_info_0
;
1960 TALLOC_CTX
*_mem_save_dc_info_1
;
1961 if (flags
& NDR_IN
) {
1962 ZERO_STRUCT(r
->out
);
1964 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.domain_name
));
1965 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.domain_name
));
1966 if (ndr_get_array_length(ndr
, &r
->in
.domain_name
) > ndr_get_array_size(ndr
, &r
->in
.domain_name
)) {
1967 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
.domain_name
), ndr_get_array_length(ndr
, &r
->in
.domain_name
));
1969 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.domain_name
), sizeof(uint8_t)));
1970 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.domain_name
, ndr_get_array_length(ndr
, &r
->in
.domain_name
), sizeof(uint8_t), CH_UTF8
));
1971 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_domain_guid
));
1972 if (_ptr_domain_guid
) {
1973 NDR_PULL_ALLOC(ndr
, r
->in
.domain_guid
);
1975 r
->in
.domain_guid
= NULL
;
1977 if (r
->in
.domain_guid
) {
1978 _mem_save_domain_guid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1979 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.domain_guid
, 0);
1980 NDR_CHECK(ndr_pull_GUID(ndr
, NDR_SCALARS
, r
->in
.domain_guid
));
1981 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_domain_guid_0
, 0);
1983 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_site_name
));
1984 if (_ptr_site_name
) {
1985 NDR_PULL_ALLOC(ndr
, r
->in
.site_name
);
1987 r
->in
.site_name
= NULL
;
1989 if (r
->in
.site_name
) {
1990 _mem_save_site_name_0
= NDR_PULL_GET_MEM_CTX(ndr
);
1991 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.site_name
, 0);
1992 NDR_CHECK(ndr_pull_array_size(ndr
, &r
->in
.site_name
));
1993 NDR_CHECK(ndr_pull_array_length(ndr
, &r
->in
.site_name
));
1994 if (ndr_get_array_length(ndr
, &r
->in
.site_name
) > ndr_get_array_size(ndr
, &r
->in
.site_name
)) {
1995 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
.site_name
), ndr_get_array_length(ndr
, &r
->in
.site_name
));
1997 NDR_CHECK(ndr_check_string_terminator(ndr
, ndr_get_array_length(ndr
, &r
->in
.site_name
), sizeof(uint8_t)));
1998 NDR_CHECK(ndr_pull_charset(ndr
, NDR_SCALARS
, &r
->in
.site_name
, ndr_get_array_length(ndr
, &r
->in
.site_name
), sizeof(uint8_t), CH_UTF8
));
1999 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_site_name_0
, 0);
2001 NDR_CHECK(ndr_pull_uint32(ndr
, NDR_SCALARS
, &r
->in
.flags
));
2002 NDR_PULL_ALLOC(ndr
, r
->out
.dc_info
);
2003 ZERO_STRUCTP(r
->out
.dc_info
);
2005 if (flags
& NDR_OUT
) {
2006 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2007 NDR_PULL_ALLOC(ndr
, r
->out
.dc_info
);
2009 _mem_save_dc_info_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2010 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.dc_info
, LIBNDR_FLAG_REF_ALLOC
);
2011 NDR_CHECK(ndr_pull_generic_ptr(ndr
, &_ptr_dc_info
));
2013 NDR_PULL_ALLOC(ndr
, *r
->out
.dc_info
);
2015 *r
->out
.dc_info
= NULL
;
2017 if (*r
->out
.dc_info
) {
2018 _mem_save_dc_info_1
= NDR_PULL_GET_MEM_CTX(ndr
);
2019 NDR_PULL_SET_MEM_CTX(ndr
, *r
->out
.dc_info
, 0);
2020 NDR_CHECK(ndr_pull_netr_DsRGetDCNameInfo(ndr
, NDR_SCALARS
|NDR_BUFFERS
, *r
->out
.dc_info
));
2021 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dc_info_1
, 0);
2023 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_dc_info_0
, LIBNDR_FLAG_REF_ALLOC
);
2024 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2026 return NDR_ERR_SUCCESS
;
2029 _PUBLIC_
void ndr_print_wbint_DsGetDcName(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_DsGetDcName
*r
)
2031 ndr_print_struct(ndr
, name
, "wbint_DsGetDcName");
2033 if (flags
& NDR_SET_VALUES
) {
2034 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2036 if (flags
& NDR_IN
) {
2037 ndr_print_struct(ndr
, "in", "wbint_DsGetDcName");
2039 ndr_print_ptr(ndr
, "domain_name", r
->in
.domain_name
);
2041 ndr_print_string(ndr
, "domain_name", r
->in
.domain_name
);
2043 ndr_print_ptr(ndr
, "domain_guid", r
->in
.domain_guid
);
2045 if (r
->in
.domain_guid
) {
2046 ndr_print_GUID(ndr
, "domain_guid", r
->in
.domain_guid
);
2049 ndr_print_ptr(ndr
, "site_name", r
->in
.site_name
);
2051 if (r
->in
.site_name
) {
2052 ndr_print_string(ndr
, "site_name", r
->in
.site_name
);
2055 ndr_print_uint32(ndr
, "flags", r
->in
.flags
);
2058 if (flags
& NDR_OUT
) {
2059 ndr_print_struct(ndr
, "out", "wbint_DsGetDcName");
2061 ndr_print_ptr(ndr
, "dc_info", r
->out
.dc_info
);
2063 ndr_print_ptr(ndr
, "dc_info", *r
->out
.dc_info
);
2065 if (*r
->out
.dc_info
) {
2066 ndr_print_netr_DsRGetDCNameInfo(ndr
, "dc_info", *r
->out
.dc_info
);
2070 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2076 static enum ndr_err_code
ndr_push_wbint_LookupRids(struct ndr_push
*ndr
, int flags
, const struct wbint_LookupRids
*r
)
2078 if (flags
& NDR_IN
) {
2079 if (r
->in
.rids
== NULL
) {
2080 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2082 NDR_CHECK(ndr_push_wbint_RidArray(ndr
, NDR_SCALARS
, r
->in
.rids
));
2084 if (flags
& NDR_OUT
) {
2085 if (r
->out
.names
== NULL
) {
2086 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2088 NDR_CHECK(ndr_push_wbint_Principals(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
2089 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
2091 return NDR_ERR_SUCCESS
;
2094 static enum ndr_err_code
ndr_pull_wbint_LookupRids(struct ndr_pull
*ndr
, int flags
, struct wbint_LookupRids
*r
)
2096 TALLOC_CTX
*_mem_save_rids_0
;
2097 TALLOC_CTX
*_mem_save_names_0
;
2098 if (flags
& NDR_IN
) {
2099 ZERO_STRUCT(r
->out
);
2101 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2102 NDR_PULL_ALLOC(ndr
, r
->in
.rids
);
2104 _mem_save_rids_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2105 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.rids
, LIBNDR_FLAG_REF_ALLOC
);
2106 NDR_CHECK(ndr_pull_wbint_RidArray(ndr
, NDR_SCALARS
, r
->in
.rids
));
2107 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_rids_0
, LIBNDR_FLAG_REF_ALLOC
);
2108 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
2109 ZERO_STRUCTP(r
->out
.names
);
2111 if (flags
& NDR_OUT
) {
2112 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2113 NDR_PULL_ALLOC(ndr
, r
->out
.names
);
2115 _mem_save_names_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2116 NDR_PULL_SET_MEM_CTX(ndr
, r
->out
.names
, LIBNDR_FLAG_REF_ALLOC
);
2117 NDR_CHECK(ndr_pull_wbint_Principals(ndr
, NDR_SCALARS
|NDR_BUFFERS
, r
->out
.names
));
2118 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_names_0
, LIBNDR_FLAG_REF_ALLOC
);
2119 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2121 return NDR_ERR_SUCCESS
;
2124 _PUBLIC_
void ndr_print_wbint_LookupRids(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_LookupRids
*r
)
2126 ndr_print_struct(ndr
, name
, "wbint_LookupRids");
2128 if (flags
& NDR_SET_VALUES
) {
2129 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2131 if (flags
& NDR_IN
) {
2132 ndr_print_struct(ndr
, "in", "wbint_LookupRids");
2134 ndr_print_ptr(ndr
, "rids", r
->in
.rids
);
2136 ndr_print_wbint_RidArray(ndr
, "rids", r
->in
.rids
);
2140 if (flags
& NDR_OUT
) {
2141 ndr_print_struct(ndr
, "out", "wbint_LookupRids");
2143 ndr_print_ptr(ndr
, "names", r
->out
.names
);
2145 ndr_print_wbint_Principals(ndr
, "names", r
->out
.names
);
2147 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2153 static enum ndr_err_code
ndr_push_wbint_CheckMachineAccount(struct ndr_push
*ndr
, int flags
, const struct wbint_CheckMachineAccount
*r
)
2155 if (flags
& NDR_IN
) {
2157 if (flags
& NDR_OUT
) {
2158 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
2160 return NDR_ERR_SUCCESS
;
2163 static enum ndr_err_code
ndr_pull_wbint_CheckMachineAccount(struct ndr_pull
*ndr
, int flags
, struct wbint_CheckMachineAccount
*r
)
2165 if (flags
& NDR_IN
) {
2167 if (flags
& NDR_OUT
) {
2168 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2170 return NDR_ERR_SUCCESS
;
2173 _PUBLIC_
void ndr_print_wbint_CheckMachineAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_CheckMachineAccount
*r
)
2175 ndr_print_struct(ndr
, name
, "wbint_CheckMachineAccount");
2177 if (flags
& NDR_SET_VALUES
) {
2178 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2180 if (flags
& NDR_IN
) {
2181 ndr_print_struct(ndr
, "in", "wbint_CheckMachineAccount");
2185 if (flags
& NDR_OUT
) {
2186 ndr_print_struct(ndr
, "out", "wbint_CheckMachineAccount");
2188 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2194 static enum ndr_err_code
ndr_push_wbint_ChangeMachineAccount(struct ndr_push
*ndr
, int flags
, const struct wbint_ChangeMachineAccount
*r
)
2196 if (flags
& NDR_IN
) {
2198 if (flags
& NDR_OUT
) {
2199 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
2201 return NDR_ERR_SUCCESS
;
2204 static enum ndr_err_code
ndr_pull_wbint_ChangeMachineAccount(struct ndr_pull
*ndr
, int flags
, struct wbint_ChangeMachineAccount
*r
)
2206 if (flags
& NDR_IN
) {
2208 if (flags
& NDR_OUT
) {
2209 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2211 return NDR_ERR_SUCCESS
;
2214 _PUBLIC_
void ndr_print_wbint_ChangeMachineAccount(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_ChangeMachineAccount
*r
)
2216 ndr_print_struct(ndr
, name
, "wbint_ChangeMachineAccount");
2218 if (flags
& NDR_SET_VALUES
) {
2219 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2221 if (flags
& NDR_IN
) {
2222 ndr_print_struct(ndr
, "in", "wbint_ChangeMachineAccount");
2226 if (flags
& NDR_OUT
) {
2227 ndr_print_struct(ndr
, "out", "wbint_ChangeMachineAccount");
2229 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2235 static enum ndr_err_code
ndr_push_wbint_SetMapping(struct ndr_push
*ndr
, int flags
, const struct wbint_SetMapping
*r
)
2237 if (flags
& NDR_IN
) {
2238 if (r
->in
.sid
== NULL
) {
2239 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2241 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
2242 NDR_CHECK(ndr_push_wbint_IdType(ndr
, NDR_SCALARS
, r
->in
.type
));
2243 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->in
.id
));
2245 if (flags
& NDR_OUT
) {
2246 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
2248 return NDR_ERR_SUCCESS
;
2251 static enum ndr_err_code
ndr_pull_wbint_SetMapping(struct ndr_pull
*ndr
, int flags
, struct wbint_SetMapping
*r
)
2253 TALLOC_CTX
*_mem_save_sid_0
;
2254 if (flags
& NDR_IN
) {
2255 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2256 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
2258 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2259 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
2260 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
2261 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
2262 NDR_CHECK(ndr_pull_wbint_IdType(ndr
, NDR_SCALARS
, &r
->in
.type
));
2263 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->in
.id
));
2265 if (flags
& NDR_OUT
) {
2266 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2268 return NDR_ERR_SUCCESS
;
2271 _PUBLIC_
void ndr_print_wbint_SetMapping(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_SetMapping
*r
)
2273 ndr_print_struct(ndr
, name
, "wbint_SetMapping");
2275 if (flags
& NDR_SET_VALUES
) {
2276 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2278 if (flags
& NDR_IN
) {
2279 ndr_print_struct(ndr
, "in", "wbint_SetMapping");
2281 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
2283 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
2285 ndr_print_wbint_IdType(ndr
, "type", r
->in
.type
);
2286 ndr_print_hyper(ndr
, "id", r
->in
.id
);
2289 if (flags
& NDR_OUT
) {
2290 ndr_print_struct(ndr
, "out", "wbint_SetMapping");
2292 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2298 static enum ndr_err_code
ndr_push_wbint_RemoveMapping(struct ndr_push
*ndr
, int flags
, const struct wbint_RemoveMapping
*r
)
2300 if (flags
& NDR_IN
) {
2301 if (r
->in
.sid
== NULL
) {
2302 return ndr_push_error(ndr
, NDR_ERR_INVALID_POINTER
, "NULL [ref] pointer");
2304 NDR_CHECK(ndr_push_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
2305 NDR_CHECK(ndr_push_wbint_IdType(ndr
, NDR_SCALARS
, r
->in
.type
));
2306 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->in
.id
));
2308 if (flags
& NDR_OUT
) {
2309 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
2311 return NDR_ERR_SUCCESS
;
2314 static enum ndr_err_code
ndr_pull_wbint_RemoveMapping(struct ndr_pull
*ndr
, int flags
, struct wbint_RemoveMapping
*r
)
2316 TALLOC_CTX
*_mem_save_sid_0
;
2317 if (flags
& NDR_IN
) {
2318 if (ndr
->flags
& LIBNDR_FLAG_REF_ALLOC
) {
2319 NDR_PULL_ALLOC(ndr
, r
->in
.sid
);
2321 _mem_save_sid_0
= NDR_PULL_GET_MEM_CTX(ndr
);
2322 NDR_PULL_SET_MEM_CTX(ndr
, r
->in
.sid
, LIBNDR_FLAG_REF_ALLOC
);
2323 NDR_CHECK(ndr_pull_dom_sid(ndr
, NDR_SCALARS
, r
->in
.sid
));
2324 NDR_PULL_SET_MEM_CTX(ndr
, _mem_save_sid_0
, LIBNDR_FLAG_REF_ALLOC
);
2325 NDR_CHECK(ndr_pull_wbint_IdType(ndr
, NDR_SCALARS
, &r
->in
.type
));
2326 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->in
.id
));
2328 if (flags
& NDR_OUT
) {
2329 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2331 return NDR_ERR_SUCCESS
;
2334 _PUBLIC_
void ndr_print_wbint_RemoveMapping(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_RemoveMapping
*r
)
2336 ndr_print_struct(ndr
, name
, "wbint_RemoveMapping");
2338 if (flags
& NDR_SET_VALUES
) {
2339 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2341 if (flags
& NDR_IN
) {
2342 ndr_print_struct(ndr
, "in", "wbint_RemoveMapping");
2344 ndr_print_ptr(ndr
, "sid", r
->in
.sid
);
2346 ndr_print_dom_sid(ndr
, "sid", r
->in
.sid
);
2348 ndr_print_wbint_IdType(ndr
, "type", r
->in
.type
);
2349 ndr_print_hyper(ndr
, "id", r
->in
.id
);
2352 if (flags
& NDR_OUT
) {
2353 ndr_print_struct(ndr
, "out", "wbint_RemoveMapping");
2355 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2361 static enum ndr_err_code
ndr_push_wbint_SetHWM(struct ndr_push
*ndr
, int flags
, const struct wbint_SetHWM
*r
)
2363 if (flags
& NDR_IN
) {
2364 NDR_CHECK(ndr_push_wbint_IdType(ndr
, NDR_SCALARS
, r
->in
.type
));
2365 NDR_CHECK(ndr_push_hyper(ndr
, NDR_SCALARS
, r
->in
.id
));
2367 if (flags
& NDR_OUT
) {
2368 NDR_CHECK(ndr_push_NTSTATUS(ndr
, NDR_SCALARS
, r
->out
.result
));
2370 return NDR_ERR_SUCCESS
;
2373 static enum ndr_err_code
ndr_pull_wbint_SetHWM(struct ndr_pull
*ndr
, int flags
, struct wbint_SetHWM
*r
)
2375 if (flags
& NDR_IN
) {
2376 NDR_CHECK(ndr_pull_wbint_IdType(ndr
, NDR_SCALARS
, &r
->in
.type
));
2377 NDR_CHECK(ndr_pull_hyper(ndr
, NDR_SCALARS
, &r
->in
.id
));
2379 if (flags
& NDR_OUT
) {
2380 NDR_CHECK(ndr_pull_NTSTATUS(ndr
, NDR_SCALARS
, &r
->out
.result
));
2382 return NDR_ERR_SUCCESS
;
2385 _PUBLIC_
void ndr_print_wbint_SetHWM(struct ndr_print
*ndr
, const char *name
, int flags
, const struct wbint_SetHWM
*r
)
2387 ndr_print_struct(ndr
, name
, "wbint_SetHWM");
2389 if (flags
& NDR_SET_VALUES
) {
2390 ndr
->flags
|= LIBNDR_PRINT_SET_VALUES
;
2392 if (flags
& NDR_IN
) {
2393 ndr_print_struct(ndr
, "in", "wbint_SetHWM");
2395 ndr_print_wbint_IdType(ndr
, "type", r
->in
.type
);
2396 ndr_print_hyper(ndr
, "id", r
->in
.id
);
2399 if (flags
& NDR_OUT
) {
2400 ndr_print_struct(ndr
, "out", "wbint_SetHWM");
2402 ndr_print_NTSTATUS(ndr
, "result", r
->out
.result
);
2408 static const struct ndr_interface_call wbint_calls
[] = {
2411 sizeof(struct wbint_Ping
),
2412 (ndr_push_flags_fn_t
) ndr_push_wbint_Ping
,
2413 (ndr_pull_flags_fn_t
) ndr_pull_wbint_Ping
,
2414 (ndr_print_function_t
) ndr_print_wbint_Ping
,
2419 sizeof(struct wbint_LookupSid
),
2420 (ndr_push_flags_fn_t
) ndr_push_wbint_LookupSid
,
2421 (ndr_pull_flags_fn_t
) ndr_pull_wbint_LookupSid
,
2422 (ndr_print_function_t
) ndr_print_wbint_LookupSid
,
2427 sizeof(struct wbint_LookupName
),
2428 (ndr_push_flags_fn_t
) ndr_push_wbint_LookupName
,
2429 (ndr_pull_flags_fn_t
) ndr_pull_wbint_LookupName
,
2430 (ndr_print_function_t
) ndr_print_wbint_LookupName
,
2435 sizeof(struct wbint_Sid2Uid
),
2436 (ndr_push_flags_fn_t
) ndr_push_wbint_Sid2Uid
,
2437 (ndr_pull_flags_fn_t
) ndr_pull_wbint_Sid2Uid
,
2438 (ndr_print_function_t
) ndr_print_wbint_Sid2Uid
,
2443 sizeof(struct wbint_Sid2Gid
),
2444 (ndr_push_flags_fn_t
) ndr_push_wbint_Sid2Gid
,
2445 (ndr_pull_flags_fn_t
) ndr_pull_wbint_Sid2Gid
,
2446 (ndr_print_function_t
) ndr_print_wbint_Sid2Gid
,
2451 sizeof(struct wbint_Uid2Sid
),
2452 (ndr_push_flags_fn_t
) ndr_push_wbint_Uid2Sid
,
2453 (ndr_pull_flags_fn_t
) ndr_pull_wbint_Uid2Sid
,
2454 (ndr_print_function_t
) ndr_print_wbint_Uid2Sid
,
2459 sizeof(struct wbint_Gid2Sid
),
2460 (ndr_push_flags_fn_t
) ndr_push_wbint_Gid2Sid
,
2461 (ndr_pull_flags_fn_t
) ndr_pull_wbint_Gid2Sid
,
2462 (ndr_print_function_t
) ndr_print_wbint_Gid2Sid
,
2466 "wbint_AllocateUid",
2467 sizeof(struct wbint_AllocateUid
),
2468 (ndr_push_flags_fn_t
) ndr_push_wbint_AllocateUid
,
2469 (ndr_pull_flags_fn_t
) ndr_pull_wbint_AllocateUid
,
2470 (ndr_print_function_t
) ndr_print_wbint_AllocateUid
,
2474 "wbint_AllocateGid",
2475 sizeof(struct wbint_AllocateGid
),
2476 (ndr_push_flags_fn_t
) ndr_push_wbint_AllocateGid
,
2477 (ndr_pull_flags_fn_t
) ndr_pull_wbint_AllocateGid
,
2478 (ndr_print_function_t
) ndr_print_wbint_AllocateGid
,
2483 sizeof(struct wbint_QueryUser
),
2484 (ndr_push_flags_fn_t
) ndr_push_wbint_QueryUser
,
2485 (ndr_pull_flags_fn_t
) ndr_pull_wbint_QueryUser
,
2486 (ndr_print_function_t
) ndr_print_wbint_QueryUser
,
2490 "wbint_LookupUserAliases",
2491 sizeof(struct wbint_LookupUserAliases
),
2492 (ndr_push_flags_fn_t
) ndr_push_wbint_LookupUserAliases
,
2493 (ndr_pull_flags_fn_t
) ndr_pull_wbint_LookupUserAliases
,
2494 (ndr_print_function_t
) ndr_print_wbint_LookupUserAliases
,
2498 "wbint_LookupUserGroups",
2499 sizeof(struct wbint_LookupUserGroups
),
2500 (ndr_push_flags_fn_t
) ndr_push_wbint_LookupUserGroups
,
2501 (ndr_pull_flags_fn_t
) ndr_pull_wbint_LookupUserGroups
,
2502 (ndr_print_function_t
) ndr_print_wbint_LookupUserGroups
,
2506 "wbint_QuerySequenceNumber",
2507 sizeof(struct wbint_QuerySequenceNumber
),
2508 (ndr_push_flags_fn_t
) ndr_push_wbint_QuerySequenceNumber
,
2509 (ndr_pull_flags_fn_t
) ndr_pull_wbint_QuerySequenceNumber
,
2510 (ndr_print_function_t
) ndr_print_wbint_QuerySequenceNumber
,
2514 "wbint_LookupGroupMembers",
2515 sizeof(struct wbint_LookupGroupMembers
),
2516 (ndr_push_flags_fn_t
) ndr_push_wbint_LookupGroupMembers
,
2517 (ndr_pull_flags_fn_t
) ndr_pull_wbint_LookupGroupMembers
,
2518 (ndr_print_function_t
) ndr_print_wbint_LookupGroupMembers
,
2522 "wbint_QueryUserList",
2523 sizeof(struct wbint_QueryUserList
),
2524 (ndr_push_flags_fn_t
) ndr_push_wbint_QueryUserList
,
2525 (ndr_pull_flags_fn_t
) ndr_pull_wbint_QueryUserList
,
2526 (ndr_print_function_t
) ndr_print_wbint_QueryUserList
,
2530 "wbint_QueryGroupList",
2531 sizeof(struct wbint_QueryGroupList
),
2532 (ndr_push_flags_fn_t
) ndr_push_wbint_QueryGroupList
,
2533 (ndr_pull_flags_fn_t
) ndr_pull_wbint_QueryGroupList
,
2534 (ndr_print_function_t
) ndr_print_wbint_QueryGroupList
,
2538 "wbint_DsGetDcName",
2539 sizeof(struct wbint_DsGetDcName
),
2540 (ndr_push_flags_fn_t
) ndr_push_wbint_DsGetDcName
,
2541 (ndr_pull_flags_fn_t
) ndr_pull_wbint_DsGetDcName
,
2542 (ndr_print_function_t
) ndr_print_wbint_DsGetDcName
,
2547 sizeof(struct wbint_LookupRids
),
2548 (ndr_push_flags_fn_t
) ndr_push_wbint_LookupRids
,
2549 (ndr_pull_flags_fn_t
) ndr_pull_wbint_LookupRids
,
2550 (ndr_print_function_t
) ndr_print_wbint_LookupRids
,
2554 "wbint_CheckMachineAccount",
2555 sizeof(struct wbint_CheckMachineAccount
),
2556 (ndr_push_flags_fn_t
) ndr_push_wbint_CheckMachineAccount
,
2557 (ndr_pull_flags_fn_t
) ndr_pull_wbint_CheckMachineAccount
,
2558 (ndr_print_function_t
) ndr_print_wbint_CheckMachineAccount
,
2562 "wbint_ChangeMachineAccount",
2563 sizeof(struct wbint_ChangeMachineAccount
),
2564 (ndr_push_flags_fn_t
) ndr_push_wbint_ChangeMachineAccount
,
2565 (ndr_pull_flags_fn_t
) ndr_pull_wbint_ChangeMachineAccount
,
2566 (ndr_print_function_t
) ndr_print_wbint_ChangeMachineAccount
,
2571 sizeof(struct wbint_SetMapping
),
2572 (ndr_push_flags_fn_t
) ndr_push_wbint_SetMapping
,
2573 (ndr_pull_flags_fn_t
) ndr_pull_wbint_SetMapping
,
2574 (ndr_print_function_t
) ndr_print_wbint_SetMapping
,
2578 "wbint_RemoveMapping",
2579 sizeof(struct wbint_RemoveMapping
),
2580 (ndr_push_flags_fn_t
) ndr_push_wbint_RemoveMapping
,
2581 (ndr_pull_flags_fn_t
) ndr_pull_wbint_RemoveMapping
,
2582 (ndr_print_function_t
) ndr_print_wbint_RemoveMapping
,
2587 sizeof(struct wbint_SetHWM
),
2588 (ndr_push_flags_fn_t
) ndr_push_wbint_SetHWM
,
2589 (ndr_pull_flags_fn_t
) ndr_pull_wbint_SetHWM
,
2590 (ndr_print_function_t
) ndr_print_wbint_SetHWM
,
2593 { NULL
, 0, NULL
, NULL
, NULL
, false }
2596 static const char * const wbint_endpoint_strings
[] = {
2600 static const struct ndr_interface_string_array wbint_endpoints
= {
2602 .names
= wbint_endpoint_strings
2605 static const char * const wbint_authservice_strings
[] = {
2609 static const struct ndr_interface_string_array wbint_authservices
= {
2611 .names
= wbint_authservice_strings
2615 const struct ndr_interface_table ndr_table_wbint
= {
2618 {0xbf09192c,0xed60,0x4928,{0x9d,0xff},{0xd0,0xd7,0xbc,0xb0,0x3e,0xd8}},
2621 .helpstring
= NDR_WBINT_HELPSTRING
,
2623 .calls
= wbint_calls
,
2624 .endpoints
= &wbint_endpoints
,
2625 .authservices
= &wbint_authservices