xref: /freebsd/crypto/heimdal/lib/krb5/krb5-protos.h (revision 4b2eaea43fec8e8792be611dea204071a10b655a)
1 /* This is a generated file */
2 #ifndef __krb5_protos_h__
3 #define __krb5_protos_h__
4 
5 #include <stdarg.h>
6 
7 #if !defined(__GNUC__) && !defined(__attribute__)
8 #define __attribute__(x)
9 #endif
10 
11 krb5_error_code
12 krb524_convert_creds_kdc (
13 	krb5_context /*context*/,
14 	krb5_creds */*in_cred*/,
15 	struct credentials */*v4creds*/);
16 
17 krb5_error_code
18 krb524_convert_creds_kdc_ccache (
19 	krb5_context /*context*/,
20 	krb5_ccache /*ccache*/,
21 	krb5_creds */*in_cred*/,
22 	struct credentials */*v4creds*/);
23 
24 krb5_error_code
25 krb5_425_conv_principal (
26 	krb5_context /*context*/,
27 	const char */*name*/,
28 	const char */*instance*/,
29 	const char */*realm*/,
30 	krb5_principal */*princ*/);
31 
32 krb5_error_code
33 krb5_425_conv_principal_ext (
34 	krb5_context /*context*/,
35 	const char */*name*/,
36 	const char */*instance*/,
37 	const char */*realm*/,
38 	krb5_boolean (*/*func*/)(krb5_context, krb5_principal),
39 	krb5_boolean /*resolve*/,
40 	krb5_principal */*princ*/);
41 
42 krb5_error_code
43 krb5_524_conv_principal (
44 	krb5_context /*context*/,
45 	const krb5_principal /*principal*/,
46 	char */*name*/,
47 	char */*instance*/,
48 	char */*realm*/);
49 
50 krb5_error_code
51 krb5_abort (
52 	krb5_context /*context*/,
53 	krb5_error_code /*code*/,
54 	const char */*fmt*/,
55 	...)
56     __attribute__ ((noreturn, format (printf, 3, 4)));
57 
58 krb5_error_code
59 krb5_abortx (
60 	krb5_context /*context*/,
61 	const char */*fmt*/,
62 	...)
63     __attribute__ ((noreturn, format (printf, 2, 3)));
64 
65 krb5_error_code
66 krb5_acl_match_file (
67 	krb5_context /*context*/,
68 	const char */*file*/,
69 	const char */*format*/,
70 	...);
71 
72 krb5_error_code
73 krb5_acl_match_string (
74 	krb5_context /*context*/,
75 	const char */*string*/,
76 	const char */*format*/,
77 	...);
78 
79 krb5_error_code
80 krb5_add_et_list (
81 	krb5_context /*context*/,
82 	void (*/*func*/)(struct et_list **));
83 
84 krb5_error_code
85 krb5_add_extra_addresses (
86 	krb5_context /*context*/,
87 	krb5_addresses */*addresses*/);
88 
89 krb5_error_code
90 krb5_add_ignore_addresses (
91 	krb5_context /*context*/,
92 	krb5_addresses */*addresses*/);
93 
94 krb5_error_code
95 krb5_addlog_dest (
96 	krb5_context /*context*/,
97 	krb5_log_facility */*f*/,
98 	const char */*orig*/);
99 
100 krb5_error_code
101 krb5_addlog_func (
102 	krb5_context /*context*/,
103 	krb5_log_facility */*fac*/,
104 	int /*min*/,
105 	int /*max*/,
106 	krb5_log_log_func_t /*log*/,
107 	krb5_log_close_func_t /*close*/,
108 	void */*data*/);
109 
110 krb5_error_code
111 krb5_addr2sockaddr (
112 	krb5_context /*context*/,
113 	const krb5_address */*addr*/,
114 	struct sockaddr */*sa*/,
115 	krb5_socklen_t */*sa_size*/,
116 	int /*port*/);
117 
118 krb5_boolean
119 krb5_address_compare (
120 	krb5_context /*context*/,
121 	const krb5_address */*addr1*/,
122 	const krb5_address */*addr2*/);
123 
124 int
125 krb5_address_order (
126 	krb5_context /*context*/,
127 	const krb5_address */*addr1*/,
128 	const krb5_address */*addr2*/);
129 
130 krb5_boolean
131 krb5_address_search (
132 	krb5_context /*context*/,
133 	const krb5_address */*addr*/,
134 	const krb5_addresses */*addrlist*/);
135 
136 krb5_error_code
137 krb5_aname_to_localname (
138 	krb5_context /*context*/,
139 	krb5_const_principal /*aname*/,
140 	size_t /*lnsize*/,
141 	char */*lname*/);
142 
143 krb5_error_code
144 krb5_anyaddr (
145 	krb5_context /*context*/,
146 	int /*af*/,
147 	struct sockaddr */*sa*/,
148 	krb5_socklen_t */*sa_size*/,
149 	int /*port*/);
150 
151 void
152 krb5_appdefault_boolean (
153 	krb5_context /*context*/,
154 	const char */*appname*/,
155 	krb5_const_realm /*realm*/,
156 	const char */*option*/,
157 	krb5_boolean /*def_val*/,
158 	krb5_boolean */*ret_val*/);
159 
160 void
161 krb5_appdefault_string (
162 	krb5_context /*context*/,
163 	const char */*appname*/,
164 	krb5_const_realm /*realm*/,
165 	const char */*option*/,
166 	const char */*def_val*/,
167 	char **/*ret_val*/);
168 
169 void
170 krb5_appdefault_time (
171 	krb5_context /*context*/,
172 	const char */*appname*/,
173 	krb5_const_realm /*realm*/,
174 	const char */*option*/,
175 	time_t /*def_val*/,
176 	time_t */*ret_val*/);
177 
178 krb5_error_code
179 krb5_append_addresses (
180 	krb5_context /*context*/,
181 	krb5_addresses */*dest*/,
182 	const krb5_addresses */*source*/);
183 
184 krb5_error_code
185 krb5_auth_con_free (
186 	krb5_context /*context*/,
187 	krb5_auth_context /*auth_context*/);
188 
189 krb5_error_code
190 krb5_auth_con_genaddrs (
191 	krb5_context /*context*/,
192 	krb5_auth_context /*auth_context*/,
193 	int /*fd*/,
194 	int /*flags*/);
195 
196 krb5_error_code
197 krb5_auth_con_generatelocalsubkey (
198 	krb5_context /*context*/,
199 	krb5_auth_context /*auth_context*/,
200 	krb5_keyblock */*key*/);
201 
202 krb5_error_code
203 krb5_auth_con_getaddrs (
204 	krb5_context /*context*/,
205 	krb5_auth_context /*auth_context*/,
206 	krb5_address **/*local_addr*/,
207 	krb5_address **/*remote_addr*/);
208 
209 krb5_error_code
210 krb5_auth_con_getauthenticator (
211 	krb5_context /*context*/,
212 	krb5_auth_context /*auth_context*/,
213 	krb5_authenticator */*authenticator*/);
214 
215 krb5_error_code
216 krb5_auth_con_getcksumtype (
217 	krb5_context /*context*/,
218 	krb5_auth_context /*auth_context*/,
219 	krb5_cksumtype */*cksumtype*/);
220 
221 krb5_error_code
222 krb5_auth_con_getflags (
223 	krb5_context /*context*/,
224 	krb5_auth_context /*auth_context*/,
225 	int32_t */*flags*/);
226 
227 krb5_error_code
228 krb5_auth_con_getkey (
229 	krb5_context /*context*/,
230 	krb5_auth_context /*auth_context*/,
231 	krb5_keyblock **/*keyblock*/);
232 
233 krb5_error_code
234 krb5_auth_con_getkeytype (
235 	krb5_context /*context*/,
236 	krb5_auth_context /*auth_context*/,
237 	krb5_keytype */*keytype*/);
238 
239 krb5_error_code
240 krb5_auth_con_getlocalseqnumber (
241 	krb5_context /*context*/,
242 	krb5_auth_context /*auth_context*/,
243 	int32_t */*seqnumber*/);
244 
245 krb5_error_code
246 krb5_auth_con_getlocalsubkey (
247 	krb5_context /*context*/,
248 	krb5_auth_context /*auth_context*/,
249 	krb5_keyblock **/*keyblock*/);
250 
251 krb5_error_code
252 krb5_auth_con_getrcache (
253 	krb5_context /*context*/,
254 	krb5_auth_context /*auth_context*/,
255 	krb5_rcache */*rcache*/);
256 
257 krb5_error_code
258 krb5_auth_con_getremotesubkey (
259 	krb5_context /*context*/,
260 	krb5_auth_context /*auth_context*/,
261 	krb5_keyblock **/*keyblock*/);
262 
263 krb5_error_code
264 krb5_auth_con_init (
265 	krb5_context /*context*/,
266 	krb5_auth_context */*auth_context*/);
267 
268 krb5_error_code
269 krb5_auth_con_setaddrs (
270 	krb5_context /*context*/,
271 	krb5_auth_context /*auth_context*/,
272 	krb5_address */*local_addr*/,
273 	krb5_address */*remote_addr*/);
274 
275 krb5_error_code
276 krb5_auth_con_setaddrs_from_fd (
277 	krb5_context /*context*/,
278 	krb5_auth_context /*auth_context*/,
279 	void */*p_fd*/);
280 
281 krb5_error_code
282 krb5_auth_con_setcksumtype (
283 	krb5_context /*context*/,
284 	krb5_auth_context /*auth_context*/,
285 	krb5_cksumtype /*cksumtype*/);
286 
287 krb5_error_code
288 krb5_auth_con_setflags (
289 	krb5_context /*context*/,
290 	krb5_auth_context /*auth_context*/,
291 	int32_t /*flags*/);
292 
293 krb5_error_code
294 krb5_auth_con_setkey (
295 	krb5_context /*context*/,
296 	krb5_auth_context /*auth_context*/,
297 	krb5_keyblock */*keyblock*/);
298 
299 krb5_error_code
300 krb5_auth_con_setkeytype (
301 	krb5_context /*context*/,
302 	krb5_auth_context /*auth_context*/,
303 	krb5_keytype /*keytype*/);
304 
305 krb5_error_code
306 krb5_auth_con_setlocalseqnumber (
307 	krb5_context /*context*/,
308 	krb5_auth_context /*auth_context*/,
309 	int32_t /*seqnumber*/);
310 
311 krb5_error_code
312 krb5_auth_con_setlocalsubkey (
313 	krb5_context /*context*/,
314 	krb5_auth_context /*auth_context*/,
315 	krb5_keyblock */*keyblock*/);
316 
317 krb5_error_code
318 krb5_auth_con_setrcache (
319 	krb5_context /*context*/,
320 	krb5_auth_context /*auth_context*/,
321 	krb5_rcache /*rcache*/);
322 
323 krb5_error_code
324 krb5_auth_con_setremoteseqnumber (
325 	krb5_context /*context*/,
326 	krb5_auth_context /*auth_context*/,
327 	int32_t /*seqnumber*/);
328 
329 krb5_error_code
330 krb5_auth_con_setremotesubkey (
331 	krb5_context /*context*/,
332 	krb5_auth_context /*auth_context*/,
333 	krb5_keyblock */*keyblock*/);
334 
335 krb5_error_code
336 krb5_auth_con_setuserkey (
337 	krb5_context /*context*/,
338 	krb5_auth_context /*auth_context*/,
339 	krb5_keyblock */*keyblock*/);
340 
341 krb5_error_code
342 krb5_auth_getremoteseqnumber (
343 	krb5_context /*context*/,
344 	krb5_auth_context /*auth_context*/,
345 	int32_t */*seqnumber*/);
346 
347 krb5_error_code
348 krb5_build_ap_req (
349 	krb5_context /*context*/,
350 	krb5_enctype /*enctype*/,
351 	krb5_creds */*cred*/,
352 	krb5_flags /*ap_options*/,
353 	krb5_data /*authenticator*/,
354 	krb5_data */*retdata*/);
355 
356 krb5_error_code
357 krb5_build_authenticator (
358 	krb5_context /*context*/,
359 	krb5_auth_context /*auth_context*/,
360 	krb5_enctype /*enctype*/,
361 	krb5_creds */*cred*/,
362 	Checksum */*cksum*/,
363 	Authenticator **/*auth_result*/,
364 	krb5_data */*result*/,
365 	krb5_key_usage /*usage*/);
366 
367 krb5_error_code
368 krb5_build_principal (
369 	krb5_context /*context*/,
370 	krb5_principal */*principal*/,
371 	int /*rlen*/,
372 	krb5_const_realm /*realm*/,
373 	...);
374 
375 krb5_error_code
376 krb5_build_principal_ext (
377 	krb5_context /*context*/,
378 	krb5_principal */*principal*/,
379 	int /*rlen*/,
380 	krb5_const_realm /*realm*/,
381 	...);
382 
383 krb5_error_code
384 krb5_build_principal_va (
385 	krb5_context /*context*/,
386 	krb5_principal */*principal*/,
387 	int /*rlen*/,
388 	krb5_const_realm /*realm*/,
389 	va_list /*ap*/);
390 
391 krb5_error_code
392 krb5_build_principal_va_ext (
393 	krb5_context /*context*/,
394 	krb5_principal */*principal*/,
395 	int /*rlen*/,
396 	krb5_const_realm /*realm*/,
397 	va_list /*ap*/);
398 
399 krb5_error_code
400 krb5_cc_close (
401 	krb5_context /*context*/,
402 	krb5_ccache /*id*/);
403 
404 krb5_error_code
405 krb5_cc_copy_cache (
406 	krb5_context /*context*/,
407 	const krb5_ccache /*from*/,
408 	krb5_ccache /*to*/);
409 
410 krb5_error_code
411 krb5_cc_default (
412 	krb5_context /*context*/,
413 	krb5_ccache */*id*/);
414 
415 const char*
416 krb5_cc_default_name (krb5_context /*context*/);
417 
418 krb5_error_code
419 krb5_cc_destroy (
420 	krb5_context /*context*/,
421 	krb5_ccache /*id*/);
422 
423 krb5_error_code
424 krb5_cc_end_seq_get (
425 	krb5_context /*context*/,
426 	const krb5_ccache /*id*/,
427 	krb5_cc_cursor */*cursor*/);
428 
429 krb5_error_code
430 krb5_cc_gen_new (
431 	krb5_context /*context*/,
432 	const krb5_cc_ops */*ops*/,
433 	krb5_ccache */*id*/);
434 
435 const char*
436 krb5_cc_get_name (
437 	krb5_context /*context*/,
438 	krb5_ccache /*id*/);
439 
440 krb5_error_code
441 krb5_cc_get_principal (
442 	krb5_context /*context*/,
443 	krb5_ccache /*id*/,
444 	krb5_principal */*principal*/);
445 
446 const char*
447 krb5_cc_get_type (
448 	krb5_context /*context*/,
449 	krb5_ccache /*id*/);
450 
451 krb5_error_code
452 krb5_cc_get_version (
453 	krb5_context /*context*/,
454 	const krb5_ccache /*id*/);
455 
456 krb5_error_code
457 krb5_cc_initialize (
458 	krb5_context /*context*/,
459 	krb5_ccache /*id*/,
460 	krb5_principal /*primary_principal*/);
461 
462 krb5_error_code
463 krb5_cc_next_cred (
464 	krb5_context /*context*/,
465 	const krb5_ccache /*id*/,
466 	krb5_cc_cursor */*cursor*/,
467 	krb5_creds */*creds*/);
468 
469 krb5_error_code
470 krb5_cc_register (
471 	krb5_context /*context*/,
472 	const krb5_cc_ops */*ops*/,
473 	krb5_boolean /*override*/);
474 
475 krb5_error_code
476 krb5_cc_remove_cred (
477 	krb5_context /*context*/,
478 	krb5_ccache /*id*/,
479 	krb5_flags /*which*/,
480 	krb5_creds */*cred*/);
481 
482 krb5_error_code
483 krb5_cc_resolve (
484 	krb5_context /*context*/,
485 	const char */*name*/,
486 	krb5_ccache */*id*/);
487 
488 krb5_error_code
489 krb5_cc_retrieve_cred (
490 	krb5_context /*context*/,
491 	krb5_ccache /*id*/,
492 	krb5_flags /*whichfields*/,
493 	const krb5_creds */*mcreds*/,
494 	krb5_creds */*creds*/);
495 
496 krb5_error_code
497 krb5_cc_set_flags (
498 	krb5_context /*context*/,
499 	krb5_ccache /*id*/,
500 	krb5_flags /*flags*/);
501 
502 krb5_error_code
503 krb5_cc_start_seq_get (
504 	krb5_context /*context*/,
505 	const krb5_ccache /*id*/,
506 	krb5_cc_cursor */*cursor*/);
507 
508 krb5_error_code
509 krb5_cc_store_cred (
510 	krb5_context /*context*/,
511 	krb5_ccache /*id*/,
512 	krb5_creds */*creds*/);
513 
514 krb5_error_code
515 krb5_change_password (
516 	krb5_context /*context*/,
517 	krb5_creds */*creds*/,
518 	char */*newpw*/,
519 	int */*result_code*/,
520 	krb5_data */*result_code_string*/,
521 	krb5_data */*result_string*/);
522 
523 krb5_error_code
524 krb5_check_transited_realms (
525 	krb5_context /*context*/,
526 	const char *const */*realms*/,
527 	int /*num_realms*/,
528 	int */*bad_realm*/);
529 
530 krb5_boolean
531 krb5_checksum_is_collision_proof (
532 	krb5_context /*context*/,
533 	krb5_cksumtype /*type*/);
534 
535 krb5_boolean
536 krb5_checksum_is_keyed (
537 	krb5_context /*context*/,
538 	krb5_cksumtype /*type*/);
539 
540 krb5_error_code
541 krb5_checksumsize (
542 	krb5_context /*context*/,
543 	krb5_cksumtype /*type*/,
544 	size_t */*size*/);
545 
546 void
547 krb5_clear_error_string (krb5_context /*context*/);
548 
549 krb5_error_code
550 krb5_closelog (
551 	krb5_context /*context*/,
552 	krb5_log_facility */*fac*/);
553 
554 krb5_boolean
555 krb5_compare_creds (
556 	krb5_context /*context*/,
557 	krb5_flags /*whichfields*/,
558 	const krb5_creds */*mcreds*/,
559 	const krb5_creds */*creds*/);
560 
561 krb5_error_code
562 krb5_config_file_free (
563 	krb5_context /*context*/,
564 	krb5_config_section */*s*/);
565 
566 void
567 krb5_config_free_strings (char **/*strings*/);
568 
569 const void *
570 krb5_config_get (
571 	krb5_context /*context*/,
572 	const krb5_config_section */*c*/,
573 	int /*type*/,
574 	...);
575 
576 krb5_boolean
577 krb5_config_get_bool (
578 	krb5_context /*context*/,
579 	const krb5_config_section */*c*/,
580 	...);
581 
582 krb5_boolean
583 krb5_config_get_bool_default (
584 	krb5_context /*context*/,
585 	const krb5_config_section */*c*/,
586 	krb5_boolean /*def_value*/,
587 	...);
588 
589 int
590 krb5_config_get_int (
591 	krb5_context /*context*/,
592 	const krb5_config_section */*c*/,
593 	...);
594 
595 int
596 krb5_config_get_int_default (
597 	krb5_context /*context*/,
598 	const krb5_config_section */*c*/,
599 	int /*def_value*/,
600 	...);
601 
602 const krb5_config_binding *
603 krb5_config_get_list (
604 	krb5_context /*context*/,
605 	const krb5_config_section */*c*/,
606 	...);
607 
608 const void *
609 krb5_config_get_next (
610 	krb5_context /*context*/,
611 	const krb5_config_section */*c*/,
612 	const krb5_config_binding **/*pointer*/,
613 	int /*type*/,
614 	...);
615 
616 const char *
617 krb5_config_get_string (
618 	krb5_context /*context*/,
619 	const krb5_config_section */*c*/,
620 	...);
621 
622 const char *
623 krb5_config_get_string_default (
624 	krb5_context /*context*/,
625 	const krb5_config_section */*c*/,
626 	const char */*def_value*/,
627 	...);
628 
629 char**
630 krb5_config_get_strings (
631 	krb5_context /*context*/,
632 	const krb5_config_section */*c*/,
633 	...);
634 
635 int
636 krb5_config_get_time (
637 	krb5_context /*context*/,
638 	const krb5_config_section */*c*/,
639 	...);
640 
641 int
642 krb5_config_get_time_default (
643 	krb5_context /*context*/,
644 	const krb5_config_section */*c*/,
645 	int /*def_value*/,
646 	...);
647 
648 krb5_error_code
649 krb5_config_parse_file (
650 	krb5_context /*context*/,
651 	const char */*fname*/,
652 	krb5_config_section **/*res*/);
653 
654 krb5_error_code
655 krb5_config_parse_file_multi (
656 	krb5_context /*context*/,
657 	const char */*fname*/,
658 	krb5_config_section **/*res*/);
659 
660 const void *
661 krb5_config_vget (
662 	krb5_context /*context*/,
663 	const krb5_config_section */*c*/,
664 	int /*type*/,
665 	va_list /*args*/);
666 
667 krb5_boolean
668 krb5_config_vget_bool (
669 	krb5_context /*context*/,
670 	const krb5_config_section */*c*/,
671 	va_list /*args*/);
672 
673 krb5_boolean
674 krb5_config_vget_bool_default (
675 	krb5_context /*context*/,
676 	const krb5_config_section */*c*/,
677 	krb5_boolean /*def_value*/,
678 	va_list /*args*/);
679 
680 int
681 krb5_config_vget_int (
682 	krb5_context /*context*/,
683 	const krb5_config_section */*c*/,
684 	va_list /*args*/);
685 
686 int
687 krb5_config_vget_int_default (
688 	krb5_context /*context*/,
689 	const krb5_config_section */*c*/,
690 	int /*def_value*/,
691 	va_list /*args*/);
692 
693 const krb5_config_binding *
694 krb5_config_vget_list (
695 	krb5_context /*context*/,
696 	const krb5_config_section */*c*/,
697 	va_list /*args*/);
698 
699 const void *
700 krb5_config_vget_next (
701 	krb5_context /*context*/,
702 	const krb5_config_section */*c*/,
703 	const krb5_config_binding **/*pointer*/,
704 	int /*type*/,
705 	va_list /*args*/);
706 
707 const char *
708 krb5_config_vget_string (
709 	krb5_context /*context*/,
710 	const krb5_config_section */*c*/,
711 	va_list /*args*/);
712 
713 const char *
714 krb5_config_vget_string_default (
715 	krb5_context /*context*/,
716 	const krb5_config_section */*c*/,
717 	const char */*def_value*/,
718 	va_list /*args*/);
719 
720 char **
721 krb5_config_vget_strings (
722 	krb5_context /*context*/,
723 	const krb5_config_section */*c*/,
724 	va_list /*args*/);
725 
726 int
727 krb5_config_vget_time (
728 	krb5_context /*context*/,
729 	const krb5_config_section */*c*/,
730 	va_list /*args*/);
731 
732 int
733 krb5_config_vget_time_default (
734 	krb5_context /*context*/,
735 	const krb5_config_section */*c*/,
736 	int /*def_value*/,
737 	va_list /*args*/);
738 
739 krb5_error_code
740 krb5_copy_address (
741 	krb5_context /*context*/,
742 	const krb5_address */*inaddr*/,
743 	krb5_address */*outaddr*/);
744 
745 krb5_error_code
746 krb5_copy_addresses (
747 	krb5_context /*context*/,
748 	const krb5_addresses */*inaddr*/,
749 	krb5_addresses */*outaddr*/);
750 
751 krb5_error_code
752 krb5_copy_creds (
753 	krb5_context /*context*/,
754 	const krb5_creds */*incred*/,
755 	krb5_creds **/*outcred*/);
756 
757 krb5_error_code
758 krb5_copy_creds_contents (
759 	krb5_context /*context*/,
760 	const krb5_creds */*incred*/,
761 	krb5_creds */*c*/);
762 
763 krb5_error_code
764 krb5_copy_data (
765 	krb5_context /*context*/,
766 	const krb5_data */*indata*/,
767 	krb5_data **/*outdata*/);
768 
769 krb5_error_code
770 krb5_copy_host_realm (
771 	krb5_context /*context*/,
772 	const krb5_realm */*from*/,
773 	krb5_realm **/*to*/);
774 
775 krb5_error_code
776 krb5_copy_keyblock (
777 	krb5_context /*context*/,
778 	const krb5_keyblock */*inblock*/,
779 	krb5_keyblock **/*to*/);
780 
781 krb5_error_code
782 krb5_copy_keyblock_contents (
783 	krb5_context /*context*/,
784 	const krb5_keyblock */*inblock*/,
785 	krb5_keyblock */*to*/);
786 
787 krb5_error_code
788 krb5_copy_principal (
789 	krb5_context /*context*/,
790 	krb5_const_principal /*inprinc*/,
791 	krb5_principal */*outprinc*/);
792 
793 krb5_error_code
794 krb5_copy_ticket (
795 	krb5_context /*context*/,
796 	const krb5_ticket */*from*/,
797 	krb5_ticket **/*to*/);
798 
799 krb5_error_code
800 krb5_create_checksum (
801 	krb5_context /*context*/,
802 	krb5_crypto /*crypto*/,
803 	krb5_key_usage /*usage*/,
804 	int /*type*/,
805 	void */*data*/,
806 	size_t /*len*/,
807 	Checksum */*result*/);
808 
809 krb5_error_code
810 krb5_crypto_destroy (
811 	krb5_context /*context*/,
812 	krb5_crypto /*crypto*/);
813 
814 krb5_error_code
815 krb5_crypto_getblocksize (
816 	krb5_context /*context*/,
817 	krb5_crypto /*crypto*/,
818 	size_t */*blocksize*/);
819 
820 krb5_error_code
821 krb5_crypto_init (
822 	krb5_context /*context*/,
823 	const krb5_keyblock */*key*/,
824 	krb5_enctype /*etype*/,
825 	krb5_crypto */*crypto*/);
826 
827 krb5_error_code
828 krb5_data_alloc (
829 	krb5_data */*p*/,
830 	int /*len*/);
831 
832 krb5_error_code
833 krb5_data_copy (
834 	krb5_data */*p*/,
835 	const void */*data*/,
836 	size_t /*len*/);
837 
838 void
839 krb5_data_free (krb5_data */*p*/);
840 
841 krb5_error_code
842 krb5_data_realloc (
843 	krb5_data */*p*/,
844 	int /*len*/);
845 
846 void
847 krb5_data_zero (krb5_data */*p*/);
848 
849 krb5_error_code
850 krb5_decode_Authenticator (
851 	krb5_context /*context*/,
852 	const void */*data*/,
853 	size_t /*length*/,
854 	Authenticator */*t*/,
855 	size_t */*len*/);
856 
857 krb5_error_code
858 krb5_decode_ETYPE_INFO (
859 	krb5_context /*context*/,
860 	const void */*data*/,
861 	size_t /*length*/,
862 	ETYPE_INFO */*t*/,
863 	size_t */*len*/);
864 
865 krb5_error_code
866 krb5_decode_EncAPRepPart (
867 	krb5_context /*context*/,
868 	const void */*data*/,
869 	size_t /*length*/,
870 	EncAPRepPart */*t*/,
871 	size_t */*len*/);
872 
873 krb5_error_code
874 krb5_decode_EncASRepPart (
875 	krb5_context /*context*/,
876 	const void */*data*/,
877 	size_t /*length*/,
878 	EncASRepPart */*t*/,
879 	size_t */*len*/);
880 
881 krb5_error_code
882 krb5_decode_EncKrbCredPart (
883 	krb5_context /*context*/,
884 	const void */*data*/,
885 	size_t /*length*/,
886 	EncKrbCredPart */*t*/,
887 	size_t */*len*/);
888 
889 krb5_error_code
890 krb5_decode_EncTGSRepPart (
891 	krb5_context /*context*/,
892 	const void */*data*/,
893 	size_t /*length*/,
894 	EncTGSRepPart */*t*/,
895 	size_t */*len*/);
896 
897 krb5_error_code
898 krb5_decode_EncTicketPart (
899 	krb5_context /*context*/,
900 	const void */*data*/,
901 	size_t /*length*/,
902 	EncTicketPart */*t*/,
903 	size_t */*len*/);
904 
905 krb5_error_code
906 krb5_decode_ap_req (
907 	krb5_context /*context*/,
908 	const krb5_data */*inbuf*/,
909 	krb5_ap_req */*ap_req*/);
910 
911 krb5_error_code
912 krb5_decrypt (
913 	krb5_context /*context*/,
914 	krb5_crypto /*crypto*/,
915 	unsigned /*usage*/,
916 	void */*data*/,
917 	size_t /*len*/,
918 	krb5_data */*result*/);
919 
920 krb5_error_code
921 krb5_decrypt_EncryptedData (
922 	krb5_context /*context*/,
923 	krb5_crypto /*crypto*/,
924 	unsigned /*usage*/,
925 	const EncryptedData */*e*/,
926 	krb5_data */*result*/);
927 
928 krb5_error_code
929 krb5_decrypt_ivec (
930 	krb5_context /*context*/,
931 	krb5_crypto /*crypto*/,
932 	unsigned /*usage*/,
933 	void */*data*/,
934 	size_t /*len*/,
935 	krb5_data */*result*/,
936 	void */*ivec*/);
937 
938 krb5_error_code
939 krb5_decrypt_ticket (
940 	krb5_context /*context*/,
941 	Ticket */*ticket*/,
942 	krb5_keyblock */*key*/,
943 	EncTicketPart */*out*/,
944 	krb5_flags /*flags*/);
945 
946 krb5_error_code
947 krb5_derive_key (
948 	krb5_context /*context*/,
949 	const krb5_keyblock */*key*/,
950 	krb5_enctype /*etype*/,
951 	const void */*constant*/,
952 	size_t /*constant_len*/,
953 	krb5_keyblock **/*derived_key*/);
954 
955 krb5_error_code
956 krb5_domain_x500_decode (
957 	krb5_context /*context*/,
958 	krb5_data /*tr*/,
959 	char ***/*realms*/,
960 	int */*num_realms*/,
961 	const char */*client_realm*/,
962 	const char */*server_realm*/);
963 
964 krb5_error_code
965 krb5_domain_x500_encode (
966 	char **/*realms*/,
967 	int /*num_realms*/,
968 	krb5_data */*encoding*/);
969 
970 krb5_error_code
971 krb5_eai_to_heim_errno (
972 	int /*eai_errno*/,
973 	int /*system_error*/);
974 
975 krb5_error_code
976 krb5_encode_Authenticator (
977 	krb5_context /*context*/,
978 	void */*data*/,
979 	size_t /*length*/,
980 	Authenticator */*t*/,
981 	size_t */*len*/);
982 
983 krb5_error_code
984 krb5_encode_ETYPE_INFO (
985 	krb5_context /*context*/,
986 	void */*data*/,
987 	size_t /*length*/,
988 	ETYPE_INFO */*t*/,
989 	size_t */*len*/);
990 
991 krb5_error_code
992 krb5_encode_EncAPRepPart (
993 	krb5_context /*context*/,
994 	void */*data*/,
995 	size_t /*length*/,
996 	EncAPRepPart */*t*/,
997 	size_t */*len*/);
998 
999 krb5_error_code
1000 krb5_encode_EncASRepPart (
1001 	krb5_context /*context*/,
1002 	void */*data*/,
1003 	size_t /*length*/,
1004 	EncASRepPart */*t*/,
1005 	size_t */*len*/);
1006 
1007 krb5_error_code
1008 krb5_encode_EncKrbCredPart (
1009 	krb5_context /*context*/,
1010 	void */*data*/,
1011 	size_t /*length*/,
1012 	EncKrbCredPart */*t*/,
1013 	size_t */*len*/);
1014 
1015 krb5_error_code
1016 krb5_encode_EncTGSRepPart (
1017 	krb5_context /*context*/,
1018 	void */*data*/,
1019 	size_t /*length*/,
1020 	EncTGSRepPart */*t*/,
1021 	size_t */*len*/);
1022 
1023 krb5_error_code
1024 krb5_encode_EncTicketPart (
1025 	krb5_context /*context*/,
1026 	void */*data*/,
1027 	size_t /*length*/,
1028 	EncTicketPart */*t*/,
1029 	size_t */*len*/);
1030 
1031 krb5_error_code
1032 krb5_encrypt (
1033 	krb5_context /*context*/,
1034 	krb5_crypto /*crypto*/,
1035 	unsigned /*usage*/,
1036 	void */*data*/,
1037 	size_t /*len*/,
1038 	krb5_data */*result*/);
1039 
1040 krb5_error_code
1041 krb5_encrypt_EncryptedData (
1042 	krb5_context /*context*/,
1043 	krb5_crypto /*crypto*/,
1044 	unsigned /*usage*/,
1045 	void */*data*/,
1046 	size_t /*len*/,
1047 	int /*kvno*/,
1048 	EncryptedData */*result*/);
1049 
1050 krb5_error_code
1051 krb5_encrypt_ivec (
1052 	krb5_context /*context*/,
1053 	krb5_crypto /*crypto*/,
1054 	unsigned /*usage*/,
1055 	void */*data*/,
1056 	size_t /*len*/,
1057 	krb5_data */*result*/,
1058 	void */*ivec*/);
1059 
1060 krb5_error_code
1061 krb5_enctype_to_keytype (
1062 	krb5_context /*context*/,
1063 	krb5_enctype /*etype*/,
1064 	krb5_keytype */*keytype*/);
1065 
1066 krb5_error_code
1067 krb5_enctype_to_string (
1068 	krb5_context /*context*/,
1069 	krb5_enctype /*etype*/,
1070 	char **/*string*/);
1071 
1072 krb5_error_code
1073 krb5_enctype_valid (
1074 	krb5_context /*context*/,
1075 	krb5_enctype /*etype*/);
1076 
1077 krb5_boolean
1078 krb5_enctypes_compatible_keys (
1079 	krb5_context /*context*/,
1080 	krb5_enctype /*etype1*/,
1081 	krb5_enctype /*etype2*/);
1082 
1083 krb5_error_code
1084 krb5_err (
1085 	krb5_context /*context*/,
1086 	int /*eval*/,
1087 	krb5_error_code /*code*/,
1088 	const char */*fmt*/,
1089 	...)
1090     __attribute__ ((noreturn, format (printf, 4, 5)));
1091 
1092 krb5_error_code
1093 krb5_error_from_rd_error (
1094 	krb5_context /*context*/,
1095 	const krb5_error */*error*/,
1096 	const krb5_creds */*creds*/);
1097 
1098 krb5_error_code
1099 krb5_errx (
1100 	krb5_context /*context*/,
1101 	int /*eval*/,
1102 	const char */*fmt*/,
1103 	...)
1104     __attribute__ ((noreturn, format (printf, 3, 4)));
1105 
1106 krb5_error_code
1107 krb5_expand_hostname (
1108 	krb5_context /*context*/,
1109 	const char */*orig_hostname*/,
1110 	char **/*new_hostname*/);
1111 
1112 krb5_error_code
1113 krb5_expand_hostname_realms (
1114 	krb5_context /*context*/,
1115 	const char */*orig_hostname*/,
1116 	char **/*new_hostname*/,
1117 	char ***/*realms*/);
1118 
1119 PA_DATA *
1120 krb5_find_padata (
1121 	PA_DATA */*val*/,
1122 	unsigned /*len*/,
1123 	int /*type*/,
1124 	int */*index*/);
1125 
1126 krb5_error_code
1127 krb5_format_time (
1128 	krb5_context /*context*/,
1129 	time_t /*t*/,
1130 	char */*s*/,
1131 	size_t /*len*/,
1132 	krb5_boolean /*include_time*/);
1133 
1134 krb5_error_code
1135 krb5_free_address (
1136 	krb5_context /*context*/,
1137 	krb5_address */*address*/);
1138 
1139 krb5_error_code
1140 krb5_free_addresses (
1141 	krb5_context /*context*/,
1142 	krb5_addresses */*addresses*/);
1143 
1144 void
1145 krb5_free_ap_rep_enc_part (
1146 	krb5_context /*context*/,
1147 	krb5_ap_rep_enc_part */*val*/);
1148 
1149 void
1150 krb5_free_authenticator (
1151 	krb5_context /*context*/,
1152 	krb5_authenticator */*authenticator*/);
1153 
1154 void
1155 krb5_free_config_files (char **/*filenames*/);
1156 
1157 void
1158 krb5_free_context (krb5_context /*context*/);
1159 
1160 krb5_error_code
1161 krb5_free_cred_contents (
1162 	krb5_context /*context*/,
1163 	krb5_creds */*c*/);
1164 
1165 krb5_error_code
1166 krb5_free_creds (
1167 	krb5_context /*context*/,
1168 	krb5_creds */*c*/);
1169 
1170 krb5_error_code
1171 krb5_free_creds_contents (
1172 	krb5_context /*context*/,
1173 	krb5_creds */*c*/);
1174 
1175 void
1176 krb5_free_data (
1177 	krb5_context /*context*/,
1178 	krb5_data */*p*/);
1179 
1180 void
1181 krb5_free_error (
1182 	krb5_context /*context*/,
1183 	krb5_error */*error*/);
1184 
1185 void
1186 krb5_free_error_contents (
1187 	krb5_context /*context*/,
1188 	krb5_error */*error*/);
1189 
1190 void
1191 krb5_free_error_string (
1192 	krb5_context /*context*/,
1193 	char */*str*/);
1194 
1195 krb5_error_code
1196 krb5_free_host_realm (
1197 	krb5_context /*context*/,
1198 	krb5_realm */*realmlist*/);
1199 
1200 krb5_error_code
1201 krb5_free_kdc_rep (
1202 	krb5_context /*context*/,
1203 	krb5_kdc_rep */*rep*/);
1204 
1205 void
1206 krb5_free_keyblock (
1207 	krb5_context /*context*/,
1208 	krb5_keyblock */*keyblock*/);
1209 
1210 void
1211 krb5_free_keyblock_contents (
1212 	krb5_context /*context*/,
1213 	krb5_keyblock */*keyblock*/);
1214 
1215 krb5_error_code
1216 krb5_free_krbhst (
1217 	krb5_context /*context*/,
1218 	char **/*hostlist*/);
1219 
1220 void
1221 krb5_free_principal (
1222 	krb5_context /*context*/,
1223 	krb5_principal /*p*/);
1224 
1225 krb5_error_code
1226 krb5_free_salt (
1227 	krb5_context /*context*/,
1228 	krb5_salt /*salt*/);
1229 
1230 krb5_error_code
1231 krb5_free_ticket (
1232 	krb5_context /*context*/,
1233 	krb5_ticket */*ticket*/);
1234 
1235 krb5_error_code
1236 krb5_fwd_tgt_creds (
1237 	krb5_context /*context*/,
1238 	krb5_auth_context /*auth_context*/,
1239 	const char */*hostname*/,
1240 	krb5_principal /*client*/,
1241 	krb5_principal /*server*/,
1242 	krb5_ccache /*ccache*/,
1243 	int /*forwardable*/,
1244 	krb5_data */*out_data*/);
1245 
1246 void
1247 krb5_generate_random_block (
1248 	void */*buf*/,
1249 	size_t /*len*/);
1250 
1251 krb5_error_code
1252 krb5_generate_random_keyblock (
1253 	krb5_context /*context*/,
1254 	krb5_enctype /*type*/,
1255 	krb5_keyblock */*key*/);
1256 
1257 krb5_error_code
1258 krb5_generate_seq_number (
1259 	krb5_context /*context*/,
1260 	const krb5_keyblock */*key*/,
1261 	u_int32_t */*seqno*/);
1262 
1263 krb5_error_code
1264 krb5_generate_subkey (
1265 	krb5_context /*context*/,
1266 	const krb5_keyblock */*key*/,
1267 	krb5_keyblock **/*subkey*/);
1268 
1269 krb5_error_code
1270 krb5_get_all_client_addrs (
1271 	krb5_context /*context*/,
1272 	krb5_addresses */*res*/);
1273 
1274 krb5_error_code
1275 krb5_get_all_server_addrs (
1276 	krb5_context /*context*/,
1277 	krb5_addresses */*res*/);
1278 
1279 krb5_error_code
1280 krb5_get_cred_from_kdc (
1281 	krb5_context /*context*/,
1282 	krb5_ccache /*ccache*/,
1283 	krb5_creds */*in_creds*/,
1284 	krb5_creds **/*out_creds*/,
1285 	krb5_creds ***/*ret_tgts*/);
1286 
1287 krb5_error_code
1288 krb5_get_cred_from_kdc_opt (
1289 	krb5_context /*context*/,
1290 	krb5_ccache /*ccache*/,
1291 	krb5_creds */*in_creds*/,
1292 	krb5_creds **/*out_creds*/,
1293 	krb5_creds ***/*ret_tgts*/,
1294 	krb5_flags /*flags*/);
1295 
1296 krb5_error_code
1297 krb5_get_credentials (
1298 	krb5_context /*context*/,
1299 	krb5_flags /*options*/,
1300 	krb5_ccache /*ccache*/,
1301 	krb5_creds */*in_creds*/,
1302 	krb5_creds **/*out_creds*/);
1303 
1304 krb5_error_code
1305 krb5_get_credentials_with_flags (
1306 	krb5_context /*context*/,
1307 	krb5_flags /*options*/,
1308 	krb5_kdc_flags /*flags*/,
1309 	krb5_ccache /*ccache*/,
1310 	krb5_creds */*in_creds*/,
1311 	krb5_creds **/*out_creds*/);
1312 
1313 krb5_error_code
1314 krb5_get_default_config_files (char ***/*pfilenames*/);
1315 
1316 krb5_error_code
1317 krb5_get_default_in_tkt_etypes (
1318 	krb5_context /*context*/,
1319 	krb5_enctype **/*etypes*/);
1320 
1321 krb5_error_code
1322 krb5_get_default_principal (
1323 	krb5_context /*context*/,
1324 	krb5_principal */*princ*/);
1325 
1326 krb5_error_code
1327 krb5_get_default_realm (
1328 	krb5_context /*context*/,
1329 	krb5_realm */*realm*/);
1330 
1331 krb5_error_code
1332 krb5_get_default_realms (
1333 	krb5_context /*context*/,
1334 	krb5_realm **/*realms*/);
1335 
1336 const char *
1337 krb5_get_err_text (
1338 	krb5_context /*context*/,
1339 	krb5_error_code /*code*/);
1340 
1341 char*
1342 krb5_get_error_string (krb5_context /*context*/);
1343 
1344 krb5_error_code
1345 krb5_get_extra_addresses (
1346 	krb5_context /*context*/,
1347 	krb5_addresses */*addresses*/);
1348 
1349 krb5_error_code
1350 krb5_get_fcache_version (
1351 	krb5_context /*context*/,
1352 	int */*version*/);
1353 
1354 krb5_error_code
1355 krb5_get_forwarded_creds (
1356 	krb5_context /*context*/,
1357 	krb5_auth_context /*auth_context*/,
1358 	krb5_ccache /*ccache*/,
1359 	krb5_flags /*flags*/,
1360 	const char */*hostname*/,
1361 	krb5_creds */*in_creds*/,
1362 	krb5_data */*out_data*/);
1363 
1364 krb5_error_code
1365 krb5_get_host_realm (
1366 	krb5_context /*context*/,
1367 	const char */*host*/,
1368 	krb5_realm **/*realms*/);
1369 
1370 krb5_error_code
1371 krb5_get_host_realm_int (
1372 	krb5_context /*context*/,
1373 	const char */*host*/,
1374 	krb5_boolean /*use_dns*/,
1375 	krb5_realm **/*realms*/);
1376 
1377 krb5_error_code
1378 krb5_get_ignore_addresses (
1379 	krb5_context /*context*/,
1380 	krb5_addresses */*addresses*/);
1381 
1382 krb5_error_code
1383 krb5_get_in_cred (
1384 	krb5_context /*context*/,
1385 	krb5_flags /*options*/,
1386 	const krb5_addresses */*addrs*/,
1387 	const krb5_enctype */*etypes*/,
1388 	const krb5_preauthtype */*ptypes*/,
1389 	const krb5_preauthdata */*preauth*/,
1390 	krb5_key_proc /*key_proc*/,
1391 	krb5_const_pointer /*keyseed*/,
1392 	krb5_decrypt_proc /*decrypt_proc*/,
1393 	krb5_const_pointer /*decryptarg*/,
1394 	krb5_creds */*creds*/,
1395 	krb5_kdc_rep */*ret_as_reply*/);
1396 
1397 krb5_error_code
1398 krb5_get_in_tkt (
1399 	krb5_context /*context*/,
1400 	krb5_flags /*options*/,
1401 	const krb5_addresses */*addrs*/,
1402 	const krb5_enctype */*etypes*/,
1403 	const krb5_preauthtype */*ptypes*/,
1404 	krb5_key_proc /*key_proc*/,
1405 	krb5_const_pointer /*keyseed*/,
1406 	krb5_decrypt_proc /*decrypt_proc*/,
1407 	krb5_const_pointer /*decryptarg*/,
1408 	krb5_creds */*creds*/,
1409 	krb5_ccache /*ccache*/,
1410 	krb5_kdc_rep */*ret_as_reply*/);
1411 
1412 krb5_error_code
1413 krb5_get_in_tkt_with_keytab (
1414 	krb5_context /*context*/,
1415 	krb5_flags /*options*/,
1416 	krb5_addresses */*addrs*/,
1417 	const krb5_enctype */*etypes*/,
1418 	const krb5_preauthtype */*pre_auth_types*/,
1419 	krb5_keytab /*keytab*/,
1420 	krb5_ccache /*ccache*/,
1421 	krb5_creds */*creds*/,
1422 	krb5_kdc_rep */*ret_as_reply*/);
1423 
1424 krb5_error_code
1425 krb5_get_in_tkt_with_password (
1426 	krb5_context /*context*/,
1427 	krb5_flags /*options*/,
1428 	krb5_addresses */*addrs*/,
1429 	const krb5_enctype */*etypes*/,
1430 	const krb5_preauthtype */*pre_auth_types*/,
1431 	const char */*password*/,
1432 	krb5_ccache /*ccache*/,
1433 	krb5_creds */*creds*/,
1434 	krb5_kdc_rep */*ret_as_reply*/);
1435 
1436 krb5_error_code
1437 krb5_get_in_tkt_with_skey (
1438 	krb5_context /*context*/,
1439 	krb5_flags /*options*/,
1440 	krb5_addresses */*addrs*/,
1441 	const krb5_enctype */*etypes*/,
1442 	const krb5_preauthtype */*pre_auth_types*/,
1443 	const krb5_keyblock */*key*/,
1444 	krb5_ccache /*ccache*/,
1445 	krb5_creds */*creds*/,
1446 	krb5_kdc_rep */*ret_as_reply*/);
1447 
1448 krb5_error_code
1449 krb5_get_init_creds_keytab (
1450 	krb5_context /*context*/,
1451 	krb5_creds */*creds*/,
1452 	krb5_principal /*client*/,
1453 	krb5_keytab /*keytab*/,
1454 	krb5_deltat /*start_time*/,
1455 	const char */*in_tkt_service*/,
1456 	krb5_get_init_creds_opt */*options*/);
1457 
1458 void
1459 krb5_get_init_creds_opt_init (krb5_get_init_creds_opt */*opt*/);
1460 
1461 void
1462 krb5_get_init_creds_opt_set_address_list (
1463 	krb5_get_init_creds_opt */*opt*/,
1464 	krb5_addresses */*addresses*/);
1465 
1466 void
1467 krb5_get_init_creds_opt_set_anonymous (
1468 	krb5_get_init_creds_opt */*opt*/,
1469 	int /*anonymous*/);
1470 
1471 void
1472 krb5_get_init_creds_opt_set_default_flags (
1473 	krb5_context /*context*/,
1474 	const char */*appname*/,
1475 	krb5_const_realm /*realm*/,
1476 	krb5_get_init_creds_opt */*opt*/);
1477 
1478 void
1479 krb5_get_init_creds_opt_set_etype_list (
1480 	krb5_get_init_creds_opt */*opt*/,
1481 	krb5_enctype */*etype_list*/,
1482 	int /*etype_list_length*/);
1483 
1484 void
1485 krb5_get_init_creds_opt_set_forwardable (
1486 	krb5_get_init_creds_opt */*opt*/,
1487 	int /*forwardable*/);
1488 
1489 void
1490 krb5_get_init_creds_opt_set_preauth_list (
1491 	krb5_get_init_creds_opt */*opt*/,
1492 	krb5_preauthtype */*preauth_list*/,
1493 	int /*preauth_list_length*/);
1494 
1495 void
1496 krb5_get_init_creds_opt_set_proxiable (
1497 	krb5_get_init_creds_opt */*opt*/,
1498 	int /*proxiable*/);
1499 
1500 void
1501 krb5_get_init_creds_opt_set_renew_life (
1502 	krb5_get_init_creds_opt */*opt*/,
1503 	krb5_deltat /*renew_life*/);
1504 
1505 void
1506 krb5_get_init_creds_opt_set_salt (
1507 	krb5_get_init_creds_opt */*opt*/,
1508 	krb5_data */*salt*/);
1509 
1510 void
1511 krb5_get_init_creds_opt_set_tkt_life (
1512 	krb5_get_init_creds_opt */*opt*/,
1513 	krb5_deltat /*tkt_life*/);
1514 
1515 krb5_error_code
1516 krb5_get_init_creds_password (
1517 	krb5_context /*context*/,
1518 	krb5_creds */*creds*/,
1519 	krb5_principal /*client*/,
1520 	const char */*password*/,
1521 	krb5_prompter_fct /*prompter*/,
1522 	void */*data*/,
1523 	krb5_deltat /*start_time*/,
1524 	const char */*in_tkt_service*/,
1525 	krb5_get_init_creds_opt */*options*/);
1526 
1527 krb5_error_code
1528 krb5_get_kdc_cred (
1529 	krb5_context /*context*/,
1530 	krb5_ccache /*id*/,
1531 	krb5_kdc_flags /*flags*/,
1532 	krb5_addresses */*addresses*/,
1533 	Ticket */*second_ticket*/,
1534 	krb5_creds */*in_creds*/,
1535 	krb5_creds **out_creds );
1536 
1537 krb5_error_code
1538 krb5_get_krb524hst (
1539 	krb5_context /*context*/,
1540 	const krb5_realm */*realm*/,
1541 	char ***/*hostlist*/);
1542 
1543 krb5_error_code
1544 krb5_get_krb_admin_hst (
1545 	krb5_context /*context*/,
1546 	const krb5_realm */*realm*/,
1547 	char ***/*hostlist*/);
1548 
1549 krb5_error_code
1550 krb5_get_krb_changepw_hst (
1551 	krb5_context /*context*/,
1552 	const krb5_realm */*realm*/,
1553 	char ***/*hostlist*/);
1554 
1555 krb5_error_code
1556 krb5_get_krbhst (
1557 	krb5_context /*context*/,
1558 	const krb5_realm */*realm*/,
1559 	char ***/*hostlist*/);
1560 
1561 krb5_error_code
1562 krb5_get_pw_salt (
1563 	krb5_context /*context*/,
1564 	krb5_const_principal /*principal*/,
1565 	krb5_salt */*salt*/);
1566 
1567 krb5_error_code
1568 krb5_get_server_rcache (
1569 	krb5_context /*context*/,
1570 	const krb5_data */*piece*/,
1571 	krb5_rcache */*id*/);
1572 
1573 krb5_boolean
1574 krb5_get_use_admin_kdc (krb5_context /*context*/);
1575 
1576 size_t
1577 krb5_get_wrapped_length (
1578 	krb5_context /*context*/,
1579 	krb5_crypto /*crypto*/,
1580 	size_t /*data_len*/);
1581 
1582 int
1583 krb5_getportbyname (
1584 	krb5_context /*context*/,
1585 	const char */*service*/,
1586 	const char */*proto*/,
1587 	int /*default_port*/);
1588 
1589 krb5_error_code
1590 krb5_h_addr2addr (
1591 	krb5_context /*context*/,
1592 	int /*af*/,
1593 	const char */*haddr*/,
1594 	krb5_address */*addr*/);
1595 
1596 krb5_error_code
1597 krb5_h_addr2sockaddr (
1598 	krb5_context /*context*/,
1599 	int /*af*/,
1600 	const char */*addr*/,
1601 	struct sockaddr */*sa*/,
1602 	krb5_socklen_t */*sa_size*/,
1603 	int /*port*/);
1604 
1605 krb5_error_code
1606 krb5_h_errno_to_heim_errno (int /*eai_errno*/);
1607 
1608 krb5_boolean
1609 krb5_have_error_string (krb5_context /*context*/);
1610 
1611 krb5_error_code
1612 krb5_init_context (krb5_context */*context*/);
1613 
1614 void
1615 krb5_init_ets (krb5_context /*context*/);
1616 
1617 krb5_error_code
1618 krb5_init_etype (
1619 	krb5_context /*context*/,
1620 	unsigned */*len*/,
1621 	krb5_enctype **/*val*/,
1622 	const krb5_enctype */*etypes*/);
1623 
1624 krb5_error_code
1625 krb5_initlog (
1626 	krb5_context /*context*/,
1627 	const char */*program*/,
1628 	krb5_log_facility **/*fac*/);
1629 
1630 krb5_error_code
1631 krb5_keyblock_key_proc (
1632 	krb5_context /*context*/,
1633 	krb5_keytype /*type*/,
1634 	krb5_data */*salt*/,
1635 	krb5_const_pointer /*keyseed*/,
1636 	krb5_keyblock **/*key*/);
1637 
1638 krb5_error_code
1639 krb5_keytab_key_proc (
1640 	krb5_context /*context*/,
1641 	krb5_enctype /*enctype*/,
1642 	krb5_salt /*salt*/,
1643 	krb5_const_pointer /*keyseed*/,
1644 	krb5_keyblock **/*key*/);
1645 
1646 krb5_error_code
1647 krb5_keytype_to_enctypes (
1648 	krb5_context /*context*/,
1649 	krb5_keytype /*keytype*/,
1650 	unsigned */*len*/,
1651 	krb5_enctype **/*val*/);
1652 
1653 krb5_error_code
1654 krb5_keytype_to_enctypes_default (
1655 	krb5_context /*context*/,
1656 	krb5_keytype /*keytype*/,
1657 	unsigned */*len*/,
1658 	krb5_enctype **/*val*/);
1659 
1660 krb5_error_code
1661 krb5_keytype_to_string (
1662 	krb5_context /*context*/,
1663 	krb5_keytype /*keytype*/,
1664 	char **/*string*/);
1665 
1666 krb5_error_code
1667 krb5_krbhst_format_string (
1668 	krb5_context /*context*/,
1669 	const krb5_krbhst_info */*host*/,
1670 	char */*hostname*/,
1671 	size_t /*hostlen*/);
1672 
1673 void
1674 krb5_krbhst_free (
1675 	krb5_context /*context*/,
1676 	krb5_krbhst_handle /*handle*/);
1677 
1678 krb5_error_code
1679 krb5_krbhst_get_addrinfo (
1680 	krb5_context /*context*/,
1681 	krb5_krbhst_info */*host*/,
1682 	struct addrinfo **/*ai*/);
1683 
1684 krb5_error_code
1685 krb5_krbhst_init (
1686 	krb5_context /*context*/,
1687 	const char */*realm*/,
1688 	unsigned int /*type*/,
1689 	krb5_krbhst_handle */*handle*/);
1690 
1691 krb5_error_code
1692 krb5_krbhst_next (
1693 	krb5_context /*context*/,
1694 	krb5_krbhst_handle /*handle*/,
1695 	krb5_krbhst_info **/*host*/);
1696 
1697 krb5_error_code
1698 krb5_krbhst_next_as_string (
1699 	krb5_context /*context*/,
1700 	krb5_krbhst_handle /*handle*/,
1701 	char */*hostname*/,
1702 	size_t /*hostlen*/);
1703 
1704 void
1705 krb5_krbhst_reset (
1706 	krb5_context /*context*/,
1707 	krb5_krbhst_handle /*handle*/);
1708 
1709 krb5_error_code
1710 krb5_kt_add_entry (
1711 	krb5_context /*context*/,
1712 	krb5_keytab /*id*/,
1713 	krb5_keytab_entry */*entry*/);
1714 
1715 krb5_error_code
1716 krb5_kt_close (
1717 	krb5_context /*context*/,
1718 	krb5_keytab /*id*/);
1719 
1720 krb5_boolean
1721 krb5_kt_compare (
1722 	krb5_context /*context*/,
1723 	krb5_keytab_entry */*entry*/,
1724 	krb5_const_principal /*principal*/,
1725 	krb5_kvno /*vno*/,
1726 	krb5_enctype /*enctype*/);
1727 
1728 krb5_error_code
1729 krb5_kt_copy_entry_contents (
1730 	krb5_context /*context*/,
1731 	const krb5_keytab_entry */*in*/,
1732 	krb5_keytab_entry */*out*/);
1733 
1734 krb5_error_code
1735 krb5_kt_default (
1736 	krb5_context /*context*/,
1737 	krb5_keytab */*id*/);
1738 
1739 krb5_error_code
1740 krb5_kt_default_modify_name (
1741 	krb5_context /*context*/,
1742 	char */*name*/,
1743 	size_t /*namesize*/);
1744 
1745 krb5_error_code
1746 krb5_kt_default_name (
1747 	krb5_context /*context*/,
1748 	char */*name*/,
1749 	size_t /*namesize*/);
1750 
1751 krb5_error_code
1752 krb5_kt_end_seq_get (
1753 	krb5_context /*context*/,
1754 	krb5_keytab /*id*/,
1755 	krb5_kt_cursor */*cursor*/);
1756 
1757 krb5_error_code
1758 krb5_kt_free_entry (
1759 	krb5_context /*context*/,
1760 	krb5_keytab_entry */*entry*/);
1761 
1762 krb5_error_code
1763 krb5_kt_get_entry (
1764 	krb5_context /*context*/,
1765 	krb5_keytab /*id*/,
1766 	krb5_const_principal /*principal*/,
1767 	krb5_kvno /*kvno*/,
1768 	krb5_enctype /*enctype*/,
1769 	krb5_keytab_entry */*entry*/);
1770 
1771 krb5_error_code
1772 krb5_kt_get_name (
1773 	krb5_context /*context*/,
1774 	krb5_keytab /*keytab*/,
1775 	char */*name*/,
1776 	size_t /*namesize*/);
1777 
1778 krb5_error_code
1779 krb5_kt_next_entry (
1780 	krb5_context /*context*/,
1781 	krb5_keytab /*id*/,
1782 	krb5_keytab_entry */*entry*/,
1783 	krb5_kt_cursor */*cursor*/);
1784 
1785 krb5_error_code
1786 krb5_kt_read_service_key (
1787 	krb5_context /*context*/,
1788 	krb5_pointer /*keyprocarg*/,
1789 	krb5_principal /*principal*/,
1790 	krb5_kvno /*vno*/,
1791 	krb5_enctype /*enctype*/,
1792 	krb5_keyblock **/*key*/);
1793 
1794 krb5_error_code
1795 krb5_kt_register (
1796 	krb5_context /*context*/,
1797 	const krb5_kt_ops */*ops*/);
1798 
1799 krb5_error_code
1800 krb5_kt_remove_entry (
1801 	krb5_context /*context*/,
1802 	krb5_keytab /*id*/,
1803 	krb5_keytab_entry */*entry*/);
1804 
1805 krb5_error_code
1806 krb5_kt_resolve (
1807 	krb5_context /*context*/,
1808 	const char */*name*/,
1809 	krb5_keytab */*id*/);
1810 
1811 krb5_error_code
1812 krb5_kt_start_seq_get (
1813 	krb5_context /*context*/,
1814 	krb5_keytab /*id*/,
1815 	krb5_kt_cursor */*cursor*/);
1816 
1817 krb5_boolean
1818 krb5_kuserok (
1819 	krb5_context /*context*/,
1820 	krb5_principal /*principal*/,
1821 	const char */*luser*/);
1822 
1823 krb5_error_code
1824 krb5_log (
1825 	krb5_context /*context*/,
1826 	krb5_log_facility */*fac*/,
1827 	int /*level*/,
1828 	const char */*fmt*/,
1829 	...)
1830     __attribute__((format (printf, 4, 5)));
1831 
1832 krb5_error_code
1833 krb5_log_msg (
1834 	krb5_context /*context*/,
1835 	krb5_log_facility */*fac*/,
1836 	int /*level*/,
1837 	char **/*reply*/,
1838 	const char */*fmt*/,
1839 	...)
1840     __attribute__((format (printf, 5, 6)));
1841 
1842 krb5_error_code
1843 krb5_make_addrport (
1844 	krb5_context /*context*/,
1845 	krb5_address **/*res*/,
1846 	const krb5_address */*addr*/,
1847 	int16_t /*port*/);
1848 
1849 krb5_error_code
1850 krb5_make_principal (
1851 	krb5_context /*context*/,
1852 	krb5_principal */*principal*/,
1853 	krb5_const_realm /*realm*/,
1854 	...);
1855 
1856 size_t
1857 krb5_max_sockaddr_size (void);
1858 
1859 krb5_error_code
1860 krb5_mk_error (
1861 	krb5_context /*context*/,
1862 	krb5_error_code /*error_code*/,
1863 	const char */*e_text*/,
1864 	const krb5_data */*e_data*/,
1865 	const krb5_principal /*client*/,
1866 	const krb5_principal /*server*/,
1867 	time_t */*client_time*/,
1868 	int */*client_usec*/,
1869 	krb5_data */*reply*/);
1870 
1871 krb5_error_code
1872 krb5_mk_priv (
1873 	krb5_context /*context*/,
1874 	krb5_auth_context /*auth_context*/,
1875 	const krb5_data */*userdata*/,
1876 	krb5_data */*outbuf*/,
1877 	void */*outdata*/);
1878 
1879 krb5_error_code
1880 krb5_mk_rep (
1881 	krb5_context /*context*/,
1882 	krb5_auth_context /*auth_context*/,
1883 	krb5_data */*outbuf*/);
1884 
1885 krb5_error_code
1886 krb5_mk_req (
1887 	krb5_context /*context*/,
1888 	krb5_auth_context */*auth_context*/,
1889 	const krb5_flags /*ap_req_options*/,
1890 	const char */*service*/,
1891 	const char */*hostname*/,
1892 	krb5_data */*in_data*/,
1893 	krb5_ccache /*ccache*/,
1894 	krb5_data */*outbuf*/);
1895 
1896 krb5_error_code
1897 krb5_mk_req_exact (
1898 	krb5_context /*context*/,
1899 	krb5_auth_context */*auth_context*/,
1900 	const krb5_flags /*ap_req_options*/,
1901 	const krb5_principal /*server*/,
1902 	krb5_data */*in_data*/,
1903 	krb5_ccache /*ccache*/,
1904 	krb5_data */*outbuf*/);
1905 
1906 krb5_error_code
1907 krb5_mk_req_extended (
1908 	krb5_context /*context*/,
1909 	krb5_auth_context */*auth_context*/,
1910 	const krb5_flags /*ap_req_options*/,
1911 	krb5_data */*in_data*/,
1912 	krb5_creds */*in_creds*/,
1913 	krb5_data */*outbuf*/);
1914 
1915 krb5_error_code
1916 krb5_mk_req_internal (
1917 	krb5_context /*context*/,
1918 	krb5_auth_context */*auth_context*/,
1919 	const krb5_flags /*ap_req_options*/,
1920 	krb5_data */*in_data*/,
1921 	krb5_creds */*in_creds*/,
1922 	krb5_data */*outbuf*/,
1923 	krb5_key_usage /*checksum_usage*/,
1924 	krb5_key_usage /*encrypt_usage*/);
1925 
1926 krb5_error_code
1927 krb5_mk_safe (
1928 	krb5_context /*context*/,
1929 	krb5_auth_context /*auth_context*/,
1930 	const krb5_data */*userdata*/,
1931 	krb5_data */*outbuf*/,
1932 	void */*outdata*/);
1933 
1934 krb5_ssize_t
1935 krb5_net_read (
1936 	krb5_context /*context*/,
1937 	void */*p_fd*/,
1938 	void */*buf*/,
1939 	size_t /*len*/);
1940 
1941 krb5_ssize_t
1942 krb5_net_write (
1943 	krb5_context /*context*/,
1944 	void */*p_fd*/,
1945 	const void */*buf*/,
1946 	size_t /*len*/);
1947 
1948 krb5_error_code
1949 krb5_openlog (
1950 	krb5_context /*context*/,
1951 	const char */*program*/,
1952 	krb5_log_facility **/*fac*/);
1953 
1954 krb5_error_code
1955 krb5_parse_address (
1956 	krb5_context /*context*/,
1957 	const char */*string*/,
1958 	krb5_addresses */*addresses*/);
1959 
1960 krb5_error_code
1961 krb5_parse_name (
1962 	krb5_context /*context*/,
1963 	const char */*name*/,
1964 	krb5_principal */*principal*/);
1965 
1966 const char *
1967 krb5_passwd_result_to_string (
1968 	krb5_context /*context*/,
1969 	int /*result*/);
1970 
1971 krb5_error_code
1972 krb5_password_key_proc (
1973 	krb5_context /*context*/,
1974 	krb5_enctype /*type*/,
1975 	krb5_salt /*salt*/,
1976 	krb5_const_pointer /*keyseed*/,
1977 	krb5_keyblock **/*key*/);
1978 
1979 krb5_realm*
1980 krb5_princ_realm (
1981 	krb5_context /*context*/,
1982 	krb5_principal /*principal*/);
1983 
1984 void
1985 krb5_princ_set_realm (
1986 	krb5_context /*context*/,
1987 	krb5_principal /*principal*/,
1988 	krb5_realm */*realm*/);
1989 
1990 krb5_error_code
1991 krb5_principal2principalname (
1992 	PrincipalName */*p*/,
1993 	const krb5_principal /*from*/);
1994 
1995 krb5_boolean
1996 krb5_principal_compare (
1997 	krb5_context /*context*/,
1998 	krb5_const_principal /*princ1*/,
1999 	krb5_const_principal /*princ2*/);
2000 
2001 krb5_boolean
2002 krb5_principal_compare_any_realm (
2003 	krb5_context /*context*/,
2004 	krb5_const_principal /*princ1*/,
2005 	krb5_const_principal /*princ2*/);
2006 
2007 const char *
2008 krb5_principal_get_comp_string (
2009 	krb5_context /*context*/,
2010 	krb5_principal /*principal*/,
2011 	unsigned int /*component*/);
2012 
2013 const char *
2014 krb5_principal_get_realm (
2015 	krb5_context /*context*/,
2016 	krb5_principal /*principal*/);
2017 
2018 int
2019 krb5_principal_get_type (
2020 	krb5_context /*context*/,
2021 	krb5_principal /*principal*/);
2022 
2023 krb5_boolean
2024 krb5_principal_match (
2025 	krb5_context /*context*/,
2026 	krb5_const_principal /*princ*/,
2027 	krb5_const_principal /*pattern*/);
2028 
2029 krb5_error_code
2030 krb5_print_address (
2031 	const krb5_address */*addr*/,
2032 	char */*str*/,
2033 	size_t /*len*/,
2034 	size_t */*ret_len*/);
2035 
2036 int
2037 krb5_program_setup (
2038 	krb5_context */*context*/,
2039 	int /*argc*/,
2040 	char **/*argv*/,
2041 	struct getargs */*args*/,
2042 	int /*num_args*/,
2043 	void (*/*usage*/)(int, struct getargs*, int));
2044 
2045 int
2046 krb5_prompter_posix (
2047 	krb5_context /*context*/,
2048 	void */*data*/,
2049 	const char */*name*/,
2050 	const char */*banner*/,
2051 	int /*num_prompts*/,
2052 	krb5_prompt prompts[]);
2053 
2054 krb5_error_code
2055 krb5_rc_close (
2056 	krb5_context /*context*/,
2057 	krb5_rcache /*id*/);
2058 
2059 krb5_error_code
2060 krb5_rc_default (
2061 	krb5_context /*context*/,
2062 	krb5_rcache */*id*/);
2063 
2064 const char *
2065 krb5_rc_default_name (krb5_context /*context*/);
2066 
2067 const char *
2068 krb5_rc_default_type (krb5_context /*context*/);
2069 
2070 krb5_error_code
2071 krb5_rc_destroy (
2072 	krb5_context /*context*/,
2073 	krb5_rcache /*id*/);
2074 
2075 krb5_error_code
2076 krb5_rc_expunge (
2077 	krb5_context /*context*/,
2078 	krb5_rcache /*id*/);
2079 
2080 krb5_error_code
2081 krb5_rc_get_lifespan (
2082 	krb5_context /*context*/,
2083 	krb5_rcache /*id*/,
2084 	krb5_deltat */*auth_lifespan*/);
2085 
2086 const char*
2087 krb5_rc_get_name (
2088 	krb5_context /*context*/,
2089 	krb5_rcache /*id*/);
2090 
2091 const char*
2092 krb5_rc_get_type (
2093 	krb5_context /*context*/,
2094 	krb5_rcache /*id*/);
2095 
2096 krb5_error_code
2097 krb5_rc_initialize (
2098 	krb5_context /*context*/,
2099 	krb5_rcache /*id*/,
2100 	krb5_deltat /*auth_lifespan*/);
2101 
2102 krb5_error_code
2103 krb5_rc_recover (
2104 	krb5_context /*context*/,
2105 	krb5_rcache /*id*/);
2106 
2107 krb5_error_code
2108 krb5_rc_resolve (
2109 	krb5_context /*context*/,
2110 	krb5_rcache /*id*/,
2111 	const char */*name*/);
2112 
2113 krb5_error_code
2114 krb5_rc_resolve_full (
2115 	krb5_context /*context*/,
2116 	krb5_rcache */*id*/,
2117 	const char */*string_name*/);
2118 
2119 krb5_error_code
2120 krb5_rc_resolve_type (
2121 	krb5_context /*context*/,
2122 	krb5_rcache */*id*/,
2123 	const char */*type*/);
2124 
2125 krb5_error_code
2126 krb5_rc_store (
2127 	krb5_context /*context*/,
2128 	krb5_rcache /*id*/,
2129 	krb5_donot_replay */*rep*/);
2130 
2131 krb5_error_code
2132 krb5_rd_cred (
2133 	krb5_context /*context*/,
2134 	krb5_auth_context /*auth_context*/,
2135 	krb5_data */*in_data*/,
2136 	krb5_creds ***/*ret_creds*/,
2137 	krb5_replay_data */*out_data*/);
2138 
2139 krb5_error_code
2140 krb5_rd_cred2 (
2141 	krb5_context /*context*/,
2142 	krb5_auth_context /*auth_context*/,
2143 	krb5_ccache /*ccache*/,
2144 	krb5_data */*in_data*/);
2145 
2146 krb5_error_code
2147 krb5_rd_error (
2148 	krb5_context /*context*/,
2149 	krb5_data */*msg*/,
2150 	KRB_ERROR */*result*/);
2151 
2152 krb5_error_code
2153 krb5_rd_priv (
2154 	krb5_context /*context*/,
2155 	krb5_auth_context /*auth_context*/,
2156 	const krb5_data */*inbuf*/,
2157 	krb5_data */*outbuf*/,
2158 	void */*outdata*/);
2159 
2160 krb5_error_code
2161 krb5_rd_rep (
2162 	krb5_context /*context*/,
2163 	krb5_auth_context /*auth_context*/,
2164 	const krb5_data */*inbuf*/,
2165 	krb5_ap_rep_enc_part **/*repl*/);
2166 
2167 krb5_error_code
2168 krb5_rd_req (
2169 	krb5_context /*context*/,
2170 	krb5_auth_context */*auth_context*/,
2171 	const krb5_data */*inbuf*/,
2172 	krb5_const_principal /*server*/,
2173 	krb5_keytab /*keytab*/,
2174 	krb5_flags */*ap_req_options*/,
2175 	krb5_ticket **/*ticket*/);
2176 
2177 krb5_error_code
2178 krb5_rd_req_with_keyblock (
2179 	krb5_context /*context*/,
2180 	krb5_auth_context */*auth_context*/,
2181 	const krb5_data */*inbuf*/,
2182 	krb5_const_principal /*server*/,
2183 	krb5_keyblock */*keyblock*/,
2184 	krb5_flags */*ap_req_options*/,
2185 	krb5_ticket **/*ticket*/);
2186 
2187 krb5_error_code
2188 krb5_rd_safe (
2189 	krb5_context /*context*/,
2190 	krb5_auth_context /*auth_context*/,
2191 	const krb5_data */*inbuf*/,
2192 	krb5_data */*outbuf*/,
2193 	void */*outdata*/);
2194 
2195 krb5_error_code
2196 krb5_read_message (
2197 	krb5_context /*context*/,
2198 	krb5_pointer /*p_fd*/,
2199 	krb5_data */*data*/);
2200 
2201 krb5_error_code
2202 krb5_read_priv_message (
2203 	krb5_context /*context*/,
2204 	krb5_auth_context /*ac*/,
2205 	krb5_pointer /*p_fd*/,
2206 	krb5_data */*data*/);
2207 
2208 krb5_error_code
2209 krb5_read_safe_message (
2210 	krb5_context /*context*/,
2211 	krb5_auth_context /*ac*/,
2212 	krb5_pointer /*p_fd*/,
2213 	krb5_data */*data*/);
2214 
2215 krb5_boolean
2216 krb5_realm_compare (
2217 	krb5_context /*context*/,
2218 	krb5_const_principal /*princ1*/,
2219 	krb5_const_principal /*princ2*/);
2220 
2221 krb5_error_code
2222 krb5_recvauth (
2223 	krb5_context /*context*/,
2224 	krb5_auth_context */*auth_context*/,
2225 	krb5_pointer /*p_fd*/,
2226 	const char */*appl_version*/,
2227 	krb5_principal /*server*/,
2228 	int32_t /*flags*/,
2229 	krb5_keytab /*keytab*/,
2230 	krb5_ticket **/*ticket*/);
2231 
2232 krb5_error_code
2233 krb5_recvauth_match_version (
2234 	krb5_context /*context*/,
2235 	krb5_auth_context */*auth_context*/,
2236 	krb5_pointer /*p_fd*/,
2237 	krb5_boolean (*/*match_appl_version*/)(const void *, const char*),
2238 	const void */*match_data*/,
2239 	krb5_principal /*server*/,
2240 	int32_t /*flags*/,
2241 	krb5_keytab /*keytab*/,
2242 	krb5_ticket **/*ticket*/);
2243 
2244 krb5_error_code
2245 krb5_ret_address (
2246 	krb5_storage */*sp*/,
2247 	krb5_address */*adr*/);
2248 
2249 krb5_error_code
2250 krb5_ret_addrs (
2251 	krb5_storage */*sp*/,
2252 	krb5_addresses */*adr*/);
2253 
2254 krb5_error_code
2255 krb5_ret_authdata (
2256 	krb5_storage */*sp*/,
2257 	krb5_authdata */*auth*/);
2258 
2259 krb5_error_code
2260 krb5_ret_creds (
2261 	krb5_storage */*sp*/,
2262 	krb5_creds */*creds*/);
2263 
2264 krb5_error_code
2265 krb5_ret_data (
2266 	krb5_storage */*sp*/,
2267 	krb5_data */*data*/);
2268 
2269 krb5_error_code
2270 krb5_ret_int16 (
2271 	krb5_storage */*sp*/,
2272 	int16_t */*value*/);
2273 
2274 krb5_error_code
2275 krb5_ret_int32 (
2276 	krb5_storage */*sp*/,
2277 	int32_t */*value*/);
2278 
2279 krb5_error_code
2280 krb5_ret_int8 (
2281 	krb5_storage */*sp*/,
2282 	int8_t */*value*/);
2283 
2284 krb5_error_code
2285 krb5_ret_keyblock (
2286 	krb5_storage */*sp*/,
2287 	krb5_keyblock */*p*/);
2288 
2289 krb5_error_code
2290 krb5_ret_principal (
2291 	krb5_storage */*sp*/,
2292 	krb5_principal */*princ*/);
2293 
2294 krb5_error_code
2295 krb5_ret_string (
2296 	krb5_storage */*sp*/,
2297 	char **/*string*/);
2298 
2299 krb5_error_code
2300 krb5_ret_stringz (
2301 	krb5_storage */*sp*/,
2302 	char **/*string*/);
2303 
2304 krb5_error_code
2305 krb5_ret_times (
2306 	krb5_storage */*sp*/,
2307 	krb5_times */*times*/);
2308 
2309 krb5_error_code
2310 krb5_salttype_to_string (
2311 	krb5_context /*context*/,
2312 	krb5_enctype /*etype*/,
2313 	krb5_salttype /*stype*/,
2314 	char **/*string*/);
2315 
2316 krb5_error_code
2317 krb5_sendauth (
2318 	krb5_context /*context*/,
2319 	krb5_auth_context */*auth_context*/,
2320 	krb5_pointer /*p_fd*/,
2321 	const char */*appl_version*/,
2322 	krb5_principal /*client*/,
2323 	krb5_principal /*server*/,
2324 	krb5_flags /*ap_req_options*/,
2325 	krb5_data */*in_data*/,
2326 	krb5_creds */*in_creds*/,
2327 	krb5_ccache /*ccache*/,
2328 	krb5_error **/*ret_error*/,
2329 	krb5_ap_rep_enc_part **/*rep_result*/,
2330 	krb5_creds **/*out_creds*/);
2331 
2332 krb5_error_code
2333 krb5_sendto (
2334 	krb5_context /*context*/,
2335 	const krb5_data */*send_data*/,
2336 	krb5_krbhst_handle /*handle*/,
2337 	krb5_data */*receive*/);
2338 
2339 krb5_error_code
2340 krb5_sendto_kdc (
2341 	krb5_context /*context*/,
2342 	const krb5_data */*send_data*/,
2343 	const krb5_realm */*realm*/,
2344 	krb5_data */*receive*/);
2345 
2346 krb5_error_code
2347 krb5_sendto_kdc2 (
2348 	krb5_context /*context*/,
2349 	const krb5_data */*send_data*/,
2350 	const krb5_realm */*realm*/,
2351 	krb5_data */*receive*/,
2352 	krb5_boolean /*master*/);
2353 
2354 krb5_error_code
2355 krb5_set_config_files (
2356 	krb5_context /*context*/,
2357 	char **/*filenames*/);
2358 
2359 krb5_error_code
2360 krb5_set_default_in_tkt_etypes (
2361 	krb5_context /*context*/,
2362 	const krb5_enctype */*etypes*/);
2363 
2364 krb5_error_code
2365 krb5_set_default_realm (
2366 	krb5_context /*context*/,
2367 	const char */*realm*/);
2368 
2369 krb5_error_code
2370 krb5_set_error_string (
2371 	krb5_context /*context*/,
2372 	const char */*fmt*/,
2373 	...)
2374     __attribute__((format (printf, 2, 3)));
2375 
2376 krb5_error_code
2377 krb5_set_extra_addresses (
2378 	krb5_context /*context*/,
2379 	const krb5_addresses */*addresses*/);
2380 
2381 krb5_error_code
2382 krb5_set_fcache_version (
2383 	krb5_context /*context*/,
2384 	int /*version*/);
2385 
2386 krb5_error_code
2387 krb5_set_ignore_addresses (
2388 	krb5_context /*context*/,
2389 	const krb5_addresses */*addresses*/);
2390 
2391 void
2392 krb5_set_use_admin_kdc (
2393 	krb5_context /*context*/,
2394 	krb5_boolean /*flag*/);
2395 
2396 krb5_error_code
2397 krb5_set_warn_dest (
2398 	krb5_context /*context*/,
2399 	krb5_log_facility */*fac*/);
2400 
2401 krb5_error_code
2402 krb5_sname_to_principal (
2403 	krb5_context /*context*/,
2404 	const char */*hostname*/,
2405 	const char */*sname*/,
2406 	int32_t /*type*/,
2407 	krb5_principal */*ret_princ*/);
2408 
2409 krb5_error_code
2410 krb5_sock_to_principal (
2411 	krb5_context /*context*/,
2412 	int /*sock*/,
2413 	const char */*sname*/,
2414 	int32_t /*type*/,
2415 	krb5_principal */*ret_princ*/);
2416 
2417 krb5_error_code
2418 krb5_sockaddr2address (
2419 	krb5_context /*context*/,
2420 	const struct sockaddr */*sa*/,
2421 	krb5_address */*addr*/);
2422 
2423 krb5_error_code
2424 krb5_sockaddr2port (
2425 	krb5_context /*context*/,
2426 	const struct sockaddr */*sa*/,
2427 	int16_t */*port*/);
2428 
2429 krb5_boolean
2430 krb5_sockaddr_uninteresting (const struct sockaddr */*sa*/);
2431 
2432 void
2433 krb5_std_usage (
2434 	int /*code*/,
2435 	struct getargs */*args*/,
2436 	int /*num_args*/);
2437 
2438 void
2439 krb5_storage_clear_flags (
2440 	krb5_storage */*sp*/,
2441 	krb5_flags /*flags*/);
2442 
2443 krb5_storage *
2444 krb5_storage_emem (void);
2445 
2446 krb5_error_code
2447 krb5_storage_free (krb5_storage */*sp*/);
2448 
2449 krb5_storage *
2450 krb5_storage_from_data (krb5_data */*data*/);
2451 
2452 krb5_storage *
2453 krb5_storage_from_fd (int /*fd*/);
2454 
2455 krb5_storage *
2456 krb5_storage_from_mem (
2457 	void */*buf*/,
2458 	size_t /*len*/);
2459 
2460 krb5_flags
2461 krb5_storage_get_byteorder (
2462 	krb5_storage */*sp*/,
2463 	krb5_flags /*byteorder*/);
2464 
2465 krb5_boolean
2466 krb5_storage_is_flags (
2467 	krb5_storage */*sp*/,
2468 	krb5_flags /*flags*/);
2469 
2470 krb5_ssize_t
2471 krb5_storage_read (
2472 	krb5_storage */*sp*/,
2473 	void */*buf*/,
2474 	size_t /*len*/);
2475 
2476 off_t
2477 krb5_storage_seek (
2478 	krb5_storage */*sp*/,
2479 	off_t /*offset*/,
2480 	int /*whence*/);
2481 
2482 void
2483 krb5_storage_set_byteorder (
2484 	krb5_storage */*sp*/,
2485 	krb5_flags /*byteorder*/);
2486 
2487 void
2488 krb5_storage_set_eof_code (
2489 	krb5_storage */*sp*/,
2490 	int /*code*/);
2491 
2492 void
2493 krb5_storage_set_flags (
2494 	krb5_storage */*sp*/,
2495 	krb5_flags /*flags*/);
2496 
2497 krb5_error_code
2498 krb5_storage_to_data (
2499 	krb5_storage */*sp*/,
2500 	krb5_data */*data*/);
2501 
2502 krb5_ssize_t
2503 krb5_storage_write (
2504 	krb5_storage */*sp*/,
2505 	const void */*buf*/,
2506 	size_t /*len*/);
2507 
2508 krb5_error_code
2509 krb5_store_address (
2510 	krb5_storage */*sp*/,
2511 	krb5_address /*p*/);
2512 
2513 krb5_error_code
2514 krb5_store_addrs (
2515 	krb5_storage */*sp*/,
2516 	krb5_addresses /*p*/);
2517 
2518 krb5_error_code
2519 krb5_store_authdata (
2520 	krb5_storage */*sp*/,
2521 	krb5_authdata /*auth*/);
2522 
2523 krb5_error_code
2524 krb5_store_creds (
2525 	krb5_storage */*sp*/,
2526 	krb5_creds */*creds*/);
2527 
2528 krb5_error_code
2529 krb5_store_data (
2530 	krb5_storage */*sp*/,
2531 	krb5_data /*data*/);
2532 
2533 krb5_error_code
2534 krb5_store_int16 (
2535 	krb5_storage */*sp*/,
2536 	int16_t /*value*/);
2537 
2538 krb5_error_code
2539 krb5_store_int32 (
2540 	krb5_storage */*sp*/,
2541 	int32_t /*value*/);
2542 
2543 krb5_error_code
2544 krb5_store_int8 (
2545 	krb5_storage */*sp*/,
2546 	int8_t /*value*/);
2547 
2548 krb5_error_code
2549 krb5_store_keyblock (
2550 	krb5_storage */*sp*/,
2551 	krb5_keyblock /*p*/);
2552 
2553 krb5_error_code
2554 krb5_store_principal (
2555 	krb5_storage */*sp*/,
2556 	krb5_principal /*p*/);
2557 
2558 krb5_error_code
2559 krb5_store_string (
2560 	krb5_storage */*sp*/,
2561 	const char */*s*/);
2562 
2563 krb5_error_code
2564 krb5_store_stringz (
2565 	krb5_storage */*sp*/,
2566 	const char */*s*/);
2567 
2568 krb5_error_code
2569 krb5_store_times (
2570 	krb5_storage */*sp*/,
2571 	krb5_times /*times*/);
2572 
2573 krb5_error_code
2574 krb5_string_to_deltat (
2575 	const char */*string*/,
2576 	krb5_deltat */*deltat*/);
2577 
2578 krb5_error_code
2579 krb5_string_to_enctype (
2580 	krb5_context /*context*/,
2581 	const char */*string*/,
2582 	krb5_enctype */*etype*/);
2583 
2584 krb5_error_code
2585 krb5_string_to_key (
2586 	krb5_context /*context*/,
2587 	krb5_enctype /*enctype*/,
2588 	const char */*password*/,
2589 	krb5_principal /*principal*/,
2590 	krb5_keyblock */*key*/);
2591 
2592 krb5_error_code
2593 krb5_string_to_key_data (
2594 	krb5_context /*context*/,
2595 	krb5_enctype /*enctype*/,
2596 	krb5_data /*password*/,
2597 	krb5_principal /*principal*/,
2598 	krb5_keyblock */*key*/);
2599 
2600 krb5_error_code
2601 krb5_string_to_key_data_salt (
2602 	krb5_context /*context*/,
2603 	krb5_enctype /*enctype*/,
2604 	krb5_data /*password*/,
2605 	krb5_salt /*salt*/,
2606 	krb5_keyblock */*key*/);
2607 
2608 krb5_error_code
2609 krb5_string_to_key_derived (
2610 	krb5_context /*context*/,
2611 	const void */*str*/,
2612 	size_t /*len*/,
2613 	krb5_enctype /*etype*/,
2614 	krb5_keyblock */*key*/);
2615 
2616 krb5_error_code
2617 krb5_string_to_key_salt (
2618 	krb5_context /*context*/,
2619 	krb5_enctype /*enctype*/,
2620 	const char */*password*/,
2621 	krb5_salt /*salt*/,
2622 	krb5_keyblock */*key*/);
2623 
2624 krb5_error_code
2625 krb5_string_to_keytype (
2626 	krb5_context /*context*/,
2627 	const char */*string*/,
2628 	krb5_keytype */*keytype*/);
2629 
2630 krb5_error_code
2631 krb5_string_to_salttype (
2632 	krb5_context /*context*/,
2633 	krb5_enctype /*etype*/,
2634 	const char */*string*/,
2635 	krb5_salttype */*salttype*/);
2636 
2637 krb5_error_code
2638 krb5_timeofday (
2639 	krb5_context /*context*/,
2640 	krb5_timestamp */*timeret*/);
2641 
2642 krb5_error_code
2643 krb5_unparse_name (
2644 	krb5_context /*context*/,
2645 	krb5_const_principal /*principal*/,
2646 	char **/*name*/);
2647 
2648 krb5_error_code
2649 krb5_unparse_name_fixed (
2650 	krb5_context /*context*/,
2651 	krb5_const_principal /*principal*/,
2652 	char */*name*/,
2653 	size_t /*len*/);
2654 
2655 krb5_error_code
2656 krb5_unparse_name_fixed_short (
2657 	krb5_context /*context*/,
2658 	krb5_const_principal /*principal*/,
2659 	char */*name*/,
2660 	size_t /*len*/);
2661 
2662 krb5_error_code
2663 krb5_unparse_name_short (
2664 	krb5_context /*context*/,
2665 	krb5_const_principal /*principal*/,
2666 	char **/*name*/);
2667 
2668 krb5_error_code
2669 krb5_us_timeofday (
2670 	krb5_context /*context*/,
2671 	int32_t */*sec*/,
2672 	int32_t */*usec*/);
2673 
2674 krb5_error_code
2675 krb5_vabort (
2676 	krb5_context /*context*/,
2677 	krb5_error_code /*code*/,
2678 	const char */*fmt*/,
2679 	va_list /*ap*/)
2680     __attribute__ ((noreturn, format (printf, 3, 0)));
2681 
2682 krb5_error_code
2683 krb5_vabortx (
2684 	krb5_context /*context*/,
2685 	const char */*fmt*/,
2686 	va_list /*ap*/)
2687     __attribute__ ((noreturn, format (printf, 2, 0)));
2688 
2689 krb5_error_code
2690 krb5_verify_ap_req (
2691 	krb5_context /*context*/,
2692 	krb5_auth_context */*auth_context*/,
2693 	krb5_ap_req */*ap_req*/,
2694 	krb5_const_principal /*server*/,
2695 	krb5_keyblock */*keyblock*/,
2696 	krb5_flags /*flags*/,
2697 	krb5_flags */*ap_req_options*/,
2698 	krb5_ticket **/*ticket*/);
2699 
2700 krb5_error_code
2701 krb5_verify_ap_req2 (
2702 	krb5_context /*context*/,
2703 	krb5_auth_context */*auth_context*/,
2704 	krb5_ap_req */*ap_req*/,
2705 	krb5_const_principal /*server*/,
2706 	krb5_keyblock */*keyblock*/,
2707 	krb5_flags /*flags*/,
2708 	krb5_flags */*ap_req_options*/,
2709 	krb5_ticket **/*ticket*/,
2710 	krb5_key_usage /*usage*/);
2711 
2712 krb5_error_code
2713 krb5_verify_authenticator_checksum (
2714 	krb5_context /*context*/,
2715 	krb5_auth_context /*ac*/,
2716 	void */*data*/,
2717 	size_t /*len*/);
2718 
2719 krb5_error_code
2720 krb5_verify_checksum (
2721 	krb5_context /*context*/,
2722 	krb5_crypto /*crypto*/,
2723 	krb5_key_usage /*usage*/,
2724 	void */*data*/,
2725 	size_t /*len*/,
2726 	Checksum */*cksum*/);
2727 
2728 krb5_error_code
2729 krb5_verify_init_creds (
2730 	krb5_context /*context*/,
2731 	krb5_creds */*creds*/,
2732 	krb5_principal /*ap_req_server*/,
2733 	krb5_keytab /*ap_req_keytab*/,
2734 	krb5_ccache */*ccache*/,
2735 	krb5_verify_init_creds_opt */*options*/);
2736 
2737 void
2738 krb5_verify_init_creds_opt_init (krb5_verify_init_creds_opt */*options*/);
2739 
2740 void
2741 krb5_verify_init_creds_opt_set_ap_req_nofail (
2742 	krb5_verify_init_creds_opt */*options*/,
2743 	int /*ap_req_nofail*/);
2744 
2745 void
2746 krb5_verify_opt_init (krb5_verify_opt */*opt*/);
2747 
2748 void
2749 krb5_verify_opt_set_ccache (
2750 	krb5_verify_opt */*opt*/,
2751 	krb5_ccache /*ccache*/);
2752 
2753 void
2754 krb5_verify_opt_set_flags (
2755 	krb5_verify_opt */*opt*/,
2756 	unsigned int /*flags*/);
2757 
2758 void
2759 krb5_verify_opt_set_keytab (
2760 	krb5_verify_opt */*opt*/,
2761 	krb5_keytab /*keytab*/);
2762 
2763 void
2764 krb5_verify_opt_set_secure (
2765 	krb5_verify_opt */*opt*/,
2766 	krb5_boolean /*secure*/);
2767 
2768 void
2769 krb5_verify_opt_set_service (
2770 	krb5_verify_opt */*opt*/,
2771 	const char */*service*/);
2772 
2773 krb5_error_code
2774 krb5_verify_user (
2775 	krb5_context /*context*/,
2776 	krb5_principal /*principal*/,
2777 	krb5_ccache /*ccache*/,
2778 	const char */*password*/,
2779 	krb5_boolean /*secure*/,
2780 	const char */*service*/);
2781 
2782 krb5_error_code
2783 krb5_verify_user_lrealm (
2784 	krb5_context /*context*/,
2785 	krb5_principal /*principal*/,
2786 	krb5_ccache /*ccache*/,
2787 	const char */*password*/,
2788 	krb5_boolean /*secure*/,
2789 	const char */*service*/);
2790 
2791 krb5_error_code
2792 krb5_verify_user_opt (
2793 	krb5_context /*context*/,
2794 	krb5_principal /*principal*/,
2795 	const char */*password*/,
2796 	krb5_verify_opt */*opt*/);
2797 
2798 krb5_error_code
2799 krb5_verr (
2800 	krb5_context /*context*/,
2801 	int /*eval*/,
2802 	krb5_error_code /*code*/,
2803 	const char */*fmt*/,
2804 	va_list /*ap*/)
2805     __attribute__ ((noreturn, format (printf, 4, 0)));
2806 
2807 krb5_error_code
2808 krb5_verrx (
2809 	krb5_context /*context*/,
2810 	int /*eval*/,
2811 	const char */*fmt*/,
2812 	va_list /*ap*/)
2813     __attribute__ ((noreturn, format (printf, 3, 0)));
2814 
2815 krb5_error_code
2816 krb5_vlog (
2817 	krb5_context /*context*/,
2818 	krb5_log_facility */*fac*/,
2819 	int /*level*/,
2820 	const char */*fmt*/,
2821 	va_list /*ap*/)
2822     __attribute__((format (printf, 4, 0)));
2823 
2824 krb5_error_code
2825 krb5_vlog_msg (
2826 	krb5_context /*context*/,
2827 	krb5_log_facility */*fac*/,
2828 	char **/*reply*/,
2829 	int /*level*/,
2830 	const char */*fmt*/,
2831 	va_list /*ap*/)
2832     __attribute__((format (printf, 5, 0)));
2833 
2834 krb5_error_code
2835 krb5_vset_error_string (
2836 	krb5_context /*context*/,
2837 	const char */*fmt*/,
2838 	va_list /*args*/)
2839     __attribute__ ((format (printf, 2, 0)));
2840 
2841 krb5_error_code
2842 krb5_vwarn (
2843 	krb5_context /*context*/,
2844 	krb5_error_code /*code*/,
2845 	const char */*fmt*/,
2846 	va_list /*ap*/)
2847     __attribute__ ((format (printf, 3, 0)));
2848 
2849 krb5_error_code
2850 krb5_vwarnx (
2851 	krb5_context /*context*/,
2852 	const char */*fmt*/,
2853 	va_list /*ap*/)
2854     __attribute__ ((format (printf, 2, 0)));
2855 
2856 krb5_error_code
2857 krb5_warn (
2858 	krb5_context /*context*/,
2859 	krb5_error_code /*code*/,
2860 	const char */*fmt*/,
2861 	...)
2862     __attribute__ ((format (printf, 3, 4)));
2863 
2864 krb5_error_code
2865 krb5_warnx (
2866 	krb5_context /*context*/,
2867 	const char */*fmt*/,
2868 	...)
2869     __attribute__ ((format (printf, 2, 3)));
2870 
2871 krb5_error_code
2872 krb5_write_message (
2873 	krb5_context /*context*/,
2874 	krb5_pointer /*p_fd*/,
2875 	krb5_data */*data*/);
2876 
2877 krb5_error_code
2878 krb5_write_priv_message (
2879 	krb5_context /*context*/,
2880 	krb5_auth_context /*ac*/,
2881 	krb5_pointer /*p_fd*/,
2882 	krb5_data */*data*/);
2883 
2884 krb5_error_code
2885 krb5_write_safe_message (
2886 	krb5_context /*context*/,
2887 	krb5_auth_context /*ac*/,
2888 	krb5_pointer /*p_fd*/,
2889 	krb5_data */*data*/);
2890 
2891 krb5_error_code
2892 krb5_xfree (void */*ptr*/);
2893 
2894 krb5_error_code
2895 principalname2krb5_principal (
2896 	krb5_principal */*principal*/,
2897 	const PrincipalName /*from*/,
2898 	const Realm /*realm*/);
2899 
2900 #endif /* __krb5_protos_h__ */
2901