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