Re-run make idl.
[Samba/gebeck_regimport.git] / source3 / librpc / gen_ndr / ndr_krb5pac.c
blobbe9e2e1e4e4073dd5a8ff1ab765295c7cdf470f8
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));
17 if (ndr_flags & NDR_BUFFERS) {
19 return NDR_ERR_SUCCESS;
22 static enum ndr_err_code ndr_pull_PAC_LOGON_NAME(struct ndr_pull *ndr, int ndr_flags, struct PAC_LOGON_NAME *r)
24 if (ndr_flags & NDR_SCALARS) {
25 NDR_CHECK(ndr_pull_align(ndr, 4));
26 NDR_CHECK(ndr_pull_NTTIME(ndr, NDR_SCALARS, &r->logon_time));
27 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->size));
28 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->account_name, r->size, sizeof(uint8_t), CH_UTF16));
30 if (ndr_flags & NDR_BUFFERS) {
32 return NDR_ERR_SUCCESS;
35 _PUBLIC_ void ndr_print_PAC_LOGON_NAME(struct ndr_print *ndr, const char *name, const struct PAC_LOGON_NAME *r)
37 ndr_print_struct(ndr, name, "PAC_LOGON_NAME");
38 ndr->depth++;
39 ndr_print_NTTIME(ndr, "logon_time", r->logon_time);
40 ndr_print_uint16(ndr, "size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->account_name):r->size);
41 ndr_print_string(ndr, "account_name", r->account_name);
42 ndr->depth--;
45 _PUBLIC_ enum ndr_err_code ndr_push_PAC_SIGNATURE_DATA(struct ndr_push *ndr, int ndr_flags, const struct PAC_SIGNATURE_DATA *r)
48 uint32_t _flags_save_STRUCT = ndr->flags;
49 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
50 if (ndr_flags & NDR_SCALARS) {
51 NDR_CHECK(ndr_push_align(ndr, 4));
52 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->type));
54 uint32_t _flags_save_DATA_BLOB = ndr->flags;
55 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
56 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->signature));
57 ndr->flags = _flags_save_DATA_BLOB;
60 if (ndr_flags & NDR_BUFFERS) {
62 ndr->flags = _flags_save_STRUCT;
64 return NDR_ERR_SUCCESS;
67 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_SIGNATURE_DATA(struct ndr_pull *ndr, int ndr_flags, struct PAC_SIGNATURE_DATA *r)
70 uint32_t _flags_save_STRUCT = ndr->flags;
71 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
72 if (ndr_flags & NDR_SCALARS) {
73 NDR_CHECK(ndr_pull_align(ndr, 4));
74 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->type));
76 uint32_t _flags_save_DATA_BLOB = ndr->flags;
77 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
78 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->signature));
79 ndr->flags = _flags_save_DATA_BLOB;
82 if (ndr_flags & NDR_BUFFERS) {
84 ndr->flags = _flags_save_STRUCT;
86 return NDR_ERR_SUCCESS;
89 _PUBLIC_ void ndr_print_PAC_SIGNATURE_DATA(struct ndr_print *ndr, const char *name, const struct PAC_SIGNATURE_DATA *r)
91 ndr_print_struct(ndr, name, "PAC_SIGNATURE_DATA");
93 uint32_t _flags_save_STRUCT = ndr->flags;
94 ndr_set_flags(&ndr->flags, LIBNDR_PRINT_ARRAY_HEX);
95 ndr->depth++;
96 ndr_print_uint32(ndr, "type", r->type);
97 ndr_print_DATA_BLOB(ndr, "signature", r->signature);
98 ndr->depth--;
99 ndr->flags = _flags_save_STRUCT;
103 static enum ndr_err_code ndr_push_PAC_LOGON_INFO(struct ndr_push *ndr, int ndr_flags, const struct PAC_LOGON_INFO *r)
105 if (ndr_flags & NDR_SCALARS) {
106 NDR_CHECK(ndr_push_align(ndr, 4));
107 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
108 NDR_CHECK(ndr_push_unique_ptr(ndr, r->res_group_dom_sid));
109 NDR_CHECK(ndr_push_samr_RidWithAttributeArray(ndr, NDR_SCALARS, &r->res_groups));
111 if (ndr_flags & NDR_BUFFERS) {
112 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
113 if (r->res_group_dom_sid) {
114 NDR_CHECK(ndr_push_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->res_group_dom_sid));
116 NDR_CHECK(ndr_push_samr_RidWithAttributeArray(ndr, NDR_BUFFERS, &r->res_groups));
118 return NDR_ERR_SUCCESS;
121 static enum ndr_err_code ndr_pull_PAC_LOGON_INFO(struct ndr_pull *ndr, int ndr_flags, struct PAC_LOGON_INFO *r)
123 uint32_t _ptr_res_group_dom_sid;
124 TALLOC_CTX *_mem_save_res_group_dom_sid_0;
125 if (ndr_flags & NDR_SCALARS) {
126 NDR_CHECK(ndr_pull_align(ndr, 4));
127 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
128 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_res_group_dom_sid));
129 if (_ptr_res_group_dom_sid) {
130 NDR_PULL_ALLOC(ndr, r->res_group_dom_sid);
131 } else {
132 r->res_group_dom_sid = NULL;
134 NDR_CHECK(ndr_pull_samr_RidWithAttributeArray(ndr, NDR_SCALARS, &r->res_groups));
136 if (ndr_flags & NDR_BUFFERS) {
137 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
138 if (r->res_group_dom_sid) {
139 _mem_save_res_group_dom_sid_0 = NDR_PULL_GET_MEM_CTX(ndr);
140 NDR_PULL_SET_MEM_CTX(ndr, r->res_group_dom_sid, 0);
141 NDR_CHECK(ndr_pull_dom_sid2(ndr, NDR_SCALARS|NDR_BUFFERS, r->res_group_dom_sid));
142 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_res_group_dom_sid_0, 0);
144 NDR_CHECK(ndr_pull_samr_RidWithAttributeArray(ndr, NDR_BUFFERS, &r->res_groups));
146 return NDR_ERR_SUCCESS;
149 _PUBLIC_ void ndr_print_PAC_LOGON_INFO(struct ndr_print *ndr, const char *name, const struct PAC_LOGON_INFO *r)
151 ndr_print_struct(ndr, name, "PAC_LOGON_INFO");
152 ndr->depth++;
153 ndr_print_netr_SamInfo3(ndr, "info3", &r->info3);
154 ndr_print_ptr(ndr, "res_group_dom_sid", r->res_group_dom_sid);
155 ndr->depth++;
156 if (r->res_group_dom_sid) {
157 ndr_print_dom_sid2(ndr, "res_group_dom_sid", r->res_group_dom_sid);
159 ndr->depth--;
160 ndr_print_samr_RidWithAttributeArray(ndr, "res_groups", &r->res_groups);
161 ndr->depth--;
164 static size_t ndr_size_PAC_LOGON_INFO(const struct PAC_LOGON_INFO *r, int flags)
166 return ndr_size_struct(r, flags, (ndr_push_flags_fn_t)ndr_push_PAC_LOGON_INFO);
169 static enum ndr_err_code ndr_push_PAC_UNKNOWN_12(struct ndr_push *ndr, int ndr_flags, const struct PAC_UNKNOWN_12 *r)
171 if (ndr_flags & NDR_SCALARS) {
172 NDR_CHECK(ndr_push_align(ndr, 4));
173 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->upn_name)));
174 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown1));
175 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, 2 * strlen_m(r->domain_name)));
176 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown2));
177 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown3));
178 NDR_CHECK(ndr_push_uint16(ndr, NDR_SCALARS, r->unknown4));
179 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown5));
180 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->upn_name, 2 * strlen_m(r->upn_name) + 2, sizeof(uint8_t), CH_UTF16));
181 NDR_CHECK(ndr_push_charset(ndr, NDR_SCALARS, r->domain_name, 2 * strlen_m(r->domain_name) + 2, sizeof(uint8_t), CH_UTF16));
182 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->unknown6));
184 if (ndr_flags & NDR_BUFFERS) {
186 return NDR_ERR_SUCCESS;
189 static enum ndr_err_code ndr_pull_PAC_UNKNOWN_12(struct ndr_pull *ndr, int ndr_flags, struct PAC_UNKNOWN_12 *r)
191 if (ndr_flags & NDR_SCALARS) {
192 NDR_CHECK(ndr_pull_align(ndr, 4));
193 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->upn_size));
194 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown1));
195 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->domain_size));
196 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown2));
197 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown3));
198 NDR_CHECK(ndr_pull_uint16(ndr, NDR_SCALARS, &r->unknown4));
199 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown5));
200 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->upn_name, r->upn_size + 2, sizeof(uint8_t), CH_UTF16));
201 NDR_CHECK(ndr_pull_charset(ndr, NDR_SCALARS, &r->domain_name, r->domain_size + 2, sizeof(uint8_t), CH_UTF16));
202 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown6));
204 if (ndr_flags & NDR_BUFFERS) {
206 return NDR_ERR_SUCCESS;
209 _PUBLIC_ void ndr_print_PAC_UNKNOWN_12(struct ndr_print *ndr, const char *name, const struct PAC_UNKNOWN_12 *r)
211 ndr_print_struct(ndr, name, "PAC_UNKNOWN_12");
212 ndr->depth++;
213 ndr_print_uint16(ndr, "upn_size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->upn_name):r->upn_size);
214 ndr_print_uint16(ndr, "unknown1", r->unknown1);
215 ndr_print_uint16(ndr, "domain_size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?2 * strlen_m(r->domain_name):r->domain_size);
216 ndr_print_uint16(ndr, "unknown2", r->unknown2);
217 ndr_print_uint16(ndr, "unknown3", r->unknown3);
218 ndr_print_uint16(ndr, "unknown4", r->unknown4);
219 ndr_print_uint32(ndr, "unknown5", r->unknown5);
220 ndr_print_string(ndr, "upn_name", r->upn_name);
221 ndr_print_string(ndr, "domain_name", r->domain_name);
222 ndr_print_uint32(ndr, "unknown6", r->unknown6);
223 ndr->depth--;
226 _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)
228 if (ndr_flags & NDR_SCALARS) {
229 NDR_CHECK(ndr_push_align(ndr, 4));
230 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0x00081001));
231 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0xCCCCCCCC));
232 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, NDR_ROUND(ndr_size_PAC_LOGON_INFO(r->info, ndr->flags) + 4, 8)));
233 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0x00000000));
234 NDR_CHECK(ndr_push_unique_ptr(ndr, r->info));
236 if (ndr_flags & NDR_BUFFERS) {
237 if (r->info) {
238 NDR_CHECK(ndr_push_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
241 return NDR_ERR_SUCCESS;
244 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_LOGON_INFO_CTR(struct ndr_pull *ndr, int ndr_flags, struct PAC_LOGON_INFO_CTR *r)
246 uint32_t _ptr_info;
247 TALLOC_CTX *_mem_save_info_0;
248 if (ndr_flags & NDR_SCALARS) {
249 NDR_CHECK(ndr_pull_align(ndr, 4));
250 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown1));
251 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown2));
252 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->_ndr_size));
253 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->unknown3));
254 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
255 if (_ptr_info) {
256 NDR_PULL_ALLOC(ndr, r->info);
257 } else {
258 r->info = NULL;
261 if (ndr_flags & NDR_BUFFERS) {
262 if (r->info) {
263 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
264 NDR_PULL_SET_MEM_CTX(ndr, r->info, 0);
265 NDR_CHECK(ndr_pull_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, r->info));
266 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
269 return NDR_ERR_SUCCESS;
272 _PUBLIC_ void ndr_print_PAC_LOGON_INFO_CTR(struct ndr_print *ndr, const char *name, const struct PAC_LOGON_INFO_CTR *r)
274 ndr_print_struct(ndr, name, "PAC_LOGON_INFO_CTR");
275 ndr->depth++;
276 ndr_print_uint32(ndr, "unknown1", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0x00081001:r->unknown1);
277 ndr_print_uint32(ndr, "unknown2", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0xCCCCCCCC:r->unknown2);
278 ndr_print_uint32(ndr, "_ndr_size", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?NDR_ROUND(ndr_size_PAC_LOGON_INFO(r->info, ndr->flags) + 4, 8):r->_ndr_size);
279 ndr_print_uint32(ndr, "unknown3", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0x00000000:r->unknown3);
280 ndr_print_ptr(ndr, "info", r->info);
281 ndr->depth++;
282 if (r->info) {
283 ndr_print_PAC_LOGON_INFO(ndr, "info", r->info);
285 ndr->depth--;
286 ndr->depth--;
289 _PUBLIC_ enum ndr_err_code ndr_push_PAC_TYPE(struct ndr_push *ndr, int ndr_flags, enum PAC_TYPE r)
291 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r));
292 return NDR_ERR_SUCCESS;
295 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_TYPE(struct ndr_pull *ndr, int ndr_flags, enum PAC_TYPE *r)
297 uint32_t v;
298 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &v));
299 *r = v;
300 return NDR_ERR_SUCCESS;
303 _PUBLIC_ void ndr_print_PAC_TYPE(struct ndr_print *ndr, const char *name, enum PAC_TYPE r)
305 const char *val = NULL;
307 switch (r) {
308 case PAC_TYPE_LOGON_INFO: val = "PAC_TYPE_LOGON_INFO"; break;
309 case PAC_TYPE_SRV_CHECKSUM: val = "PAC_TYPE_SRV_CHECKSUM"; break;
310 case PAC_TYPE_KDC_CHECKSUM: val = "PAC_TYPE_KDC_CHECKSUM"; break;
311 case PAC_TYPE_LOGON_NAME: val = "PAC_TYPE_LOGON_NAME"; break;
312 case PAC_TYPE_CONSTRAINED_DELEGATION: val = "PAC_TYPE_CONSTRAINED_DELEGATION"; break;
313 case PAC_TYPE_UNKNOWN_12: val = "PAC_TYPE_UNKNOWN_12"; break;
315 ndr_print_enum(ndr, name, "ENUM", val, r);
318 _PUBLIC_ enum ndr_err_code ndr_push_PAC_INFO(struct ndr_push *ndr, int ndr_flags, const union PAC_INFO *r)
320 if (ndr_flags & NDR_SCALARS) {
321 int level = ndr_push_get_switch_value(ndr, r);
322 switch (level) {
323 case PAC_TYPE_LOGON_INFO: {
324 NDR_CHECK(ndr_push_PAC_LOGON_INFO_CTR(ndr, NDR_SCALARS, &r->logon_info));
325 break; }
327 case PAC_TYPE_SRV_CHECKSUM: {
328 NDR_CHECK(ndr_push_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->srv_cksum));
329 break; }
331 case PAC_TYPE_KDC_CHECKSUM: {
332 NDR_CHECK(ndr_push_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->kdc_cksum));
333 break; }
335 case PAC_TYPE_LOGON_NAME: {
336 NDR_CHECK(ndr_push_PAC_LOGON_NAME(ndr, NDR_SCALARS, &r->logon_name));
337 break; }
339 case PAC_TYPE_UNKNOWN_12: {
340 NDR_CHECK(ndr_push_PAC_UNKNOWN_12(ndr, NDR_SCALARS, &r->unknown));
341 break; }
343 default:
344 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
347 if (ndr_flags & NDR_BUFFERS) {
348 int level = ndr_push_get_switch_value(ndr, r);
349 switch (level) {
350 case PAC_TYPE_LOGON_INFO:
351 NDR_CHECK(ndr_push_PAC_LOGON_INFO_CTR(ndr, NDR_BUFFERS, &r->logon_info));
352 break;
354 case PAC_TYPE_SRV_CHECKSUM:
355 break;
357 case PAC_TYPE_KDC_CHECKSUM:
358 break;
360 case PAC_TYPE_LOGON_NAME:
361 break;
363 case PAC_TYPE_UNKNOWN_12:
364 break;
366 default:
367 return ndr_push_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
370 return NDR_ERR_SUCCESS;
373 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_INFO(struct ndr_pull *ndr, int ndr_flags, union PAC_INFO *r)
375 int level;
376 level = ndr_pull_get_switch_value(ndr, r);
377 if (ndr_flags & NDR_SCALARS) {
378 switch (level) {
379 case PAC_TYPE_LOGON_INFO: {
380 NDR_CHECK(ndr_pull_PAC_LOGON_INFO_CTR(ndr, NDR_SCALARS, &r->logon_info));
381 break; }
383 case PAC_TYPE_SRV_CHECKSUM: {
384 NDR_CHECK(ndr_pull_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->srv_cksum));
385 break; }
387 case PAC_TYPE_KDC_CHECKSUM: {
388 NDR_CHECK(ndr_pull_PAC_SIGNATURE_DATA(ndr, NDR_SCALARS, &r->kdc_cksum));
389 break; }
391 case PAC_TYPE_LOGON_NAME: {
392 NDR_CHECK(ndr_pull_PAC_LOGON_NAME(ndr, NDR_SCALARS, &r->logon_name));
393 break; }
395 case PAC_TYPE_UNKNOWN_12: {
396 NDR_CHECK(ndr_pull_PAC_UNKNOWN_12(ndr, NDR_SCALARS, &r->unknown));
397 break; }
399 default:
400 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
403 if (ndr_flags & NDR_BUFFERS) {
404 switch (level) {
405 case PAC_TYPE_LOGON_INFO:
406 NDR_CHECK(ndr_pull_PAC_LOGON_INFO_CTR(ndr, NDR_BUFFERS, &r->logon_info));
407 break;
409 case PAC_TYPE_SRV_CHECKSUM:
410 break;
412 case PAC_TYPE_KDC_CHECKSUM:
413 break;
415 case PAC_TYPE_LOGON_NAME:
416 break;
418 case PAC_TYPE_UNKNOWN_12:
419 break;
421 default:
422 return ndr_pull_error(ndr, NDR_ERR_BAD_SWITCH, "Bad switch value %u", level);
425 return NDR_ERR_SUCCESS;
428 _PUBLIC_ void ndr_print_PAC_INFO(struct ndr_print *ndr, const char *name, const union PAC_INFO *r)
430 int level;
431 level = ndr_print_get_switch_value(ndr, r);
432 ndr_print_union(ndr, name, level, "PAC_INFO");
433 switch (level) {
434 case PAC_TYPE_LOGON_INFO:
435 ndr_print_PAC_LOGON_INFO_CTR(ndr, "logon_info", &r->logon_info);
436 break;
438 case PAC_TYPE_SRV_CHECKSUM:
439 ndr_print_PAC_SIGNATURE_DATA(ndr, "srv_cksum", &r->srv_cksum);
440 break;
442 case PAC_TYPE_KDC_CHECKSUM:
443 ndr_print_PAC_SIGNATURE_DATA(ndr, "kdc_cksum", &r->kdc_cksum);
444 break;
446 case PAC_TYPE_LOGON_NAME:
447 ndr_print_PAC_LOGON_NAME(ndr, "logon_name", &r->logon_name);
448 break;
450 case PAC_TYPE_UNKNOWN_12:
451 ndr_print_PAC_UNKNOWN_12(ndr, "unknown", &r->unknown);
452 break;
454 default:
455 ndr_print_bad_level(ndr, name, level);
459 _PUBLIC_ size_t ndr_size_PAC_INFO(const union PAC_INFO *r, uint32_t level, int flags)
461 return ndr_size_union(r, flags, level, (ndr_push_flags_fn_t)ndr_push_PAC_INFO);
464 _PUBLIC_ enum ndr_err_code ndr_push_PAC_DATA(struct ndr_push *ndr, int ndr_flags, const struct PAC_DATA *r)
466 uint32_t cntr_buffers_0;
467 if (ndr_flags & NDR_SCALARS) {
468 NDR_CHECK(ndr_push_align(ndr, 4));
469 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_buffers));
470 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
471 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
472 NDR_CHECK(ndr_push_PAC_BUFFER(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
475 if (ndr_flags & NDR_BUFFERS) {
476 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
477 NDR_CHECK(ndr_push_PAC_BUFFER(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
480 return NDR_ERR_SUCCESS;
483 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_DATA(struct ndr_pull *ndr, int ndr_flags, struct PAC_DATA *r)
485 uint32_t cntr_buffers_0;
486 TALLOC_CTX *_mem_save_buffers_0;
487 if (ndr_flags & NDR_SCALARS) {
488 NDR_CHECK(ndr_pull_align(ndr, 4));
489 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_buffers));
490 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version));
491 NDR_PULL_ALLOC_N(ndr, r->buffers, r->num_buffers);
492 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
493 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
494 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
495 NDR_CHECK(ndr_pull_PAC_BUFFER(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
497 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
499 if (ndr_flags & NDR_BUFFERS) {
500 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
501 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
502 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
503 NDR_CHECK(ndr_pull_PAC_BUFFER(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
505 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
507 return NDR_ERR_SUCCESS;
510 _PUBLIC_ void ndr_print_PAC_DATA(struct ndr_print *ndr, const char *name, const struct PAC_DATA *r)
512 uint32_t cntr_buffers_0;
513 ndr_print_struct(ndr, name, "PAC_DATA");
514 ndr->depth++;
515 ndr_print_uint32(ndr, "num_buffers", r->num_buffers);
516 ndr_print_uint32(ndr, "version", r->version);
517 ndr->print(ndr, "%s: ARRAY(%d)", "buffers", r->num_buffers);
518 ndr->depth++;
519 for (cntr_buffers_0=0;cntr_buffers_0<r->num_buffers;cntr_buffers_0++) {
520 char *idx_0=NULL;
521 if (asprintf(&idx_0, "[%d]", cntr_buffers_0) != -1) {
522 ndr_print_PAC_BUFFER(ndr, "buffers", &r->buffers[cntr_buffers_0]);
523 free(idx_0);
526 ndr->depth--;
527 ndr->depth--;
530 static enum ndr_err_code ndr_push_DATA_BLOB_REM(struct ndr_push *ndr, int ndr_flags, const struct DATA_BLOB_REM *r)
532 if (ndr_flags & NDR_SCALARS) {
533 NDR_CHECK(ndr_push_align(ndr, 4));
535 uint32_t _flags_save_DATA_BLOB = ndr->flags;
536 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
537 NDR_CHECK(ndr_push_DATA_BLOB(ndr, NDR_SCALARS, r->remaining));
538 ndr->flags = _flags_save_DATA_BLOB;
541 if (ndr_flags & NDR_BUFFERS) {
543 return NDR_ERR_SUCCESS;
546 static enum ndr_err_code ndr_pull_DATA_BLOB_REM(struct ndr_pull *ndr, int ndr_flags, struct DATA_BLOB_REM *r)
548 if (ndr_flags & NDR_SCALARS) {
549 NDR_CHECK(ndr_pull_align(ndr, 4));
551 uint32_t _flags_save_DATA_BLOB = ndr->flags;
552 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_REMAINING);
553 NDR_CHECK(ndr_pull_DATA_BLOB(ndr, NDR_SCALARS, &r->remaining));
554 ndr->flags = _flags_save_DATA_BLOB;
557 if (ndr_flags & NDR_BUFFERS) {
559 return NDR_ERR_SUCCESS;
562 _PUBLIC_ void ndr_print_DATA_BLOB_REM(struct ndr_print *ndr, const char *name, const struct DATA_BLOB_REM *r)
564 ndr_print_struct(ndr, name, "DATA_BLOB_REM");
565 ndr->depth++;
566 ndr_print_DATA_BLOB(ndr, "remaining", r->remaining);
567 ndr->depth--;
570 _PUBLIC_ enum ndr_err_code ndr_push_PAC_BUFFER_RAW(struct ndr_push *ndr, int ndr_flags, const struct PAC_BUFFER_RAW *r)
572 if (ndr_flags & NDR_SCALARS) {
573 NDR_CHECK(ndr_push_align(ndr, 4));
574 NDR_CHECK(ndr_push_PAC_TYPE(ndr, NDR_SCALARS, r->type));
575 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->ndr_size));
577 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
578 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
579 NDR_CHECK(ndr_push_relative_ptr1(ndr, r->info));
580 ndr->flags = _flags_save_DATA_BLOB_REM;
582 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, 0));
584 if (ndr_flags & NDR_BUFFERS) {
586 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
587 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
588 if (r->info) {
589 NDR_CHECK(ndr_push_relative_ptr2(ndr, r->info));
591 struct ndr_push *_ndr_info;
592 NDR_CHECK(ndr_push_subcontext_start(ndr, &_ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
593 NDR_CHECK(ndr_push_DATA_BLOB_REM(_ndr_info, NDR_SCALARS, r->info));
594 NDR_CHECK(ndr_push_subcontext_end(ndr, _ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
597 ndr->flags = _flags_save_DATA_BLOB_REM;
600 return NDR_ERR_SUCCESS;
603 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_BUFFER_RAW(struct ndr_pull *ndr, int ndr_flags, struct PAC_BUFFER_RAW *r)
605 uint32_t _ptr_info;
606 TALLOC_CTX *_mem_save_info_0;
607 if (ndr_flags & NDR_SCALARS) {
608 NDR_CHECK(ndr_pull_align(ndr, 4));
609 NDR_CHECK(ndr_pull_PAC_TYPE(ndr, NDR_SCALARS, &r->type));
610 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->ndr_size));
612 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
613 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
614 NDR_CHECK(ndr_pull_generic_ptr(ndr, &_ptr_info));
615 if (_ptr_info) {
616 NDR_PULL_ALLOC(ndr, r->info);
617 NDR_CHECK(ndr_pull_relative_ptr1(ndr, r->info, _ptr_info));
618 } else {
619 r->info = NULL;
621 ndr->flags = _flags_save_DATA_BLOB_REM;
623 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->_pad));
625 if (ndr_flags & NDR_BUFFERS) {
627 uint32_t _flags_save_DATA_BLOB_REM = ndr->flags;
628 ndr_set_flags(&ndr->flags, LIBNDR_FLAG_ALIGN8);
629 if (r->info) {
630 uint32_t _relative_save_offset;
631 _relative_save_offset = ndr->offset;
632 NDR_CHECK(ndr_pull_relative_ptr2(ndr, r->info));
633 _mem_save_info_0 = NDR_PULL_GET_MEM_CTX(ndr);
634 NDR_PULL_SET_MEM_CTX(ndr, r->info, 0);
636 struct ndr_pull *_ndr_info;
637 NDR_CHECK(ndr_pull_subcontext_start(ndr, &_ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
638 NDR_CHECK(ndr_pull_DATA_BLOB_REM(_ndr_info, NDR_SCALARS, r->info));
639 NDR_CHECK(ndr_pull_subcontext_end(ndr, _ndr_info, 0, NDR_ROUND(r->ndr_size, 8)));
641 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_info_0, 0);
642 ndr->offset = _relative_save_offset;
644 ndr->flags = _flags_save_DATA_BLOB_REM;
647 return NDR_ERR_SUCCESS;
650 _PUBLIC_ void ndr_print_PAC_BUFFER_RAW(struct ndr_print *ndr, const char *name, const struct PAC_BUFFER_RAW *r)
652 ndr_print_struct(ndr, name, "PAC_BUFFER_RAW");
653 ndr->depth++;
654 ndr_print_PAC_TYPE(ndr, "type", r->type);
655 ndr_print_uint32(ndr, "ndr_size", r->ndr_size);
656 ndr_print_ptr(ndr, "info", r->info);
657 ndr->depth++;
658 if (r->info) {
659 ndr_print_DATA_BLOB_REM(ndr, "info", r->info);
661 ndr->depth--;
662 ndr_print_uint32(ndr, "_pad", (ndr->flags & LIBNDR_PRINT_SET_VALUES)?0:r->_pad);
663 ndr->depth--;
666 _PUBLIC_ enum ndr_err_code ndr_push_PAC_DATA_RAW(struct ndr_push *ndr, int ndr_flags, const struct PAC_DATA_RAW *r)
668 uint32_t cntr_buffers_0;
669 if (ndr_flags & NDR_SCALARS) {
670 NDR_CHECK(ndr_push_align(ndr, 4));
671 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->num_buffers));
672 NDR_CHECK(ndr_push_uint32(ndr, NDR_SCALARS, r->version));
673 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
674 NDR_CHECK(ndr_push_PAC_BUFFER_RAW(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
677 if (ndr_flags & NDR_BUFFERS) {
678 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
679 NDR_CHECK(ndr_push_PAC_BUFFER_RAW(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
682 return NDR_ERR_SUCCESS;
685 _PUBLIC_ enum ndr_err_code ndr_pull_PAC_DATA_RAW(struct ndr_pull *ndr, int ndr_flags, struct PAC_DATA_RAW *r)
687 uint32_t cntr_buffers_0;
688 TALLOC_CTX *_mem_save_buffers_0;
689 if (ndr_flags & NDR_SCALARS) {
690 NDR_CHECK(ndr_pull_align(ndr, 4));
691 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->num_buffers));
692 NDR_CHECK(ndr_pull_uint32(ndr, NDR_SCALARS, &r->version));
693 NDR_PULL_ALLOC_N(ndr, r->buffers, r->num_buffers);
694 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
695 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
696 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
697 NDR_CHECK(ndr_pull_PAC_BUFFER_RAW(ndr, NDR_SCALARS, &r->buffers[cntr_buffers_0]));
699 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
701 if (ndr_flags & NDR_BUFFERS) {
702 _mem_save_buffers_0 = NDR_PULL_GET_MEM_CTX(ndr);
703 NDR_PULL_SET_MEM_CTX(ndr, r->buffers, 0);
704 for (cntr_buffers_0 = 0; cntr_buffers_0 < r->num_buffers; cntr_buffers_0++) {
705 NDR_CHECK(ndr_pull_PAC_BUFFER_RAW(ndr, NDR_BUFFERS, &r->buffers[cntr_buffers_0]));
707 NDR_PULL_SET_MEM_CTX(ndr, _mem_save_buffers_0, 0);
709 return NDR_ERR_SUCCESS;
712 _PUBLIC_ void ndr_print_PAC_DATA_RAW(struct ndr_print *ndr, const char *name, const struct PAC_DATA_RAW *r)
714 uint32_t cntr_buffers_0;
715 ndr_print_struct(ndr, name, "PAC_DATA_RAW");
716 ndr->depth++;
717 ndr_print_uint32(ndr, "num_buffers", r->num_buffers);
718 ndr_print_uint32(ndr, "version", r->version);
719 ndr->print(ndr, "%s: ARRAY(%d)", "buffers", r->num_buffers);
720 ndr->depth++;
721 for (cntr_buffers_0=0;cntr_buffers_0<r->num_buffers;cntr_buffers_0++) {
722 char *idx_0=NULL;
723 if (asprintf(&idx_0, "[%d]", cntr_buffers_0) != -1) {
724 ndr_print_PAC_BUFFER_RAW(ndr, "buffers", &r->buffers[cntr_buffers_0]);
725 free(idx_0);
728 ndr->depth--;
729 ndr->depth--;
732 _PUBLIC_ enum ndr_err_code ndr_push_netsamlogoncache_entry(struct ndr_push *ndr, int ndr_flags, const struct netsamlogoncache_entry *r)
734 if (ndr_flags & NDR_SCALARS) {
735 NDR_CHECK(ndr_push_align(ndr, 4));
736 NDR_CHECK(ndr_push_time_t(ndr, NDR_SCALARS, r->timestamp));
737 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
739 if (ndr_flags & NDR_BUFFERS) {
740 NDR_CHECK(ndr_push_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
742 return NDR_ERR_SUCCESS;
745 _PUBLIC_ enum ndr_err_code ndr_pull_netsamlogoncache_entry(struct ndr_pull *ndr, int ndr_flags, struct netsamlogoncache_entry *r)
747 if (ndr_flags & NDR_SCALARS) {
748 NDR_CHECK(ndr_pull_align(ndr, 4));
749 NDR_CHECK(ndr_pull_time_t(ndr, NDR_SCALARS, &r->timestamp));
750 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_SCALARS, &r->info3));
752 if (ndr_flags & NDR_BUFFERS) {
753 NDR_CHECK(ndr_pull_netr_SamInfo3(ndr, NDR_BUFFERS, &r->info3));
755 return NDR_ERR_SUCCESS;
758 _PUBLIC_ void ndr_print_netsamlogoncache_entry(struct ndr_print *ndr, const char *name, const struct netsamlogoncache_entry *r)
760 ndr_print_struct(ndr, name, "netsamlogoncache_entry");
761 ndr->depth++;
762 ndr_print_time_t(ndr, "timestamp", r->timestamp);
763 ndr_print_netr_SamInfo3(ndr, "info3", &r->info3);
764 ndr->depth--;
767 static enum ndr_err_code ndr_push_decode_pac(struct ndr_push *ndr, int flags, const struct decode_pac *r)
769 if (flags & NDR_IN) {
770 NDR_CHECK(ndr_push_PAC_DATA(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
772 if (flags & NDR_OUT) {
774 return NDR_ERR_SUCCESS;
777 static enum ndr_err_code ndr_pull_decode_pac(struct ndr_pull *ndr, int flags, struct decode_pac *r)
779 if (flags & NDR_IN) {
780 NDR_CHECK(ndr_pull_PAC_DATA(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
782 if (flags & NDR_OUT) {
784 return NDR_ERR_SUCCESS;
787 _PUBLIC_ void ndr_print_decode_pac(struct ndr_print *ndr, const char *name, int flags, const struct decode_pac *r)
789 ndr_print_struct(ndr, name, "decode_pac");
790 ndr->depth++;
791 if (flags & NDR_SET_VALUES) {
792 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
794 if (flags & NDR_IN) {
795 ndr_print_struct(ndr, "in", "decode_pac");
796 ndr->depth++;
797 ndr_print_PAC_DATA(ndr, "pac", &r->in.pac);
798 ndr->depth--;
800 if (flags & NDR_OUT) {
801 ndr_print_struct(ndr, "out", "decode_pac");
802 ndr->depth++;
803 ndr->depth--;
805 ndr->depth--;
808 static enum ndr_err_code ndr_push_decode_pac_raw(struct ndr_push *ndr, int flags, const struct decode_pac_raw *r)
810 if (flags & NDR_IN) {
811 NDR_CHECK(ndr_push_PAC_DATA_RAW(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
813 if (flags & NDR_OUT) {
815 return NDR_ERR_SUCCESS;
818 static enum ndr_err_code ndr_pull_decode_pac_raw(struct ndr_pull *ndr, int flags, struct decode_pac_raw *r)
820 if (flags & NDR_IN) {
821 NDR_CHECK(ndr_pull_PAC_DATA_RAW(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.pac));
823 if (flags & NDR_OUT) {
825 return NDR_ERR_SUCCESS;
828 _PUBLIC_ void ndr_print_decode_pac_raw(struct ndr_print *ndr, const char *name, int flags, const struct decode_pac_raw *r)
830 ndr_print_struct(ndr, name, "decode_pac_raw");
831 ndr->depth++;
832 if (flags & NDR_SET_VALUES) {
833 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
835 if (flags & NDR_IN) {
836 ndr_print_struct(ndr, "in", "decode_pac_raw");
837 ndr->depth++;
838 ndr_print_PAC_DATA_RAW(ndr, "pac", &r->in.pac);
839 ndr->depth--;
841 if (flags & NDR_OUT) {
842 ndr_print_struct(ndr, "out", "decode_pac_raw");
843 ndr->depth++;
844 ndr->depth--;
846 ndr->depth--;
849 static enum ndr_err_code ndr_push_decode_login_info(struct ndr_push *ndr, int flags, const struct decode_login_info *r)
851 if (flags & NDR_IN) {
852 NDR_CHECK(ndr_push_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.logon_info));
854 if (flags & NDR_OUT) {
856 return NDR_ERR_SUCCESS;
859 static enum ndr_err_code ndr_pull_decode_login_info(struct ndr_pull *ndr, int flags, struct decode_login_info *r)
861 if (flags & NDR_IN) {
862 NDR_CHECK(ndr_pull_PAC_LOGON_INFO(ndr, NDR_SCALARS|NDR_BUFFERS, &r->in.logon_info));
864 if (flags & NDR_OUT) {
866 return NDR_ERR_SUCCESS;
869 _PUBLIC_ void ndr_print_decode_login_info(struct ndr_print *ndr, const char *name, int flags, const struct decode_login_info *r)
871 ndr_print_struct(ndr, name, "decode_login_info");
872 ndr->depth++;
873 if (flags & NDR_SET_VALUES) {
874 ndr->flags |= LIBNDR_PRINT_SET_VALUES;
876 if (flags & NDR_IN) {
877 ndr_print_struct(ndr, "in", "decode_login_info");
878 ndr->depth++;
879 ndr_print_PAC_LOGON_INFO(ndr, "logon_info", &r->in.logon_info);
880 ndr->depth--;
882 if (flags & NDR_OUT) {
883 ndr_print_struct(ndr, "out", "decode_login_info");
884 ndr->depth++;
885 ndr->depth--;
887 ndr->depth--;
890 static const struct ndr_interface_call krb5pac_calls[] = {
892 "decode_pac",
893 sizeof(struct decode_pac),
894 (ndr_push_flags_fn_t) ndr_push_decode_pac,
895 (ndr_pull_flags_fn_t) ndr_pull_decode_pac,
896 (ndr_print_function_t) ndr_print_decode_pac,
897 false,
900 "decode_pac_raw",
901 sizeof(struct decode_pac_raw),
902 (ndr_push_flags_fn_t) ndr_push_decode_pac_raw,
903 (ndr_pull_flags_fn_t) ndr_pull_decode_pac_raw,
904 (ndr_print_function_t) ndr_print_decode_pac_raw,
905 false,
908 "decode_login_info",
909 sizeof(struct decode_login_info),
910 (ndr_push_flags_fn_t) ndr_push_decode_login_info,
911 (ndr_pull_flags_fn_t) ndr_pull_decode_login_info,
912 (ndr_print_function_t) ndr_print_decode_login_info,
913 false,
915 { NULL, 0, NULL, NULL, NULL, false }
918 static const char * const krb5pac_endpoint_strings[] = {
919 "ncacn_np:[\\pipe\\krb5pac]",
922 static const struct ndr_interface_string_array krb5pac_endpoints = {
923 .count = 1,
924 .names = krb5pac_endpoint_strings
927 static const char * const krb5pac_authservice_strings[] = {
928 "host",
931 static const struct ndr_interface_string_array krb5pac_authservices = {
932 .count = 1,
933 .names = krb5pac_authservice_strings
937 const struct ndr_interface_table ndr_table_krb5pac = {
938 .name = "krb5pac",
939 .syntax_id = {
940 {0x12345778,0x1234,0xabcd,{0x00,0x00},{0x00,0x00,0x00,0x00}},
941 NDR_KRB5PAC_VERSION
943 .helpstring = NDR_KRB5PAC_HELPSTRING,
944 .num_calls = 3,
945 .calls = krb5pac_calls,
946 .endpoints = &krb5pac_endpoints,
947 .authservices = &krb5pac_authservices