1/* This is a generated file */
2#ifndef __kdc_private_h__
3#define __kdc_private_h__
4
5#include <stdarg.h>
6
7krb5_error_code
8_kdc_add_KRB5SignedPath (
9	krb5_context /*context*/,
10	krb5_kdc_configuration */*config*/,
11	hdb_entry_ex */*krbtgt*/,
12	krb5_enctype /*enctype*/,
13	krb5_principal /*client*/,
14	krb5_const_principal /*server*/,
15	krb5_principals /*principals*/,
16	EncTicketPart */*tkt*/);
17
18krb5_error_code
19_kdc_add_inital_verified_cas (
20	krb5_context /*context*/,
21	krb5_kdc_configuration */*config*/,
22	pk_client_params */*cp*/,
23	EncTicketPart */*tkt*/);
24
25krb5_error_code
26_kdc_as_rep(kdc_request_t r,
27	    krb5_data *reply,
28	    const char *from,
29	    struct sockaddr *from_addr,
30	    size_t max_reply_size);
31
32krb5_error_code
33_kdc_check_access(krb5_context context,
34		  krb5_kdc_configuration *config,
35		  hdb_entry_ex *client_ex, const char *client_name,
36		  hdb_entry_ex *server_ex, const char *server_name,
37		  KDC_REQ *req,
38		  METHOD_DATA *method_data);
39
40krb5_boolean
41_kdc_check_addresses (
42	krb5_context /*context*/,
43	krb5_kdc_configuration */*config*/,
44	HostAddresses */*addresses*/,
45	const struct sockaddr */*from*/);
46
47krb5_error_code
48_kdc_db_fetch (
49	krb5_context /*context*/,
50	krb5_kdc_configuration */*config*/,
51	krb5_const_principal /*principal*/,
52	unsigned /*flags*/,
53	krb5int32 */*kvno_ptr*/,
54	HDB **/*db*/,
55	hdb_entry_ex **/*h*/);
56
57krb5_error_code
58_kdc_do_digest (
59	krb5_context /*context*/,
60	krb5_kdc_configuration */*config*/,
61	const struct DigestREQ */*req*/,
62	krb5_data */*reply*/,
63	const char */*from*/,
64	struct sockaddr */*addr*/);
65
66krb5_error_code
67_kdc_do_kx509 (
68	krb5_context /*context*/,
69	krb5_kdc_configuration */*config*/,
70	const struct Kx509Request */*req*/,
71	krb5_data */*reply*/,
72	const char */*from*/,
73	struct sockaddr */*addr*/);
74
75krb5_error_code
76_kdc_encode_reply(krb5_context context,
77		  krb5_kdc_configuration *config,
78		  krb5_crypto armor_crypto,
79		  uint32_t nonce,
80		  KDC_REP *rep, EncTicketPart *et, EncKDCRepPart *ek,
81		  krb5_enctype etype,
82		  int skvno, const EncryptionKey *skey,
83		  int ckvno, const EncryptionKey *reply_key,
84		  int rk_is_subkey,
85		  const char **e_text,
86		  krb5_data *reply);
87
88krb5_error_code
89_kdc_find_etype (
90	krb5_context /*context*/,
91	krb5_boolean /*use_strongest_session_key*/,
92	krb5_boolean /*is_preauth*/,
93	hdb_entry_ex */*princ*/,
94	krb5_enctype */*etypes*/,
95	unsigned /*len*/,
96	krb5_enctype */*ret_enctype*/,
97	Key **/*ret_key*/);
98
99const PA_DATA*
100_kdc_find_padata (
101	const KDC_REQ */*req*/,
102	int */*start*/,
103	int /*type*/);
104
105void
106_kdc_fix_time (time_t **/*t*/);
107
108void
109_kdc_free_ent (
110	krb5_context /*context*/,
111	hdb_entry_ex */*ent*/);
112
113krb5_error_code
114_kdc_get_preferred_key (
115	krb5_context /*context*/,
116	krb5_kdc_configuration */*config*/,
117	hdb_entry_ex */*h*/,
118	const char */*name*/,
119	krb5_enctype */*enctype*/,
120	Key **/*key*/);
121
122krb5_boolean
123_kdc_is_anonymous (
124	krb5_context /*context*/,
125	krb5_principal /*principal*/);
126
127krb5_boolean
128_kdc_is_weak_exception (
129	krb5_principal /*principal*/,
130	krb5_enctype /*etype*/);
131
132void
133_kdc_log_timestamp (
134	krb5_context /*context*/,
135	krb5_kdc_configuration */*config*/,
136	const char */*type*/,
137	KerberosTime /*authtime*/,
138	KerberosTime */*starttime*/,
139	KerberosTime /*endtime*/,
140	KerberosTime */*renew_till*/);
141
142krb5_error_code
143_kdc_make_anonymous_principalname (PrincipalName */*pn*/);
144
145krb5_error_code
146_kdc_pac_generate (
147	krb5_context /*context*/,
148	hdb_entry_ex */*client*/,
149	krb5_pac */*pac*/);
150
151krb5_error_code
152_kdc_pac_verify (
153	krb5_context /*context*/,
154	const krb5_principal /*client_principal*/,
155	const krb5_principal /*delegated_proxy_principal*/,
156	hdb_entry_ex */*client*/,
157	hdb_entry_ex */*server*/,
158	hdb_entry_ex */*krbtgt*/,
159	krb5_pac */*pac*/,
160	int */*verified*/);
161
162krb5_error_code
163_kdc_pk_check_client(krb5_context context,
164		     krb5_kdc_configuration *config,
165		     HDB *clientdb,
166		     hdb_entry_ex *client,
167		     InitiatorName *pku2uInitiatorAssertion,
168		     pk_client_params *cp,
169		     char **subject_name);
170
171void
172_kdc_pk_free_client_param (
173	krb5_context /*context*/,
174	pk_client_params */*cp*/);
175
176krb5_error_code
177_kdc_pk_mk_pa_reply (
178	krb5_context /*context*/,
179	krb5_kdc_configuration */*config*/,
180	pk_client_params */*cp*/,
181	const hdb_entry_ex */*client*/,
182	krb5_enctype /*sessionetype*/,
183	const KDC_REQ */*req*/,
184	const krb5_data */*req_buffer*/,
185	krb5_keyblock */*reply_key*/,
186	krb5_keyblock */*sessionkey*/,
187	METHOD_DATA */*md*/);
188
189krb5_error_code
190_kdc_pk_rd_padata (
191	krb5_context /*context*/,
192	krb5_kdc_configuration */*config*/,
193	const KDC_REQ */*req*/,
194	const PA_DATA */*pa*/,
195	hdb_entry_ex */*client*/,
196	pk_client_params **/*ret_params*/);
197
198krb5_error_code
199_kdc_tgs_rep(krb5_context context,
200	     krb5_kdc_configuration *config,
201	     KDC_REQ *req,
202	     krb5_data *data,
203	     const char *from,
204	     struct sockaddr *from_addr,
205	     size_t max_reply_size);
206
207krb5_error_code
208_kdc_tkt_add_if_relevant_ad (
209	krb5_context /*context*/,
210	EncTicketPart */*tkt*/,
211	int /*type*/,
212	const krb5_data */*data*/);
213
214krb5_error_code
215_kdc_try_kx509_request (
216	void */*ptr*/,
217	size_t /*len*/,
218	struct Kx509Request */*req*/,
219	size_t */*size*/);
220
221krb5_error_code
222_kdc_fast_mk_error(krb5_context context,
223		   kdc_request_t r,
224		   METHOD_DATA *error_method,
225		   krb5_crypto armor_crypto,
226		   const KDC_REQ_BODY *req_body,
227		   krb5_error_code outer_error,
228		   const char *e_text,
229		   krb5_principal error_client,
230		   krb5_principal error_server,
231		   time_t *csec, int *cusec,
232		   krb5_data *error_msg);
233
234krb5_error_code
235_kdc_fast_mk_response(krb5_context context,
236		      krb5_crypto armor_crypto,
237		      METHOD_DATA *pa_data,
238		      krb5_keyblock *strengthen_key,
239		      KrbFastFinished *finished,
240		      krb5uint32 nonce,
241		      krb5_data *data);
242
243krb5_error_code
244_kdc_fast_unwrap_request(kdc_request_t r);
245
246#endif /* __kdc_private_h__ */
247