155682Smarkm/* This is a generated file */
255682Smarkm#ifndef __krb5_protos_h__
355682Smarkm#define __krb5_protos_h__
455682Smarkm
555682Smarkm#include <stdarg.h>
655682Smarkm
755682Smarkm#if !defined(__GNUC__) && !defined(__attribute__)
855682Smarkm#define __attribute__(x)
955682Smarkm#endif
1055682Smarkm
11178825Sdfr#ifdef __cplusplus
12178825Sdfrextern "C" {
13178825Sdfr#endif
14178825Sdfr
15178825Sdfr#ifndef KRB5_LIB_FUNCTION
16178825Sdfr#if defined(_WIN32)
17178825Sdfr#define KRB5_LIB_FUNCTION _stdcall
18178825Sdfr#else
19178825Sdfr#define KRB5_LIB_FUNCTION
20178825Sdfr#endif
21178825Sdfr#endif
22178825Sdfr
23178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
24102644Snectarkrb524_convert_creds_kdc (
25102644Snectar	krb5_context /*context*/,
26102644Snectar	krb5_creds */*in_cred*/,
27102644Snectar	struct credentials */*v4creds*/);
2890926Snectar
29178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
30102644Snectarkrb524_convert_creds_kdc_ccache (
31102644Snectar	krb5_context /*context*/,
32102644Snectar	krb5_ccache /*ccache*/,
33102644Snectar	krb5_creds */*in_cred*/,
34102644Snectar	struct credentials */*v4creds*/);
3555682Smarkm
36178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
37102644Snectarkrb5_425_conv_principal (
38102644Snectar	krb5_context /*context*/,
39102644Snectar	const char */*name*/,
40102644Snectar	const char */*instance*/,
41102644Snectar	const char */*realm*/,
42102644Snectar	krb5_principal */*princ*/);
4355682Smarkm
44178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
45102644Snectarkrb5_425_conv_principal_ext (
46102644Snectar	krb5_context /*context*/,
47102644Snectar	const char */*name*/,
48102644Snectar	const char */*instance*/,
49102644Snectar	const char */*realm*/,
50102644Snectar	krb5_boolean (*/*func*/)(krb5_context, krb5_principal),
51102644Snectar	krb5_boolean /*resolve*/,
52178825Sdfr	krb5_principal */*principal*/);
53178825Sdfr
54178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
55178825Sdfrkrb5_425_conv_principal_ext2 (
56178825Sdfr	krb5_context /*context*/,
57178825Sdfr	const char */*name*/,
58178825Sdfr	const char */*instance*/,
59178825Sdfr	const char */*realm*/,
60178825Sdfr	krb5_boolean (*/*func*/)(krb5_context, void *, krb5_principal),
61178825Sdfr	void */*funcctx*/,
62178825Sdfr	krb5_boolean /*resolve*/,
63102644Snectar	krb5_principal */*princ*/);
6455682Smarkm
65178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
66102644Snectarkrb5_524_conv_principal (
67102644Snectar	krb5_context /*context*/,
68102644Snectar	const krb5_principal /*principal*/,
69102644Snectar	char */*name*/,
70102644Snectar	char */*instance*/,
71102644Snectar	char */*realm*/);
7255682Smarkm
73178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
74102644Snectarkrb5_abort (
75102644Snectar	krb5_context /*context*/,
76102644Snectar	krb5_error_code /*code*/,
77102644Snectar	const char */*fmt*/,
78102644Snectar	...)
7955682Smarkm    __attribute__ ((noreturn, format (printf, 3, 4)));
8055682Smarkm
81178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
82102644Snectarkrb5_abortx (
83102644Snectar	krb5_context /*context*/,
84102644Snectar	const char */*fmt*/,
85102644Snectar	...)
8655682Smarkm    __attribute__ ((noreturn, format (printf, 2, 3)));
8755682Smarkm
88178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
89102644Snectarkrb5_acl_match_file (
90102644Snectar	krb5_context /*context*/,
91102644Snectar	const char */*file*/,
92102644Snectar	const char */*format*/,
93102644Snectar	...);
9472445Sassar
95178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
96102644Snectarkrb5_acl_match_string (
97102644Snectar	krb5_context /*context*/,
98102644Snectar	const char */*string*/,
99102644Snectar	const char */*format*/,
100102644Snectar	...);
10172445Sassar
102178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
103102644Snectarkrb5_add_et_list (
104102644Snectar	krb5_context /*context*/,
105102644Snectar	void (*/*func*/)(struct et_list **));
10655682Smarkm
107178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
108102644Snectarkrb5_add_extra_addresses (
109102644Snectar	krb5_context /*context*/,
110102644Snectar	krb5_addresses */*addresses*/);
11155682Smarkm
112178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
113102644Snectarkrb5_add_ignore_addresses (
114102644Snectar	krb5_context /*context*/,
115102644Snectar	krb5_addresses */*addresses*/);
11690926Snectar
117178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
118102644Snectarkrb5_addlog_dest (
119102644Snectar	krb5_context /*context*/,
120102644Snectar	krb5_log_facility */*f*/,
121102644Snectar	const char */*orig*/);
12255682Smarkm
123178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
124102644Snectarkrb5_addlog_func (
125102644Snectar	krb5_context /*context*/,
126102644Snectar	krb5_log_facility */*fac*/,
127102644Snectar	int /*min*/,
128102644Snectar	int /*max*/,
129178825Sdfr	krb5_log_log_func_t /*log_func*/,
130178825Sdfr	krb5_log_close_func_t /*close_func*/,
131102644Snectar	void */*data*/);
13255682Smarkm
133178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
134102644Snectarkrb5_addr2sockaddr (
135102644Snectar	krb5_context /*context*/,
136102644Snectar	const krb5_address */*addr*/,
137102644Snectar	struct sockaddr */*sa*/,
138102644Snectar	krb5_socklen_t */*sa_size*/,
139102644Snectar	int /*port*/);
14055682Smarkm
141178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
142102644Snectarkrb5_address_compare (
143102644Snectar	krb5_context /*context*/,
144102644Snectar	const krb5_address */*addr1*/,
145102644Snectar	const krb5_address */*addr2*/);
14655682Smarkm
147178825Sdfrint KRB5_LIB_FUNCTION
148102644Snectarkrb5_address_order (
149102644Snectar	krb5_context /*context*/,
150102644Snectar	const krb5_address */*addr1*/,
151102644Snectar	const krb5_address */*addr2*/);
15255682Smarkm
153178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
154178825Sdfrkrb5_address_prefixlen_boundary (
155178825Sdfr	krb5_context /*context*/,
156178825Sdfr	const krb5_address */*inaddr*/,
157178825Sdfr	unsigned long /*prefixlen*/,
158178825Sdfr	krb5_address */*low*/,
159178825Sdfr	krb5_address */*high*/);
160178825Sdfr
161178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
162102644Snectarkrb5_address_search (
163102644Snectar	krb5_context /*context*/,
164102644Snectar	const krb5_address */*addr*/,
165102644Snectar	const krb5_addresses */*addrlist*/);
16655682Smarkm
167178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
168102644Snectarkrb5_aname_to_localname (
169102644Snectar	krb5_context /*context*/,
170102644Snectar	krb5_const_principal /*aname*/,
171102644Snectar	size_t /*lnsize*/,
172102644Snectar	char */*lname*/);
17355682Smarkm
174178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
175102644Snectarkrb5_anyaddr (
176102644Snectar	krb5_context /*context*/,
177102644Snectar	int /*af*/,
178102644Snectar	struct sockaddr */*sa*/,
179102644Snectar	krb5_socklen_t */*sa_size*/,
180102644Snectar	int /*port*/);
18155682Smarkm
182178825Sdfrvoid KRB5_LIB_FUNCTION
183102644Snectarkrb5_appdefault_boolean (
184102644Snectar	krb5_context /*context*/,
185102644Snectar	const char */*appname*/,
186102644Snectar	krb5_const_realm /*realm*/,
187102644Snectar	const char */*option*/,
188102644Snectar	krb5_boolean /*def_val*/,
189102644Snectar	krb5_boolean */*ret_val*/);
19072445Sassar
191178825Sdfrvoid KRB5_LIB_FUNCTION
192102644Snectarkrb5_appdefault_string (
193102644Snectar	krb5_context /*context*/,
194102644Snectar	const char */*appname*/,
195102644Snectar	krb5_const_realm /*realm*/,
196102644Snectar	const char */*option*/,
197102644Snectar	const char */*def_val*/,
198102644Snectar	char **/*ret_val*/);
19972445Sassar
200178825Sdfrvoid KRB5_LIB_FUNCTION
201102644Snectarkrb5_appdefault_time (
202102644Snectar	krb5_context /*context*/,
203102644Snectar	const char */*appname*/,
204102644Snectar	krb5_const_realm /*realm*/,
205102644Snectar	const char */*option*/,
206102644Snectar	time_t /*def_val*/,
207102644Snectar	time_t */*ret_val*/);
20872445Sassar
209178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
210102644Snectarkrb5_append_addresses (
211102644Snectar	krb5_context /*context*/,
212102644Snectar	krb5_addresses */*dest*/,
213102644Snectar	const krb5_addresses */*source*/);
21455682Smarkm
215178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
216178825Sdfrkrb5_auth_con_addflags (
217178825Sdfr	krb5_context /*context*/,
218178825Sdfr	krb5_auth_context /*auth_context*/,
219178825Sdfr	int32_t /*addflags*/,
220178825Sdfr	int32_t */*flags*/);
221178825Sdfr
222178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
223102644Snectarkrb5_auth_con_free (
224102644Snectar	krb5_context /*context*/,
225102644Snectar	krb5_auth_context /*auth_context*/);
22655682Smarkm
227178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
228102644Snectarkrb5_auth_con_genaddrs (
229102644Snectar	krb5_context /*context*/,
230102644Snectar	krb5_auth_context /*auth_context*/,
231102644Snectar	int /*fd*/,
232102644Snectar	int /*flags*/);
23372445Sassar
234178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
235103423Snectarkrb5_auth_con_generatelocalsubkey (
236103423Snectar	krb5_context /*context*/,
237103423Snectar	krb5_auth_context /*auth_context*/,
238103423Snectar	krb5_keyblock */*key*/);
239103423Snectar
240178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
241102644Snectarkrb5_auth_con_getaddrs (
242102644Snectar	krb5_context /*context*/,
243102644Snectar	krb5_auth_context /*auth_context*/,
244102644Snectar	krb5_address **/*local_addr*/,
245102644Snectar	krb5_address **/*remote_addr*/);
24655682Smarkm
247178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
248102644Snectarkrb5_auth_con_getauthenticator (
249102644Snectar	krb5_context /*context*/,
250102644Snectar	krb5_auth_context /*auth_context*/,
251102644Snectar	krb5_authenticator */*authenticator*/);
25290926Snectar
253178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
254102644Snectarkrb5_auth_con_getcksumtype (
255102644Snectar	krb5_context /*context*/,
256102644Snectar	krb5_auth_context /*auth_context*/,
257102644Snectar	krb5_cksumtype */*cksumtype*/);
25890926Snectar
259178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
260102644Snectarkrb5_auth_con_getflags (
261102644Snectar	krb5_context /*context*/,
262102644Snectar	krb5_auth_context /*auth_context*/,
263102644Snectar	int32_t */*flags*/);
26455682Smarkm
265178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
266102644Snectarkrb5_auth_con_getkey (
267102644Snectar	krb5_context /*context*/,
268102644Snectar	krb5_auth_context /*auth_context*/,
269102644Snectar	krb5_keyblock **/*keyblock*/);
27055682Smarkm
271178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
272102644Snectarkrb5_auth_con_getkeytype (
273102644Snectar	krb5_context /*context*/,
274102644Snectar	krb5_auth_context /*auth_context*/,
275102644Snectar	krb5_keytype */*keytype*/);
27690926Snectar
277178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
278102644Snectarkrb5_auth_con_getlocalseqnumber (
279102644Snectar	krb5_context /*context*/,
280102644Snectar	krb5_auth_context /*auth_context*/,
281102644Snectar	int32_t */*seqnumber*/);
28290926Snectar
283178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
284102644Snectarkrb5_auth_con_getlocalsubkey (
285102644Snectar	krb5_context /*context*/,
286102644Snectar	krb5_auth_context /*auth_context*/,
287102644Snectar	krb5_keyblock **/*keyblock*/);
28855682Smarkm
289178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
290102644Snectarkrb5_auth_con_getrcache (
291102644Snectar	krb5_context /*context*/,
292102644Snectar	krb5_auth_context /*auth_context*/,
293102644Snectar	krb5_rcache */*rcache*/);
29472445Sassar
295178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
296102644Snectarkrb5_auth_con_getremotesubkey (
297102644Snectar	krb5_context /*context*/,
298102644Snectar	krb5_auth_context /*auth_context*/,
299102644Snectar	krb5_keyblock **/*keyblock*/);
30055682Smarkm
301178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
302102644Snectarkrb5_auth_con_init (
303102644Snectar	krb5_context /*context*/,
304102644Snectar	krb5_auth_context */*auth_context*/);
30555682Smarkm
306178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
307178825Sdfrkrb5_auth_con_removeflags (
308178825Sdfr	krb5_context /*context*/,
309178825Sdfr	krb5_auth_context /*auth_context*/,
310178825Sdfr	int32_t /*removeflags*/,
311178825Sdfr	int32_t */*flags*/);
312178825Sdfr
313178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
314102644Snectarkrb5_auth_con_setaddrs (
315102644Snectar	krb5_context /*context*/,
316102644Snectar	krb5_auth_context /*auth_context*/,
317102644Snectar	krb5_address */*local_addr*/,
318102644Snectar	krb5_address */*remote_addr*/);
31955682Smarkm
320178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
321102644Snectarkrb5_auth_con_setaddrs_from_fd (
322102644Snectar	krb5_context /*context*/,
323102644Snectar	krb5_auth_context /*auth_context*/,
324102644Snectar	void */*p_fd*/);
32555682Smarkm
326178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
327102644Snectarkrb5_auth_con_setcksumtype (
328102644Snectar	krb5_context /*context*/,
329102644Snectar	krb5_auth_context /*auth_context*/,
330102644Snectar	krb5_cksumtype /*cksumtype*/);
33155682Smarkm
332178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
333102644Snectarkrb5_auth_con_setflags (
334102644Snectar	krb5_context /*context*/,
335102644Snectar	krb5_auth_context /*auth_context*/,
336102644Snectar	int32_t /*flags*/);
33755682Smarkm
338178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
339102644Snectarkrb5_auth_con_setkey (
340102644Snectar	krb5_context /*context*/,
341102644Snectar	krb5_auth_context /*auth_context*/,
342102644Snectar	krb5_keyblock */*keyblock*/);
34355682Smarkm
344178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
345102644Snectarkrb5_auth_con_setkeytype (
346102644Snectar	krb5_context /*context*/,
347102644Snectar	krb5_auth_context /*auth_context*/,
348102644Snectar	krb5_keytype /*keytype*/);
34972445Sassar
350178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
351102644Snectarkrb5_auth_con_setlocalseqnumber (
352102644Snectar	krb5_context /*context*/,
353102644Snectar	krb5_auth_context /*auth_context*/,
354102644Snectar	int32_t /*seqnumber*/);
35555682Smarkm
356178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
357102644Snectarkrb5_auth_con_setlocalsubkey (
358102644Snectar	krb5_context /*context*/,
359102644Snectar	krb5_auth_context /*auth_context*/,
360102644Snectar	krb5_keyblock */*keyblock*/);
36155682Smarkm
362178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
363102644Snectarkrb5_auth_con_setrcache (
364102644Snectar	krb5_context /*context*/,
365102644Snectar	krb5_auth_context /*auth_context*/,
366102644Snectar	krb5_rcache /*rcache*/);
36755682Smarkm
368178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
369102644Snectarkrb5_auth_con_setremoteseqnumber (
370102644Snectar	krb5_context /*context*/,
371102644Snectar	krb5_auth_context /*auth_context*/,
372102644Snectar	int32_t /*seqnumber*/);
37355682Smarkm
374178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
375102644Snectarkrb5_auth_con_setremotesubkey (
376102644Snectar	krb5_context /*context*/,
377102644Snectar	krb5_auth_context /*auth_context*/,
378102644Snectar	krb5_keyblock */*keyblock*/);
37955682Smarkm
380178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
381102644Snectarkrb5_auth_con_setuserkey (
382102644Snectar	krb5_context /*context*/,
383102644Snectar	krb5_auth_context /*auth_context*/,
384102644Snectar	krb5_keyblock */*keyblock*/);
38555682Smarkm
386178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
387102644Snectarkrb5_auth_getremoteseqnumber (
388102644Snectar	krb5_context /*context*/,
389102644Snectar	krb5_auth_context /*auth_context*/,
390102644Snectar	int32_t */*seqnumber*/);
39155682Smarkm
392178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
393102644Snectarkrb5_build_ap_req (
394102644Snectar	krb5_context /*context*/,
395102644Snectar	krb5_enctype /*enctype*/,
396102644Snectar	krb5_creds */*cred*/,
397102644Snectar	krb5_flags /*ap_options*/,
398102644Snectar	krb5_data /*authenticator*/,
399102644Snectar	krb5_data */*retdata*/);
40055682Smarkm
401178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
402102644Snectarkrb5_build_authenticator (
403102644Snectar	krb5_context /*context*/,
404102644Snectar	krb5_auth_context /*auth_context*/,
405102644Snectar	krb5_enctype /*enctype*/,
406102644Snectar	krb5_creds */*cred*/,
407102644Snectar	Checksum */*cksum*/,
408102644Snectar	Authenticator **/*auth_result*/,
409102644Snectar	krb5_data */*result*/,
410102644Snectar	krb5_key_usage /*usage*/);
41155682Smarkm
412178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
413102644Snectarkrb5_build_principal (
414102644Snectar	krb5_context /*context*/,
415102644Snectar	krb5_principal */*principal*/,
416102644Snectar	int /*rlen*/,
417102644Snectar	krb5_const_realm /*realm*/,
418102644Snectar	...);
41955682Smarkm
420178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
421102644Snectarkrb5_build_principal_ext (
422102644Snectar	krb5_context /*context*/,
423102644Snectar	krb5_principal */*principal*/,
424102644Snectar	int /*rlen*/,
425102644Snectar	krb5_const_realm /*realm*/,
426102644Snectar	...);
42755682Smarkm
428178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
429102644Snectarkrb5_build_principal_va (
430102644Snectar	krb5_context /*context*/,
431102644Snectar	krb5_principal */*principal*/,
432102644Snectar	int /*rlen*/,
433102644Snectar	krb5_const_realm /*realm*/,
434102644Snectar	va_list /*ap*/);
43555682Smarkm
436178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
437102644Snectarkrb5_build_principal_va_ext (
438102644Snectar	krb5_context /*context*/,
439102644Snectar	krb5_principal */*principal*/,
440102644Snectar	int /*rlen*/,
441102644Snectar	krb5_const_realm /*realm*/,
442102644Snectar	va_list /*ap*/);
44355682Smarkm
444178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
445178825Sdfrkrb5_c_block_size (
446178825Sdfr	krb5_context /*context*/,
447178825Sdfr	krb5_enctype /*enctype*/,
448178825Sdfr	size_t */*blocksize*/);
449178825Sdfr
450178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
451178825Sdfrkrb5_c_checksum_length (
452178825Sdfr	krb5_context /*context*/,
453178825Sdfr	krb5_cksumtype /*cksumtype*/,
454178825Sdfr	size_t */*length*/);
455178825Sdfr
456178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
457178825Sdfrkrb5_c_decrypt (
458178825Sdfr	krb5_context /*context*/,
459178825Sdfr	const krb5_keyblock /*key*/,
460178825Sdfr	krb5_keyusage /*usage*/,
461178825Sdfr	const krb5_data */*ivec*/,
462178825Sdfr	krb5_enc_data */*input*/,
463178825Sdfr	krb5_data */*output*/);
464178825Sdfr
465178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
466178825Sdfrkrb5_c_encrypt (
467178825Sdfr	krb5_context /*context*/,
468178825Sdfr	const krb5_keyblock */*key*/,
469178825Sdfr	krb5_keyusage /*usage*/,
470178825Sdfr	const krb5_data */*ivec*/,
471178825Sdfr	const krb5_data */*input*/,
472178825Sdfr	krb5_enc_data */*output*/);
473178825Sdfr
474178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
475178825Sdfrkrb5_c_encrypt_length (
476178825Sdfr	krb5_context /*context*/,
477178825Sdfr	krb5_enctype /*enctype*/,
478178825Sdfr	size_t /*inputlen*/,
479178825Sdfr	size_t */*length*/);
480178825Sdfr
481178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
482178825Sdfrkrb5_c_enctype_compare (
483178825Sdfr	krb5_context /*context*/,
484178825Sdfr	krb5_enctype /*e1*/,
485178825Sdfr	krb5_enctype /*e2*/,
486178825Sdfr	krb5_boolean */*similar*/);
487178825Sdfr
488178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
489178825Sdfrkrb5_c_get_checksum (
490178825Sdfr	krb5_context /*context*/,
491178825Sdfr	const krb5_checksum */*cksum*/,
492178825Sdfr	krb5_cksumtype */*type*/,
493178825Sdfr	krb5_data **/*data*/);
494178825Sdfr
495178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
496178825Sdfrkrb5_c_is_coll_proof_cksum (krb5_cksumtype /*ctype*/);
497178825Sdfr
498178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
499178825Sdfrkrb5_c_is_keyed_cksum (krb5_cksumtype /*ctype*/);
500178825Sdfr
501178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
502178825Sdfrkrb5_c_keylengths (
503178825Sdfr	krb5_context /*context*/,
504178825Sdfr	krb5_enctype /*enctype*/,
505178825Sdfr	size_t */*ilen*/,
506178825Sdfr	size_t */*keylen*/);
507178825Sdfr
508178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
509178825Sdfrkrb5_c_make_checksum (
510178825Sdfr	krb5_context /*context*/,
511178825Sdfr	krb5_cksumtype /*cksumtype*/,
512178825Sdfr	const krb5_keyblock */*key*/,
513178825Sdfr	krb5_keyusage /*usage*/,
514178825Sdfr	const krb5_data */*input*/,
515178825Sdfr	krb5_checksum */*cksum*/);
516178825Sdfr
517178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
518178825Sdfrkrb5_c_make_random_key (
519178825Sdfr	krb5_context /*context*/,
520178825Sdfr	krb5_enctype /*enctype*/,
521178825Sdfr	krb5_keyblock */*random_key*/);
522178825Sdfr
523178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
524178825Sdfrkrb5_c_prf (
525178825Sdfr	krb5_context /*context*/,
526178825Sdfr	const krb5_keyblock */*key*/,
527178825Sdfr	const krb5_data */*input*/,
528178825Sdfr	krb5_data */*output*/);
529178825Sdfr
530178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
531178825Sdfrkrb5_c_prf_length (
532178825Sdfr	krb5_context /*context*/,
533178825Sdfr	krb5_enctype /*type*/,
534178825Sdfr	size_t */*length*/);
535178825Sdfr
536178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
537178825Sdfrkrb5_c_set_checksum (
538178825Sdfr	krb5_context /*context*/,
539178825Sdfr	krb5_checksum */*cksum*/,
540178825Sdfr	krb5_cksumtype /*type*/,
541178825Sdfr	const krb5_data */*data*/);
542178825Sdfr
543178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
544178825Sdfrkrb5_c_valid_cksumtype (krb5_cksumtype /*ctype*/);
545178825Sdfr
546178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
547178825Sdfrkrb5_c_valid_enctype (krb5_enctype /*etype*/);
548178825Sdfr
549178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
550178825Sdfrkrb5_c_verify_checksum (
551178825Sdfr	krb5_context /*context*/,
552178825Sdfr	const krb5_keyblock */*key*/,
553178825Sdfr	krb5_keyusage /*usage*/,
554178825Sdfr	const krb5_data */*data*/,
555178825Sdfr	const krb5_checksum */*cksum*/,
556178825Sdfr	krb5_boolean */*valid*/);
557178825Sdfr
558178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
559178825Sdfrkrb5_cc_cache_end_seq_get (
560178825Sdfr	krb5_context /*context*/,
561178825Sdfr	krb5_cc_cache_cursor /*cursor*/);
562178825Sdfr
563178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
564178825Sdfrkrb5_cc_cache_get_first (
565178825Sdfr	krb5_context /*context*/,
566178825Sdfr	const char */*type*/,
567178825Sdfr	krb5_cc_cache_cursor */*cursor*/);
568178825Sdfr
569178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
570178825Sdfrkrb5_cc_cache_match (
571178825Sdfr	krb5_context /*context*/,
572178825Sdfr	krb5_principal /*client*/,
573178825Sdfr	const char */*type*/,
574178825Sdfr	krb5_ccache */*id*/);
575178825Sdfr
576178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
577178825Sdfrkrb5_cc_cache_next (
578178825Sdfr	krb5_context /*context*/,
579178825Sdfr	krb5_cc_cache_cursor /*cursor*/,
580178825Sdfr	krb5_ccache */*id*/);
581178825Sdfr
582178825Sdfrvoid KRB5_LIB_FUNCTION
583178825Sdfrkrb5_cc_clear_mcred (krb5_creds */*mcred*/);
584178825Sdfr
585178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
586102644Snectarkrb5_cc_close (
587102644Snectar	krb5_context /*context*/,
588102644Snectar	krb5_ccache /*id*/);
58955682Smarkm
590178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
591102644Snectarkrb5_cc_copy_cache (
592102644Snectar	krb5_context /*context*/,
593102644Snectar	const krb5_ccache /*from*/,
594102644Snectar	krb5_ccache /*to*/);
59555682Smarkm
596178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
597178825Sdfrkrb5_cc_copy_cache_match (
598178825Sdfr	krb5_context /*context*/,
599178825Sdfr	const krb5_ccache /*from*/,
600178825Sdfr	krb5_ccache /*to*/,
601178825Sdfr	krb5_flags /*whichfields*/,
602178825Sdfr	const krb5_creds * /*mcreds*/,
603178825Sdfr	unsigned int */*matched*/);
604178825Sdfr
605178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
606102644Snectarkrb5_cc_default (
607102644Snectar	krb5_context /*context*/,
608102644Snectar	krb5_ccache */*id*/);
60955682Smarkm
610178825Sdfrconst char* KRB5_LIB_FUNCTION
611102644Snectarkrb5_cc_default_name (krb5_context /*context*/);
61255682Smarkm
613178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
614102644Snectarkrb5_cc_destroy (
615102644Snectar	krb5_context /*context*/,
616102644Snectar	krb5_ccache /*id*/);
61755682Smarkm
618178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
619102644Snectarkrb5_cc_end_seq_get (
620102644Snectar	krb5_context /*context*/,
621102644Snectar	const krb5_ccache /*id*/,
622102644Snectar	krb5_cc_cursor */*cursor*/);
62355682Smarkm
624178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
625102644Snectarkrb5_cc_gen_new (
626102644Snectar	krb5_context /*context*/,
627102644Snectar	const krb5_cc_ops */*ops*/,
628102644Snectar	krb5_ccache */*id*/);
62955682Smarkm
630178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
631178825Sdfrkrb5_cc_get_full_name (
632178825Sdfr	krb5_context /*context*/,
633178825Sdfr	krb5_ccache /*id*/,
634178825Sdfr	char **/*str*/);
635178825Sdfr
636178825Sdfrconst char* KRB5_LIB_FUNCTION
637102644Snectarkrb5_cc_get_name (
638102644Snectar	krb5_context /*context*/,
639102644Snectar	krb5_ccache /*id*/);
64055682Smarkm
641120945Snectarconst krb5_cc_ops *
642120945Snectarkrb5_cc_get_ops (
643120945Snectar	krb5_context /*context*/,
644120945Snectar	krb5_ccache /*id*/);
645120945Snectar
646178825Sdfrconst krb5_cc_ops *
647178825Sdfrkrb5_cc_get_prefix_ops (
648178825Sdfr	krb5_context /*context*/,
649178825Sdfr	const char */*prefix*/);
650178825Sdfr
651178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
652102644Snectarkrb5_cc_get_principal (
653102644Snectar	krb5_context /*context*/,
654102644Snectar	krb5_ccache /*id*/,
655102644Snectar	krb5_principal */*principal*/);
65655682Smarkm
657178825Sdfrconst char* KRB5_LIB_FUNCTION
658102644Snectarkrb5_cc_get_type (
659102644Snectar	krb5_context /*context*/,
660102644Snectar	krb5_ccache /*id*/);
66155682Smarkm
662178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
663102644Snectarkrb5_cc_get_version (
664102644Snectar	krb5_context /*context*/,
665102644Snectar	const krb5_ccache /*id*/);
66655682Smarkm
667178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
668102644Snectarkrb5_cc_initialize (
669102644Snectar	krb5_context /*context*/,
670102644Snectar	krb5_ccache /*id*/,
671102644Snectar	krb5_principal /*primary_principal*/);
67255682Smarkm
67355682Smarkmkrb5_error_code
674178825Sdfrkrb5_cc_move (
675178825Sdfr	krb5_context /*context*/,
676178825Sdfr	krb5_ccache /*from*/,
677178825Sdfr	krb5_ccache /*to*/);
678178825Sdfr
679178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
680178825Sdfrkrb5_cc_new_unique (
681178825Sdfr	krb5_context /*context*/,
682178825Sdfr	const char */*type*/,
683178825Sdfr	const char */*hint*/,
684178825Sdfr	krb5_ccache */*id*/);
685178825Sdfr
686178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
687102644Snectarkrb5_cc_next_cred (
688102644Snectar	krb5_context /*context*/,
689102644Snectar	const krb5_ccache /*id*/,
690102644Snectar	krb5_cc_cursor */*cursor*/,
691102644Snectar	krb5_creds */*creds*/);
69255682Smarkm
693178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
694178825Sdfrkrb5_cc_next_cred_match (
695178825Sdfr	krb5_context /*context*/,
696178825Sdfr	const krb5_ccache /*id*/,
697178825Sdfr	krb5_cc_cursor * /*cursor*/,
698178825Sdfr	krb5_creds * /*creds*/,
699178825Sdfr	krb5_flags /*whichfields*/,
700178825Sdfr	const krb5_creds * /*mcreds*/);
701178825Sdfr
702178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
703102644Snectarkrb5_cc_register (
704102644Snectar	krb5_context /*context*/,
705102644Snectar	const krb5_cc_ops */*ops*/,
706102644Snectar	krb5_boolean /*override*/);
70755682Smarkm
708178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
709102644Snectarkrb5_cc_remove_cred (
710102644Snectar	krb5_context /*context*/,
711102644Snectar	krb5_ccache /*id*/,
712102644Snectar	krb5_flags /*which*/,
713102644Snectar	krb5_creds */*cred*/);
71455682Smarkm
715178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
716102644Snectarkrb5_cc_resolve (
717102644Snectar	krb5_context /*context*/,
718102644Snectar	const char */*name*/,
719102644Snectar	krb5_ccache */*id*/);
72055682Smarkm
721178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
722102644Snectarkrb5_cc_retrieve_cred (
723102644Snectar	krb5_context /*context*/,
724102644Snectar	krb5_ccache /*id*/,
725102644Snectar	krb5_flags /*whichfields*/,
726102644Snectar	const krb5_creds */*mcreds*/,
727102644Snectar	krb5_creds */*creds*/);
72855682Smarkm
729178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
730120945Snectarkrb5_cc_set_default_name (
731120945Snectar	krb5_context /*context*/,
732120945Snectar	const char */*name*/);
733120945Snectar
734178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
735102644Snectarkrb5_cc_set_flags (
736102644Snectar	krb5_context /*context*/,
737102644Snectar	krb5_ccache /*id*/,
738102644Snectar	krb5_flags /*flags*/);
73955682Smarkm
740178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
741102644Snectarkrb5_cc_start_seq_get (
742102644Snectar	krb5_context /*context*/,
743102644Snectar	const krb5_ccache /*id*/,
744102644Snectar	krb5_cc_cursor */*cursor*/);
74555682Smarkm
746178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
747102644Snectarkrb5_cc_store_cred (
748102644Snectar	krb5_context /*context*/,
749102644Snectar	krb5_ccache /*id*/,
750102644Snectar	krb5_creds */*creds*/);
75155682Smarkm
752178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
753102644Snectarkrb5_change_password (
754102644Snectar	krb5_context /*context*/,
755102644Snectar	krb5_creds */*creds*/,
756178825Sdfr	const char */*newpw*/,
757102644Snectar	int */*result_code*/,
758102644Snectar	krb5_data */*result_code_string*/,
759102644Snectar	krb5_data */*result_string*/);
76055682Smarkm
761178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
762127808Snectarkrb5_check_transited (
763127808Snectar	krb5_context /*context*/,
764127808Snectar	krb5_const_realm /*client_realm*/,
765127808Snectar	krb5_const_realm /*server_realm*/,
766127808Snectar	krb5_realm */*realms*/,
767127808Snectar	int /*num_realms*/,
768127808Snectar	int */*bad_realm*/);
769127808Snectar
770178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
771102644Snectarkrb5_check_transited_realms (
772102644Snectar	krb5_context /*context*/,
773102644Snectar	const char *const */*realms*/,
774102644Snectar	int /*num_realms*/,
775102644Snectar	int */*bad_realm*/);
77657419Smarkm
777178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
778178825Sdfrkrb5_checksum_disable (
779178825Sdfr	krb5_context /*context*/,
780178825Sdfr	krb5_cksumtype /*type*/);
781178825Sdfr
782178825Sdfrvoid KRB5_LIB_FUNCTION
783178825Sdfrkrb5_checksum_free (
784178825Sdfr	krb5_context /*context*/,
785178825Sdfr	krb5_checksum */*cksum*/);
786178825Sdfr
787178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
788102644Snectarkrb5_checksum_is_collision_proof (
789102644Snectar	krb5_context /*context*/,
790102644Snectar	krb5_cksumtype /*type*/);
79155682Smarkm
792178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
793102644Snectarkrb5_checksum_is_keyed (
794102644Snectar	krb5_context /*context*/,
795102644Snectar	krb5_cksumtype /*type*/);
79655682Smarkm
797178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
798102644Snectarkrb5_checksumsize (
799102644Snectar	krb5_context /*context*/,
800102644Snectar	krb5_cksumtype /*type*/,
801102644Snectar	size_t */*size*/);
80255682Smarkm
803178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
804178825Sdfrkrb5_cksumtype_valid (
805178825Sdfr	krb5_context /*context*/,
806178825Sdfr	krb5_cksumtype /*ctype*/);
807178825Sdfr
808178825Sdfrvoid KRB5_LIB_FUNCTION
809102644Snectarkrb5_clear_error_string (krb5_context /*context*/);
81078527Sassar
811178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
812102644Snectarkrb5_closelog (
813102644Snectar	krb5_context /*context*/,
814102644Snectar	krb5_log_facility */*fac*/);
81555682Smarkm
816178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
817102644Snectarkrb5_compare_creds (
818102644Snectar	krb5_context /*context*/,
819102644Snectar	krb5_flags /*whichfields*/,
820178825Sdfr	const krb5_creds * /*mcreds*/,
821178825Sdfr	const krb5_creds * /*creds*/);
82255682Smarkm
823178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
824102644Snectarkrb5_config_file_free (
825102644Snectar	krb5_context /*context*/,
826102644Snectar	krb5_config_section */*s*/);
82755682Smarkm
828178825Sdfrvoid KRB5_LIB_FUNCTION
829102644Snectarkrb5_config_free_strings (char **/*strings*/);
83055682Smarkm
83155682Smarkmconst void *
832102644Snectarkrb5_config_get (
833102644Snectar	krb5_context /*context*/,
834102644Snectar	const krb5_config_section */*c*/,
835102644Snectar	int /*type*/,
836102644Snectar	...);
83755682Smarkm
838178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
839102644Snectarkrb5_config_get_bool (
840102644Snectar	krb5_context /*context*/,
841102644Snectar	const krb5_config_section */*c*/,
842102644Snectar	...);
84355682Smarkm
844178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
845102644Snectarkrb5_config_get_bool_default (
846102644Snectar	krb5_context /*context*/,
847102644Snectar	const krb5_config_section */*c*/,
848102644Snectar	krb5_boolean /*def_value*/,
849102644Snectar	...);
85055682Smarkm
851178825Sdfrint KRB5_LIB_FUNCTION
852102644Snectarkrb5_config_get_int (
853102644Snectar	krb5_context /*context*/,
854102644Snectar	const krb5_config_section */*c*/,
855102644Snectar	...);
85655682Smarkm
857178825Sdfrint KRB5_LIB_FUNCTION
858102644Snectarkrb5_config_get_int_default (
859102644Snectar	krb5_context /*context*/,
860102644Snectar	const krb5_config_section */*c*/,
861102644Snectar	int /*def_value*/,
862102644Snectar	...);
86355682Smarkm
86455682Smarkmconst krb5_config_binding *
865102644Snectarkrb5_config_get_list (
866102644Snectar	krb5_context /*context*/,
867102644Snectar	const krb5_config_section */*c*/,
868102644Snectar	...);
86955682Smarkm
87055682Smarkmconst void *
871102644Snectarkrb5_config_get_next (
872102644Snectar	krb5_context /*context*/,
873102644Snectar	const krb5_config_section */*c*/,
874102644Snectar	const krb5_config_binding **/*pointer*/,
875102644Snectar	int /*type*/,
876102644Snectar	...);
87755682Smarkm
878178825Sdfrconst char* KRB5_LIB_FUNCTION
879102644Snectarkrb5_config_get_string (
880102644Snectar	krb5_context /*context*/,
881102644Snectar	const krb5_config_section */*c*/,
882102644Snectar	...);
88355682Smarkm
884178825Sdfrconst char* KRB5_LIB_FUNCTION
885102644Snectarkrb5_config_get_string_default (
886102644Snectar	krb5_context /*context*/,
887102644Snectar	const krb5_config_section */*c*/,
888102644Snectar	const char */*def_value*/,
889102644Snectar	...);
89072445Sassar
89155682Smarkmchar**
892102644Snectarkrb5_config_get_strings (
893102644Snectar	krb5_context /*context*/,
894102644Snectar	const krb5_config_section */*c*/,
895102644Snectar	...);
89655682Smarkm
897178825Sdfrint KRB5_LIB_FUNCTION
898102644Snectarkrb5_config_get_time (
899102644Snectar	krb5_context /*context*/,
900102644Snectar	const krb5_config_section */*c*/,
901102644Snectar	...);
90255682Smarkm
903178825Sdfrint KRB5_LIB_FUNCTION
904102644Snectarkrb5_config_get_time_default (
905102644Snectar	krb5_context /*context*/,
906102644Snectar	const krb5_config_section */*c*/,
907102644Snectar	int /*def_value*/,
908102644Snectar	...);
90955682Smarkm
910178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
911102644Snectarkrb5_config_parse_file (
912102644Snectar	krb5_context /*context*/,
913102644Snectar	const char */*fname*/,
914102644Snectar	krb5_config_section **/*res*/);
91555682Smarkm
916178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
917102644Snectarkrb5_config_parse_file_multi (
918102644Snectar	krb5_context /*context*/,
919102644Snectar	const char */*fname*/,
920102644Snectar	krb5_config_section **/*res*/);
921102644Snectar
922178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
923178825Sdfrkrb5_config_parse_string_multi (
924178825Sdfr	krb5_context /*context*/,
925178825Sdfr	const char */*string*/,
926178825Sdfr	krb5_config_section **/*res*/);
927178825Sdfr
92855682Smarkmconst void *
929102644Snectarkrb5_config_vget (
930102644Snectar	krb5_context /*context*/,
931102644Snectar	const krb5_config_section */*c*/,
932102644Snectar	int /*type*/,
933102644Snectar	va_list /*args*/);
93455682Smarkm
935178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
936102644Snectarkrb5_config_vget_bool (
937102644Snectar	krb5_context /*context*/,
938102644Snectar	const krb5_config_section */*c*/,
939102644Snectar	va_list /*args*/);
94055682Smarkm
941178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
942102644Snectarkrb5_config_vget_bool_default (
943102644Snectar	krb5_context /*context*/,
944102644Snectar	const krb5_config_section */*c*/,
945102644Snectar	krb5_boolean /*def_value*/,
946102644Snectar	va_list /*args*/);
94755682Smarkm
948178825Sdfrint KRB5_LIB_FUNCTION
949102644Snectarkrb5_config_vget_int (
950102644Snectar	krb5_context /*context*/,
951102644Snectar	const krb5_config_section */*c*/,
952102644Snectar	va_list /*args*/);
95355682Smarkm
954178825Sdfrint KRB5_LIB_FUNCTION
955102644Snectarkrb5_config_vget_int_default (
956102644Snectar	krb5_context /*context*/,
957102644Snectar	const krb5_config_section */*c*/,
958102644Snectar	int /*def_value*/,
959102644Snectar	va_list /*args*/);
96055682Smarkm
96155682Smarkmconst krb5_config_binding *
962102644Snectarkrb5_config_vget_list (
963102644Snectar	krb5_context /*context*/,
964102644Snectar	const krb5_config_section */*c*/,
965102644Snectar	va_list /*args*/);
96655682Smarkm
96755682Smarkmconst void *
968102644Snectarkrb5_config_vget_next (
969102644Snectar	krb5_context /*context*/,
970102644Snectar	const krb5_config_section */*c*/,
971102644Snectar	const krb5_config_binding **/*pointer*/,
972102644Snectar	int /*type*/,
973102644Snectar	va_list /*args*/);
97455682Smarkm
975178825Sdfrconst char* KRB5_LIB_FUNCTION
976102644Snectarkrb5_config_vget_string (
977102644Snectar	krb5_context /*context*/,
978102644Snectar	const krb5_config_section */*c*/,
979102644Snectar	va_list /*args*/);
98055682Smarkm
981178825Sdfrconst char* KRB5_LIB_FUNCTION
982102644Snectarkrb5_config_vget_string_default (
983102644Snectar	krb5_context /*context*/,
984102644Snectar	const krb5_config_section */*c*/,
985102644Snectar	const char */*def_value*/,
986102644Snectar	va_list /*args*/);
98772445Sassar
988178825Sdfrchar ** KRB5_LIB_FUNCTION
989102644Snectarkrb5_config_vget_strings (
990102644Snectar	krb5_context /*context*/,
991102644Snectar	const krb5_config_section */*c*/,
992102644Snectar	va_list /*args*/);
99355682Smarkm
994178825Sdfrint KRB5_LIB_FUNCTION
995102644Snectarkrb5_config_vget_time (
996102644Snectar	krb5_context /*context*/,
997102644Snectar	const krb5_config_section */*c*/,
998102644Snectar	va_list /*args*/);
99955682Smarkm
1000178825Sdfrint KRB5_LIB_FUNCTION
1001102644Snectarkrb5_config_vget_time_default (
1002102644Snectar	krb5_context /*context*/,
1003102644Snectar	const krb5_config_section */*c*/,
1004102644Snectar	int /*def_value*/,
1005102644Snectar	va_list /*args*/);
100655682Smarkm
1007178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1008102644Snectarkrb5_copy_address (
1009102644Snectar	krb5_context /*context*/,
1010102644Snectar	const krb5_address */*inaddr*/,
1011102644Snectar	krb5_address */*outaddr*/);
101255682Smarkm
1013178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1014102644Snectarkrb5_copy_addresses (
1015102644Snectar	krb5_context /*context*/,
1016102644Snectar	const krb5_addresses */*inaddr*/,
1017102644Snectar	krb5_addresses */*outaddr*/);
101855682Smarkm
1019178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1020178825Sdfrkrb5_copy_checksum (
1021178825Sdfr	krb5_context /*context*/,
1022178825Sdfr	const krb5_checksum */*old*/,
1023178825Sdfr	krb5_checksum **/*new*/);
1024178825Sdfr
1025178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1026102644Snectarkrb5_copy_creds (
1027102644Snectar	krb5_context /*context*/,
1028102644Snectar	const krb5_creds */*incred*/,
1029102644Snectar	krb5_creds **/*outcred*/);
103055682Smarkm
1031178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1032102644Snectarkrb5_copy_creds_contents (
1033102644Snectar	krb5_context /*context*/,
1034102644Snectar	const krb5_creds */*incred*/,
1035102644Snectar	krb5_creds */*c*/);
103655682Smarkm
1037178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1038102644Snectarkrb5_copy_data (
1039102644Snectar	krb5_context /*context*/,
1040102644Snectar	const krb5_data */*indata*/,
1041102644Snectar	krb5_data **/*outdata*/);
104255682Smarkm
1043178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1044102644Snectarkrb5_copy_host_realm (
1045102644Snectar	krb5_context /*context*/,
1046102644Snectar	const krb5_realm */*from*/,
1047102644Snectar	krb5_realm **/*to*/);
104855682Smarkm
1049178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1050102644Snectarkrb5_copy_keyblock (
1051102644Snectar	krb5_context /*context*/,
1052102644Snectar	const krb5_keyblock */*inblock*/,
1053102644Snectar	krb5_keyblock **/*to*/);
105455682Smarkm
1055178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1056102644Snectarkrb5_copy_keyblock_contents (
1057102644Snectar	krb5_context /*context*/,
1058102644Snectar	const krb5_keyblock */*inblock*/,
1059102644Snectar	krb5_keyblock */*to*/);
106055682Smarkm
1061178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1062102644Snectarkrb5_copy_principal (
1063102644Snectar	krb5_context /*context*/,
1064102644Snectar	krb5_const_principal /*inprinc*/,
1065102644Snectar	krb5_principal */*outprinc*/);
106655682Smarkm
1067178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1068102644Snectarkrb5_copy_ticket (
1069102644Snectar	krb5_context /*context*/,
1070102644Snectar	const krb5_ticket */*from*/,
1071102644Snectar	krb5_ticket **/*to*/);
107255682Smarkm
1073178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1074102644Snectarkrb5_create_checksum (
1075102644Snectar	krb5_context /*context*/,
1076102644Snectar	krb5_crypto /*crypto*/,
1077102644Snectar	krb5_key_usage /*usage*/,
1078102644Snectar	int /*type*/,
1079102644Snectar	void */*data*/,
1080102644Snectar	size_t /*len*/,
1081102644Snectar	Checksum */*result*/);
108255682Smarkm
1083178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1084102644Snectarkrb5_crypto_destroy (
1085102644Snectar	krb5_context /*context*/,
1086102644Snectar	krb5_crypto /*crypto*/);
108755682Smarkm
1088178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1089178825Sdfrkrb5_crypto_get_checksum_type (
1090178825Sdfr	krb5_context /*context*/,
1091178825Sdfr	krb5_crypto /*crypto*/,
1092178825Sdfr	krb5_cksumtype */*type*/);
1093178825Sdfr
1094178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1095103423Snectarkrb5_crypto_getblocksize (
1096103423Snectar	krb5_context /*context*/,
1097103423Snectar	krb5_crypto /*crypto*/,
1098103423Snectar	size_t */*blocksize*/);
1099103423Snectar
1100178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1101178825Sdfrkrb5_crypto_getconfoundersize (
1102178825Sdfr	krb5_context /*context*/,
1103178825Sdfr	krb5_crypto /*crypto*/,
1104178825Sdfr	size_t */*confoundersize*/);
1105178825Sdfr
1106178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1107178825Sdfrkrb5_crypto_getenctype (
1108178825Sdfr	krb5_context /*context*/,
1109178825Sdfr	krb5_crypto /*crypto*/,
1110178825Sdfr	krb5_enctype */*enctype*/);
1111178825Sdfr
1112178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1113178825Sdfrkrb5_crypto_getpadsize (
1114178825Sdfr	krb5_context /*context*/,
1115178825Sdfr	krb5_crypto /*crypto*/,
1116178825Sdfr	size_t */*padsize*/);
1117178825Sdfr
1118178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1119102644Snectarkrb5_crypto_init (
1120102644Snectar	krb5_context /*context*/,
1121102644Snectar	const krb5_keyblock */*key*/,
1122102644Snectar	krb5_enctype /*etype*/,
1123102644Snectar	krb5_crypto */*crypto*/);
112455682Smarkm
1125178825Sdfrsize_t
1126178825Sdfrkrb5_crypto_overhead (
1127178825Sdfr	krb5_context /*context*/,
1128178825Sdfr	krb5_crypto /*crypto*/);
1129178825Sdfr
1130178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1131178825Sdfrkrb5_crypto_prf (
1132178825Sdfr	krb5_context /*context*/,
1133178825Sdfr	const krb5_crypto /*crypto*/,
1134178825Sdfr	const krb5_data */*input*/,
1135178825Sdfr	krb5_data */*output*/);
1136178825Sdfr
1137178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1138178825Sdfrkrb5_crypto_prf_length (
1139178825Sdfr	krb5_context /*context*/,
1140178825Sdfr	krb5_enctype /*type*/,
1141178825Sdfr	size_t */*length*/);
1142178825Sdfr
1143178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1144102644Snectarkrb5_data_alloc (
1145102644Snectar	krb5_data */*p*/,
1146102644Snectar	int /*len*/);
114755682Smarkm
1148178825Sdfrint KRB5_LIB_FUNCTION
1149178825Sdfrkrb5_data_cmp (
1150178825Sdfr	const krb5_data */*data1*/,
1151178825Sdfr	const krb5_data */*data2*/);
1152178825Sdfr
1153178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1154102644Snectarkrb5_data_copy (
1155102644Snectar	krb5_data */*p*/,
1156102644Snectar	const void */*data*/,
1157102644Snectar	size_t /*len*/);
115855682Smarkm
1159178825Sdfrvoid KRB5_LIB_FUNCTION
1160102644Snectarkrb5_data_free (krb5_data */*p*/);
116155682Smarkm
1162178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1163102644Snectarkrb5_data_realloc (
1164102644Snectar	krb5_data */*p*/,
1165102644Snectar	int /*len*/);
116655682Smarkm
1167178825Sdfrvoid KRB5_LIB_FUNCTION
1168102644Snectarkrb5_data_zero (krb5_data */*p*/);
116955682Smarkm
1170178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1171102644Snectarkrb5_decode_Authenticator (
1172102644Snectar	krb5_context /*context*/,
1173102644Snectar	const void */*data*/,
1174102644Snectar	size_t /*length*/,
1175102644Snectar	Authenticator */*t*/,
1176102644Snectar	size_t */*len*/);
117755682Smarkm
1178178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1179102644Snectarkrb5_decode_ETYPE_INFO (
1180102644Snectar	krb5_context /*context*/,
1181102644Snectar	const void */*data*/,
1182102644Snectar	size_t /*length*/,
1183102644Snectar	ETYPE_INFO */*t*/,
1184102644Snectar	size_t */*len*/);
118555682Smarkm
1186178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1187178825Sdfrkrb5_decode_ETYPE_INFO2 (
1188178825Sdfr	krb5_context /*context*/,
1189178825Sdfr	const void */*data*/,
1190178825Sdfr	size_t /*length*/,
1191178825Sdfr	ETYPE_INFO2 */*t*/,
1192178825Sdfr	size_t */*len*/);
1193178825Sdfr
1194178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1195102644Snectarkrb5_decode_EncAPRepPart (
1196102644Snectar	krb5_context /*context*/,
1197102644Snectar	const void */*data*/,
1198102644Snectar	size_t /*length*/,
1199102644Snectar	EncAPRepPart */*t*/,
1200102644Snectar	size_t */*len*/);
120155682Smarkm
1202178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1203102644Snectarkrb5_decode_EncASRepPart (
1204102644Snectar	krb5_context /*context*/,
1205102644Snectar	const void */*data*/,
1206102644Snectar	size_t /*length*/,
1207102644Snectar	EncASRepPart */*t*/,
1208102644Snectar	size_t */*len*/);
120955682Smarkm
1210178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1211102644Snectarkrb5_decode_EncKrbCredPart (
1212102644Snectar	krb5_context /*context*/,
1213102644Snectar	const void */*data*/,
1214102644Snectar	size_t /*length*/,
1215102644Snectar	EncKrbCredPart */*t*/,
1216102644Snectar	size_t */*len*/);
121755682Smarkm
1218178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1219102644Snectarkrb5_decode_EncTGSRepPart (
1220102644Snectar	krb5_context /*context*/,
1221102644Snectar	const void */*data*/,
1222102644Snectar	size_t /*length*/,
1223102644Snectar	EncTGSRepPart */*t*/,
1224102644Snectar	size_t */*len*/);
122555682Smarkm
1226178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1227102644Snectarkrb5_decode_EncTicketPart (
1228102644Snectar	krb5_context /*context*/,
1229102644Snectar	const void */*data*/,
1230102644Snectar	size_t /*length*/,
1231102644Snectar	EncTicketPart */*t*/,
1232102644Snectar	size_t */*len*/);
123355682Smarkm
1234178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1235102644Snectarkrb5_decode_ap_req (
1236102644Snectar	krb5_context /*context*/,
1237102644Snectar	const krb5_data */*inbuf*/,
1238102644Snectar	krb5_ap_req */*ap_req*/);
123955682Smarkm
1240178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1241102644Snectarkrb5_decrypt (
1242102644Snectar	krb5_context /*context*/,
1243102644Snectar	krb5_crypto /*crypto*/,
1244102644Snectar	unsigned /*usage*/,
1245102644Snectar	void */*data*/,
1246102644Snectar	size_t /*len*/,
1247102644Snectar	krb5_data */*result*/);
124855682Smarkm
1249178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1250102644Snectarkrb5_decrypt_EncryptedData (
1251102644Snectar	krb5_context /*context*/,
1252102644Snectar	krb5_crypto /*crypto*/,
1253102644Snectar	unsigned /*usage*/,
1254102644Snectar	const EncryptedData */*e*/,
1255102644Snectar	krb5_data */*result*/);
125655682Smarkm
1257178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1258102644Snectarkrb5_decrypt_ivec (
1259102644Snectar	krb5_context /*context*/,
1260102644Snectar	krb5_crypto /*crypto*/,
1261102644Snectar	unsigned /*usage*/,
1262102644Snectar	void */*data*/,
1263102644Snectar	size_t /*len*/,
1264102644Snectar	krb5_data */*result*/,
1265102644Snectar	void */*ivec*/);
126672445Sassar
1267178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1268102644Snectarkrb5_decrypt_ticket (
1269102644Snectar	krb5_context /*context*/,
1270102644Snectar	Ticket */*ticket*/,
1271102644Snectar	krb5_keyblock */*key*/,
1272102644Snectar	EncTicketPart */*out*/,
1273102644Snectar	krb5_flags /*flags*/);
127455682Smarkm
1275178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1276102644Snectarkrb5_derive_key (
1277102644Snectar	krb5_context /*context*/,
1278102644Snectar	const krb5_keyblock */*key*/,
1279102644Snectar	krb5_enctype /*etype*/,
1280102644Snectar	const void */*constant*/,
1281102644Snectar	size_t /*constant_len*/,
1282102644Snectar	krb5_keyblock **/*derived_key*/);
128378527Sassar
128478527Sassarkrb5_error_code
1285178825Sdfrkrb5_digest_alloc (
1286178825Sdfr	krb5_context /*context*/,
1287178825Sdfr	krb5_digest */*digest*/);
1288178825Sdfr
1289178825Sdfrvoid
1290178825Sdfrkrb5_digest_free (krb5_digest /*digest*/);
1291178825Sdfr
1292178825Sdfrkrb5_error_code
1293178825Sdfrkrb5_digest_get_client_binding (
1294178825Sdfr	krb5_context /*context*/,
1295178825Sdfr	krb5_digest /*digest*/,
1296178825Sdfr	char **/*type*/,
1297178825Sdfr	char **/*binding*/);
1298178825Sdfr
1299178825Sdfrconst char *
1300178825Sdfrkrb5_digest_get_identifier (
1301178825Sdfr	krb5_context /*context*/,
1302178825Sdfr	krb5_digest /*digest*/);
1303178825Sdfr
1304178825Sdfrconst char *
1305178825Sdfrkrb5_digest_get_opaque (
1306178825Sdfr	krb5_context /*context*/,
1307178825Sdfr	krb5_digest /*digest*/);
1308178825Sdfr
1309178825Sdfrconst char *
1310178825Sdfrkrb5_digest_get_rsp (
1311178825Sdfr	krb5_context /*context*/,
1312178825Sdfr	krb5_digest /*digest*/);
1313178825Sdfr
1314178825Sdfrconst char *
1315178825Sdfrkrb5_digest_get_server_nonce (
1316178825Sdfr	krb5_context /*context*/,
1317178825Sdfr	krb5_digest /*digest*/);
1318178825Sdfr
1319178825Sdfrkrb5_error_code
1320178825Sdfrkrb5_digest_get_session_key (
1321178825Sdfr	krb5_context /*context*/,
1322178825Sdfr	krb5_digest /*digest*/,
1323178825Sdfr	krb5_data */*data*/);
1324178825Sdfr
1325178825Sdfrkrb5_error_code
1326178825Sdfrkrb5_digest_get_tickets (
1327178825Sdfr	krb5_context /*context*/,
1328178825Sdfr	krb5_digest /*digest*/,
1329178825Sdfr	Ticket **/*tickets*/);
1330178825Sdfr
1331178825Sdfrkrb5_error_code
1332178825Sdfrkrb5_digest_init_request (
1333178825Sdfr	krb5_context /*context*/,
1334178825Sdfr	krb5_digest /*digest*/,
1335178825Sdfr	krb5_realm /*realm*/,
1336178825Sdfr	krb5_ccache /*ccache*/);
1337178825Sdfr
1338178825Sdfrkrb5_error_code
1339178825Sdfrkrb5_digest_probe (
1340178825Sdfr	krb5_context /*context*/,
1341178825Sdfr	krb5_realm /*realm*/,
1342178825Sdfr	krb5_ccache /*ccache*/,
1343178825Sdfr	unsigned */*flags*/);
1344178825Sdfr
1345178825Sdfrkrb5_boolean
1346178825Sdfrkrb5_digest_rep_get_status (
1347178825Sdfr	krb5_context /*context*/,
1348178825Sdfr	krb5_digest /*digest*/);
1349178825Sdfr
1350178825Sdfrkrb5_error_code
1351178825Sdfrkrb5_digest_request (
1352178825Sdfr	krb5_context /*context*/,
1353178825Sdfr	krb5_digest /*digest*/,
1354178825Sdfr	krb5_realm /*realm*/,
1355178825Sdfr	krb5_ccache /*ccache*/);
1356178825Sdfr
1357178825Sdfrkrb5_error_code
1358178825Sdfrkrb5_digest_set_authentication_user (
1359178825Sdfr	krb5_context /*context*/,
1360178825Sdfr	krb5_digest /*digest*/,
1361178825Sdfr	krb5_principal /*authentication_user*/);
1362178825Sdfr
1363178825Sdfrkrb5_error_code
1364178825Sdfrkrb5_digest_set_authid (
1365178825Sdfr	krb5_context /*context*/,
1366178825Sdfr	krb5_digest /*digest*/,
1367178825Sdfr	const char */*authid*/);
1368178825Sdfr
1369178825Sdfrkrb5_error_code
1370178825Sdfrkrb5_digest_set_client_nonce (
1371178825Sdfr	krb5_context /*context*/,
1372178825Sdfr	krb5_digest /*digest*/,
1373178825Sdfr	const char */*nonce*/);
1374178825Sdfr
1375178825Sdfrkrb5_error_code
1376178825Sdfrkrb5_digest_set_digest (
1377178825Sdfr	krb5_context /*context*/,
1378178825Sdfr	krb5_digest /*digest*/,
1379178825Sdfr	const char */*dgst*/);
1380178825Sdfr
1381178825Sdfrkrb5_error_code
1382178825Sdfrkrb5_digest_set_hostname (
1383178825Sdfr	krb5_context /*context*/,
1384178825Sdfr	krb5_digest /*digest*/,
1385178825Sdfr	const char */*hostname*/);
1386178825Sdfr
1387178825Sdfrkrb5_error_code
1388178825Sdfrkrb5_digest_set_identifier (
1389178825Sdfr	krb5_context /*context*/,
1390178825Sdfr	krb5_digest /*digest*/,
1391178825Sdfr	const char */*id*/);
1392178825Sdfr
1393178825Sdfrkrb5_error_code
1394178825Sdfrkrb5_digest_set_method (
1395178825Sdfr	krb5_context /*context*/,
1396178825Sdfr	krb5_digest /*digest*/,
1397178825Sdfr	const char */*method*/);
1398178825Sdfr
1399178825Sdfrkrb5_error_code
1400178825Sdfrkrb5_digest_set_nonceCount (
1401178825Sdfr	krb5_context /*context*/,
1402178825Sdfr	krb5_digest /*digest*/,
1403178825Sdfr	const char */*nonce_count*/);
1404178825Sdfr
1405178825Sdfrkrb5_error_code
1406178825Sdfrkrb5_digest_set_opaque (
1407178825Sdfr	krb5_context /*context*/,
1408178825Sdfr	krb5_digest /*digest*/,
1409178825Sdfr	const char */*opaque*/);
1410178825Sdfr
1411178825Sdfrkrb5_error_code
1412178825Sdfrkrb5_digest_set_qop (
1413178825Sdfr	krb5_context /*context*/,
1414178825Sdfr	krb5_digest /*digest*/,
1415178825Sdfr	const char */*qop*/);
1416178825Sdfr
1417178825Sdfrkrb5_error_code
1418178825Sdfrkrb5_digest_set_realm (
1419178825Sdfr	krb5_context /*context*/,
1420178825Sdfr	krb5_digest /*digest*/,
1421178825Sdfr	const char */*realm*/);
1422178825Sdfr
1423178825Sdfrint
1424178825Sdfrkrb5_digest_set_responseData (
1425178825Sdfr	krb5_context /*context*/,
1426178825Sdfr	krb5_digest /*digest*/,
1427178825Sdfr	const char */*response*/);
1428178825Sdfr
1429178825Sdfrkrb5_error_code
1430178825Sdfrkrb5_digest_set_server_cb (
1431178825Sdfr	krb5_context /*context*/,
1432178825Sdfr	krb5_digest /*digest*/,
1433178825Sdfr	const char */*type*/,
1434178825Sdfr	const char */*binding*/);
1435178825Sdfr
1436178825Sdfrkrb5_error_code
1437178825Sdfrkrb5_digest_set_server_nonce (
1438178825Sdfr	krb5_context /*context*/,
1439178825Sdfr	krb5_digest /*digest*/,
1440178825Sdfr	const char */*nonce*/);
1441178825Sdfr
1442178825Sdfrkrb5_error_code
1443178825Sdfrkrb5_digest_set_type (
1444178825Sdfr	krb5_context /*context*/,
1445178825Sdfr	krb5_digest /*digest*/,
1446178825Sdfr	const char */*type*/);
1447178825Sdfr
1448178825Sdfrkrb5_error_code
1449178825Sdfrkrb5_digest_set_uri (
1450178825Sdfr	krb5_context /*context*/,
1451178825Sdfr	krb5_digest /*digest*/,
1452178825Sdfr	const char */*uri*/);
1453178825Sdfr
1454178825Sdfrkrb5_error_code
1455178825Sdfrkrb5_digest_set_username (
1456178825Sdfr	krb5_context /*context*/,
1457178825Sdfr	krb5_digest /*digest*/,
1458178825Sdfr	const char */*username*/);
1459178825Sdfr
1460178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1461102644Snectarkrb5_domain_x500_decode (
1462102644Snectar	krb5_context /*context*/,
1463102644Snectar	krb5_data /*tr*/,
1464102644Snectar	char ***/*realms*/,
1465102644Snectar	int */*num_realms*/,
1466102644Snectar	const char */*client_realm*/,
1467102644Snectar	const char */*server_realm*/);
146855682Smarkm
1469178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1470102644Snectarkrb5_domain_x500_encode (
1471102644Snectar	char **/*realms*/,
1472102644Snectar	int /*num_realms*/,
1473102644Snectar	krb5_data */*encoding*/);
147455682Smarkm
1475178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1476102644Snectarkrb5_eai_to_heim_errno (
1477102644Snectar	int /*eai_errno*/,
1478102644Snectar	int /*system_error*/);
147972445Sassar
1480178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1481102644Snectarkrb5_encode_Authenticator (
1482102644Snectar	krb5_context /*context*/,
1483102644Snectar	void */*data*/,
1484102644Snectar	size_t /*length*/,
1485102644Snectar	Authenticator */*t*/,
1486102644Snectar	size_t */*len*/);
148755682Smarkm
1488178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1489102644Snectarkrb5_encode_ETYPE_INFO (
1490102644Snectar	krb5_context /*context*/,
1491102644Snectar	void */*data*/,
1492102644Snectar	size_t /*length*/,
1493102644Snectar	ETYPE_INFO */*t*/,
1494102644Snectar	size_t */*len*/);
149555682Smarkm
1496178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1497178825Sdfrkrb5_encode_ETYPE_INFO2 (
1498178825Sdfr	krb5_context /*context*/,
1499178825Sdfr	void */*data*/,
1500178825Sdfr	size_t /*length*/,
1501178825Sdfr	ETYPE_INFO2 */*t*/,
1502178825Sdfr	size_t */*len*/);
1503178825Sdfr
1504178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1505102644Snectarkrb5_encode_EncAPRepPart (
1506102644Snectar	krb5_context /*context*/,
1507102644Snectar	void */*data*/,
1508102644Snectar	size_t /*length*/,
1509102644Snectar	EncAPRepPart */*t*/,
1510102644Snectar	size_t */*len*/);
151155682Smarkm
1512178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1513102644Snectarkrb5_encode_EncASRepPart (
1514102644Snectar	krb5_context /*context*/,
1515102644Snectar	void */*data*/,
1516102644Snectar	size_t /*length*/,
1517102644Snectar	EncASRepPart */*t*/,
1518102644Snectar	size_t */*len*/);
151955682Smarkm
1520178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1521102644Snectarkrb5_encode_EncKrbCredPart (
1522102644Snectar	krb5_context /*context*/,
1523102644Snectar	void */*data*/,
1524102644Snectar	size_t /*length*/,
1525102644Snectar	EncKrbCredPart */*t*/,
1526102644Snectar	size_t */*len*/);
152755682Smarkm
1528178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1529102644Snectarkrb5_encode_EncTGSRepPart (
1530102644Snectar	krb5_context /*context*/,
1531102644Snectar	void */*data*/,
1532102644Snectar	size_t /*length*/,
1533102644Snectar	EncTGSRepPart */*t*/,
1534102644Snectar	size_t */*len*/);
153555682Smarkm
1536178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1537102644Snectarkrb5_encode_EncTicketPart (
1538102644Snectar	krb5_context /*context*/,
1539102644Snectar	void */*data*/,
1540102644Snectar	size_t /*length*/,
1541102644Snectar	EncTicketPart */*t*/,
1542102644Snectar	size_t */*len*/);
154355682Smarkm
1544178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1545102644Snectarkrb5_encrypt (
1546102644Snectar	krb5_context /*context*/,
1547102644Snectar	krb5_crypto /*crypto*/,
1548102644Snectar	unsigned /*usage*/,
1549178825Sdfr	const void */*data*/,
1550102644Snectar	size_t /*len*/,
1551102644Snectar	krb5_data */*result*/);
155255682Smarkm
1553178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1554102644Snectarkrb5_encrypt_EncryptedData (
1555102644Snectar	krb5_context /*context*/,
1556102644Snectar	krb5_crypto /*crypto*/,
1557102644Snectar	unsigned /*usage*/,
1558102644Snectar	void */*data*/,
1559102644Snectar	size_t /*len*/,
1560102644Snectar	int /*kvno*/,
1561102644Snectar	EncryptedData */*result*/);
156255682Smarkm
1563178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1564102644Snectarkrb5_encrypt_ivec (
1565102644Snectar	krb5_context /*context*/,
1566102644Snectar	krb5_crypto /*crypto*/,
1567102644Snectar	unsigned /*usage*/,
1568178825Sdfr	const void */*data*/,
1569102644Snectar	size_t /*len*/,
1570102644Snectar	krb5_data */*result*/,
1571102644Snectar	void */*ivec*/);
157272445Sassar
1573178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1574178825Sdfrkrb5_enctype_disable (
1575178825Sdfr	krb5_context /*context*/,
1576178825Sdfr	krb5_enctype /*enctype*/);
1577178825Sdfr
1578178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1579178825Sdfrkrb5_enctype_keybits (
1580178825Sdfr	krb5_context /*context*/,
1581178825Sdfr	krb5_enctype /*type*/,
1582178825Sdfr	size_t */*keybits*/);
1583178825Sdfr
1584178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1585120945Snectarkrb5_enctype_keysize (
1586120945Snectar	krb5_context /*context*/,
1587120945Snectar	krb5_enctype /*type*/,
1588120945Snectar	size_t */*keysize*/);
1589120945Snectar
1590178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1591102644Snectarkrb5_enctype_to_keytype (
1592102644Snectar	krb5_context /*context*/,
1593102644Snectar	krb5_enctype /*etype*/,
1594102644Snectar	krb5_keytype */*keytype*/);
159555682Smarkm
1596178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1597102644Snectarkrb5_enctype_to_string (
1598102644Snectar	krb5_context /*context*/,
1599102644Snectar	krb5_enctype /*etype*/,
1600102644Snectar	char **/*string*/);
160155682Smarkm
1602178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1603102644Snectarkrb5_enctype_valid (
1604102644Snectar	krb5_context /*context*/,
1605102644Snectar	krb5_enctype /*etype*/);
160655682Smarkm
1607178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
1608102644Snectarkrb5_enctypes_compatible_keys (
1609102644Snectar	krb5_context /*context*/,
1610102644Snectar	krb5_enctype /*etype1*/,
1611102644Snectar	krb5_enctype /*etype2*/);
161255682Smarkm
1613178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1614102644Snectarkrb5_err (
1615102644Snectar	krb5_context /*context*/,
1616102644Snectar	int /*eval*/,
1617102644Snectar	krb5_error_code /*code*/,
1618102644Snectar	const char */*fmt*/,
1619102644Snectar	...)
162055682Smarkm    __attribute__ ((noreturn, format (printf, 4, 5)));
162155682Smarkm
1622178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1623178825Sdfr    __attribute__((deprecated)) krb5_free_creds_contents (krb5_context context, krb5_creds *c);
1624178825Sdfr
1625178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1626102644Snectarkrb5_error_from_rd_error (
1627102644Snectar	krb5_context /*context*/,
1628102644Snectar	const krb5_error */*error*/,
1629102644Snectar	const krb5_creds */*creds*/);
163078527Sassar
1631178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1632102644Snectarkrb5_errx (
1633102644Snectar	krb5_context /*context*/,
1634102644Snectar	int /*eval*/,
1635102644Snectar	const char */*fmt*/,
1636102644Snectar	...)
163755682Smarkm    __attribute__ ((noreturn, format (printf, 3, 4)));
163855682Smarkm
1639178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1640102644Snectarkrb5_expand_hostname (
1641102644Snectar	krb5_context /*context*/,
1642102644Snectar	const char */*orig_hostname*/,
1643102644Snectar	char **/*new_hostname*/);
164455682Smarkm
1645178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1646102644Snectarkrb5_expand_hostname_realms (
1647102644Snectar	krb5_context /*context*/,
1648102644Snectar	const char */*orig_hostname*/,
1649102644Snectar	char **/*new_hostname*/,
1650102644Snectar	char ***/*realms*/);
165157416Smarkm
165255682SmarkmPA_DATA *
1653102644Snectarkrb5_find_padata (
1654102644Snectar	PA_DATA */*val*/,
1655102644Snectar	unsigned /*len*/,
1656102644Snectar	int /*type*/,
1657178825Sdfr	int */*idx*/);
165855682Smarkm
1659178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1660102644Snectarkrb5_format_time (
1661102644Snectar	krb5_context /*context*/,
1662102644Snectar	time_t /*t*/,
1663102644Snectar	char */*s*/,
1664102644Snectar	size_t /*len*/,
1665102644Snectar	krb5_boolean /*include_time*/);
166672445Sassar
1667178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1668102644Snectarkrb5_free_address (
1669102644Snectar	krb5_context /*context*/,
1670102644Snectar	krb5_address */*address*/);
167155682Smarkm
1672178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1673102644Snectarkrb5_free_addresses (
1674102644Snectar	krb5_context /*context*/,
1675102644Snectar	krb5_addresses */*addresses*/);
167655682Smarkm
1677178825Sdfrvoid KRB5_LIB_FUNCTION
1678102644Snectarkrb5_free_ap_rep_enc_part (
1679102644Snectar	krb5_context /*context*/,
1680102644Snectar	krb5_ap_rep_enc_part */*val*/);
168155682Smarkm
1682178825Sdfrvoid KRB5_LIB_FUNCTION
1683102644Snectarkrb5_free_authenticator (
1684102644Snectar	krb5_context /*context*/,
1685102644Snectar	krb5_authenticator */*authenticator*/);
168655682Smarkm
1687178825Sdfrvoid KRB5_LIB_FUNCTION
1688178825Sdfrkrb5_free_checksum (
1689178825Sdfr	krb5_context /*context*/,
1690178825Sdfr	krb5_checksum */*cksum*/);
1691178825Sdfr
1692178825Sdfrvoid KRB5_LIB_FUNCTION
1693178825Sdfrkrb5_free_checksum_contents (
1694178825Sdfr	krb5_context /*context*/,
1695178825Sdfr	krb5_checksum */*cksum*/);
1696178825Sdfr
1697178825Sdfrvoid KRB5_LIB_FUNCTION
1698102644Snectarkrb5_free_config_files (char **/*filenames*/);
169955682Smarkm
1700178825Sdfrvoid KRB5_LIB_FUNCTION
1701102644Snectarkrb5_free_context (krb5_context /*context*/);
1702102644Snectar
1703178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1704102644Snectarkrb5_free_cred_contents (
1705102644Snectar	krb5_context /*context*/,
1706102644Snectar	krb5_creds */*c*/);
170755682Smarkm
1708178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1709102644Snectarkrb5_free_creds (
1710102644Snectar	krb5_context /*context*/,
1711102644Snectar	krb5_creds */*c*/);
171255682Smarkm
1713178825Sdfrvoid KRB5_LIB_FUNCTION
1714102644Snectarkrb5_free_data (
1715102644Snectar	krb5_context /*context*/,
1716102644Snectar	krb5_data */*p*/);
171755682Smarkm
1718178825Sdfrvoid KRB5_LIB_FUNCTION
1719120945Snectarkrb5_free_data_contents (
1720120945Snectar	krb5_context /*context*/,
1721120945Snectar	krb5_data */*data*/);
1722120945Snectar
1723178825Sdfrvoid KRB5_LIB_FUNCTION
1724102644Snectarkrb5_free_error (
1725102644Snectar	krb5_context /*context*/,
1726102644Snectar	krb5_error */*error*/);
172755682Smarkm
1728178825Sdfrvoid KRB5_LIB_FUNCTION
1729102644Snectarkrb5_free_error_contents (
1730102644Snectar	krb5_context /*context*/,
1731102644Snectar	krb5_error */*error*/);
173255682Smarkm
1733178825Sdfrvoid KRB5_LIB_FUNCTION
1734102644Snectarkrb5_free_error_string (
1735102644Snectar	krb5_context /*context*/,
1736102644Snectar	char */*str*/);
173778527Sassar
1738178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1739102644Snectarkrb5_free_host_realm (
1740102644Snectar	krb5_context /*context*/,
1741102644Snectar	krb5_realm */*realmlist*/);
174255682Smarkm
1743178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1744102644Snectarkrb5_free_kdc_rep (
1745102644Snectar	krb5_context /*context*/,
1746102644Snectar	krb5_kdc_rep */*rep*/);
174755682Smarkm
1748178825Sdfrvoid KRB5_LIB_FUNCTION
1749102644Snectarkrb5_free_keyblock (
1750102644Snectar	krb5_context /*context*/,
1751102644Snectar	krb5_keyblock */*keyblock*/);
175255682Smarkm
1753178825Sdfrvoid KRB5_LIB_FUNCTION
1754102644Snectarkrb5_free_keyblock_contents (
1755102644Snectar	krb5_context /*context*/,
1756102644Snectar	krb5_keyblock */*keyblock*/);
175755682Smarkm
1758178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1759102644Snectarkrb5_free_krbhst (
1760102644Snectar	krb5_context /*context*/,
1761102644Snectar	char **/*hostlist*/);
176255682Smarkm
1763178825Sdfrvoid KRB5_LIB_FUNCTION
1764102644Snectarkrb5_free_principal (
1765102644Snectar	krb5_context /*context*/,
1766102644Snectar	krb5_principal /*p*/);
176755682Smarkm
1768178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1769102644Snectarkrb5_free_salt (
1770102644Snectar	krb5_context /*context*/,
1771102644Snectar	krb5_salt /*salt*/);
177255682Smarkm
1773178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1774102644Snectarkrb5_free_ticket (
1775102644Snectar	krb5_context /*context*/,
1776102644Snectar	krb5_ticket */*ticket*/);
177755682Smarkm
1778178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1779102644Snectarkrb5_fwd_tgt_creds (
1780102644Snectar	krb5_context /*context*/,
1781102644Snectar	krb5_auth_context /*auth_context*/,
1782102644Snectar	const char */*hostname*/,
1783102644Snectar	krb5_principal /*client*/,
1784102644Snectar	krb5_principal /*server*/,
1785102644Snectar	krb5_ccache /*ccache*/,
1786102644Snectar	int /*forwardable*/,
1787102644Snectar	krb5_data */*out_data*/);
178855682Smarkm
1789178825Sdfrvoid KRB5_LIB_FUNCTION
1790102644Snectarkrb5_generate_random_block (
1791102644Snectar	void */*buf*/,
1792102644Snectar	size_t /*len*/);
179355682Smarkm
1794178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1795102644Snectarkrb5_generate_random_keyblock (
1796102644Snectar	krb5_context /*context*/,
1797102644Snectar	krb5_enctype /*type*/,
1798102644Snectar	krb5_keyblock */*key*/);
179955682Smarkm
1800178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1801102644Snectarkrb5_generate_seq_number (
1802102644Snectar	krb5_context /*context*/,
1803102644Snectar	const krb5_keyblock */*key*/,
1804178825Sdfr	uint32_t */*seqno*/);
180555682Smarkm
1806178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1807102644Snectarkrb5_generate_subkey (
1808102644Snectar	krb5_context /*context*/,
1809102644Snectar	const krb5_keyblock */*key*/,
1810102644Snectar	krb5_keyblock **/*subkey*/);
181155682Smarkm
1812178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1813178825Sdfrkrb5_generate_subkey_extended (
1814178825Sdfr	krb5_context /*context*/,
1815178825Sdfr	const krb5_keyblock */*key*/,
1816178825Sdfr	krb5_enctype /*etype*/,
1817178825Sdfr	krb5_keyblock **/*subkey*/);
1818178825Sdfr
1819178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1820102644Snectarkrb5_get_all_client_addrs (
1821102644Snectar	krb5_context /*context*/,
1822102644Snectar	krb5_addresses */*res*/);
182355682Smarkm
1824178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1825102644Snectarkrb5_get_all_server_addrs (
1826102644Snectar	krb5_context /*context*/,
1827102644Snectar	krb5_addresses */*res*/);
182855682Smarkm
1829178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1830102644Snectarkrb5_get_cred_from_kdc (
1831102644Snectar	krb5_context /*context*/,
1832102644Snectar	krb5_ccache /*ccache*/,
1833102644Snectar	krb5_creds */*in_creds*/,
1834102644Snectar	krb5_creds **/*out_creds*/,
1835102644Snectar	krb5_creds ***/*ret_tgts*/);
183655682Smarkm
1837178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1838102644Snectarkrb5_get_cred_from_kdc_opt (
1839102644Snectar	krb5_context /*context*/,
1840102644Snectar	krb5_ccache /*ccache*/,
1841102644Snectar	krb5_creds */*in_creds*/,
1842102644Snectar	krb5_creds **/*out_creds*/,
1843102644Snectar	krb5_creds ***/*ret_tgts*/,
1844102644Snectar	krb5_flags /*flags*/);
184578527Sassar
1846178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1847102644Snectarkrb5_get_credentials (
1848102644Snectar	krb5_context /*context*/,
1849102644Snectar	krb5_flags /*options*/,
1850102644Snectar	krb5_ccache /*ccache*/,
1851102644Snectar	krb5_creds */*in_creds*/,
1852102644Snectar	krb5_creds **/*out_creds*/);
185355682Smarkm
1854178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1855102644Snectarkrb5_get_credentials_with_flags (
1856102644Snectar	krb5_context /*context*/,
1857102644Snectar	krb5_flags /*options*/,
1858102644Snectar	krb5_kdc_flags /*flags*/,
1859102644Snectar	krb5_ccache /*ccache*/,
1860102644Snectar	krb5_creds */*in_creds*/,
1861102644Snectar	krb5_creds **/*out_creds*/);
186255682Smarkm
1863178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1864178825Sdfrkrb5_get_creds (
1865178825Sdfr	krb5_context /*context*/,
1866178825Sdfr	krb5_get_creds_opt /*opt*/,
1867178825Sdfr	krb5_ccache /*ccache*/,
1868178825Sdfr	krb5_const_principal /*inprinc*/,
1869178825Sdfr	krb5_creds **/*out_creds*/);
1870178825Sdfr
1871178825Sdfrvoid KRB5_LIB_FUNCTION
1872178825Sdfrkrb5_get_creds_opt_add_options (
1873178825Sdfr	krb5_context /*context*/,
1874178825Sdfr	krb5_get_creds_opt /*opt*/,
1875178825Sdfr	krb5_flags /*options*/);
1876178825Sdfr
1877178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1878178825Sdfrkrb5_get_creds_opt_alloc (
1879178825Sdfr	krb5_context /*context*/,
1880178825Sdfr	krb5_get_creds_opt */*opt*/);
1881178825Sdfr
1882178825Sdfrvoid KRB5_LIB_FUNCTION
1883178825Sdfrkrb5_get_creds_opt_free (
1884178825Sdfr	krb5_context /*context*/,
1885178825Sdfr	krb5_get_creds_opt /*opt*/);
1886178825Sdfr
1887178825Sdfrvoid KRB5_LIB_FUNCTION
1888178825Sdfrkrb5_get_creds_opt_set_enctype (
1889178825Sdfr	krb5_context /*context*/,
1890178825Sdfr	krb5_get_creds_opt /*opt*/,
1891178825Sdfr	krb5_enctype /*enctype*/);
1892178825Sdfr
1893178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1894178825Sdfrkrb5_get_creds_opt_set_impersonate (
1895178825Sdfr	krb5_context /*context*/,
1896178825Sdfr	krb5_get_creds_opt /*opt*/,
1897178825Sdfr	krb5_const_principal /*self*/);
1898178825Sdfr
1899178825Sdfrvoid KRB5_LIB_FUNCTION
1900178825Sdfrkrb5_get_creds_opt_set_options (
1901178825Sdfr	krb5_context /*context*/,
1902178825Sdfr	krb5_get_creds_opt /*opt*/,
1903178825Sdfr	krb5_flags /*options*/);
1904178825Sdfr
1905178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1906178825Sdfrkrb5_get_creds_opt_set_ticket (
1907178825Sdfr	krb5_context /*context*/,
1908178825Sdfr	krb5_get_creds_opt /*opt*/,
1909178825Sdfr	const Ticket */*ticket*/);
1910178825Sdfr
1911178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1912102644Snectarkrb5_get_default_config_files (char ***/*pfilenames*/);
191355682Smarkm
1914178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1915102644Snectarkrb5_get_default_in_tkt_etypes (
1916102644Snectar	krb5_context /*context*/,
1917102644Snectar	krb5_enctype **/*etypes*/);
191855682Smarkm
1919178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1920102644Snectarkrb5_get_default_principal (
1921102644Snectar	krb5_context /*context*/,
1922102644Snectar	krb5_principal */*princ*/);
192355682Smarkm
1924178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1925102644Snectarkrb5_get_default_realm (
1926102644Snectar	krb5_context /*context*/,
1927102644Snectar	krb5_realm */*realm*/);
192855682Smarkm
1929178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1930102644Snectarkrb5_get_default_realms (
1931102644Snectar	krb5_context /*context*/,
1932102644Snectar	krb5_realm **/*realms*/);
1933102644Snectar
1934178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
1935178825Sdfrkrb5_get_dns_canonicalize_hostname (krb5_context /*context*/);
1936178825Sdfr
1937178825Sdfrconst char* KRB5_LIB_FUNCTION
1938102644Snectarkrb5_get_err_text (
1939102644Snectar	krb5_context /*context*/,
1940102644Snectar	krb5_error_code /*code*/);
194155682Smarkm
1942178825Sdfrchar * KRB5_LIB_FUNCTION
1943178825Sdfrkrb5_get_error_message (
1944178825Sdfr	krb5_context /*context*/,
1945178825Sdfr	krb5_error_code /*code*/);
1946178825Sdfr
1947178825Sdfrchar * KRB5_LIB_FUNCTION
1948102644Snectarkrb5_get_error_string (krb5_context /*context*/);
194978527Sassar
1950178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1951102644Snectarkrb5_get_extra_addresses (
1952102644Snectar	krb5_context /*context*/,
1953102644Snectar	krb5_addresses */*addresses*/);
195455682Smarkm
1955178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1956102644Snectarkrb5_get_fcache_version (
1957102644Snectar	krb5_context /*context*/,
1958102644Snectar	int */*version*/);
195955682Smarkm
1960178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1961102644Snectarkrb5_get_forwarded_creds (
1962102644Snectar	krb5_context /*context*/,
1963102644Snectar	krb5_auth_context /*auth_context*/,
1964102644Snectar	krb5_ccache /*ccache*/,
1965102644Snectar	krb5_flags /*flags*/,
1966102644Snectar	const char */*hostname*/,
1967102644Snectar	krb5_creds */*in_creds*/,
1968102644Snectar	krb5_data */*out_data*/);
196955682Smarkm
1970178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1971102644Snectarkrb5_get_host_realm (
1972102644Snectar	krb5_context /*context*/,
1973178825Sdfr	const char */*targethost*/,
1974102644Snectar	krb5_realm **/*realms*/);
197555682Smarkm
1976178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1977102644Snectarkrb5_get_ignore_addresses (
1978102644Snectar	krb5_context /*context*/,
1979102644Snectar	krb5_addresses */*addresses*/);
198090926Snectar
1981178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1982102644Snectarkrb5_get_in_cred (
1983102644Snectar	krb5_context /*context*/,
1984102644Snectar	krb5_flags /*options*/,
1985102644Snectar	const krb5_addresses */*addrs*/,
1986102644Snectar	const krb5_enctype */*etypes*/,
1987102644Snectar	const krb5_preauthtype */*ptypes*/,
1988102644Snectar	const krb5_preauthdata */*preauth*/,
1989102644Snectar	krb5_key_proc /*key_proc*/,
1990102644Snectar	krb5_const_pointer /*keyseed*/,
1991102644Snectar	krb5_decrypt_proc /*decrypt_proc*/,
1992102644Snectar	krb5_const_pointer /*decryptarg*/,
1993102644Snectar	krb5_creds */*creds*/,
1994102644Snectar	krb5_kdc_rep */*ret_as_reply*/);
199555682Smarkm
1996178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
1997102644Snectarkrb5_get_in_tkt (
1998102644Snectar	krb5_context /*context*/,
1999102644Snectar	krb5_flags /*options*/,
2000102644Snectar	const krb5_addresses */*addrs*/,
2001102644Snectar	const krb5_enctype */*etypes*/,
2002102644Snectar	const krb5_preauthtype */*ptypes*/,
2003102644Snectar	krb5_key_proc /*key_proc*/,
2004102644Snectar	krb5_const_pointer /*keyseed*/,
2005102644Snectar	krb5_decrypt_proc /*decrypt_proc*/,
2006102644Snectar	krb5_const_pointer /*decryptarg*/,
2007102644Snectar	krb5_creds */*creds*/,
2008102644Snectar	krb5_ccache /*ccache*/,
2009102644Snectar	krb5_kdc_rep */*ret_as_reply*/);
201055682Smarkm
2011178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2012102644Snectarkrb5_get_in_tkt_with_keytab (
2013102644Snectar	krb5_context /*context*/,
2014102644Snectar	krb5_flags /*options*/,
2015102644Snectar	krb5_addresses */*addrs*/,
2016102644Snectar	const krb5_enctype */*etypes*/,
2017102644Snectar	const krb5_preauthtype */*pre_auth_types*/,
2018102644Snectar	krb5_keytab /*keytab*/,
2019102644Snectar	krb5_ccache /*ccache*/,
2020102644Snectar	krb5_creds */*creds*/,
2021102644Snectar	krb5_kdc_rep */*ret_as_reply*/);
202255682Smarkm
2023178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2024102644Snectarkrb5_get_in_tkt_with_password (
2025102644Snectar	krb5_context /*context*/,
2026102644Snectar	krb5_flags /*options*/,
2027102644Snectar	krb5_addresses */*addrs*/,
2028102644Snectar	const krb5_enctype */*etypes*/,
2029102644Snectar	const krb5_preauthtype */*pre_auth_types*/,
2030102644Snectar	const char */*password*/,
2031102644Snectar	krb5_ccache /*ccache*/,
2032102644Snectar	krb5_creds */*creds*/,
2033102644Snectar	krb5_kdc_rep */*ret_as_reply*/);
203455682Smarkm
2035178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2036102644Snectarkrb5_get_in_tkt_with_skey (
2037102644Snectar	krb5_context /*context*/,
2038102644Snectar	krb5_flags /*options*/,
2039102644Snectar	krb5_addresses */*addrs*/,
2040102644Snectar	const krb5_enctype */*etypes*/,
2041102644Snectar	const krb5_preauthtype */*pre_auth_types*/,
2042102644Snectar	const krb5_keyblock */*key*/,
2043102644Snectar	krb5_ccache /*ccache*/,
2044102644Snectar	krb5_creds */*creds*/,
2045102644Snectar	krb5_kdc_rep */*ret_as_reply*/);
204655682Smarkm
2047178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2048178825Sdfrkrb5_get_init_creds (
2049178825Sdfr	krb5_context /*context*/,
2050178825Sdfr	krb5_creds */*creds*/,
2051178825Sdfr	krb5_principal /*client*/,
2052178825Sdfr	krb5_prompter_fct /*prompter*/,
2053178825Sdfr	void */*data*/,
2054178825Sdfr	krb5_deltat /*start_time*/,
2055178825Sdfr	const char */*in_tkt_service*/,
2056178825Sdfr	krb5_get_init_creds_opt */*options*/);
2057178825Sdfr
2058178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2059178825Sdfrkrb5_get_init_creds_keyblock (
2060178825Sdfr	krb5_context /*context*/,
2061178825Sdfr	krb5_creds */*creds*/,
2062178825Sdfr	krb5_principal /*client*/,
2063178825Sdfr	krb5_keyblock */*keyblock*/,
2064178825Sdfr	krb5_deltat /*start_time*/,
2065178825Sdfr	const char */*in_tkt_service*/,
2066178825Sdfr	krb5_get_init_creds_opt */*options*/);
2067178825Sdfr
2068178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2069102644Snectarkrb5_get_init_creds_keytab (
2070102644Snectar	krb5_context /*context*/,
2071102644Snectar	krb5_creds */*creds*/,
2072102644Snectar	krb5_principal /*client*/,
2073102644Snectar	krb5_keytab /*keytab*/,
2074102644Snectar	krb5_deltat /*start_time*/,
2075102644Snectar	const char */*in_tkt_service*/,
2076102644Snectar	krb5_get_init_creds_opt */*options*/);
207755682Smarkm
2078178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2079178825Sdfrkrb5_get_init_creds_opt_alloc (
2080178825Sdfr	krb5_context /*context*/,
2081178825Sdfr	krb5_get_init_creds_opt **/*opt*/);
2082178825Sdfr
2083178825Sdfrvoid KRB5_LIB_FUNCTION
2084178825Sdfrkrb5_get_init_creds_opt_free (
2085178825Sdfr	krb5_context /*context*/,
2086178825Sdfr	krb5_get_init_creds_opt */*opt*/);
2087178825Sdfr
2088178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2089178825Sdfrkrb5_get_init_creds_opt_get_error (
2090178825Sdfr	krb5_context /*context*/,
2091178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2092178825Sdfr	KRB_ERROR **/*error*/);
2093178825Sdfr
2094178825Sdfrvoid KRB5_LIB_FUNCTION
2095102644Snectarkrb5_get_init_creds_opt_init (krb5_get_init_creds_opt */*opt*/);
209655682Smarkm
2097178825Sdfrvoid KRB5_LIB_FUNCTION
2098102644Snectarkrb5_get_init_creds_opt_set_address_list (
2099102644Snectar	krb5_get_init_creds_opt */*opt*/,
2100102644Snectar	krb5_addresses */*addresses*/);
210155682Smarkm
2102178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2103178825Sdfrkrb5_get_init_creds_opt_set_addressless (
2104178825Sdfr	krb5_context /*context*/,
2105178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2106178825Sdfr	krb5_boolean /*addressless*/);
2107178825Sdfr
2108178825Sdfrvoid KRB5_LIB_FUNCTION
2109102644Snectarkrb5_get_init_creds_opt_set_anonymous (
2110102644Snectar	krb5_get_init_creds_opt */*opt*/,
2111102644Snectar	int /*anonymous*/);
211272445Sassar
2113178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2114178825Sdfrkrb5_get_init_creds_opt_set_canonicalize (
2115178825Sdfr	krb5_context /*context*/,
2116178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2117178825Sdfr	krb5_boolean /*req*/);
2118178825Sdfr
2119178825Sdfrvoid KRB5_LIB_FUNCTION
2120102644Snectarkrb5_get_init_creds_opt_set_default_flags (
2121102644Snectar	krb5_context /*context*/,
2122102644Snectar	const char */*appname*/,
2123102644Snectar	krb5_const_realm /*realm*/,
2124102644Snectar	krb5_get_init_creds_opt */*opt*/);
212572445Sassar
2126178825Sdfrvoid KRB5_LIB_FUNCTION
2127102644Snectarkrb5_get_init_creds_opt_set_etype_list (
2128102644Snectar	krb5_get_init_creds_opt */*opt*/,
2129102644Snectar	krb5_enctype */*etype_list*/,
2130102644Snectar	int /*etype_list_length*/);
213155682Smarkm
2132178825Sdfrvoid KRB5_LIB_FUNCTION
2133102644Snectarkrb5_get_init_creds_opt_set_forwardable (
2134102644Snectar	krb5_get_init_creds_opt */*opt*/,
2135102644Snectar	int /*forwardable*/);
213655682Smarkm
2137178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2138178825Sdfrkrb5_get_init_creds_opt_set_pa_password (
2139178825Sdfr	krb5_context /*context*/,
2140178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2141178825Sdfr	const char */*password*/,
2142178825Sdfr	krb5_s2k_proc /*key_proc*/);
2143178825Sdfr
2144178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2145178825Sdfrkrb5_get_init_creds_opt_set_pac_request (
2146178825Sdfr	krb5_context /*context*/,
2147178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2148178825Sdfr	krb5_boolean /*req_pac*/);
2149178825Sdfr
2150178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2151178825Sdfrkrb5_get_init_creds_opt_set_pkinit (
2152178825Sdfr	krb5_context /*context*/,
2153178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2154178825Sdfr	krb5_principal /*principal*/,
2155178825Sdfr	const char */*user_id*/,
2156178825Sdfr	const char */*x509_anchors*/,
2157178825Sdfr	char * const * /*pool*/,
2158178825Sdfr	char * const * /*pki_revoke*/,
2159178825Sdfr	int /*flags*/,
2160178825Sdfr	krb5_prompter_fct /*prompter*/,
2161178825Sdfr	void */*prompter_data*/,
2162178825Sdfr	char */*password*/);
2163178825Sdfr
2164178825Sdfrvoid KRB5_LIB_FUNCTION
2165102644Snectarkrb5_get_init_creds_opt_set_preauth_list (
2166102644Snectar	krb5_get_init_creds_opt */*opt*/,
2167102644Snectar	krb5_preauthtype */*preauth_list*/,
2168102644Snectar	int /*preauth_list_length*/);
216955682Smarkm
2170178825Sdfrvoid KRB5_LIB_FUNCTION
2171102644Snectarkrb5_get_init_creds_opt_set_proxiable (
2172102644Snectar	krb5_get_init_creds_opt */*opt*/,
2173102644Snectar	int /*proxiable*/);
217455682Smarkm
2175178825Sdfrvoid KRB5_LIB_FUNCTION
2176102644Snectarkrb5_get_init_creds_opt_set_renew_life (
2177102644Snectar	krb5_get_init_creds_opt */*opt*/,
2178102644Snectar	krb5_deltat /*renew_life*/);
217955682Smarkm
2180178825Sdfrvoid KRB5_LIB_FUNCTION
2181102644Snectarkrb5_get_init_creds_opt_set_salt (
2182102644Snectar	krb5_get_init_creds_opt */*opt*/,
2183102644Snectar	krb5_data */*salt*/);
218455682Smarkm
2185178825Sdfrvoid KRB5_LIB_FUNCTION
2186102644Snectarkrb5_get_init_creds_opt_set_tkt_life (
2187102644Snectar	krb5_get_init_creds_opt */*opt*/,
2188102644Snectar	krb5_deltat /*tkt_life*/);
218955682Smarkm
2190178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2191178825Sdfrkrb5_get_init_creds_opt_set_win2k (
2192178825Sdfr	krb5_context /*context*/,
2193178825Sdfr	krb5_get_init_creds_opt */*opt*/,
2194178825Sdfr	krb5_boolean /*req*/);
2195178825Sdfr
2196178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2197102644Snectarkrb5_get_init_creds_password (
2198102644Snectar	krb5_context /*context*/,
2199102644Snectar	krb5_creds */*creds*/,
2200102644Snectar	krb5_principal /*client*/,
2201102644Snectar	const char */*password*/,
2202102644Snectar	krb5_prompter_fct /*prompter*/,
2203102644Snectar	void */*data*/,
2204102644Snectar	krb5_deltat /*start_time*/,
2205102644Snectar	const char */*in_tkt_service*/,
2206178825Sdfr	krb5_get_init_creds_opt */*in_options*/);
220755682Smarkm
2208178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2209102644Snectarkrb5_get_kdc_cred (
2210102644Snectar	krb5_context /*context*/,
2211102644Snectar	krb5_ccache /*id*/,
2212102644Snectar	krb5_kdc_flags /*flags*/,
2213102644Snectar	krb5_addresses */*addresses*/,
2214102644Snectar	Ticket */*second_ticket*/,
2215102644Snectar	krb5_creds */*in_creds*/,
2216102644Snectar	krb5_creds **out_creds );
221755682Smarkm
2218178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2219178825Sdfrkrb5_get_kdc_sec_offset (
2220178825Sdfr	krb5_context /*context*/,
2221178825Sdfr	int32_t */*sec*/,
2222178825Sdfr	int32_t */*usec*/);
2223178825Sdfr
2224178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2225102644Snectarkrb5_get_krb524hst (
2226102644Snectar	krb5_context /*context*/,
2227102644Snectar	const krb5_realm */*realm*/,
2228102644Snectar	char ***/*hostlist*/);
222990926Snectar
2230178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2231102644Snectarkrb5_get_krb_admin_hst (
2232102644Snectar	krb5_context /*context*/,
2233102644Snectar	const krb5_realm */*realm*/,
2234102644Snectar	char ***/*hostlist*/);
223555682Smarkm
2236178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2237102644Snectarkrb5_get_krb_changepw_hst (
2238102644Snectar	krb5_context /*context*/,
2239102644Snectar	const krb5_realm */*realm*/,
2240102644Snectar	char ***/*hostlist*/);
224155682Smarkm
2242178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2243102644Snectarkrb5_get_krbhst (
2244102644Snectar	krb5_context /*context*/,
2245102644Snectar	const krb5_realm */*realm*/,
2246102644Snectar	char ***/*hostlist*/);
224755682Smarkm
2248178825Sdfrtime_t KRB5_LIB_FUNCTION
2249178825Sdfrkrb5_get_max_time_skew (krb5_context /*context*/);
2250178825Sdfr
2251178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2252102644Snectarkrb5_get_pw_salt (
2253102644Snectar	krb5_context /*context*/,
2254102644Snectar	krb5_const_principal /*principal*/,
2255102644Snectar	krb5_salt */*salt*/);
225655682Smarkm
2257178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2258178825Sdfrkrb5_get_renewed_creds (
2259178825Sdfr	krb5_context /*context*/,
2260178825Sdfr	krb5_creds */*creds*/,
2261178825Sdfr	krb5_const_principal /*client*/,
2262178825Sdfr	krb5_ccache /*ccache*/,
2263178825Sdfr	const char */*in_tkt_service*/);
2264178825Sdfr
2265178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2266102644Snectarkrb5_get_server_rcache (
2267102644Snectar	krb5_context /*context*/,
2268102644Snectar	const krb5_data */*piece*/,
2269102644Snectar	krb5_rcache */*id*/);
227072445Sassar
2271178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2272102644Snectarkrb5_get_use_admin_kdc (krb5_context /*context*/);
227355682Smarkm
2274178825Sdfrkrb5_log_facility * KRB5_LIB_FUNCTION
2275178825Sdfrkrb5_get_warn_dest (krb5_context /*context*/);
2276178825Sdfr
227755682Smarkmsize_t
2278102644Snectarkrb5_get_wrapped_length (
2279102644Snectar	krb5_context /*context*/,
2280102644Snectar	krb5_crypto /*crypto*/,
2281102644Snectar	size_t /*data_len*/);
228255682Smarkm
2283178825Sdfrint KRB5_LIB_FUNCTION
2284102644Snectarkrb5_getportbyname (
2285102644Snectar	krb5_context /*context*/,
2286102644Snectar	const char */*service*/,
2287102644Snectar	const char */*proto*/,
2288102644Snectar	int /*default_port*/);
228955682Smarkm
2290178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2291102644Snectarkrb5_h_addr2addr (
2292102644Snectar	krb5_context /*context*/,
2293102644Snectar	int /*af*/,
2294102644Snectar	const char */*haddr*/,
2295102644Snectar	krb5_address */*addr*/);
229655682Smarkm
2297178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2298102644Snectarkrb5_h_addr2sockaddr (
2299102644Snectar	krb5_context /*context*/,
2300102644Snectar	int /*af*/,
2301102644Snectar	const char */*addr*/,
2302102644Snectar	struct sockaddr */*sa*/,
2303102644Snectar	krb5_socklen_t */*sa_size*/,
2304102644Snectar	int /*port*/);
230555682Smarkm
2306178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2307102644Snectarkrb5_h_errno_to_heim_errno (int /*eai_errno*/);
230878527Sassar
2309178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2310102644Snectarkrb5_have_error_string (krb5_context /*context*/);
231178527Sassar
2312178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2313127808Snectarkrb5_hmac (
2314127808Snectar	krb5_context /*context*/,
2315127808Snectar	krb5_cksumtype /*cktype*/,
2316127808Snectar	const void */*data*/,
2317127808Snectar	size_t /*len*/,
2318127808Snectar	unsigned /*usage*/,
2319127808Snectar	krb5_keyblock */*key*/,
2320127808Snectar	Checksum */*result*/);
2321127808Snectar
2322178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2323102644Snectarkrb5_init_context (krb5_context */*context*/);
232455682Smarkm
2325178825Sdfrvoid KRB5_LIB_FUNCTION
2326102644Snectarkrb5_init_ets (krb5_context /*context*/);
232755682Smarkm
2328178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2329102644Snectarkrb5_init_etype (
2330102644Snectar	krb5_context /*context*/,
2331102644Snectar	unsigned */*len*/,
2332102644Snectar	krb5_enctype **/*val*/,
2333102644Snectar	const krb5_enctype */*etypes*/);
233455682Smarkm
2335178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2336102644Snectarkrb5_initlog (
2337102644Snectar	krb5_context /*context*/,
2338102644Snectar	const char */*program*/,
2339102644Snectar	krb5_log_facility **/*fac*/);
234055682Smarkm
2341178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2342178825Sdfrkrb5_is_thread_safe (void);
2343178825Sdfr
2344178825Sdfrconst krb5_enctype * KRB5_LIB_FUNCTION
2345178825Sdfrkrb5_kerberos_enctypes (krb5_context /*context*/);
2346178825Sdfr
2347178825Sdfrkrb5_enctype
2348178825Sdfrkrb5_keyblock_get_enctype (const krb5_keyblock */*block*/);
2349178825Sdfr
2350178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2351178825Sdfrkrb5_keyblock_init (
2352178825Sdfr	krb5_context /*context*/,
2353178825Sdfr	krb5_enctype /*type*/,
2354178825Sdfr	const void */*data*/,
2355178825Sdfr	size_t /*size*/,
2356178825Sdfr	krb5_keyblock */*key*/);
2357178825Sdfr
2358178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2359102644Snectarkrb5_keyblock_key_proc (
2360102644Snectar	krb5_context /*context*/,
2361102644Snectar	krb5_keytype /*type*/,
2362102644Snectar	krb5_data */*salt*/,
2363102644Snectar	krb5_const_pointer /*keyseed*/,
2364102644Snectar	krb5_keyblock **/*key*/);
236555682Smarkm
2366178825Sdfrvoid KRB5_LIB_FUNCTION
2367178825Sdfrkrb5_keyblock_zero (krb5_keyblock */*keyblock*/);
2368178825Sdfr
2369178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2370102644Snectarkrb5_keytab_key_proc (
2371102644Snectar	krb5_context /*context*/,
2372102644Snectar	krb5_enctype /*enctype*/,
2373102644Snectar	krb5_salt /*salt*/,
2374102644Snectar	krb5_const_pointer /*keyseed*/,
2375102644Snectar	krb5_keyblock **/*key*/);
237655682Smarkm
2377178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2378102644Snectarkrb5_keytype_to_enctypes (
2379102644Snectar	krb5_context /*context*/,
2380102644Snectar	krb5_keytype /*keytype*/,
2381102644Snectar	unsigned */*len*/,
2382102644Snectar	krb5_enctype **/*val*/);
238355682Smarkm
2384178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2385102644Snectarkrb5_keytype_to_enctypes_default (
2386102644Snectar	krb5_context /*context*/,
2387102644Snectar	krb5_keytype /*keytype*/,
2388102644Snectar	unsigned */*len*/,
2389102644Snectar	krb5_enctype **/*val*/);
239055682Smarkm
2391178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2392102644Snectarkrb5_keytype_to_string (
2393102644Snectar	krb5_context /*context*/,
2394102644Snectar	krb5_keytype /*keytype*/,
2395102644Snectar	char **/*string*/);
239655682Smarkm
2397178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2398102644Snectarkrb5_krbhst_format_string (
2399102644Snectar	krb5_context /*context*/,
2400102644Snectar	const krb5_krbhst_info */*host*/,
2401102644Snectar	char */*hostname*/,
2402102644Snectar	size_t /*hostlen*/);
240390926Snectar
2404178825Sdfrvoid KRB5_LIB_FUNCTION
2405102644Snectarkrb5_krbhst_free (
2406102644Snectar	krb5_context /*context*/,
2407102644Snectar	krb5_krbhst_handle /*handle*/);
240890926Snectar
2409178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2410102644Snectarkrb5_krbhst_get_addrinfo (
2411102644Snectar	krb5_context /*context*/,
2412102644Snectar	krb5_krbhst_info */*host*/,
2413102644Snectar	struct addrinfo **/*ai*/);
241490926Snectar
2415178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2416102644Snectarkrb5_krbhst_init (
2417102644Snectar	krb5_context /*context*/,
2418102644Snectar	const char */*realm*/,
2419102644Snectar	unsigned int /*type*/,
2420102644Snectar	krb5_krbhst_handle */*handle*/);
242190926Snectar
2422178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2423178825Sdfrkrb5_krbhst_init_flags (
2424178825Sdfr	krb5_context /*context*/,
2425178825Sdfr	const char */*realm*/,
2426178825Sdfr	unsigned int /*type*/,
2427178825Sdfr	int /*flags*/,
2428178825Sdfr	krb5_krbhst_handle */*handle*/);
2429178825Sdfr
2430178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2431102644Snectarkrb5_krbhst_next (
2432102644Snectar	krb5_context /*context*/,
2433102644Snectar	krb5_krbhst_handle /*handle*/,
2434102644Snectar	krb5_krbhst_info **/*host*/);
243590926Snectar
2436178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2437102644Snectarkrb5_krbhst_next_as_string (
2438102644Snectar	krb5_context /*context*/,
2439102644Snectar	krb5_krbhst_handle /*handle*/,
2440102644Snectar	char */*hostname*/,
2441102644Snectar	size_t /*hostlen*/);
244290926Snectar
2443178825Sdfrvoid KRB5_LIB_FUNCTION
2444102644Snectarkrb5_krbhst_reset (
2445102644Snectar	krb5_context /*context*/,
2446102644Snectar	krb5_krbhst_handle /*handle*/);
244790926Snectar
2448178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2449102644Snectarkrb5_kt_add_entry (
2450102644Snectar	krb5_context /*context*/,
2451102644Snectar	krb5_keytab /*id*/,
2452102644Snectar	krb5_keytab_entry */*entry*/);
245355682Smarkm
2454178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2455102644Snectarkrb5_kt_close (
2456102644Snectar	krb5_context /*context*/,
2457102644Snectar	krb5_keytab /*id*/);
245855682Smarkm
2459178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2460102644Snectarkrb5_kt_compare (
2461102644Snectar	krb5_context /*context*/,
2462102644Snectar	krb5_keytab_entry */*entry*/,
2463102644Snectar	krb5_const_principal /*principal*/,
2464102644Snectar	krb5_kvno /*vno*/,
2465102644Snectar	krb5_enctype /*enctype*/);
246655682Smarkm
2467178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2468102644Snectarkrb5_kt_copy_entry_contents (
2469102644Snectar	krb5_context /*context*/,
2470102644Snectar	const krb5_keytab_entry */*in*/,
2471102644Snectar	krb5_keytab_entry */*out*/);
247255682Smarkm
2473178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2474102644Snectarkrb5_kt_default (
2475102644Snectar	krb5_context /*context*/,
2476102644Snectar	krb5_keytab */*id*/);
247755682Smarkm
2478178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2479102644Snectarkrb5_kt_default_modify_name (
2480102644Snectar	krb5_context /*context*/,
2481102644Snectar	char */*name*/,
2482102644Snectar	size_t /*namesize*/);
248378527Sassar
2484178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2485102644Snectarkrb5_kt_default_name (
2486102644Snectar	krb5_context /*context*/,
2487102644Snectar	char */*name*/,
2488102644Snectar	size_t /*namesize*/);
248955682Smarkm
2490178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2491102644Snectarkrb5_kt_end_seq_get (
2492102644Snectar	krb5_context /*context*/,
2493102644Snectar	krb5_keytab /*id*/,
2494102644Snectar	krb5_kt_cursor */*cursor*/);
249555682Smarkm
2496178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2497102644Snectarkrb5_kt_free_entry (
2498102644Snectar	krb5_context /*context*/,
2499102644Snectar	krb5_keytab_entry */*entry*/);
250055682Smarkm
2501178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2502102644Snectarkrb5_kt_get_entry (
2503102644Snectar	krb5_context /*context*/,
2504102644Snectar	krb5_keytab /*id*/,
2505102644Snectar	krb5_const_principal /*principal*/,
2506102644Snectar	krb5_kvno /*kvno*/,
2507102644Snectar	krb5_enctype /*enctype*/,
2508102644Snectar	krb5_keytab_entry */*entry*/);
250955682Smarkm
2510178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2511178825Sdfrkrb5_kt_get_full_name (
2512178825Sdfr	krb5_context /*context*/,
2513178825Sdfr	krb5_keytab /*keytab*/,
2514178825Sdfr	char **/*str*/);
2515178825Sdfr
2516178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2517102644Snectarkrb5_kt_get_name (
2518102644Snectar	krb5_context /*context*/,
2519102644Snectar	krb5_keytab /*keytab*/,
2520102644Snectar	char */*name*/,
2521102644Snectar	size_t /*namesize*/);
252255682Smarkm
2523178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2524120945Snectarkrb5_kt_get_type (
2525120945Snectar	krb5_context /*context*/,
2526120945Snectar	krb5_keytab /*keytab*/,
2527120945Snectar	char */*prefix*/,
2528120945Snectar	size_t /*prefixsize*/);
2529120945Snectar
2530178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2531102644Snectarkrb5_kt_next_entry (
2532102644Snectar	krb5_context /*context*/,
2533102644Snectar	krb5_keytab /*id*/,
2534102644Snectar	krb5_keytab_entry */*entry*/,
2535102644Snectar	krb5_kt_cursor */*cursor*/);
253655682Smarkm
2537178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2538102644Snectarkrb5_kt_read_service_key (
2539102644Snectar	krb5_context /*context*/,
2540102644Snectar	krb5_pointer /*keyprocarg*/,
2541102644Snectar	krb5_principal /*principal*/,
2542102644Snectar	krb5_kvno /*vno*/,
2543102644Snectar	krb5_enctype /*enctype*/,
2544102644Snectar	krb5_keyblock **/*key*/);
254555682Smarkm
2546178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2547102644Snectarkrb5_kt_register (
2548102644Snectar	krb5_context /*context*/,
2549102644Snectar	const krb5_kt_ops */*ops*/);
255055682Smarkm
2551178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2552102644Snectarkrb5_kt_remove_entry (
2553102644Snectar	krb5_context /*context*/,
2554102644Snectar	krb5_keytab /*id*/,
2555102644Snectar	krb5_keytab_entry */*entry*/);
255655682Smarkm
2557178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2558102644Snectarkrb5_kt_resolve (
2559102644Snectar	krb5_context /*context*/,
2560102644Snectar	const char */*name*/,
2561102644Snectar	krb5_keytab */*id*/);
256255682Smarkm
2563178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2564102644Snectarkrb5_kt_start_seq_get (
2565102644Snectar	krb5_context /*context*/,
2566102644Snectar	krb5_keytab /*id*/,
2567102644Snectar	krb5_kt_cursor */*cursor*/);
256855682Smarkm
2569178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2570102644Snectarkrb5_kuserok (
2571102644Snectar	krb5_context /*context*/,
2572102644Snectar	krb5_principal /*principal*/,
2573102644Snectar	const char */*luser*/);
257455682Smarkm
2575178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2576102644Snectarkrb5_log (
2577102644Snectar	krb5_context /*context*/,
2578102644Snectar	krb5_log_facility */*fac*/,
2579102644Snectar	int /*level*/,
2580102644Snectar	const char */*fmt*/,
2581102644Snectar	...)
258255682Smarkm    __attribute__((format (printf, 4, 5)));
258355682Smarkm
2584178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2585102644Snectarkrb5_log_msg (
2586102644Snectar	krb5_context /*context*/,
2587102644Snectar	krb5_log_facility */*fac*/,
2588102644Snectar	int /*level*/,
2589102644Snectar	char **/*reply*/,
2590102644Snectar	const char */*fmt*/,
2591102644Snectar	...)
259255682Smarkm    __attribute__((format (printf, 5, 6)));
259355682Smarkm
2594178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2595102644Snectarkrb5_make_addrport (
2596102644Snectar	krb5_context /*context*/,
2597102644Snectar	krb5_address **/*res*/,
2598102644Snectar	const krb5_address */*addr*/,
2599102644Snectar	int16_t /*port*/);
260055682Smarkm
2601178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2602102644Snectarkrb5_make_principal (
2603102644Snectar	krb5_context /*context*/,
2604102644Snectar	krb5_principal */*principal*/,
2605102644Snectar	krb5_const_realm /*realm*/,
2606102644Snectar	...);
260755682Smarkm
2608178825Sdfrsize_t KRB5_LIB_FUNCTION
2609102644Snectarkrb5_max_sockaddr_size (void);
261055682Smarkm
2611178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2612102644Snectarkrb5_mk_error (
2613102644Snectar	krb5_context /*context*/,
2614102644Snectar	krb5_error_code /*error_code*/,
2615102644Snectar	const char */*e_text*/,
2616102644Snectar	const krb5_data */*e_data*/,
2617102644Snectar	const krb5_principal /*client*/,
2618102644Snectar	const krb5_principal /*server*/,
2619102644Snectar	time_t */*client_time*/,
2620102644Snectar	int */*client_usec*/,
2621102644Snectar	krb5_data */*reply*/);
262255682Smarkm
2623178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2624102644Snectarkrb5_mk_priv (
2625102644Snectar	krb5_context /*context*/,
2626102644Snectar	krb5_auth_context /*auth_context*/,
2627102644Snectar	const krb5_data */*userdata*/,
2628102644Snectar	krb5_data */*outbuf*/,
2629178825Sdfr	krb5_replay_data */*outdata*/);
263055682Smarkm
2631178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2632102644Snectarkrb5_mk_rep (
2633102644Snectar	krb5_context /*context*/,
2634102644Snectar	krb5_auth_context /*auth_context*/,
2635102644Snectar	krb5_data */*outbuf*/);
263655682Smarkm
2637178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2638102644Snectarkrb5_mk_req (
2639102644Snectar	krb5_context /*context*/,
2640102644Snectar	krb5_auth_context */*auth_context*/,
2641102644Snectar	const krb5_flags /*ap_req_options*/,
2642102644Snectar	const char */*service*/,
2643102644Snectar	const char */*hostname*/,
2644102644Snectar	krb5_data */*in_data*/,
2645102644Snectar	krb5_ccache /*ccache*/,
2646102644Snectar	krb5_data */*outbuf*/);
264755682Smarkm
2648178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2649102644Snectarkrb5_mk_req_exact (
2650102644Snectar	krb5_context /*context*/,
2651102644Snectar	krb5_auth_context */*auth_context*/,
2652102644Snectar	const krb5_flags /*ap_req_options*/,
2653102644Snectar	const krb5_principal /*server*/,
2654102644Snectar	krb5_data */*in_data*/,
2655102644Snectar	krb5_ccache /*ccache*/,
2656102644Snectar	krb5_data */*outbuf*/);
265772445Sassar
2658178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2659102644Snectarkrb5_mk_req_extended (
2660102644Snectar	krb5_context /*context*/,
2661102644Snectar	krb5_auth_context */*auth_context*/,
2662102644Snectar	const krb5_flags /*ap_req_options*/,
2663102644Snectar	krb5_data */*in_data*/,
2664102644Snectar	krb5_creds */*in_creds*/,
2665102644Snectar	krb5_data */*outbuf*/);
266655682Smarkm
2667178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2668102644Snectarkrb5_mk_safe (
2669102644Snectar	krb5_context /*context*/,
2670102644Snectar	krb5_auth_context /*auth_context*/,
2671102644Snectar	const krb5_data */*userdata*/,
2672102644Snectar	krb5_data */*outbuf*/,
2673178825Sdfr	krb5_replay_data */*outdata*/);
267455682Smarkm
2675178825Sdfrkrb5_ssize_t KRB5_LIB_FUNCTION
2676102644Snectarkrb5_net_read (
2677102644Snectar	krb5_context /*context*/,
2678102644Snectar	void */*p_fd*/,
2679102644Snectar	void */*buf*/,
2680102644Snectar	size_t /*len*/);
268155682Smarkm
2682178825Sdfrkrb5_ssize_t KRB5_LIB_FUNCTION
2683102644Snectarkrb5_net_write (
2684102644Snectar	krb5_context /*context*/,
2685102644Snectar	void */*p_fd*/,
2686102644Snectar	const void */*buf*/,
2687102644Snectar	size_t /*len*/);
268855682Smarkm
2689178825Sdfrkrb5_ssize_t KRB5_LIB_FUNCTION
2690178825Sdfrkrb5_net_write_block (
2691178825Sdfr	krb5_context /*context*/,
2692178825Sdfr	void */*p_fd*/,
2693178825Sdfr	const void */*buf*/,
2694178825Sdfr	size_t /*len*/,
2695178825Sdfr	time_t /*timeout*/);
2696178825Sdfr
269755682Smarkmkrb5_error_code
2698178825Sdfrkrb5_ntlm_alloc (
2699178825Sdfr	krb5_context /*context*/,
2700178825Sdfr	krb5_ntlm */*ntlm*/);
2701178825Sdfr
2702178825Sdfrkrb5_error_code
2703178825Sdfrkrb5_ntlm_free (
2704178825Sdfr	krb5_context /*context*/,
2705178825Sdfr	krb5_ntlm /*ntlm*/);
2706178825Sdfr
2707178825Sdfrkrb5_error_code
2708178825Sdfrkrb5_ntlm_init_get_challange (
2709178825Sdfr	krb5_context /*context*/,
2710178825Sdfr	krb5_ntlm /*ntlm*/,
2711178825Sdfr	krb5_data */*challange*/);
2712178825Sdfr
2713178825Sdfrkrb5_error_code
2714178825Sdfrkrb5_ntlm_init_get_flags (
2715178825Sdfr	krb5_context /*context*/,
2716178825Sdfr	krb5_ntlm /*ntlm*/,
2717178825Sdfr	uint32_t */*flags*/);
2718178825Sdfr
2719178825Sdfrkrb5_error_code
2720178825Sdfrkrb5_ntlm_init_get_opaque (
2721178825Sdfr	krb5_context /*context*/,
2722178825Sdfr	krb5_ntlm /*ntlm*/,
2723178825Sdfr	krb5_data */*opaque*/);
2724178825Sdfr
2725178825Sdfrkrb5_error_code
2726178825Sdfrkrb5_ntlm_init_get_targetinfo (
2727178825Sdfr	krb5_context /*context*/,
2728178825Sdfr	krb5_ntlm /*ntlm*/,
2729178825Sdfr	krb5_data */*data*/);
2730178825Sdfr
2731178825Sdfrkrb5_error_code
2732178825Sdfrkrb5_ntlm_init_get_targetname (
2733178825Sdfr	krb5_context /*context*/,
2734178825Sdfr	krb5_ntlm /*ntlm*/,
2735178825Sdfr	char **/*name*/);
2736178825Sdfr
2737178825Sdfrkrb5_error_code
2738178825Sdfrkrb5_ntlm_init_request (
2739178825Sdfr	krb5_context /*context*/,
2740178825Sdfr	krb5_ntlm /*ntlm*/,
2741178825Sdfr	krb5_realm /*realm*/,
2742178825Sdfr	krb5_ccache /*ccache*/,
2743178825Sdfr	uint32_t /*flags*/,
2744178825Sdfr	const char */*hostname*/,
2745178825Sdfr	const char */*domainname*/);
2746178825Sdfr
2747178825Sdfrkrb5_error_code
2748178825Sdfrkrb5_ntlm_rep_get_sessionkey (
2749178825Sdfr	krb5_context /*context*/,
2750178825Sdfr	krb5_ntlm /*ntlm*/,
2751178825Sdfr	krb5_data */*data*/);
2752178825Sdfr
2753178825Sdfrkrb5_boolean
2754178825Sdfrkrb5_ntlm_rep_get_status (
2755178825Sdfr	krb5_context /*context*/,
2756178825Sdfr	krb5_ntlm /*ntlm*/);
2757178825Sdfr
2758178825Sdfrkrb5_error_code
2759178825Sdfrkrb5_ntlm_req_set_flags (
2760178825Sdfr	krb5_context /*context*/,
2761178825Sdfr	krb5_ntlm /*ntlm*/,
2762178825Sdfr	uint32_t /*flags*/);
2763178825Sdfr
2764178825Sdfrkrb5_error_code
2765178825Sdfrkrb5_ntlm_req_set_lm (
2766178825Sdfr	krb5_context /*context*/,
2767178825Sdfr	krb5_ntlm /*ntlm*/,
2768178825Sdfr	void */*hash*/,
2769178825Sdfr	size_t /*len*/);
2770178825Sdfr
2771178825Sdfrkrb5_error_code
2772178825Sdfrkrb5_ntlm_req_set_ntlm (
2773178825Sdfr	krb5_context /*context*/,
2774178825Sdfr	krb5_ntlm /*ntlm*/,
2775178825Sdfr	void */*hash*/,
2776178825Sdfr	size_t /*len*/);
2777178825Sdfr
2778178825Sdfrkrb5_error_code
2779178825Sdfrkrb5_ntlm_req_set_opaque (
2780178825Sdfr	krb5_context /*context*/,
2781178825Sdfr	krb5_ntlm /*ntlm*/,
2782178825Sdfr	krb5_data */*opaque*/);
2783178825Sdfr
2784178825Sdfrkrb5_error_code
2785178825Sdfrkrb5_ntlm_req_set_session (
2786178825Sdfr	krb5_context /*context*/,
2787178825Sdfr	krb5_ntlm /*ntlm*/,
2788178825Sdfr	void */*sessionkey*/,
2789178825Sdfr	size_t /*length*/);
2790178825Sdfr
2791178825Sdfrkrb5_error_code
2792178825Sdfrkrb5_ntlm_req_set_targetname (
2793178825Sdfr	krb5_context /*context*/,
2794178825Sdfr	krb5_ntlm /*ntlm*/,
2795178825Sdfr	const char */*targetname*/);
2796178825Sdfr
2797178825Sdfrkrb5_error_code
2798178825Sdfrkrb5_ntlm_req_set_username (
2799178825Sdfr	krb5_context /*context*/,
2800178825Sdfr	krb5_ntlm /*ntlm*/,
2801178825Sdfr	const char */*username*/);
2802178825Sdfr
2803178825Sdfrkrb5_error_code
2804178825Sdfrkrb5_ntlm_request (
2805178825Sdfr	krb5_context /*context*/,
2806178825Sdfr	krb5_ntlm /*ntlm*/,
2807178825Sdfr	krb5_realm /*realm*/,
2808178825Sdfr	krb5_ccache /*ccache*/);
2809178825Sdfr
2810178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2811102644Snectarkrb5_openlog (
2812102644Snectar	krb5_context /*context*/,
2813102644Snectar	const char */*program*/,
2814102644Snectar	krb5_log_facility **/*fac*/);
281555682Smarkm
281655682Smarkmkrb5_error_code
2817178825Sdfrkrb5_pac_add_buffer (
2818178825Sdfr	krb5_context /*context*/,
2819178825Sdfr	krb5_pac /*p*/,
2820178825Sdfr	uint32_t /*type*/,
2821178825Sdfr	const krb5_data */*data*/);
2822178825Sdfr
2823178825Sdfrvoid
2824178825Sdfrkrb5_pac_free (
2825178825Sdfr	krb5_context /*context*/,
2826178825Sdfr	krb5_pac /*pac*/);
2827178825Sdfr
2828178825Sdfrkrb5_error_code
2829178825Sdfrkrb5_pac_get_buffer (
2830178825Sdfr	krb5_context /*context*/,
2831178825Sdfr	krb5_pac /*p*/,
2832178825Sdfr	uint32_t /*type*/,
2833178825Sdfr	krb5_data */*data*/);
2834178825Sdfr
2835178825Sdfrkrb5_error_code
2836178825Sdfrkrb5_pac_get_types (
2837178825Sdfr	krb5_context /*context*/,
2838178825Sdfr	krb5_pac /*p*/,
2839178825Sdfr	size_t */*len*/,
2840178825Sdfr	uint32_t **/*types*/);
2841178825Sdfr
2842178825Sdfrkrb5_error_code
2843178825Sdfrkrb5_pac_init (
2844178825Sdfr	krb5_context /*context*/,
2845178825Sdfr	krb5_pac */*pac*/);
2846178825Sdfr
2847178825Sdfrkrb5_error_code
2848178825Sdfrkrb5_pac_parse (
2849178825Sdfr	krb5_context /*context*/,
2850178825Sdfr	const void */*ptr*/,
2851178825Sdfr	size_t /*len*/,
2852178825Sdfr	krb5_pac */*pac*/);
2853178825Sdfr
2854178825Sdfrkrb5_error_code
2855178825Sdfrkrb5_pac_verify (
2856178825Sdfr	krb5_context /*context*/,
2857178825Sdfr	const krb5_pac /*pac*/,
2858178825Sdfr	time_t /*authtime*/,
2859178825Sdfr	krb5_const_principal /*principal*/,
2860178825Sdfr	const krb5_keyblock */*server*/,
2861178825Sdfr	const krb5_keyblock */*privsvr*/);
2862178825Sdfr
2863178825Sdfrint KRB5_LIB_FUNCTION
2864178825Sdfrkrb5_padata_add (
2865178825Sdfr	krb5_context /*context*/,
2866178825Sdfr	METHOD_DATA */*md*/,
2867178825Sdfr	int /*type*/,
2868178825Sdfr	void */*buf*/,
2869178825Sdfr	size_t /*len*/);
2870178825Sdfr
2871178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2872102644Snectarkrb5_parse_address (
2873102644Snectar	krb5_context /*context*/,
2874102644Snectar	const char */*string*/,
2875102644Snectar	krb5_addresses */*addresses*/);
287655682Smarkm
2877178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2878102644Snectarkrb5_parse_name (
2879102644Snectar	krb5_context /*context*/,
2880102644Snectar	const char */*name*/,
2881102644Snectar	krb5_principal */*principal*/);
288255682Smarkm
2883178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2884178825Sdfrkrb5_parse_name_flags (
2885178825Sdfr	krb5_context /*context*/,
2886178825Sdfr	const char */*name*/,
2887178825Sdfr	int /*flags*/,
2888178825Sdfr	krb5_principal */*principal*/);
2889178825Sdfr
2890178825Sdfrkrb5_error_code
2891178825Sdfrkrb5_parse_nametype (
2892178825Sdfr	krb5_context /*context*/,
2893178825Sdfr	const char */*str*/,
2894178825Sdfr	int32_t */*nametype*/);
2895178825Sdfr
2896178825Sdfrconst char* KRB5_LIB_FUNCTION
2897102644Snectarkrb5_passwd_result_to_string (
2898102644Snectar	krb5_context /*context*/,
2899102644Snectar	int /*result*/);
290090926Snectar
2901178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2902102644Snectarkrb5_password_key_proc (
2903102644Snectar	krb5_context /*context*/,
2904102644Snectar	krb5_enctype /*type*/,
2905102644Snectar	krb5_salt /*salt*/,
2906102644Snectar	krb5_const_pointer /*keyseed*/,
2907102644Snectar	krb5_keyblock **/*key*/);
290855682Smarkm
2909178825Sdfrkrb5_error_code
2910178825Sdfrkrb5_plugin_register (
2911178825Sdfr	krb5_context /*context*/,
2912178825Sdfr	enum krb5_plugin_type /*type*/,
2913178825Sdfr	const char */*name*/,
2914178825Sdfr	void */*symbol*/);
2915178825Sdfr
2916178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2917178825Sdfrkrb5_prepend_config_files (
2918178825Sdfr	const char */*filelist*/,
2919178825Sdfr	char **/*pq*/,
2920178825Sdfr	char ***/*ret_pp*/);
2921178825Sdfr
2922178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2923178825Sdfrkrb5_prepend_config_files_default (
2924178825Sdfr	const char */*filelist*/,
2925178825Sdfr	char ***/*pfilenames*/);
2926178825Sdfr
2927178825Sdfrkrb5_realm * KRB5_LIB_FUNCTION
2928102644Snectarkrb5_princ_realm (
2929102644Snectar	krb5_context /*context*/,
2930102644Snectar	krb5_principal /*principal*/);
293155682Smarkm
2932178825Sdfrvoid KRB5_LIB_FUNCTION
2933102644Snectarkrb5_princ_set_realm (
2934102644Snectar	krb5_context /*context*/,
2935102644Snectar	krb5_principal /*principal*/,
2936102644Snectar	krb5_realm */*realm*/);
293755682Smarkm
2938178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2939102644Snectarkrb5_principal_compare (
2940102644Snectar	krb5_context /*context*/,
2941102644Snectar	krb5_const_principal /*princ1*/,
2942102644Snectar	krb5_const_principal /*princ2*/);
294355682Smarkm
2944178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2945102644Snectarkrb5_principal_compare_any_realm (
2946102644Snectar	krb5_context /*context*/,
2947102644Snectar	krb5_const_principal /*princ1*/,
2948102644Snectar	krb5_const_principal /*princ2*/);
294955682Smarkm
2950178825Sdfrconst char* KRB5_LIB_FUNCTION
2951102644Snectarkrb5_principal_get_comp_string (
2952102644Snectar	krb5_context /*context*/,
2953178825Sdfr	krb5_const_principal /*principal*/,
2954102644Snectar	unsigned int /*component*/);
295590926Snectar
2956178825Sdfrconst char* KRB5_LIB_FUNCTION
2957102644Snectarkrb5_principal_get_realm (
2958102644Snectar	krb5_context /*context*/,
2959178825Sdfr	krb5_const_principal /*principal*/);
296090926Snectar
2961178825Sdfrint KRB5_LIB_FUNCTION
2962102644Snectarkrb5_principal_get_type (
2963102644Snectar	krb5_context /*context*/,
2964178825Sdfr	krb5_const_principal /*principal*/);
296590926Snectar
2966178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
2967102644Snectarkrb5_principal_match (
2968102644Snectar	krb5_context /*context*/,
2969102644Snectar	krb5_const_principal /*princ*/,
2970102644Snectar	krb5_const_principal /*pattern*/);
297172445Sassar
2972178825Sdfrvoid KRB5_LIB_FUNCTION
2973178825Sdfrkrb5_principal_set_type (
2974178825Sdfr	krb5_context /*context*/,
2975178825Sdfr	krb5_principal /*principal*/,
2976178825Sdfr	int /*type*/);
2977178825Sdfr
2978178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
2979102644Snectarkrb5_print_address (
2980102644Snectar	const krb5_address */*addr*/,
2981102644Snectar	char */*str*/,
2982102644Snectar	size_t /*len*/,
2983102644Snectar	size_t */*ret_len*/);
298455682Smarkm
2985178825Sdfrint KRB5_LIB_FUNCTION
2986102644Snectarkrb5_program_setup (
2987102644Snectar	krb5_context */*context*/,
2988102644Snectar	int /*argc*/,
2989102644Snectar	char **/*argv*/,
2990102644Snectar	struct getargs */*args*/,
2991102644Snectar	int /*num_args*/,
2992102644Snectar	void (*/*usage*/)(int, struct getargs*, int));
299355682Smarkm
2994178825Sdfrint KRB5_LIB_FUNCTION
2995102644Snectarkrb5_prompter_posix (
2996102644Snectar	krb5_context /*context*/,
2997102644Snectar	void */*data*/,
2998102644Snectar	const char */*name*/,
2999102644Snectar	const char */*banner*/,
3000102644Snectar	int /*num_prompts*/,
3001102644Snectar	krb5_prompt prompts[]);
300255682Smarkm
3003178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3004178825Sdfrkrb5_random_to_key (
3005178825Sdfr	krb5_context /*context*/,
3006178825Sdfr	krb5_enctype /*type*/,
3007178825Sdfr	const void */*data*/,
3008178825Sdfr	size_t /*size*/,
3009178825Sdfr	krb5_keyblock */*key*/);
3010178825Sdfr
3011178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3012102644Snectarkrb5_rc_close (
3013102644Snectar	krb5_context /*context*/,
3014102644Snectar	krb5_rcache /*id*/);
301572445Sassar
3016178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3017102644Snectarkrb5_rc_default (
3018102644Snectar	krb5_context /*context*/,
3019102644Snectar	krb5_rcache */*id*/);
302072445Sassar
3021178825Sdfrconst char* KRB5_LIB_FUNCTION
3022102644Snectarkrb5_rc_default_name (krb5_context /*context*/);
302372445Sassar
3024178825Sdfrconst char* KRB5_LIB_FUNCTION
3025102644Snectarkrb5_rc_default_type (krb5_context /*context*/);
302672445Sassar
3027178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3028102644Snectarkrb5_rc_destroy (
3029102644Snectar	krb5_context /*context*/,
3030102644Snectar	krb5_rcache /*id*/);
303172445Sassar
3032178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3033102644Snectarkrb5_rc_expunge (
3034102644Snectar	krb5_context /*context*/,
3035102644Snectar	krb5_rcache /*id*/);
303672445Sassar
3037178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3038102644Snectarkrb5_rc_get_lifespan (
3039102644Snectar	krb5_context /*context*/,
3040102644Snectar	krb5_rcache /*id*/,
3041102644Snectar	krb5_deltat */*auth_lifespan*/);
304272445Sassar
3043178825Sdfrconst char* KRB5_LIB_FUNCTION
3044102644Snectarkrb5_rc_get_name (
3045102644Snectar	krb5_context /*context*/,
3046102644Snectar	krb5_rcache /*id*/);
304772445Sassar
3048178825Sdfrconst char* KRB5_LIB_FUNCTION
3049102644Snectarkrb5_rc_get_type (
3050102644Snectar	krb5_context /*context*/,
3051102644Snectar	krb5_rcache /*id*/);
305272445Sassar
3053178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3054102644Snectarkrb5_rc_initialize (
3055102644Snectar	krb5_context /*context*/,
3056102644Snectar	krb5_rcache /*id*/,
3057102644Snectar	krb5_deltat /*auth_lifespan*/);
305872445Sassar
3059178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3060102644Snectarkrb5_rc_recover (
3061102644Snectar	krb5_context /*context*/,
3062102644Snectar	krb5_rcache /*id*/);
306372445Sassar
3064178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3065102644Snectarkrb5_rc_resolve (
3066102644Snectar	krb5_context /*context*/,
3067102644Snectar	krb5_rcache /*id*/,
3068102644Snectar	const char */*name*/);
306972445Sassar
3070178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3071102644Snectarkrb5_rc_resolve_full (
3072102644Snectar	krb5_context /*context*/,
3073102644Snectar	krb5_rcache */*id*/,
3074102644Snectar	const char */*string_name*/);
307572445Sassar
3076178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3077102644Snectarkrb5_rc_resolve_type (
3078102644Snectar	krb5_context /*context*/,
3079102644Snectar	krb5_rcache */*id*/,
3080102644Snectar	const char */*type*/);
308172445Sassar
3082178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3083102644Snectarkrb5_rc_store (
3084102644Snectar	krb5_context /*context*/,
3085102644Snectar	krb5_rcache /*id*/,
3086102644Snectar	krb5_donot_replay */*rep*/);
308772445Sassar
3088178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3089102644Snectarkrb5_rd_cred (
3090102644Snectar	krb5_context /*context*/,
3091102644Snectar	krb5_auth_context /*auth_context*/,
3092102644Snectar	krb5_data */*in_data*/,
3093102644Snectar	krb5_creds ***/*ret_creds*/,
3094178825Sdfr	krb5_replay_data */*outdata*/);
309572445Sassar
3096178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3097102644Snectarkrb5_rd_cred2 (
3098102644Snectar	krb5_context /*context*/,
3099102644Snectar	krb5_auth_context /*auth_context*/,
3100102644Snectar	krb5_ccache /*ccache*/,
3101102644Snectar	krb5_data */*in_data*/);
310255682Smarkm
3103178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3104102644Snectarkrb5_rd_error (
3105102644Snectar	krb5_context /*context*/,
3106178825Sdfr	const krb5_data */*msg*/,
3107102644Snectar	KRB_ERROR */*result*/);
310855682Smarkm
3109178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3110102644Snectarkrb5_rd_priv (
3111102644Snectar	krb5_context /*context*/,
3112102644Snectar	krb5_auth_context /*auth_context*/,
3113102644Snectar	const krb5_data */*inbuf*/,
3114102644Snectar	krb5_data */*outbuf*/,
3115178825Sdfr	krb5_replay_data */*outdata*/);
311655682Smarkm
3117178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3118102644Snectarkrb5_rd_rep (
3119102644Snectar	krb5_context /*context*/,
3120102644Snectar	krb5_auth_context /*auth_context*/,
3121102644Snectar	const krb5_data */*inbuf*/,
3122102644Snectar	krb5_ap_rep_enc_part **/*repl*/);
312355682Smarkm
3124178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3125102644Snectarkrb5_rd_req (
3126102644Snectar	krb5_context /*context*/,
3127102644Snectar	krb5_auth_context */*auth_context*/,
3128102644Snectar	const krb5_data */*inbuf*/,
3129102644Snectar	krb5_const_principal /*server*/,
3130102644Snectar	krb5_keytab /*keytab*/,
3131102644Snectar	krb5_flags */*ap_req_options*/,
3132102644Snectar	krb5_ticket **/*ticket*/);
313355682Smarkm
3134178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3135178825Sdfrkrb5_rd_req_ctx (
3136178825Sdfr	krb5_context /*context*/,
3137178825Sdfr	krb5_auth_context */*auth_context*/,
3138178825Sdfr	const krb5_data */*inbuf*/,
3139178825Sdfr	krb5_const_principal /*server*/,
3140178825Sdfr	krb5_rd_req_in_ctx /*inctx*/,
3141178825Sdfr	krb5_rd_req_out_ctx */*outctx*/);
3142178825Sdfr
3143178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3144178825Sdfrkrb5_rd_req_in_ctx_alloc (
3145178825Sdfr	krb5_context /*context*/,
3146178825Sdfr	krb5_rd_req_in_ctx */*ctx*/);
3147178825Sdfr
3148178825Sdfrvoid KRB5_LIB_FUNCTION
3149178825Sdfrkrb5_rd_req_in_ctx_free (
3150178825Sdfr	krb5_context /*context*/,
3151178825Sdfr	krb5_rd_req_in_ctx /*ctx*/);
3152178825Sdfr
3153178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3154178825Sdfrkrb5_rd_req_in_set_keyblock (
3155178825Sdfr	krb5_context /*context*/,
3156178825Sdfr	krb5_rd_req_in_ctx /*in*/,
3157178825Sdfr	krb5_keyblock */*keyblock*/);
3158178825Sdfr
3159178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3160178825Sdfrkrb5_rd_req_in_set_keytab (
3161178825Sdfr	krb5_context /*context*/,
3162178825Sdfr	krb5_rd_req_in_ctx /*in*/,
3163178825Sdfr	krb5_keytab /*keytab*/);
3164178825Sdfr
3165178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3166178825Sdfrkrb5_rd_req_in_set_pac_check (
3167178825Sdfr	krb5_context /*context*/,
3168178825Sdfr	krb5_rd_req_in_ctx /*in*/,
3169178825Sdfr	krb5_boolean /*flag*/);
3170178825Sdfr
3171178825Sdfrvoid KRB5_LIB_FUNCTION
3172178825Sdfrkrb5_rd_req_out_ctx_free (
3173178825Sdfr	krb5_context /*context*/,
3174178825Sdfr	krb5_rd_req_out_ctx /*ctx*/);
3175178825Sdfr
3176178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3177178825Sdfrkrb5_rd_req_out_get_ap_req_options (
3178178825Sdfr	krb5_context /*context*/,
3179178825Sdfr	krb5_rd_req_out_ctx /*out*/,
3180178825Sdfr	krb5_flags */*ap_req_options*/);
3181178825Sdfr
3182178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3183178825Sdfrkrb5_rd_req_out_get_keyblock (
3184178825Sdfr	krb5_context /*context*/,
3185178825Sdfr	krb5_rd_req_out_ctx /*out*/,
3186178825Sdfr	krb5_keyblock **/*keyblock*/);
3187178825Sdfr
3188178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3189178825Sdfrkrb5_rd_req_out_get_ticket (
3190178825Sdfr	krb5_context /*context*/,
3191178825Sdfr	krb5_rd_req_out_ctx /*out*/,
3192178825Sdfr	krb5_ticket **/*ticket*/);
3193178825Sdfr
3194178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3195102644Snectarkrb5_rd_req_with_keyblock (
3196102644Snectar	krb5_context /*context*/,
3197102644Snectar	krb5_auth_context */*auth_context*/,
3198102644Snectar	const krb5_data */*inbuf*/,
3199102644Snectar	krb5_const_principal /*server*/,
3200102644Snectar	krb5_keyblock */*keyblock*/,
3201102644Snectar	krb5_flags */*ap_req_options*/,
3202102644Snectar	krb5_ticket **/*ticket*/);
320355682Smarkm
3204178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3205102644Snectarkrb5_rd_safe (
3206102644Snectar	krb5_context /*context*/,
3207102644Snectar	krb5_auth_context /*auth_context*/,
3208102644Snectar	const krb5_data */*inbuf*/,
3209102644Snectar	krb5_data */*outbuf*/,
3210178825Sdfr	krb5_replay_data */*outdata*/);
321155682Smarkm
3212178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3213102644Snectarkrb5_read_message (
3214102644Snectar	krb5_context /*context*/,
3215102644Snectar	krb5_pointer /*p_fd*/,
3216102644Snectar	krb5_data */*data*/);
321755682Smarkm
3218178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3219102644Snectarkrb5_read_priv_message (
3220102644Snectar	krb5_context /*context*/,
3221102644Snectar	krb5_auth_context /*ac*/,
3222102644Snectar	krb5_pointer /*p_fd*/,
3223102644Snectar	krb5_data */*data*/);
322472445Sassar
3225178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3226102644Snectarkrb5_read_safe_message (
3227102644Snectar	krb5_context /*context*/,
3228102644Snectar	krb5_auth_context /*ac*/,
3229102644Snectar	krb5_pointer /*p_fd*/,
3230102644Snectar	krb5_data */*data*/);
323172445Sassar
3232178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
3233102644Snectarkrb5_realm_compare (
3234102644Snectar	krb5_context /*context*/,
3235102644Snectar	krb5_const_principal /*princ1*/,
3236102644Snectar	krb5_const_principal /*princ2*/);
323755682Smarkm
3238178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3239102644Snectarkrb5_recvauth (
3240102644Snectar	krb5_context /*context*/,
3241102644Snectar	krb5_auth_context */*auth_context*/,
3242102644Snectar	krb5_pointer /*p_fd*/,
3243102644Snectar	const char */*appl_version*/,
3244102644Snectar	krb5_principal /*server*/,
3245102644Snectar	int32_t /*flags*/,
3246102644Snectar	krb5_keytab /*keytab*/,
3247102644Snectar	krb5_ticket **/*ticket*/);
324855682Smarkm
3249178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3250102644Snectarkrb5_recvauth_match_version (
3251102644Snectar	krb5_context /*context*/,
3252102644Snectar	krb5_auth_context */*auth_context*/,
3253102644Snectar	krb5_pointer /*p_fd*/,
3254102644Snectar	krb5_boolean (*/*match_appl_version*/)(const void *, const char*),
3255102644Snectar	const void */*match_data*/,
3256102644Snectar	krb5_principal /*server*/,
3257102644Snectar	int32_t /*flags*/,
3258102644Snectar	krb5_keytab /*keytab*/,
3259102644Snectar	krb5_ticket **/*ticket*/);
326055682Smarkm
3261178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3262102644Snectarkrb5_ret_address (
3263102644Snectar	krb5_storage */*sp*/,
3264102644Snectar	krb5_address */*adr*/);
326555682Smarkm
3266178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3267102644Snectarkrb5_ret_addrs (
3268102644Snectar	krb5_storage */*sp*/,
3269102644Snectar	krb5_addresses */*adr*/);
327055682Smarkm
3271178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3272102644Snectarkrb5_ret_authdata (
3273102644Snectar	krb5_storage */*sp*/,
3274102644Snectar	krb5_authdata */*auth*/);
327555682Smarkm
3276178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3277102644Snectarkrb5_ret_creds (
3278102644Snectar	krb5_storage */*sp*/,
3279102644Snectar	krb5_creds */*creds*/);
328055682Smarkm
3281178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3282178825Sdfrkrb5_ret_creds_tag (
3283178825Sdfr	krb5_storage */*sp*/,
3284178825Sdfr	krb5_creds */*creds*/);
3285178825Sdfr
3286178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3287102644Snectarkrb5_ret_data (
3288102644Snectar	krb5_storage */*sp*/,
3289102644Snectar	krb5_data */*data*/);
329055682Smarkm
3291178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3292102644Snectarkrb5_ret_int16 (
3293102644Snectar	krb5_storage */*sp*/,
3294102644Snectar	int16_t */*value*/);
329555682Smarkm
3296178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3297102644Snectarkrb5_ret_int32 (
3298102644Snectar	krb5_storage */*sp*/,
3299102644Snectar	int32_t */*value*/);
330055682Smarkm
3301178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3302102644Snectarkrb5_ret_int8 (
3303102644Snectar	krb5_storage */*sp*/,
3304102644Snectar	int8_t */*value*/);
330555682Smarkm
3306178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3307102644Snectarkrb5_ret_keyblock (
3308102644Snectar	krb5_storage */*sp*/,
3309102644Snectar	krb5_keyblock */*p*/);
331055682Smarkm
3311178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3312102644Snectarkrb5_ret_principal (
3313102644Snectar	krb5_storage */*sp*/,
3314102644Snectar	krb5_principal */*princ*/);
331555682Smarkm
3316178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3317102644Snectarkrb5_ret_string (
3318102644Snectar	krb5_storage */*sp*/,
3319102644Snectar	char **/*string*/);
332055682Smarkm
3321178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3322178825Sdfrkrb5_ret_stringnl (
3323178825Sdfr	krb5_storage */*sp*/,
3324178825Sdfr	char **/*string*/);
3325178825Sdfr
3326178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3327102644Snectarkrb5_ret_stringz (
3328102644Snectar	krb5_storage */*sp*/,
3329102644Snectar	char **/*string*/);
333055682Smarkm
3331178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3332102644Snectarkrb5_ret_times (
3333102644Snectar	krb5_storage */*sp*/,
3334102644Snectar	krb5_times */*times*/);
333555682Smarkm
3336178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3337178825Sdfrkrb5_ret_uint16 (
3338178825Sdfr	krb5_storage */*sp*/,
3339178825Sdfr	uint16_t */*value*/);
3340178825Sdfr
3341178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3342178825Sdfrkrb5_ret_uint32 (
3343178825Sdfr	krb5_storage */*sp*/,
3344178825Sdfr	uint32_t */*value*/);
3345178825Sdfr
3346178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3347178825Sdfrkrb5_ret_uint8 (
3348178825Sdfr	krb5_storage */*sp*/,
3349178825Sdfr	uint8_t */*value*/);
3350178825Sdfr
3351178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3352102644Snectarkrb5_salttype_to_string (
3353102644Snectar	krb5_context /*context*/,
3354102644Snectar	krb5_enctype /*etype*/,
3355102644Snectar	krb5_salttype /*stype*/,
3356102644Snectar	char **/*string*/);
335755682Smarkm
3358178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3359102644Snectarkrb5_sendauth (
3360102644Snectar	krb5_context /*context*/,
3361102644Snectar	krb5_auth_context */*auth_context*/,
3362102644Snectar	krb5_pointer /*p_fd*/,
3363102644Snectar	const char */*appl_version*/,
3364102644Snectar	krb5_principal /*client*/,
3365102644Snectar	krb5_principal /*server*/,
3366102644Snectar	krb5_flags /*ap_req_options*/,
3367102644Snectar	krb5_data */*in_data*/,
3368102644Snectar	krb5_creds */*in_creds*/,
3369102644Snectar	krb5_ccache /*ccache*/,
3370102644Snectar	krb5_error **/*ret_error*/,
3371102644Snectar	krb5_ap_rep_enc_part **/*rep_result*/,
3372102644Snectar	krb5_creds **/*out_creds*/);
337355682Smarkm
3374178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3375102644Snectarkrb5_sendto (
3376102644Snectar	krb5_context /*context*/,
3377102644Snectar	const krb5_data */*send_data*/,
3378102644Snectar	krb5_krbhst_handle /*handle*/,
3379102644Snectar	krb5_data */*receive*/);
338072445Sassar
3381178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3382178825Sdfrkrb5_sendto_context (
3383178825Sdfr	krb5_context /*context*/,
3384178825Sdfr	krb5_sendto_ctx /*ctx*/,
3385178825Sdfr	const krb5_data */*send_data*/,
3386178825Sdfr	const krb5_realm /*realm*/,
3387178825Sdfr	krb5_data */*receive*/);
3388178825Sdfr
3389178825Sdfrvoid KRB5_LIB_FUNCTION
3390178825Sdfrkrb5_sendto_ctx_add_flags (
3391178825Sdfr	krb5_sendto_ctx /*ctx*/,
3392178825Sdfr	int /*flags*/);
3393178825Sdfr
3394178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3395178825Sdfrkrb5_sendto_ctx_alloc (
3396178825Sdfr	krb5_context /*context*/,
3397178825Sdfr	krb5_sendto_ctx */*ctx*/);
3398178825Sdfr
3399178825Sdfrvoid KRB5_LIB_FUNCTION
3400178825Sdfrkrb5_sendto_ctx_free (
3401178825Sdfr	krb5_context /*context*/,
3402178825Sdfr	krb5_sendto_ctx /*ctx*/);
3403178825Sdfr
3404178825Sdfrint KRB5_LIB_FUNCTION
3405178825Sdfrkrb5_sendto_ctx_get_flags (krb5_sendto_ctx /*ctx*/);
3406178825Sdfr
3407178825Sdfrvoid KRB5_LIB_FUNCTION
3408178825Sdfrkrb5_sendto_ctx_set_func (
3409178825Sdfr	krb5_sendto_ctx /*ctx*/,
3410178825Sdfr	krb5_sendto_ctx_func /*func*/,
3411178825Sdfr	void */*data*/);
3412178825Sdfr
3413178825Sdfrvoid KRB5_LIB_FUNCTION
3414178825Sdfrkrb5_sendto_ctx_set_type (
3415178825Sdfr	krb5_sendto_ctx /*ctx*/,
3416178825Sdfr	int /*type*/);
3417178825Sdfr
3418178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3419102644Snectarkrb5_sendto_kdc (
3420102644Snectar	krb5_context /*context*/,
3421102644Snectar	const krb5_data */*send_data*/,
3422102644Snectar	const krb5_realm */*realm*/,
3423102644Snectar	krb5_data */*receive*/);
342455682Smarkm
3425178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3426178825Sdfrkrb5_sendto_kdc_flags (
3427102644Snectar	krb5_context /*context*/,
3428102644Snectar	const krb5_data */*send_data*/,
3429102644Snectar	const krb5_realm */*realm*/,
3430102644Snectar	krb5_data */*receive*/,
3431178825Sdfr	int /*flags*/);
343272445Sassar
3433178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3434102644Snectarkrb5_set_config_files (
3435102644Snectar	krb5_context /*context*/,
3436102644Snectar	char **/*filenames*/);
343755682Smarkm
3438178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3439102644Snectarkrb5_set_default_in_tkt_etypes (
3440102644Snectar	krb5_context /*context*/,
3441102644Snectar	const krb5_enctype */*etypes*/);
344255682Smarkm
3443178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3444102644Snectarkrb5_set_default_realm (
3445102644Snectar	krb5_context /*context*/,
3446102644Snectar	const char */*realm*/);
3447102644Snectar
3448178825Sdfrvoid KRB5_LIB_FUNCTION
3449178825Sdfrkrb5_set_dns_canonicalize_hostname (
3450178825Sdfr	krb5_context /*context*/,
3451178825Sdfr	krb5_boolean /*flag*/);
3452178825Sdfr
3453178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3454102644Snectarkrb5_set_error_string (
3455102644Snectar	krb5_context /*context*/,
3456102644Snectar	const char */*fmt*/,
3457102644Snectar	...)
345878527Sassar    __attribute__((format (printf, 2, 3)));
345978527Sassar
3460178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3461102644Snectarkrb5_set_extra_addresses (
3462102644Snectar	krb5_context /*context*/,
3463102644Snectar	const krb5_addresses */*addresses*/);
346455682Smarkm
3465178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3466102644Snectarkrb5_set_fcache_version (
3467102644Snectar	krb5_context /*context*/,
3468102644Snectar	int /*version*/);
346955682Smarkm
3470178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3471102644Snectarkrb5_set_ignore_addresses (
3472102644Snectar	krb5_context /*context*/,
3473102644Snectar	const krb5_addresses */*addresses*/);
347490926Snectar
3475178825Sdfrvoid KRB5_LIB_FUNCTION
3476178825Sdfrkrb5_set_max_time_skew (
3477178825Sdfr	krb5_context /*context*/,
3478178825Sdfr	time_t /*t*/);
3479178825Sdfr
3480178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3481142403Snectarkrb5_set_password (
3482142403Snectar	krb5_context /*context*/,
3483142403Snectar	krb5_creds */*creds*/,
3484178825Sdfr	const char */*newpw*/,
3485142403Snectar	krb5_principal /*targprinc*/,
3486142403Snectar	int */*result_code*/,
3487142403Snectar	krb5_data */*result_code_string*/,
3488142403Snectar	krb5_data */*result_string*/);
3489142403Snectar
3490178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3491142403Snectarkrb5_set_password_using_ccache (
3492142403Snectar	krb5_context /*context*/,
3493142403Snectar	krb5_ccache /*ccache*/,
3494178825Sdfr	const char */*newpw*/,
3495142403Snectar	krb5_principal /*targprinc*/,
3496142403Snectar	int */*result_code*/,
3497142403Snectar	krb5_data */*result_code_string*/,
3498142403Snectar	krb5_data */*result_string*/);
3499142403Snectar
3500178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3501178825Sdfrkrb5_set_real_time (
3502178825Sdfr	krb5_context /*context*/,
3503178825Sdfr	krb5_timestamp /*sec*/,
3504178825Sdfr	int32_t /*usec*/);
3505178825Sdfr
3506178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3507178825Sdfrkrb5_set_send_to_kdc_func (
3508178825Sdfr	krb5_context /*context*/,
3509178825Sdfr	krb5_send_to_kdc_func /*func*/,
3510178825Sdfr	void */*data*/);
3511178825Sdfr
3512178825Sdfrvoid KRB5_LIB_FUNCTION
3513102644Snectarkrb5_set_use_admin_kdc (
3514102644Snectar	krb5_context /*context*/,
3515102644Snectar	krb5_boolean /*flag*/);
351655682Smarkm
3517178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3518102644Snectarkrb5_set_warn_dest (
3519102644Snectar	krb5_context /*context*/,
3520102644Snectar	krb5_log_facility */*fac*/);
352155682Smarkm
3522178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3523102644Snectarkrb5_sname_to_principal (
3524102644Snectar	krb5_context /*context*/,
3525102644Snectar	const char */*hostname*/,
3526102644Snectar	const char */*sname*/,
3527102644Snectar	int32_t /*type*/,
3528102644Snectar	krb5_principal */*ret_princ*/);
352955682Smarkm
3530178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3531102644Snectarkrb5_sock_to_principal (
3532102644Snectar	krb5_context /*context*/,
3533102644Snectar	int /*sock*/,
3534102644Snectar	const char */*sname*/,
3535102644Snectar	int32_t /*type*/,
3536102644Snectar	krb5_principal */*ret_princ*/);
353755682Smarkm
3538178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3539102644Snectarkrb5_sockaddr2address (
3540102644Snectar	krb5_context /*context*/,
3541102644Snectar	const struct sockaddr */*sa*/,
3542102644Snectar	krb5_address */*addr*/);
354355682Smarkm
3544178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3545102644Snectarkrb5_sockaddr2port (
3546102644Snectar	krb5_context /*context*/,
3547102644Snectar	const struct sockaddr */*sa*/,
3548102644Snectar	int16_t */*port*/);
354955682Smarkm
3550178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
3551102644Snectarkrb5_sockaddr_uninteresting (const struct sockaddr */*sa*/);
355255682Smarkm
3553178825Sdfrvoid KRB5_LIB_FUNCTION
3554102644Snectarkrb5_std_usage (
3555102644Snectar	int /*code*/,
3556102644Snectar	struct getargs */*args*/,
3557102644Snectar	int /*num_args*/);
355855682Smarkm
3559178825Sdfrvoid KRB5_LIB_FUNCTION
3560102644Snectarkrb5_storage_clear_flags (
3561102644Snectar	krb5_storage */*sp*/,
3562102644Snectar	krb5_flags /*flags*/);
356355682Smarkm
3564178825Sdfrkrb5_storage * KRB5_LIB_FUNCTION
3565102644Snectarkrb5_storage_emem (void);
356655682Smarkm
3567178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3568102644Snectarkrb5_storage_free (krb5_storage */*sp*/);
356955682Smarkm
3570178825Sdfrkrb5_storage * KRB5_LIB_FUNCTION
3571102644Snectarkrb5_storage_from_data (krb5_data */*data*/);
357255682Smarkm
3573178825Sdfrkrb5_storage * KRB5_LIB_FUNCTION
3574102644Snectarkrb5_storage_from_fd (int /*fd*/);
357555682Smarkm
3576178825Sdfrkrb5_storage * KRB5_LIB_FUNCTION
3577102644Snectarkrb5_storage_from_mem (
3578102644Snectar	void */*buf*/,
3579102644Snectar	size_t /*len*/);
358055682Smarkm
3581178825Sdfrkrb5_storage * KRB5_LIB_FUNCTION
3582178825Sdfrkrb5_storage_from_readonly_mem (
3583178825Sdfr	const void */*buf*/,
3584178825Sdfr	size_t /*len*/);
3585178825Sdfr
3586178825Sdfrkrb5_flags KRB5_LIB_FUNCTION
3587102644Snectarkrb5_storage_get_byteorder (
3588102644Snectar	krb5_storage */*sp*/,
3589102644Snectar	krb5_flags /*byteorder*/);
359078527Sassar
3591178825Sdfrkrb5_boolean KRB5_LIB_FUNCTION
3592102644Snectarkrb5_storage_is_flags (
3593102644Snectar	krb5_storage */*sp*/,
3594102644Snectar	krb5_flags /*flags*/);
359555682Smarkm
3596178825Sdfrkrb5_ssize_t KRB5_LIB_FUNCTION
3597102644Snectarkrb5_storage_read (
3598102644Snectar	krb5_storage */*sp*/,
3599102644Snectar	void */*buf*/,
3600102644Snectar	size_t /*len*/);
3601102644Snectar
3602178825Sdfroff_t KRB5_LIB_FUNCTION
3603102644Snectarkrb5_storage_seek (
3604102644Snectar	krb5_storage */*sp*/,
3605102644Snectar	off_t /*offset*/,
3606102644Snectar	int /*whence*/);
3607102644Snectar
3608178825Sdfrvoid KRB5_LIB_FUNCTION
3609102644Snectarkrb5_storage_set_byteorder (
3610102644Snectar	krb5_storage */*sp*/,
3611102644Snectar	krb5_flags /*byteorder*/);
361278527Sassar
3613178825Sdfrvoid KRB5_LIB_FUNCTION
3614102644Snectarkrb5_storage_set_eof_code (
3615102644Snectar	krb5_storage */*sp*/,
3616102644Snectar	int /*code*/);
361755682Smarkm
3618178825Sdfrvoid KRB5_LIB_FUNCTION
3619102644Snectarkrb5_storage_set_flags (
3620102644Snectar	krb5_storage */*sp*/,
3621102644Snectar	krb5_flags /*flags*/);
3622102644Snectar
3623178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3624102644Snectarkrb5_storage_to_data (
3625102644Snectar	krb5_storage */*sp*/,
3626102644Snectar	krb5_data */*data*/);
362755682Smarkm
3628178825Sdfrkrb5_ssize_t KRB5_LIB_FUNCTION
3629102644Snectarkrb5_storage_write (
3630102644Snectar	krb5_storage */*sp*/,
3631102644Snectar	const void */*buf*/,
3632102644Snectar	size_t /*len*/);
3633102644Snectar
3634178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3635102644Snectarkrb5_store_address (
3636102644Snectar	krb5_storage */*sp*/,
3637102644Snectar	krb5_address /*p*/);
363855682Smarkm
3639178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3640102644Snectarkrb5_store_addrs (
3641102644Snectar	krb5_storage */*sp*/,
3642102644Snectar	krb5_addresses /*p*/);
364355682Smarkm
3644178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3645102644Snectarkrb5_store_authdata (
3646102644Snectar	krb5_storage */*sp*/,
3647102644Snectar	krb5_authdata /*auth*/);
364855682Smarkm
3649178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3650102644Snectarkrb5_store_creds (
3651102644Snectar	krb5_storage */*sp*/,
3652102644Snectar	krb5_creds */*creds*/);
365355682Smarkm
3654178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3655178825Sdfrkrb5_store_creds_tag (
3656178825Sdfr	krb5_storage */*sp*/,
3657178825Sdfr	krb5_creds */*creds*/);
3658178825Sdfr
3659178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3660102644Snectarkrb5_store_data (
3661102644Snectar	krb5_storage */*sp*/,
3662102644Snectar	krb5_data /*data*/);
366355682Smarkm
3664178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3665102644Snectarkrb5_store_int16 (
3666102644Snectar	krb5_storage */*sp*/,
3667102644Snectar	int16_t /*value*/);
366855682Smarkm
3669178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3670102644Snectarkrb5_store_int32 (
3671102644Snectar	krb5_storage */*sp*/,
3672102644Snectar	int32_t /*value*/);
367355682Smarkm
3674178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3675102644Snectarkrb5_store_int8 (
3676102644Snectar	krb5_storage */*sp*/,
3677102644Snectar	int8_t /*value*/);
367855682Smarkm
3679178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3680102644Snectarkrb5_store_keyblock (
3681102644Snectar	krb5_storage */*sp*/,
3682102644Snectar	krb5_keyblock /*p*/);
368355682Smarkm
3684178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3685102644Snectarkrb5_store_principal (
3686102644Snectar	krb5_storage */*sp*/,
3687178825Sdfr	krb5_const_principal /*p*/);
368855682Smarkm
3689178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3690102644Snectarkrb5_store_string (
3691102644Snectar	krb5_storage */*sp*/,
3692102644Snectar	const char */*s*/);
369355682Smarkm
3694178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3695178825Sdfrkrb5_store_stringnl (
3696178825Sdfr	krb5_storage */*sp*/,
3697178825Sdfr	const char */*s*/);
3698178825Sdfr
3699178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3700102644Snectarkrb5_store_stringz (
3701102644Snectar	krb5_storage */*sp*/,
3702102644Snectar	const char */*s*/);
370355682Smarkm
3704178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3705102644Snectarkrb5_store_times (
3706102644Snectar	krb5_storage */*sp*/,
3707102644Snectar	krb5_times /*times*/);
370855682Smarkm
3709178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3710178825Sdfrkrb5_store_uint16 (
3711178825Sdfr	krb5_storage */*sp*/,
3712178825Sdfr	uint16_t /*value*/);
3713178825Sdfr
3714178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3715178825Sdfrkrb5_store_uint32 (
3716178825Sdfr	krb5_storage */*sp*/,
3717178825Sdfr	uint32_t /*value*/);
3718178825Sdfr
3719178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3720178825Sdfrkrb5_store_uint8 (
3721178825Sdfr	krb5_storage */*sp*/,
3722178825Sdfr	uint8_t /*value*/);
3723178825Sdfr
3724178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3725102644Snectarkrb5_string_to_deltat (
3726102644Snectar	const char */*string*/,
3727102644Snectar	krb5_deltat */*deltat*/);
372878527Sassar
3729178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3730102644Snectarkrb5_string_to_enctype (
3731102644Snectar	krb5_context /*context*/,
3732102644Snectar	const char */*string*/,
3733102644Snectar	krb5_enctype */*etype*/);
373455682Smarkm
3735178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3736102644Snectarkrb5_string_to_key (
3737102644Snectar	krb5_context /*context*/,
3738102644Snectar	krb5_enctype /*enctype*/,
3739102644Snectar	const char */*password*/,
3740102644Snectar	krb5_principal /*principal*/,
3741102644Snectar	krb5_keyblock */*key*/);
374255682Smarkm
3743178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3744102644Snectarkrb5_string_to_key_data (
3745102644Snectar	krb5_context /*context*/,
3746102644Snectar	krb5_enctype /*enctype*/,
3747102644Snectar	krb5_data /*password*/,
3748102644Snectar	krb5_principal /*principal*/,
3749102644Snectar	krb5_keyblock */*key*/);
375055682Smarkm
3751178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3752102644Snectarkrb5_string_to_key_data_salt (
3753102644Snectar	krb5_context /*context*/,
3754102644Snectar	krb5_enctype /*enctype*/,
3755102644Snectar	krb5_data /*password*/,
3756102644Snectar	krb5_salt /*salt*/,
3757102644Snectar	krb5_keyblock */*key*/);
375855682Smarkm
3759178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3760120945Snectarkrb5_string_to_key_data_salt_opaque (
3761120945Snectar	krb5_context /*context*/,
3762120945Snectar	krb5_enctype /*enctype*/,
3763120945Snectar	krb5_data /*password*/,
3764120945Snectar	krb5_salt /*salt*/,
3765120945Snectar	krb5_data /*opaque*/,
3766120945Snectar	krb5_keyblock */*key*/);
3767120945Snectar
3768178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3769102644Snectarkrb5_string_to_key_derived (
3770102644Snectar	krb5_context /*context*/,
3771102644Snectar	const void */*str*/,
3772102644Snectar	size_t /*len*/,
3773102644Snectar	krb5_enctype /*etype*/,
3774102644Snectar	krb5_keyblock */*key*/);
377555682Smarkm
3776178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3777102644Snectarkrb5_string_to_key_salt (
3778102644Snectar	krb5_context /*context*/,
3779102644Snectar	krb5_enctype /*enctype*/,
3780102644Snectar	const char */*password*/,
3781102644Snectar	krb5_salt /*salt*/,
3782102644Snectar	krb5_keyblock */*key*/);
378355682Smarkm
3784178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3785178825Sdfrkrb5_string_to_key_salt_opaque (
3786178825Sdfr	krb5_context /*context*/,
3787178825Sdfr	krb5_enctype /*enctype*/,
3788178825Sdfr	const char */*password*/,
3789178825Sdfr	krb5_salt /*salt*/,
3790178825Sdfr	krb5_data /*opaque*/,
3791178825Sdfr	krb5_keyblock */*key*/);
3792178825Sdfr
3793178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3794102644Snectarkrb5_string_to_keytype (
3795102644Snectar	krb5_context /*context*/,
3796102644Snectar	const char */*string*/,
3797102644Snectar	krb5_keytype */*keytype*/);
379855682Smarkm
3799178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3800102644Snectarkrb5_string_to_salttype (
3801102644Snectar	krb5_context /*context*/,
3802102644Snectar	krb5_enctype /*etype*/,
3803102644Snectar	const char */*string*/,
3804102644Snectar	krb5_salttype */*salttype*/);
380555682Smarkm
3806178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3807178825Sdfrkrb5_ticket_get_authorization_data_type (
3808178825Sdfr	krb5_context /*context*/,
3809178825Sdfr	krb5_ticket */*ticket*/,
3810178825Sdfr	int /*type*/,
3811178825Sdfr	krb5_data */*data*/);
3812178825Sdfr
3813178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3814178825Sdfrkrb5_ticket_get_client (
3815178825Sdfr	krb5_context /*context*/,
3816178825Sdfr	const krb5_ticket */*ticket*/,
3817178825Sdfr	krb5_principal */*client*/);
3818178825Sdfr
3819178825Sdfrtime_t KRB5_LIB_FUNCTION
3820178825Sdfrkrb5_ticket_get_endtime (
3821178825Sdfr	krb5_context /*context*/,
3822178825Sdfr	const krb5_ticket */*ticket*/);
3823178825Sdfr
3824178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3825178825Sdfrkrb5_ticket_get_server (
3826178825Sdfr	krb5_context /*context*/,
3827178825Sdfr	const krb5_ticket */*ticket*/,
3828178825Sdfr	krb5_principal */*server*/);
3829178825Sdfr
3830178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3831102644Snectarkrb5_timeofday (
3832102644Snectar	krb5_context /*context*/,
3833102644Snectar	krb5_timestamp */*timeret*/);
383455682Smarkm
3835178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3836102644Snectarkrb5_unparse_name (
3837102644Snectar	krb5_context /*context*/,
3838102644Snectar	krb5_const_principal /*principal*/,
3839102644Snectar	char **/*name*/);
384055682Smarkm
3841178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3842102644Snectarkrb5_unparse_name_fixed (
3843102644Snectar	krb5_context /*context*/,
3844102644Snectar	krb5_const_principal /*principal*/,
3845102644Snectar	char */*name*/,
3846102644Snectar	size_t /*len*/);
384755682Smarkm
3848178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3849178825Sdfrkrb5_unparse_name_fixed_flags (
3850178825Sdfr	krb5_context /*context*/,
3851178825Sdfr	krb5_const_principal /*principal*/,
3852178825Sdfr	int /*flags*/,
3853178825Sdfr	char */*name*/,
3854178825Sdfr	size_t /*len*/);
3855178825Sdfr
3856178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3857102644Snectarkrb5_unparse_name_fixed_short (
3858102644Snectar	krb5_context /*context*/,
3859102644Snectar	krb5_const_principal /*principal*/,
3860102644Snectar	char */*name*/,
3861102644Snectar	size_t /*len*/);
386255682Smarkm
3863178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3864178825Sdfrkrb5_unparse_name_flags (
3865178825Sdfr	krb5_context /*context*/,
3866178825Sdfr	krb5_const_principal /*principal*/,
3867178825Sdfr	int /*flags*/,
3868178825Sdfr	char **/*name*/);
3869178825Sdfr
3870178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3871102644Snectarkrb5_unparse_name_short (
3872102644Snectar	krb5_context /*context*/,
3873102644Snectar	krb5_const_principal /*principal*/,
3874102644Snectar	char **/*name*/);
387555682Smarkm
3876178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3877102644Snectarkrb5_us_timeofday (
3878102644Snectar	krb5_context /*context*/,
3879178825Sdfr	krb5_timestamp */*sec*/,
3880102644Snectar	int32_t */*usec*/);
388155682Smarkm
3882178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3883102644Snectarkrb5_vabort (
3884102644Snectar	krb5_context /*context*/,
3885102644Snectar	krb5_error_code /*code*/,
3886102644Snectar	const char */*fmt*/,
3887102644Snectar	va_list /*ap*/)
388855682Smarkm    __attribute__ ((noreturn, format (printf, 3, 0)));
388955682Smarkm
3890178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3891102644Snectarkrb5_vabortx (
3892102644Snectar	krb5_context /*context*/,
3893102644Snectar	const char */*fmt*/,
3894102644Snectar	va_list /*ap*/)
389555682Smarkm    __attribute__ ((noreturn, format (printf, 2, 0)));
389655682Smarkm
3897178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3898102644Snectarkrb5_verify_ap_req (
3899102644Snectar	krb5_context /*context*/,
3900102644Snectar	krb5_auth_context */*auth_context*/,
3901102644Snectar	krb5_ap_req */*ap_req*/,
3902102644Snectar	krb5_const_principal /*server*/,
3903102644Snectar	krb5_keyblock */*keyblock*/,
3904102644Snectar	krb5_flags /*flags*/,
3905102644Snectar	krb5_flags */*ap_req_options*/,
3906102644Snectar	krb5_ticket **/*ticket*/);
390755682Smarkm
3908178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3909102644Snectarkrb5_verify_ap_req2 (
3910102644Snectar	krb5_context /*context*/,
3911102644Snectar	krb5_auth_context */*auth_context*/,
3912102644Snectar	krb5_ap_req */*ap_req*/,
3913102644Snectar	krb5_const_principal /*server*/,
3914102644Snectar	krb5_keyblock */*keyblock*/,
3915102644Snectar	krb5_flags /*flags*/,
3916102644Snectar	krb5_flags */*ap_req_options*/,
3917102644Snectar	krb5_ticket **/*ticket*/,
3918102644Snectar	krb5_key_usage /*usage*/);
391972445Sassar
3920178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3921102644Snectarkrb5_verify_authenticator_checksum (
3922102644Snectar	krb5_context /*context*/,
3923102644Snectar	krb5_auth_context /*ac*/,
3924102644Snectar	void */*data*/,
3925102644Snectar	size_t /*len*/);
392655682Smarkm
3927178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3928102644Snectarkrb5_verify_checksum (
3929102644Snectar	krb5_context /*context*/,
3930102644Snectar	krb5_crypto /*crypto*/,
3931102644Snectar	krb5_key_usage /*usage*/,
3932102644Snectar	void */*data*/,
3933102644Snectar	size_t /*len*/,
3934102644Snectar	Checksum */*cksum*/);
393555682Smarkm
3936178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3937102644Snectarkrb5_verify_init_creds (
3938102644Snectar	krb5_context /*context*/,
3939102644Snectar	krb5_creds */*creds*/,
3940102644Snectar	krb5_principal /*ap_req_server*/,
3941102644Snectar	krb5_keytab /*ap_req_keytab*/,
3942102644Snectar	krb5_ccache */*ccache*/,
3943102644Snectar	krb5_verify_init_creds_opt */*options*/);
394455682Smarkm
3945178825Sdfrvoid KRB5_LIB_FUNCTION
3946102644Snectarkrb5_verify_init_creds_opt_init (krb5_verify_init_creds_opt */*options*/);
394755682Smarkm
3948178825Sdfrvoid KRB5_LIB_FUNCTION
3949102644Snectarkrb5_verify_init_creds_opt_set_ap_req_nofail (
3950102644Snectar	krb5_verify_init_creds_opt */*options*/,
3951102644Snectar	int /*ap_req_nofail*/);
395255682Smarkm
3953178825Sdfrint KRB5_LIB_FUNCTION
3954178825Sdfrkrb5_verify_opt_alloc (
3955178825Sdfr	krb5_context /*context*/,
3956178825Sdfr	krb5_verify_opt **/*opt*/);
3957178825Sdfr
3958178825Sdfrvoid KRB5_LIB_FUNCTION
3959178825Sdfrkrb5_verify_opt_free (krb5_verify_opt */*opt*/);
3960178825Sdfr
3961178825Sdfrvoid KRB5_LIB_FUNCTION
3962102644Snectarkrb5_verify_opt_init (krb5_verify_opt */*opt*/);
396378527Sassar
3964178825Sdfrvoid KRB5_LIB_FUNCTION
3965102644Snectarkrb5_verify_opt_set_ccache (
3966102644Snectar	krb5_verify_opt */*opt*/,
3967102644Snectar	krb5_ccache /*ccache*/);
396878527Sassar
3969178825Sdfrvoid KRB5_LIB_FUNCTION
3970102644Snectarkrb5_verify_opt_set_flags (
3971102644Snectar	krb5_verify_opt */*opt*/,
3972102644Snectar	unsigned int /*flags*/);
397378527Sassar
3974178825Sdfrvoid KRB5_LIB_FUNCTION
3975102644Snectarkrb5_verify_opt_set_keytab (
3976102644Snectar	krb5_verify_opt */*opt*/,
3977102644Snectar	krb5_keytab /*keytab*/);
397878527Sassar
3979178825Sdfrvoid KRB5_LIB_FUNCTION
3980102644Snectarkrb5_verify_opt_set_secure (
3981102644Snectar	krb5_verify_opt */*opt*/,
3982102644Snectar	krb5_boolean /*secure*/);
398378527Sassar
3984178825Sdfrvoid KRB5_LIB_FUNCTION
3985102644Snectarkrb5_verify_opt_set_service (
3986102644Snectar	krb5_verify_opt */*opt*/,
3987102644Snectar	const char */*service*/);
398878527Sassar
3989178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3990102644Snectarkrb5_verify_user (
3991102644Snectar	krb5_context /*context*/,
3992102644Snectar	krb5_principal /*principal*/,
3993102644Snectar	krb5_ccache /*ccache*/,
3994102644Snectar	const char */*password*/,
3995102644Snectar	krb5_boolean /*secure*/,
3996102644Snectar	const char */*service*/);
399755682Smarkm
3998178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
3999102644Snectarkrb5_verify_user_lrealm (
4000102644Snectar	krb5_context /*context*/,
4001102644Snectar	krb5_principal /*principal*/,
4002102644Snectar	krb5_ccache /*ccache*/,
4003102644Snectar	const char */*password*/,
4004102644Snectar	krb5_boolean /*secure*/,
4005102644Snectar	const char */*service*/);
400655682Smarkm
4007178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4008102644Snectarkrb5_verify_user_opt (
4009102644Snectar	krb5_context /*context*/,
4010102644Snectar	krb5_principal /*principal*/,
4011102644Snectar	const char */*password*/,
4012102644Snectar	krb5_verify_opt */*opt*/);
401378527Sassar
4014178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4015102644Snectarkrb5_verr (
4016102644Snectar	krb5_context /*context*/,
4017102644Snectar	int /*eval*/,
4018102644Snectar	krb5_error_code /*code*/,
4019102644Snectar	const char */*fmt*/,
4020102644Snectar	va_list /*ap*/)
402155682Smarkm    __attribute__ ((noreturn, format (printf, 4, 0)));
402255682Smarkm
4023178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4024102644Snectarkrb5_verrx (
4025102644Snectar	krb5_context /*context*/,
4026102644Snectar	int /*eval*/,
4027102644Snectar	const char */*fmt*/,
4028102644Snectar	va_list /*ap*/)
402955682Smarkm    __attribute__ ((noreturn, format (printf, 3, 0)));
403055682Smarkm
4031178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4032102644Snectarkrb5_vlog (
4033102644Snectar	krb5_context /*context*/,
4034102644Snectar	krb5_log_facility */*fac*/,
4035102644Snectar	int /*level*/,
4036102644Snectar	const char */*fmt*/,
4037102644Snectar	va_list /*ap*/)
403855682Smarkm    __attribute__((format (printf, 4, 0)));
403955682Smarkm
4040178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4041102644Snectarkrb5_vlog_msg (
4042102644Snectar	krb5_context /*context*/,
4043102644Snectar	krb5_log_facility */*fac*/,
4044102644Snectar	char **/*reply*/,
4045102644Snectar	int /*level*/,
4046102644Snectar	const char */*fmt*/,
4047102644Snectar	va_list /*ap*/)
404855682Smarkm    __attribute__((format (printf, 5, 0)));
404955682Smarkm
4050178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4051102644Snectarkrb5_vset_error_string (
4052102644Snectar	krb5_context /*context*/,
4053102644Snectar	const char */*fmt*/,
4054102644Snectar	va_list /*args*/)
405578527Sassar    __attribute__ ((format (printf, 2, 0)));
405678527Sassar
4057178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4058102644Snectarkrb5_vwarn (
4059102644Snectar	krb5_context /*context*/,
4060102644Snectar	krb5_error_code /*code*/,
4061102644Snectar	const char */*fmt*/,
4062102644Snectar	va_list /*ap*/)
406355682Smarkm    __attribute__ ((format (printf, 3, 0)));
406455682Smarkm
4065178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4066102644Snectarkrb5_vwarnx (
4067102644Snectar	krb5_context /*context*/,
4068102644Snectar	const char */*fmt*/,
4069102644Snectar	va_list /*ap*/)
407055682Smarkm    __attribute__ ((format (printf, 2, 0)));
407155682Smarkm
4072178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4073102644Snectarkrb5_warn (
4074102644Snectar	krb5_context /*context*/,
4075102644Snectar	krb5_error_code /*code*/,
4076102644Snectar	const char */*fmt*/,
4077102644Snectar	...)
407855682Smarkm    __attribute__ ((format (printf, 3, 4)));
407955682Smarkm
4080178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4081102644Snectarkrb5_warnx (
4082102644Snectar	krb5_context /*context*/,
4083102644Snectar	const char */*fmt*/,
4084102644Snectar	...)
408555682Smarkm    __attribute__ ((format (printf, 2, 3)));
408655682Smarkm
4087178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4088102644Snectarkrb5_write_message (
4089102644Snectar	krb5_context /*context*/,
4090102644Snectar	krb5_pointer /*p_fd*/,
4091102644Snectar	krb5_data */*data*/);
409255682Smarkm
4093178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4094102644Snectarkrb5_write_priv_message (
4095102644Snectar	krb5_context /*context*/,
4096102644Snectar	krb5_auth_context /*ac*/,
4097102644Snectar	krb5_pointer /*p_fd*/,
4098102644Snectar	krb5_data */*data*/);
409972445Sassar
4100178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4101102644Snectarkrb5_write_safe_message (
4102102644Snectar	krb5_context /*context*/,
4103102644Snectar	krb5_auth_context /*ac*/,
4104102644Snectar	krb5_pointer /*p_fd*/,
4105102644Snectar	krb5_data */*data*/);
410672445Sassar
4107178825Sdfrkrb5_error_code KRB5_LIB_FUNCTION
4108102644Snectarkrb5_xfree (void */*ptr*/);
410955682Smarkm
4110178825Sdfr#ifdef __cplusplus
4111178825Sdfr}
4112178825Sdfr#endif
411355682Smarkm
411455682Smarkm#endif /* __krb5_protos_h__ */
4115