1178825Sdfr/* This is a generated file */
2178825Sdfr#ifndef __kdc_private_h__
3178825Sdfr#define __kdc_private_h__
4178825Sdfr
5178825Sdfr#include <stdarg.h>
6178825Sdfr
7178825Sdfrkrb5_error_code
8178825Sdfr_kdc_add_KRB5SignedPath (
9178825Sdfr	krb5_context /*context*/,
10178825Sdfr	krb5_kdc_configuration */*config*/,
11178825Sdfr	hdb_entry_ex */*krbtgt*/,
12178825Sdfr	krb5_enctype /*enctype*/,
13233294Sstas	krb5_principal /*client*/,
14178825Sdfr	krb5_const_principal /*server*/,
15233294Sstas	krb5_principals /*principals*/,
16178825Sdfr	EncTicketPart */*tkt*/);
17178825Sdfr
18178825Sdfrkrb5_error_code
19178825Sdfr_kdc_add_inital_verified_cas (
20178825Sdfr	krb5_context /*context*/,
21178825Sdfr	krb5_kdc_configuration */*config*/,
22233294Sstas	pk_client_params */*cp*/,
23178825Sdfr	EncTicketPart */*tkt*/);
24178825Sdfr
25178825Sdfrkrb5_error_code
26178825Sdfr_kdc_as_rep (
27178825Sdfr	krb5_context /*context*/,
28178825Sdfr	krb5_kdc_configuration */*config*/,
29178825Sdfr	KDC_REQ */*req*/,
30178825Sdfr	const krb5_data */*req_buffer*/,
31178825Sdfr	krb5_data */*reply*/,
32178825Sdfr	const char */*from*/,
33178825Sdfr	struct sockaddr */*from_addr*/,
34178825Sdfr	int /*datagram_reply*/);
35178825Sdfr
36178825Sdfrkrb5_error_code
37233294Sstas_kdc_check_access (
38178825Sdfr	krb5_context /*context*/,
39178825Sdfr	krb5_kdc_configuration */*config*/,
40178825Sdfr	hdb_entry_ex */*client_ex*/,
41178825Sdfr	const char */*client_name*/,
42178825Sdfr	hdb_entry_ex */*server_ex*/,
43178825Sdfr	const char */*server_name*/,
44233294Sstas	KDC_REQ */*req*/,
45233294Sstas	krb5_data */*e_data*/);
46178825Sdfr
47233294Sstaskrb5_boolean
48233294Sstas_kdc_check_addresses (
49233294Sstas	krb5_context /*context*/,
50233294Sstas	krb5_kdc_configuration */*config*/,
51233294Sstas	HostAddresses */*addresses*/,
52233294Sstas	const struct sockaddr */*from*/);
53233294Sstas
54178825Sdfrkrb5_error_code
55178825Sdfr_kdc_db_fetch (
56178825Sdfr	krb5_context /*context*/,
57178825Sdfr	krb5_kdc_configuration */*config*/,
58178825Sdfr	krb5_const_principal /*principal*/,
59178825Sdfr	unsigned /*flags*/,
60233294Sstas	krb5uint32 */*kvno_ptr*/,
61178825Sdfr	HDB **/*db*/,
62178825Sdfr	hdb_entry_ex **/*h*/);
63178825Sdfr
64178825Sdfrkrb5_error_code
65178825Sdfr_kdc_do_digest (
66178825Sdfr	krb5_context /*context*/,
67178825Sdfr	krb5_kdc_configuration */*config*/,
68233294Sstas	const struct DigestREQ */*req*/,
69178825Sdfr	krb5_data */*reply*/,
70178825Sdfr	const char */*from*/,
71178825Sdfr	struct sockaddr */*addr*/);
72178825Sdfr
73178825Sdfrkrb5_error_code
74178825Sdfr_kdc_do_kx509 (
75178825Sdfr	krb5_context /*context*/,
76178825Sdfr	krb5_kdc_configuration */*config*/,
77233294Sstas	const struct Kx509Request */*req*/,
78178825Sdfr	krb5_data */*reply*/,
79178825Sdfr	const char */*from*/,
80178825Sdfr	struct sockaddr */*addr*/);
81178825Sdfr
82178825Sdfrkrb5_error_code
83178825Sdfr_kdc_encode_reply (
84178825Sdfr	krb5_context /*context*/,
85178825Sdfr	krb5_kdc_configuration */*config*/,
86178825Sdfr	KDC_REP */*rep*/,
87178825Sdfr	const EncTicketPart */*et*/,
88178825Sdfr	EncKDCRepPart */*ek*/,
89178825Sdfr	krb5_enctype /*etype*/,
90178825Sdfr	int /*skvno*/,
91178825Sdfr	const EncryptionKey */*skey*/,
92178825Sdfr	int /*ckvno*/,
93233294Sstas	const EncryptionKey */*reply_key*/,
94233294Sstas	int /*rk_is_subkey*/,
95178825Sdfr	const char **/*e_text*/,
96178825Sdfr	krb5_data */*reply*/);
97178825Sdfr
98178825Sdfrkrb5_error_code
99178825Sdfr_kdc_find_etype (
100178825Sdfr	krb5_context /*context*/,
101233294Sstas	krb5_boolean /*use_strongest_session_key*/,
102233294Sstas	krb5_boolean /*is_preauth*/,
103233294Sstas	hdb_entry_ex */*princ*/,
104178825Sdfr	krb5_enctype */*etypes*/,
105178825Sdfr	unsigned /*len*/,
106233294Sstas	krb5_enctype */*ret_enctype*/,
107233294Sstas	Key **/*ret_key*/);
108178825Sdfr
109178825Sdfrconst PA_DATA*
110178825Sdfr_kdc_find_padata (
111178825Sdfr	const KDC_REQ */*req*/,
112178825Sdfr	int */*start*/,
113178825Sdfr	int /*type*/);
114178825Sdfr
115178825Sdfrvoid
116178825Sdfr_kdc_fix_time (time_t **/*t*/);
117178825Sdfr
118178825Sdfrvoid
119178825Sdfr_kdc_free_ent (
120178825Sdfr	krb5_context /*context*/,
121178825Sdfr	hdb_entry_ex */*ent*/);
122178825Sdfr
123178825Sdfrkrb5_error_code
124178825Sdfr_kdc_get_preferred_key (
125178825Sdfr	krb5_context /*context*/,
126178825Sdfr	krb5_kdc_configuration */*config*/,
127178825Sdfr	hdb_entry_ex */*h*/,
128178825Sdfr	const char */*name*/,
129178825Sdfr	krb5_enctype */*enctype*/,
130178825Sdfr	Key **/*key*/);
131178825Sdfr
132233294Sstaskrb5_boolean
133233294Sstas_kdc_is_anonymous (
134233294Sstas	krb5_context /*context*/,
135233294Sstas	krb5_principal /*principal*/);
136233294Sstas
137233294Sstaskrb5_boolean
138233294Sstas_kdc_is_weak_exception (
139233294Sstas	krb5_principal /*principal*/,
140233294Sstas	krb5_enctype /*etype*/);
141233294Sstas
142178825Sdfrvoid
143178825Sdfr_kdc_log_timestamp (
144178825Sdfr	krb5_context /*context*/,
145178825Sdfr	krb5_kdc_configuration */*config*/,
146178825Sdfr	const char */*type*/,
147178825Sdfr	KerberosTime /*authtime*/,
148178825Sdfr	KerberosTime */*starttime*/,
149178825Sdfr	KerberosTime /*endtime*/,
150178825Sdfr	KerberosTime */*renew_till*/);
151178825Sdfr
152178825Sdfrkrb5_error_code
153178825Sdfr_kdc_make_anonymous_principalname (PrincipalName */*pn*/);
154178825Sdfr
155178825Sdfrkrb5_error_code
156178825Sdfr_kdc_pac_generate (
157178825Sdfr	krb5_context /*context*/,
158178825Sdfr	hdb_entry_ex */*client*/,
159178825Sdfr	krb5_pac */*pac*/);
160178825Sdfr
161178825Sdfrkrb5_error_code
162178825Sdfr_kdc_pac_verify (
163178825Sdfr	krb5_context /*context*/,
164178825Sdfr	const krb5_principal /*client_principal*/,
165233294Sstas	const krb5_principal /*delegated_proxy_principal*/,
166178825Sdfr	hdb_entry_ex */*client*/,
167178825Sdfr	hdb_entry_ex */*server*/,
168233294Sstas	hdb_entry_ex */*krbtgt*/,
169233294Sstas	krb5_pac */*pac*/,
170233294Sstas	int */*verified*/);
171178825Sdfr
172178825Sdfrkrb5_error_code
173178825Sdfr_kdc_pk_check_client (
174178825Sdfr	krb5_context /*context*/,
175178825Sdfr	krb5_kdc_configuration */*config*/,
176233294Sstas	HDB */*clientdb*/,
177233294Sstas	hdb_entry_ex */*client*/,
178233294Sstas	pk_client_params */*cp*/,
179178825Sdfr	char **/*subject_name*/);
180178825Sdfr
181178825Sdfrvoid
182178825Sdfr_kdc_pk_free_client_param (
183178825Sdfr	krb5_context /*context*/,
184233294Sstas	pk_client_params */*cp*/);
185178825Sdfr
186178825Sdfrkrb5_error_code
187178825Sdfr_kdc_pk_mk_pa_reply (
188178825Sdfr	krb5_context /*context*/,
189178825Sdfr	krb5_kdc_configuration */*config*/,
190233294Sstas	pk_client_params */*cp*/,
191178825Sdfr	const hdb_entry_ex */*client*/,
192233294Sstas	krb5_enctype /*sessionetype*/,
193178825Sdfr	const KDC_REQ */*req*/,
194178825Sdfr	const krb5_data */*req_buffer*/,
195178825Sdfr	krb5_keyblock **/*reply_key*/,
196233294Sstas	krb5_keyblock */*sessionkey*/,
197178825Sdfr	METHOD_DATA */*md*/);
198178825Sdfr
199178825Sdfrkrb5_error_code
200178825Sdfr_kdc_pk_rd_padata (
201178825Sdfr	krb5_context /*context*/,
202178825Sdfr	krb5_kdc_configuration */*config*/,
203178825Sdfr	const KDC_REQ */*req*/,
204178825Sdfr	const PA_DATA */*pa*/,
205233294Sstas	hdb_entry_ex */*client*/,
206178825Sdfr	pk_client_params **/*ret_params*/);
207178825Sdfr
208178825Sdfrkrb5_error_code
209178825Sdfr_kdc_tgs_rep (
210178825Sdfr	krb5_context /*context*/,
211178825Sdfr	krb5_kdc_configuration */*config*/,
212178825Sdfr	KDC_REQ */*req*/,
213178825Sdfr	krb5_data */*data*/,
214178825Sdfr	const char */*from*/,
215178825Sdfr	struct sockaddr */*from_addr*/,
216178825Sdfr	int /*datagram_reply*/);
217178825Sdfr
218178825Sdfrkrb5_error_code
219178825Sdfr_kdc_tkt_add_if_relevant_ad (
220178825Sdfr	krb5_context /*context*/,
221178825Sdfr	EncTicketPart */*tkt*/,
222178825Sdfr	int /*type*/,
223178825Sdfr	const krb5_data */*data*/);
224178825Sdfr
225178825Sdfrkrb5_error_code
226178825Sdfr_kdc_try_kx509_request (
227178825Sdfr	void */*ptr*/,
228178825Sdfr	size_t /*len*/,
229233294Sstas	struct Kx509Request */*req*/,
230178825Sdfr	size_t */*size*/);
231178825Sdfr
232178825Sdfr#endif /* __kdc_private_h__ */
233