s3-passdb: Fix typo in debug message.
[Samba/gebeck_regimport.git] / librpc / gen_ndr / ndr_krb5pac.c
blob399106485b69415b1ff3826e5b13b0d4ea91f9fa
1 /* parser auto-generated by pidl */
3 #include "includes.h"
4 #include "../librpc/gen_ndr/ndr_krb5pac.h"
6 #include "librpc/gen_ndr/ndr_security.h"
7 #include "librpc/gen_ndr/ndr_netlogon.h"
8 #include "librpc/gen_ndr/ndr_samr.h"
9 static enum ndr_err_code ndr_push_PAC_LOGON_NAME(struct ndr_push *ndr, int ndr_flags, const struct PAC_LOGON_NAME *r)
11 if (ndr_flags & NDR_SCALARS) {
12 NDR_CHECK(ndr_push_align(ndr, 4));
13 NDR_CHECK(ndr_push_NTTIME(ndr, NDR_SCALARS, r->logon_time));
14 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->account_name)));
15 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->account_name, 2 * strlen_m(r->account_name), sizeof(uint8_t), CH_UTF16));
16 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
18 if (ndr_flags & NDR_BUFFERS) {
20 return NDR_ERR_SUCCESS;
23 static enum ndr_err_code ndr_pull_PAC_LOGON_NAME(struct ndr_pull *ndr, int ndr_flags, struct PAC_LOGON_NAME *r)
25 if (ndr_flags & NDR_SCALARS) {
26 NDR_CHECK(ndr_pull_align(ndr, 4));
27 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->logon_time));
28 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
29 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->account_name, r->size, sizeof(uint8_t), CH_UTF16));
30 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
32 if (ndr_flags & NDR_BUFFERS) {
34 return NDR_ERR_SUCCESS;
37 _PUBLIC_ void ndr_print_PAC_LOGON_NAME(struct ndr_print *ndr, const char *name, const struct PAC_LOGON_NAME *r)
39 ndr_print_struct(ndr, name, "PAC_LOGON_NAME");
40 ndr->depth++;
41 ndr_print_NTTIME(ndr, "logon_time", r->logon_time);
42 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->account_name):r->size);
43 ndr_print_string(ndr, "account_name", r->account_name);
44 ndr->depth--;
47 _PUBLIC_ enum ndr_err_code ndr_push_PAC_SIGNATURE_DATA(struct ndr_push *ndr, int ndr_flags, const struct PAC_SIGNATURE_DATA *r)
50 uint32_t _flags_save_STRUCT = ndr->flags;
51 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
52 if (ndr_flags & NDR_SCALARS) {
53 NDR_CHECK(ndr_push_align(ndr, 4));
54 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->type));
56 uint32_t _flags_save_DATA_BLOB = ndr->flags;
57 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
58 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->signature));
59 ndr->flags = _flags_save_DATA_BLOB;
61 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
63 if (ndr_flags & NDR_BUFFERS) {
65 ndr->flags = _flags_save_STRUCT;
67 return NDR_ERR_SUCCESS;
70 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_SIGNATURE_DATA(struct ndr_pull *ndr, int ndr_flags, struct PAC_SIGNATURE_DATA *r)
73 uint32_t _flags_save_STRUCT = ndr->flags;
74 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
75 if (ndr_flags & NDR_SCALARS) {
76 NDR_CHECK(ndr_pull_align(ndr, 4));
77 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->type));
79 uint32_t _flags_save_DATA_BLOB = ndr->flags;
80 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
81 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->signature));
82 ndr->flags = _flags_save_DATA_BLOB;
84 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
86 if (ndr_flags & NDR_BUFFERS) {
88 ndr->flags = _flags_save_STRUCT;
90 return NDR_ERR_SUCCESS;
93 _PUBLIC_ void ndr_print_PAC_SIGNATURE_DATA(struct ndr_print *ndr, const char *name, const struct PAC_SIGNATURE_DATA *r)
95 ndr_print_struct(ndr, name, "PAC_SIGNATURE_DATA");
97 uint32_t _flags_save_STRUCT = ndr->flags;
98 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
99 ndr->depth++;
100 ndr_print_uint32(ndr, "type", r->type);
101 ndr_print_DATA_BLOB(ndr, "signature", r->signature);
102 ndr->depth--;
103 ndr->flags = _flags_save_STRUCT;
107 static enum ndr_err_code ndr_push_PAC_LOGON_INFO(struct ndr_push *ndr, int ndr_flags, const struct PAC_LOGON_INFO *r)
109 if (ndr_flags & NDR_SCALARS) {
110 NDR_CHECK(ndr_push_align(ndr, 5));
111 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
112 NDR_CHECK(ndr_push_unique_ptr(ndr, r->res_group_dom_sid));
113 NDR_CHECK(ndr_push_samr_RidWithAttributeArray(ndr, NDR_SCALARS, &r->res_groups));
114 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
116 if (ndr_flags & NDR_BUFFERS) {
117 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
118 if (r->res_group_dom_sid) {
119 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->res_group_dom_sid));
121 NDR_CHECK(ndr_push_samr_RidWithAttributeArray(ndr, NDR_BUFFERS, &r->res_groups));
123 return NDR_ERR_SUCCESS;
126 static enum ndr_err_code ndr_pull_PAC_LOGON_INFO(struct ndr_pull *ndr, int ndr_flags, struct PAC_LOGON_INFO *r)
128 uint32_t _ptr_res_group_dom_sid;
129 TALLOC_CTX *_mem_save_res_group_dom_sid_0;
130 if (ndr_flags & NDR_SCALARS) {
131 NDR_CHECK(ndr_pull_align(ndr, 5));
132 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
133 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_res_group_dom_sid));
134 if (_ptr_res_group_dom_sid) {
135 NDR_PULL_ALLOC(ndr, r->res_group_dom_sid);
136 } else {
137 r->res_group_dom_sid = NULL;
139 NDR_CHECK(ndr_pull_samr_RidWithAttributeArray(ndr, NDR_SCALARS, &r->res_groups));
140 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
142 if (ndr_flags & NDR_BUFFERS) {
143 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
144 if (r->res_group_dom_sid) {
145 _mem_save_res_group_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
146 NDR_PULL_SET_MEM_CTX(ndr, r->res_group_dom_sid, 0);
147 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->res_group_dom_sid));
148 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_res_group_dom_sid_0, 0);
150 NDR_CHECK(ndr_pull_samr_RidWithAttributeArray(ndr, NDR_BUFFERS, &r->res_groups));
152 return NDR_ERR_SUCCESS;
155 _PUBLIC_ void ndr_print_PAC_LOGON_INFO(struct ndr_print *ndr, const char *name, const struct PAC_LOGON_INFO *r)
157 ndr_print_struct(ndr, name, "PAC_LOGON_INFO");
158 ndr->depth++;
159 ndr_print_netr_SamInfo3(ndr, "info3", &r->info3);
160 ndr_print_ptr(ndr, "res_group_dom_sid", r->res_group_dom_sid);
161 ndr->depth++;
162 if (r->res_group_dom_sid) {
163 ndr_print_dom_sid2(ndr, "res_group_dom_sid", r->res_group_dom_sid);
165 ndr->depth--;
166 ndr_print_samr_RidWithAttributeArray(ndr, "res_groups", &r->res_groups);
167 ndr->depth--;
170 _PUBLIC_ enum ndr_err_code ndr_push_PAC_LOGON_INFO_CTR(struct ndr_push *ndr, int ndr_flags, const struct PAC_LOGON_INFO_CTR *r)
172 if (ndr_flags & NDR_SCALARS) {
173 NDR_CHECK(ndr_push_align(ndr, 5));
174 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info));
175 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
177 if (ndr_flags & NDR_BUFFERS) {
178 if (r->info) {
179 NDR_CHECK(ndr_push_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
182 return NDR_ERR_SUCCESS;
185 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_LOGON_INFO_CTR(struct ndr_pull *ndr, int ndr_flags, struct PAC_LOGON_INFO_CTR *r)
187 uint32_t _ptr_info;
188 TALLOC_CTX *_mem_save_info_0;
189 if (ndr_flags & NDR_SCALARS) {
190 NDR_CHECK(ndr_pull_align(ndr, 5));
191 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
192 if (_ptr_info) {
193 NDR_PULL_ALLOC(ndr, r->info);
194 } else {
195 r->info = NULL;
197 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
199 if (ndr_flags & NDR_BUFFERS) {
200 if (r->info) {
201 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
202 NDR_PULL_SET_MEM_CTX(ndr, r->info, 0);
203 NDR_CHECK(ndr_pull_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
204 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
207 return NDR_ERR_SUCCESS;
210 _PUBLIC_ void ndr_print_PAC_LOGON_INFO_CTR(struct ndr_print *ndr, const char *name, const struct PAC_LOGON_INFO_CTR *r)
212 ndr_print_struct(ndr, name, "PAC_LOGON_INFO_CTR");
213 ndr->depth++;
214 ndr_print_ptr(ndr, "info", r->info);
215 ndr->depth++;
216 if (r->info) {
217 ndr_print_PAC_LOGON_INFO(ndr, "info", r->info);
219 ndr->depth--;
220 ndr->depth--;
223 _PUBLIC_ enum ndr_err_code ndr_push_PAC_TYPE(struct ndr_push *ndr, int ndr_flags, enum PAC_TYPE r)
225 NDR_CHECK(ndr_push_enum_uint32(ndr, NDR_SCALARS, r));
226 return NDR_ERR_SUCCESS;
229 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_TYPE(struct ndr_pull *ndr, int ndr_flags, enum PAC_TYPE *r)
231 uint32_t v;
232 NDR_CHECK(ndr_pull_enum_uint32(ndr, NDR_SCALARS, &v));
233 *r = v;
234 return NDR_ERR_SUCCESS;
237 _PUBLIC_ void ndr_print_PAC_TYPE(struct ndr_print *ndr, const char *name, enum PAC_TYPE r)
239 const char *val = NULL;
241 switch (r) {
242 case PAC_TYPE_LOGON_INFO: val = "PAC_TYPE_LOGON_INFO"; break;
243 case PAC_TYPE_SRV_CHECKSUM: val = "PAC_TYPE_SRV_CHECKSUM"; break;
244 case PAC_TYPE_KDC_CHECKSUM: val = "PAC_TYPE_KDC_CHECKSUM"; break;
245 case PAC_TYPE_LOGON_NAME: val = "PAC_TYPE_LOGON_NAME"; break;
246 case PAC_TYPE_CONSTRAINED_DELEGATION: val = "PAC_TYPE_CONSTRAINED_DELEGATION"; break;
247 case PAC_TYPE_UNKNOWN_12: val = "PAC_TYPE_UNKNOWN_12"; break;
249 ndr_print_enum(ndr, name, "ENUM", val, r);
252 static enum ndr_err_code ndr_push_DATA_BLOB_REM(struct ndr_push *ndr, int ndr_flags, const struct DATA_BLOB_REM *r)
254 if (ndr_flags & NDR_SCALARS) {
255 NDR_CHECK(ndr_push_align(ndr, 4));
257 uint32_t _flags_save_DATA_BLOB = ndr->flags;
258 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
259 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->remaining));
260 ndr->flags = _flags_save_DATA_BLOB;
262 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
264 if (ndr_flags & NDR_BUFFERS) {
266 return NDR_ERR_SUCCESS;
269 static enum ndr_err_code ndr_pull_DATA_BLOB_REM(struct ndr_pull *ndr, int ndr_flags, struct DATA_BLOB_REM *r)
271 if (ndr_flags & NDR_SCALARS) {
272 NDR_CHECK(ndr_pull_align(ndr, 4));
274 uint32_t _flags_save_DATA_BLOB = ndr->flags;
275 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
276 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->remaining));
277 ndr->flags = _flags_save_DATA_BLOB;
279 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
281 if (ndr_flags & NDR_BUFFERS) {
283 return NDR_ERR_SUCCESS;
286 _PUBLIC_ void ndr_print_DATA_BLOB_REM(struct ndr_print *ndr, const char *name, const struct DATA_BLOB_REM *r)
288 ndr_print_struct(ndr, name, "DATA_BLOB_REM");
289 ndr->depth++;
290 ndr_print_DATA_BLOB(ndr, "remaining", r->remaining);
291 ndr->depth--;
294 _PUBLIC_ enum ndr_err_code ndr_push_PAC_INFO(struct ndr_push *ndr, int ndr_flags, const union PAC_INFO *r)
296 if (ndr_flags & NDR_SCALARS) {
297 int level = ndr_push_get_switch_value(ndr, r);
298 NDR_CHECK(ndr_push_union_align(ndr, 4));
299 switch (level) {
300 case PAC_TYPE_LOGON_INFO: {
302 struct ndr_push *_ndr_logon_info;
303 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_logon_info, 0xFFFFFC01, -1));
304 NDR_CHECK(ndr_push_PAC_LOGON_INFO_CTR(_ndr_logon_info, NDR_SCALARS|NDR_BUFFERS, &r->logon_info));
305 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_logon_info, 0xFFFFFC01, -1));
307 break; }
309 case PAC_TYPE_SRV_CHECKSUM: {
310 NDR_CHECK(ndr_push_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->srv_cksum));
311 break; }
313 case PAC_TYPE_KDC_CHECKSUM: {
314 NDR_CHECK(ndr_push_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->kdc_cksum));
315 break; }
317 case PAC_TYPE_LOGON_NAME: {
318 NDR_CHECK(ndr_push_PAC_LOGON_NAME(ndr, NDR_SCALARS, &r->logon_name));
319 break; }
321 default: {
323 struct ndr_push *_ndr_unknown;
324 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_unknown, 0, -1));
325 NDR_CHECK(ndr_push_DATA_BLOB_REM(_ndr_unknown, NDR_SCALARS, &r->unknown));
326 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_unknown, 0, -1));
328 break; }
332 if (ndr_flags & NDR_BUFFERS) {
333 int level = ndr_push_get_switch_value(ndr, r);
334 switch (level) {
335 case PAC_TYPE_LOGON_INFO:
336 break;
338 case PAC_TYPE_SRV_CHECKSUM:
339 break;
341 case PAC_TYPE_KDC_CHECKSUM:
342 break;
344 case PAC_TYPE_LOGON_NAME:
345 break;
347 default:
348 break;
352 return NDR_ERR_SUCCESS;
355 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_INFO(struct ndr_pull *ndr, int ndr_flags, union PAC_INFO *r)
357 int level;
358 level = ndr_pull_get_switch_value(ndr, r);
359 if (ndr_flags & NDR_SCALARS) {
360 NDR_CHECK(ndr_pull_union_align(ndr, 4));
361 switch (level) {
362 case PAC_TYPE_LOGON_INFO: {
364 struct ndr_pull *_ndr_logon_info;
365 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_logon_info, 0xFFFFFC01, -1));
366 NDR_CHECK(ndr_pull_PAC_LOGON_INFO_CTR(_ndr_logon_info, NDR_SCALARS|NDR_BUFFERS, &r->logon_info));
367 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_logon_info, 0xFFFFFC01, -1));
369 break; }
371 case PAC_TYPE_SRV_CHECKSUM: {
372 NDR_CHECK(ndr_pull_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->srv_cksum));
373 break; }
375 case PAC_TYPE_KDC_CHECKSUM: {
376 NDR_CHECK(ndr_pull_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->kdc_cksum));
377 break; }
379 case PAC_TYPE_LOGON_NAME: {
380 NDR_CHECK(ndr_pull_PAC_LOGON_NAME(ndr, NDR_SCALARS, &r->logon_name));
381 break; }
383 default: {
385 struct ndr_pull *_ndr_unknown;
386 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_unknown, 0, -1));
387 NDR_CHECK(ndr_pull_DATA_BLOB_REM(_ndr_unknown, NDR_SCALARS, &r->unknown));
388 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_unknown, 0, -1));
390 break; }
394 if (ndr_flags & NDR_BUFFERS) {
395 switch (level) {
396 case PAC_TYPE_LOGON_INFO:
397 break;
399 case PAC_TYPE_SRV_CHECKSUM:
400 break;
402 case PAC_TYPE_KDC_CHECKSUM:
403 break;
405 case PAC_TYPE_LOGON_NAME:
406 break;
408 default:
409 break;
413 return NDR_ERR_SUCCESS;
416 _PUBLIC_ void ndr_print_PAC_INFO(struct ndr_print *ndr, const char *name, const union PAC_INFO *r)
418 int level;
419 level = ndr_print_get_switch_value(ndr, r);
420 ndr_print_union(ndr, name, level, "PAC_INFO");
421 switch (level) {
422 case PAC_TYPE_LOGON_INFO:
423 ndr_print_PAC_LOGON_INFO_CTR(ndr, "logon_info", &r->logon_info);
424 break;
426 case PAC_TYPE_SRV_CHECKSUM:
427 ndr_print_PAC_SIGNATURE_DATA(ndr, "srv_cksum", &r->srv_cksum);
428 break;
430 case PAC_TYPE_KDC_CHECKSUM:
431 ndr_print_PAC_SIGNATURE_DATA(ndr, "kdc_cksum", &r->kdc_cksum);
432 break;
434 case PAC_TYPE_LOGON_NAME:
435 ndr_print_PAC_LOGON_NAME(ndr, "logon_name", &r->logon_name);
436 break;
438 default:
439 ndr_print_DATA_BLOB_REM(ndr, "unknown", &r->unknown);
440 break;
445 _PUBLIC_ size_t ndr_size_PAC_INFO(const union PAC_INFO *r, uint32_t level, struct smb_iconv_convenience *ic, int flags)
447 return ndr_size_union(r, flags, level, (ndr_push_flags_fn_t)ndr_push_PAC_INFO, ic);
450 _PUBLIC_ enum ndr_err_code ndr_push_PAC_DATA(struct ndr_push *ndr, int ndr_flags, const struct PAC_DATA *r)
452 uint32_t cntr_buffers_0;
453 if (ndr_flags & NDR_SCALARS) {
454 NDR_CHECK(ndr_push_align(ndr, 5));
455 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_buffers));
456 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
457 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
458 NDR_CHECK(ndr_push_PAC_BUFFER(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
460 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
462 if (ndr_flags & NDR_BUFFERS) {
463 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
464 NDR_CHECK(ndr_push_PAC_BUFFER(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
467 return NDR_ERR_SUCCESS;
470 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_DATA(struct ndr_pull *ndr, int ndr_flags, struct PAC_DATA *r)
472 uint32_t cntr_buffers_0;
473 TALLOC_CTX *_mem_save_buffers_0;
474 if (ndr_flags & NDR_SCALARS) {
475 NDR_CHECK(ndr_pull_align(ndr, 5));
476 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_buffers));
477 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version));
478 NDR_PULL_ALLOC_N(ndr, r->buffers, r->num_buffers);
479 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
480 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
481 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
482 NDR_CHECK(ndr_pull_PAC_BUFFER(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
484 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
485 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
487 if (ndr_flags & NDR_BUFFERS) {
488 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
489 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
490 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
491 NDR_CHECK(ndr_pull_PAC_BUFFER(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
493 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
495 return NDR_ERR_SUCCESS;
498 _PUBLIC_ void ndr_print_PAC_DATA(struct ndr_print *ndr, const char *name, const struct PAC_DATA *r)
500 uint32_t cntr_buffers_0;
501 ndr_print_struct(ndr, name, "PAC_DATA");
502 ndr->depth++;
503 ndr_print_uint32(ndr, "num_buffers", r->num_buffers);
504 ndr_print_uint32(ndr, "version", r->version);
505 ndr->print(ndr, "%s: ARRAY(%d)", "buffers", (int)r->num_buffers);
506 ndr->depth++;
507 for (cntr_buffers_0=0;cntr_buffers_0<r->num_buffers;cntr_buffers_0++) {
508 char *idx_0=NULL;
509 if (asprintf(&idx_0, "[%d]", cntr_buffers_0) != -1) {
510 ndr_print_PAC_BUFFER(ndr, "buffers", &r->buffers[cntr_buffers_0]);
511 free(idx_0);
514 ndr->depth--;
515 ndr->depth--;
518 _PUBLIC_ enum ndr_err_code ndr_push_PAC_BUFFER_RAW(struct ndr_push *ndr, int ndr_flags, const struct PAC_BUFFER_RAW *r)
520 if (ndr_flags & NDR_SCALARS) {
521 NDR_CHECK(ndr_push_align(ndr, 5));
522 NDR_CHECK(ndr_push_PAC_TYPE(ndr, NDR_SCALARS, r->type));
523 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ndr_size));
525 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
526 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
527 NDR_CHECK(ndr_push_relative_ptr1(ndr, r->info));
528 ndr->flags = _flags_save_DATA_BLOB_REM;
530 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
531 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
533 if (ndr_flags & NDR_BUFFERS) {
535 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
536 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
537 if (r->info) {
538 NDR_CHECK(ndr_push_relative_ptr2_start(ndr, r->info));
540 struct ndr_push *_ndr_info;
541 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
542 NDR_CHECK(ndr_push_DATA_BLOB_REM(_ndr_info, NDR_SCALARS, r->info));
543 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
545 NDR_CHECK(ndr_push_relative_ptr2_end(ndr, r->info));
547 ndr->flags = _flags_save_DATA_BLOB_REM;
550 return NDR_ERR_SUCCESS;
553 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_BUFFER_RAW(struct ndr_pull *ndr, int ndr_flags, struct PAC_BUFFER_RAW *r)
555 uint32_t _ptr_info;
556 TALLOC_CTX *_mem_save_info_0;
557 if (ndr_flags & NDR_SCALARS) {
558 NDR_CHECK(ndr_pull_align(ndr, 5));
559 NDR_CHECK(ndr_pull_PAC_TYPE(ndr, NDR_SCALARS, &r->type));
560 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ndr_size));
562 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
563 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
564 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
565 if (_ptr_info) {
566 NDR_PULL_ALLOC(ndr, r->info);
567 NDR_CHECK(ndr_pull_relative_ptr1(ndr, r->info, _ptr_info));
568 } else {
569 r->info = NULL;
571 ndr->flags = _flags_save_DATA_BLOB_REM;
573 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->_pad));
574 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
576 if (ndr_flags & NDR_BUFFERS) {
578 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
579 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
580 if (r->info) {
581 uint32_t _relative_save_offset;
582 _relative_save_offset = ndr->offset;
583 NDR_CHECK(ndr_pull_relative_ptr2(ndr, r->info));
584 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
585 NDR_PULL_SET_MEM_CTX(ndr, r->info, 0);
587 struct ndr_pull *_ndr_info;
588 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
589 NDR_CHECK(ndr_pull_DATA_BLOB_REM(_ndr_info, NDR_SCALARS, r->info));
590 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
592 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
593 if (ndr->offset > ndr->relative_highest_offset) {
594 ndr->relative_highest_offset = ndr->offset;
596 ndr->offset = _relative_save_offset;
598 ndr->flags = _flags_save_DATA_BLOB_REM;
601 return NDR_ERR_SUCCESS;
604 _PUBLIC_ void ndr_print_PAC_BUFFER_RAW(struct ndr_print *ndr, const char *name, const struct PAC_BUFFER_RAW *r)
606 ndr_print_struct(ndr, name, "PAC_BUFFER_RAW");
607 ndr->depth++;
608 ndr_print_PAC_TYPE(ndr, "type", r->type);
609 ndr_print_uint32(ndr, "ndr_size", r->ndr_size);
610 ndr_print_ptr(ndr, "info", r->info);
611 ndr->depth++;
612 if (r->info) {
613 ndr_print_DATA_BLOB_REM(ndr, "info", r->info);
615 ndr->depth--;
616 ndr_print_uint32(ndr, "_pad", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->_pad);
617 ndr->depth--;
620 _PUBLIC_ enum ndr_err_code ndr_push_PAC_DATA_RAW(struct ndr_push *ndr, int ndr_flags, const struct PAC_DATA_RAW *r)
622 uint32_t cntr_buffers_0;
623 if (ndr_flags & NDR_SCALARS) {
624 NDR_CHECK(ndr_push_align(ndr, 5));
625 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_buffers));
626 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
627 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
628 NDR_CHECK(ndr_push_PAC_BUFFER_RAW(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
630 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
632 if (ndr_flags & NDR_BUFFERS) {
633 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
634 NDR_CHECK(ndr_push_PAC_BUFFER_RAW(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
637 return NDR_ERR_SUCCESS;
640 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_DATA_RAW(struct ndr_pull *ndr, int ndr_flags, struct PAC_DATA_RAW *r)
642 uint32_t cntr_buffers_0;
643 TALLOC_CTX *_mem_save_buffers_0;
644 if (ndr_flags & NDR_SCALARS) {
645 NDR_CHECK(ndr_pull_align(ndr, 5));
646 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_buffers));
647 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version));
648 NDR_PULL_ALLOC_N(ndr, r->buffers, r->num_buffers);
649 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
650 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
651 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
652 NDR_CHECK(ndr_pull_PAC_BUFFER_RAW(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
654 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
655 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
657 if (ndr_flags & NDR_BUFFERS) {
658 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
659 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
660 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
661 NDR_CHECK(ndr_pull_PAC_BUFFER_RAW(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
663 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
665 return NDR_ERR_SUCCESS;
668 _PUBLIC_ void ndr_print_PAC_DATA_RAW(struct ndr_print *ndr, const char *name, const struct PAC_DATA_RAW *r)
670 uint32_t cntr_buffers_0;
671 ndr_print_struct(ndr, name, "PAC_DATA_RAW");
672 ndr->depth++;
673 ndr_print_uint32(ndr, "num_buffers", r->num_buffers);
674 ndr_print_uint32(ndr, "version", r->version);
675 ndr->print(ndr, "%s: ARRAY(%d)", "buffers", (int)r->num_buffers);
676 ndr->depth++;
677 for (cntr_buffers_0=0;cntr_buffers_0<r->num_buffers;cntr_buffers_0++) {
678 char *idx_0=NULL;
679 if (asprintf(&idx_0, "[%d]", cntr_buffers_0) != -1) {
680 ndr_print_PAC_BUFFER_RAW(ndr, "buffers", &r->buffers[cntr_buffers_0]);
681 free(idx_0);
684 ndr->depth--;
685 ndr->depth--;
688 _PUBLIC_ enum ndr_err_code ndr_push_PAC_Validate(struct ndr_push *ndr, int ndr_flags, const struct PAC_Validate *r)
690 if (ndr_flags & NDR_SCALARS) {
691 NDR_CHECK(ndr_push_align(ndr, 4));
692 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, NETLOGON_GENERIC_KRB5_PAC_VALIDATE));
693 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ChecksumLength));
694 NDR_CHECK(ndr_push_int32(ndr, NDR_SCALARS, r->SignatureType));
695 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->SignatureLength));
697 uint32_t _flags_save_DATA_BLOB = ndr->flags;
698 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
699 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->ChecksumAndSignature));
700 ndr->flags = _flags_save_DATA_BLOB;
702 NDR_CHECK(ndr_push_trailer_align(ndr, 4));
704 if (ndr_flags & NDR_BUFFERS) {
706 return NDR_ERR_SUCCESS;
709 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_Validate(struct ndr_pull *ndr, int ndr_flags, struct PAC_Validate *r)
711 if (ndr_flags & NDR_SCALARS) {
712 NDR_CHECK(ndr_pull_align(ndr, 4));
713 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->MessageType));
714 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ChecksumLength));
715 NDR_CHECK(ndr_pull_int32(ndr, NDR_SCALARS, &r->SignatureType));
716 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->SignatureLength));
718 uint32_t _flags_save_DATA_BLOB = ndr->flags;
719 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
720 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->ChecksumAndSignature));
721 ndr->flags = _flags_save_DATA_BLOB;
723 NDR_CHECK(ndr_pull_trailer_align(ndr, 4));
725 if (ndr_flags & NDR_BUFFERS) {
727 return NDR_ERR_SUCCESS;
730 _PUBLIC_ void ndr_print_PAC_Validate(struct ndr_print *ndr, const char *name, const struct PAC_Validate *r)
732 ndr_print_struct(ndr, name, "PAC_Validate");
733 ndr->depth++;
734 ndr_print_uint32(ndr, "MessageType", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?NETLOGON_GENERIC_KRB5_PAC_VALIDATE:r->MessageType);
735 ndr_print_uint32(ndr, "ChecksumLength", r->ChecksumLength);
736 ndr_print_int32(ndr, "SignatureType", r->SignatureType);
737 ndr_print_uint32(ndr, "SignatureLength", r->SignatureLength);
738 ndr_print_DATA_BLOB(ndr, "ChecksumAndSignature", r->ChecksumAndSignature);
739 ndr->depth--;
742 _PUBLIC_ enum ndr_err_code ndr_push_netsamlogoncache_entry(struct ndr_push *ndr, int ndr_flags, const struct netsamlogoncache_entry *r)
744 if (ndr_flags & NDR_SCALARS) {
745 NDR_CHECK(ndr_push_align(ndr, 5));
746 NDR_CHECK(ndr_push_time_t(ndr, NDR_SCALARS, r->timestamp));
747 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
748 NDR_CHECK(ndr_push_trailer_align(ndr, 5));
750 if (ndr_flags & NDR_BUFFERS) {
751 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
753 return NDR_ERR_SUCCESS;
756 _PUBLIC_ enum ndr_err_code ndr_pull_netsamlogoncache_entry(struct ndr_pull *ndr, int ndr_flags, struct netsamlogoncache_entry *r)
758 if (ndr_flags & NDR_SCALARS) {
759 NDR_CHECK(ndr_pull_align(ndr, 5));
760 NDR_CHECK(ndr_pull_time_t(ndr, NDR_SCALARS, &r->timestamp));
761 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
762 NDR_CHECK(ndr_pull_trailer_align(ndr, 5));
764 if (ndr_flags & NDR_BUFFERS) {
765 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
767 return NDR_ERR_SUCCESS;
770 _PUBLIC_ void ndr_print_netsamlogoncache_entry(struct ndr_print *ndr, const char *name, const struct netsamlogoncache_entry *r)
772 ndr_print_struct(ndr, name, "netsamlogoncache_entry");
773 ndr->depth++;
774 ndr_print_time_t(ndr, "timestamp", r->timestamp);
775 ndr_print_netr_SamInfo3(ndr, "info3", &r->info3);
776 ndr->depth--;
779 static enum ndr_err_code ndr_push_decode_pac(struct ndr_push *ndr, int flags, const struct decode_pac *r)
781 if (flags & NDR_IN) {
782 NDR_CHECK(ndr_push_PAC_DATA(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
784 if (flags & NDR_OUT) {
786 return NDR_ERR_SUCCESS;
789 static enum ndr_err_code ndr_pull_decode_pac(struct ndr_pull *ndr, int flags, struct decode_pac *r)
791 if (flags & NDR_IN) {
792 NDR_CHECK(ndr_pull_PAC_DATA(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
794 if (flags & NDR_OUT) {
796 return NDR_ERR_SUCCESS;
799 _PUBLIC_ void ndr_print_decode_pac(struct ndr_print *ndr, const char *name, int flags, const struct decode_pac *r)
801 ndr_print_struct(ndr, name, "decode_pac");
802 ndr->depth++;
803 if (flags & NDR_SET_VALUES) {
804 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
806 if (flags & NDR_IN) {
807 ndr_print_struct(ndr, "in", "decode_pac");
808 ndr->depth++;
809 ndr_print_PAC_DATA(ndr, "pac", &r->in.pac);
810 ndr->depth--;
812 if (flags & NDR_OUT) {
813 ndr_print_struct(ndr, "out", "decode_pac");
814 ndr->depth++;
815 ndr->depth--;
817 ndr->depth--;
820 static enum ndr_err_code ndr_push_decode_pac_raw(struct ndr_push *ndr, int flags, const struct decode_pac_raw *r)
822 if (flags & NDR_IN) {
823 NDR_CHECK(ndr_push_PAC_DATA_RAW(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
825 if (flags & NDR_OUT) {
827 return NDR_ERR_SUCCESS;
830 static enum ndr_err_code ndr_pull_decode_pac_raw(struct ndr_pull *ndr, int flags, struct decode_pac_raw *r)
832 if (flags & NDR_IN) {
833 NDR_CHECK(ndr_pull_PAC_DATA_RAW(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
835 if (flags & NDR_OUT) {
837 return NDR_ERR_SUCCESS;
840 _PUBLIC_ void ndr_print_decode_pac_raw(struct ndr_print *ndr, const char *name, int flags, const struct decode_pac_raw *r)
842 ndr_print_struct(ndr, name, "decode_pac_raw");
843 ndr->depth++;
844 if (flags & NDR_SET_VALUES) {
845 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
847 if (flags & NDR_IN) {
848 ndr_print_struct(ndr, "in", "decode_pac_raw");
849 ndr->depth++;
850 ndr_print_PAC_DATA_RAW(ndr, "pac", &r->in.pac);
851 ndr->depth--;
853 if (flags & NDR_OUT) {
854 ndr_print_struct(ndr, "out", "decode_pac_raw");
855 ndr->depth++;
856 ndr->depth--;
858 ndr->depth--;
861 static enum ndr_err_code ndr_push_decode_login_info(struct ndr_push *ndr, int flags, const struct decode_login_info *r)
863 if (flags & NDR_IN) {
864 NDR_CHECK(ndr_push_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.logon_info));
866 if (flags & NDR_OUT) {
868 return NDR_ERR_SUCCESS;
871 static enum ndr_err_code ndr_pull_decode_login_info(struct ndr_pull *ndr, int flags, struct decode_login_info *r)
873 if (flags & NDR_IN) {
874 NDR_CHECK(ndr_pull_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.logon_info));
876 if (flags & NDR_OUT) {
878 return NDR_ERR_SUCCESS;
881 _PUBLIC_ void ndr_print_decode_login_info(struct ndr_print *ndr, const char *name, int flags, const struct decode_login_info *r)
883 ndr_print_struct(ndr, name, "decode_login_info");
884 ndr->depth++;
885 if (flags & NDR_SET_VALUES) {
886 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
888 if (flags & NDR_IN) {
889 ndr_print_struct(ndr, "in", "decode_login_info");
890 ndr->depth++;
891 ndr_print_PAC_LOGON_INFO(ndr, "logon_info", &r->in.logon_info);
892 ndr->depth--;
894 if (flags & NDR_OUT) {
895 ndr_print_struct(ndr, "out", "decode_login_info");
896 ndr->depth++;
897 ndr->depth--;
899 ndr->depth--;
902 static enum ndr_err_code ndr_push_decode_pac_validate(struct ndr_push *ndr, int flags, const struct decode_pac_validate *r)
904 if (flags & NDR_IN) {
905 NDR_CHECK(ndr_push_PAC_Validate(ndr, NDR_SCALARS, &r->in.pac_validate));
907 if (flags & NDR_OUT) {
909 return NDR_ERR_SUCCESS;
912 static enum ndr_err_code ndr_pull_decode_pac_validate(struct ndr_pull *ndr, int flags, struct decode_pac_validate *r)
914 if (flags & NDR_IN) {
915 NDR_CHECK(ndr_pull_PAC_Validate(ndr, NDR_SCALARS, &r->in.pac_validate));
917 if (flags & NDR_OUT) {
919 return NDR_ERR_SUCCESS;
922 _PUBLIC_ void ndr_print_decode_pac_validate(struct ndr_print *ndr, const char *name, int flags, const struct decode_pac_validate *r)
924 ndr_print_struct(ndr, name, "decode_pac_validate");
925 ndr->depth++;
926 if (flags & NDR_SET_VALUES) {
927 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
929 if (flags & NDR_IN) {
930 ndr_print_struct(ndr, "in", "decode_pac_validate");
931 ndr->depth++;
932 ndr_print_PAC_Validate(ndr, "pac_validate", &r->in.pac_validate);
933 ndr->depth--;
935 if (flags & NDR_OUT) {
936 ndr_print_struct(ndr, "out", "decode_pac_validate");
937 ndr->depth++;
938 ndr->depth--;
940 ndr->depth--;
943 static const struct ndr_interface_call krb5pac_calls[] = {
945 "decode_pac",
946 sizeof(struct decode_pac),
947 (ndr_push_flags_fn_t) ndr_push_decode_pac,
948 (ndr_pull_flags_fn_t) ndr_pull_decode_pac,
949 (ndr_print_function_t) ndr_print_decode_pac,
950 false,
953 "decode_pac_raw",
954 sizeof(struct decode_pac_raw),
955 (ndr_push_flags_fn_t) ndr_push_decode_pac_raw,
956 (ndr_pull_flags_fn_t) ndr_pull_decode_pac_raw,
957 (ndr_print_function_t) ndr_print_decode_pac_raw,
958 false,
961 "decode_login_info",
962 sizeof(struct decode_login_info),
963 (ndr_push_flags_fn_t) ndr_push_decode_login_info,
964 (ndr_pull_flags_fn_t) ndr_pull_decode_login_info,
965 (ndr_print_function_t) ndr_print_decode_login_info,
966 false,
969 "decode_pac_validate",
970 sizeof(struct decode_pac_validate),
971 (ndr_push_flags_fn_t) ndr_push_decode_pac_validate,
972 (ndr_pull_flags_fn_t) ndr_pull_decode_pac_validate,
973 (ndr_print_function_t) ndr_print_decode_pac_validate,
974 false,
976 { NULL, 0, NULL, NULL, NULL, false }
979 static const char * const krb5pac_endpoint_strings[] = {
980 "ncacn_np:[\\pipe\\krb5pac]",
983 static const struct ndr_interface_string_array krb5pac_endpoints = {
984 .count = 1,
985 .names = krb5pac_endpoint_strings
988 static const char * const krb5pac_authservice_strings[] = {
989 "host",
992 static const struct ndr_interface_string_array krb5pac_authservices = {
993 .count = 1,
994 .names = krb5pac_authservice_strings
998 const struct ndr_interface_table ndr_table_krb5pac = {
999 .name = "krb5pac",
1000 .syntax_id = {
1001 {0x12345778,0x1234,0xabcd,{0x00,0x00},{0x00,0x00,0x00,0x00}},
1002 NDR_KRB5PAC_VERSION
1004 .helpstring = NDR_KRB5PAC_HELPSTRING,
1005 .num_calls = 4,
1006 .calls = krb5pac_calls,
1007 .endpoints = &krb5pac_endpoints,
1008 .authservices = &krb5pac_authservices