r19681: Update to current lorikeet-heimdal. I'm looking at using the realm
[jelmer/samba4-debian.git] / source / heimdal / lib / krb5 / krb5-private.h
1 /* This is a generated file */
2 #ifndef __krb5_private_h__
3 #define __krb5_private_h__
4
5 #include <stdarg.h>
6
7 #ifndef KRB5_LIB_FUNCTION
8 #if defined(_WIN32)
9 #define KRB5_LIB_FUNCTION _stdcall
10 #else
11 #define KRB5_LIB_FUNCTION
12 #endif
13 #endif
14
15 void KRB5_LIB_FUNCTION
16 _krb5_aes_cts_encrypt (
17         const unsigned char */*in*/,
18         unsigned char */*out*/,
19         size_t /*len*/,
20         const AES_KEY */*key*/,
21         unsigned char */*ivec*/,
22         const int /*encryptp*/);
23
24 krb5_error_code
25 _krb5_cc_allocate (
26         krb5_context /*context*/,
27         const krb5_cc_ops */*ops*/,
28         krb5_ccache */*id*/);
29
30 void
31 _krb5_crc_init_table (void);
32
33 uint32_t
34 _krb5_crc_update (
35         const char */*p*/,
36         size_t /*len*/,
37         uint32_t /*res*/);
38
39 krb5_error_code
40 _krb5_dh_group_ok (
41         krb5_context /*context*/,
42         unsigned long /*bits*/,
43         heim_integer */*p*/,
44         heim_integer */*g*/,
45         heim_integer */*q*/,
46         struct krb5_dh_moduli **/*moduli*/,
47         char **/*name*/);
48
49 krb5_error_code KRB5_LIB_FUNCTION
50 _krb5_enctype_to_oid (
51         krb5_context /*context*/,
52         krb5_enctype /*etype*/,
53         heim_oid */*oid*/);
54
55 krb5_error_code
56 _krb5_expand_default_cc_name (
57         krb5_context /*context*/,
58         const char */*str*/,
59         char **/*res*/);
60
61 int
62 _krb5_extract_ticket (
63         krb5_context /*context*/,
64         krb5_kdc_rep */*rep*/,
65         krb5_creds */*creds*/,
66         krb5_keyblock */*key*/,
67         krb5_const_pointer /*keyseed*/,
68         krb5_key_usage /*key_usage*/,
69         krb5_addresses */*addrs*/,
70         unsigned /*nonce*/,
71         krb5_boolean /*allow_server_mismatch*/,
72         krb5_boolean /*ignore_cname*/,
73         krb5_decrypt_proc /*decrypt_proc*/,
74         krb5_const_pointer /*decryptarg*/);
75
76 int
77 _krb5_find_type_in_ad (
78         krb5_context /*context*/,
79         int /*type*/,
80         krb5_data */*data*/,
81         krb5_boolean */*found*/,
82         krb5_keyblock */*sessionkey*/,
83         const AuthorizationData */*ad*/);
84
85 void
86 _krb5_free_krbhst_info (krb5_krbhst_info */*hi*/);
87
88 void
89 _krb5_free_moduli (struct krb5_dh_moduli **/*moduli*/);
90
91 krb5_error_code
92 _krb5_get_default_principal_local (
93         krb5_context /*context*/,
94         krb5_principal */*princ*/);
95
96 krb5_error_code KRB5_LIB_FUNCTION
97 _krb5_get_host_realm_int (
98         krb5_context /*context*/,
99         const char */*host*/,
100         krb5_boolean /*use_dns*/,
101         krb5_realm **/*realms*/);
102
103 krb5_error_code
104 _krb5_get_init_creds_opt_copy (
105         krb5_context /*context*/,
106         const krb5_get_init_creds_opt */*in*/,
107         krb5_get_init_creds_opt **/*out*/);
108
109 void KRB5_LIB_FUNCTION
110 _krb5_get_init_creds_opt_free_krb5_error (krb5_get_init_creds_opt */*opt*/);
111
112 void KRB5_LIB_FUNCTION
113 _krb5_get_init_creds_opt_free_pkinit (krb5_get_init_creds_opt */*opt*/);
114
115 void KRB5_LIB_FUNCTION
116 _krb5_get_init_creds_opt_set_krb5_error (
117         krb5_context /*context*/,
118         krb5_get_init_creds_opt */*opt*/,
119         const KRB_ERROR */*error*/);
120
121 krb5_ssize_t KRB5_LIB_FUNCTION
122 _krb5_get_int (
123         void */*buffer*/,
124         unsigned long */*value*/,
125         size_t /*size*/);
126
127 krb5_error_code
128 _krb5_get_krbtgt (
129         krb5_context /*context*/,
130         krb5_ccache /*id*/,
131         krb5_realm /*realm*/,
132         krb5_creds **/*cred*/);
133
134 krb5_error_code
135 _krb5_kcm_chmod (
136         krb5_context /*context*/,
137         krb5_ccache /*id*/,
138         uint16_t /*mode*/);
139
140 krb5_error_code
141 _krb5_kcm_chown (
142         krb5_context /*context*/,
143         krb5_ccache /*id*/,
144         uint32_t /*uid*/,
145         uint32_t /*gid*/);
146
147 krb5_error_code
148 _krb5_kcm_get_initial_ticket (
149         krb5_context /*context*/,
150         krb5_ccache /*id*/,
151         krb5_principal /*server*/,
152         krb5_keyblock */*key*/);
153
154 krb5_error_code
155 _krb5_kcm_get_ticket (
156         krb5_context /*context*/,
157         krb5_ccache /*id*/,
158         krb5_kdc_flags /*flags*/,
159         krb5_enctype /*enctype*/,
160         krb5_principal /*server*/);
161
162 krb5_boolean
163 _krb5_kcm_is_running (krb5_context /*context*/);
164
165 krb5_error_code
166 _krb5_kcm_noop (
167         krb5_context /*context*/,
168         krb5_ccache /*id*/);
169
170 krb5_error_code KRB5_LIB_FUNCTION
171 _krb5_krb_cr_err_reply (
172         krb5_context /*context*/,
173         const char */*name*/,
174         const char */*inst*/,
175         const char */*realm*/,
176         uint32_t /*time_ws*/,
177         uint32_t /*e*/,
178         const char */*e_string*/,
179         krb5_data */*data*/);
180
181 krb5_error_code KRB5_LIB_FUNCTION
182 _krb5_krb_create_auth_reply (
183         krb5_context /*context*/,
184         const char */*pname*/,
185         const char */*pinst*/,
186         const char */*prealm*/,
187         int32_t /*time_ws*/,
188         int /*n*/,
189         uint32_t /*x_date*/,
190         unsigned char /*kvno*/,
191         const krb5_data */*cipher*/,
192         krb5_data */*data*/);
193
194 krb5_error_code KRB5_LIB_FUNCTION
195 _krb5_krb_create_ciph (
196         krb5_context /*context*/,
197         const krb5_keyblock */*session*/,
198         const char */*service*/,
199         const char */*instance*/,
200         const char */*realm*/,
201         uint32_t /*life*/,
202         unsigned char /*kvno*/,
203         const krb5_data */*ticket*/,
204         uint32_t /*kdc_time*/,
205         const krb5_keyblock */*key*/,
206         krb5_data */*enc_data*/);
207
208 krb5_error_code KRB5_LIB_FUNCTION
209 _krb5_krb_create_ticket (
210         krb5_context /*context*/,
211         unsigned char /*flags*/,
212         const char */*pname*/,
213         const char */*pinstance*/,
214         const char */*prealm*/,
215         int32_t /*paddress*/,
216         const krb5_keyblock */*session*/,
217         int16_t /*life*/,
218         int32_t /*life_sec*/,
219         const char */*sname*/,
220         const char */*sinstance*/,
221         const krb5_keyblock */*key*/,
222         krb5_data */*enc_data*/);
223
224 krb5_error_code KRB5_LIB_FUNCTION
225 _krb5_krb_decomp_ticket (
226         krb5_context /*context*/,
227         const krb5_data */*enc_ticket*/,
228         const krb5_keyblock */*key*/,
229         const char */*local_realm*/,
230         char **/*sname*/,
231         char **/*sinstance*/,
232         struct _krb5_krb_auth_data */*ad*/);
233
234 krb5_error_code KRB5_LIB_FUNCTION
235 _krb5_krb_dest_tkt (
236         krb5_context /*context*/,
237         const char */*tkfile*/);
238
239 void KRB5_LIB_FUNCTION
240 _krb5_krb_free_auth_data (
241         krb5_context /*context*/,
242         struct _krb5_krb_auth_data */*ad*/);
243
244 time_t KRB5_LIB_FUNCTION
245 _krb5_krb_life_to_time (
246         int /*start*/,
247         int /*life_*/);
248
249 krb5_error_code KRB5_LIB_FUNCTION
250 _krb5_krb_rd_req (
251         krb5_context /*context*/,
252         krb5_data */*authent*/,
253         const char */*service*/,
254         const char */*instance*/,
255         const char */*local_realm*/,
256         int32_t /*from_addr*/,
257         const krb5_keyblock */*key*/,
258         struct _krb5_krb_auth_data */*ad*/);
259
260 krb5_error_code KRB5_LIB_FUNCTION
261 _krb5_krb_tf_setup (
262         krb5_context /*context*/,
263         struct credentials */*v4creds*/,
264         const char */*tkfile*/,
265         int /*append*/);
266
267 int KRB5_LIB_FUNCTION
268 _krb5_krb_time_to_life (
269         time_t /*start*/,
270         time_t /*end*/);
271
272 krb5_error_code
273 _krb5_krbhost_info_move (
274         krb5_context /*context*/,
275         krb5_krbhst_info */*from*/,
276         krb5_krbhst_info **/*to*/);
277
278 krb5_error_code
279 _krb5_mk_req_internal (
280         krb5_context /*context*/,
281         krb5_auth_context */*auth_context*/,
282         const krb5_flags /*ap_req_options*/,
283         krb5_data */*in_data*/,
284         krb5_creds */*in_creds*/,
285         krb5_data */*outbuf*/,
286         krb5_key_usage /*checksum_usage*/,
287         krb5_key_usage /*encrypt_usage*/);
288
289 void KRB5_LIB_FUNCTION
290 _krb5_n_fold (
291         const void */*str*/,
292         size_t /*len*/,
293         void */*key*/,
294         size_t /*size*/);
295
296 krb5_error_code KRB5_LIB_FUNCTION
297 _krb5_oid_to_enctype (
298         krb5_context /*context*/,
299         const heim_oid */*oid*/,
300         krb5_enctype */*etype*/);
301
302 void
303 _krb5_pac_free (
304         krb5_context /*context*/,
305         struct krb5_pac */*pac*/);
306
307 krb5_error_code
308 _krb5_pac_parse (
309         krb5_context /*context*/,
310         const void */*ptr*/,
311         size_t /*len*/,
312         struct krb5_pac **/*pac*/);
313
314 krb5_error_code
315 _krb5_pac_sign (
316         krb5_context /*context*/,
317         struct krb5_pac */*p*/,
318         time_t /*authtime*/,
319         krb5_principal /*principal*/,
320         krb5_keyblock */*server_key*/,
321         krb5_keyblock */*priv_key*/,
322         krb5_data */*data*/);
323
324 krb5_error_code
325 _krb5_pac_verify (
326         krb5_context /*context*/,
327         struct krb5_pac */*pac*/,
328         time_t /*authtime*/,
329         krb5_principal /*principal*/,
330         krb5_keyblock */*server*/,
331         krb5_keyblock */*privsvr*/);
332
333 krb5_error_code
334 _krb5_parse_moduli (
335         krb5_context /*context*/,
336         const char */*file*/,
337         struct krb5_dh_moduli ***/*moduli*/);
338
339 krb5_error_code
340 _krb5_parse_moduli_line (
341         krb5_context /*context*/,
342         const char */*file*/,
343         int /*lineno*/,
344         char */*p*/,
345         struct krb5_dh_moduli **/*m*/);
346
347 void KRB5_LIB_FUNCTION
348 _krb5_pk_allow_proxy_certificate (
349         struct krb5_pk_identity */*id*/,
350         int /*boolean*/);
351
352 void KRB5_LIB_FUNCTION
353 _krb5_pk_cert_free (struct krb5_pk_cert */*cert*/);
354
355 krb5_error_code KRB5_LIB_FUNCTION
356 _krb5_pk_load_id (
357         krb5_context /*context*/,
358         struct krb5_pk_identity **/*ret_id*/,
359         const char */*user_id*/,
360         const char */*anchor_id*/,
361         char * const */*chain_list*/,
362         char * const */*revoke_list*/,
363         krb5_prompter_fct /*prompter*/,
364         void */*prompter_data*/,
365         char */*password*/);
366
367 krb5_error_code KRB5_LIB_FUNCTION
368 _krb5_pk_mk_ContentInfo (
369         krb5_context /*context*/,
370         const krb5_data */*buf*/,
371         const heim_oid */*oid*/,
372         struct ContentInfo */*content_info*/);
373
374 krb5_error_code KRB5_LIB_FUNCTION
375 _krb5_pk_mk_padata (
376         krb5_context /*context*/,
377         void */*c*/,
378         const KDC_REQ_BODY */*req_body*/,
379         unsigned /*nonce*/,
380         METHOD_DATA */*md*/);
381
382 krb5_error_code
383 _krb5_pk_octetstring2key (
384         krb5_context /*context*/,
385         krb5_enctype /*type*/,
386         const void */*dhdata*/,
387         size_t /*dhsize*/,
388         const heim_octet_string */*c_n*/,
389         const heim_octet_string */*k_n*/,
390         krb5_keyblock */*key*/);
391
392 krb5_error_code KRB5_LIB_FUNCTION
393 _krb5_pk_rd_pa_reply (
394         krb5_context /*context*/,
395         const char */*realm*/,
396         void */*c*/,
397         krb5_enctype /*etype*/,
398         const krb5_krbhst_info */*hi*/,
399         unsigned /*nonce*/,
400         const krb5_data */*req_buffer*/,
401         PA_DATA */*pa*/,
402         krb5_keyblock **/*key*/);
403
404 krb5_error_code KRB5_LIB_FUNCTION
405 _krb5_pk_verify_sign (
406         krb5_context /*context*/,
407         const void */*data*/,
408         size_t /*length*/,
409         struct krb5_pk_identity */*id*/,
410         heim_oid */*contentType*/,
411         krb5_data */*content*/,
412         struct krb5_pk_cert **/*signer*/);
413
414 krb5_error_code
415 _krb5_plugin_find (
416         krb5_context /*context*/,
417         enum plugin_type /*type*/,
418         const char */*name*/,
419         struct krb5_plugin **/*list*/);
420
421 void
422 _krb5_plugin_free (struct krb5_plugin */*list*/);
423
424 struct krb5_plugin *
425 _krb5_plugin_get_next (struct krb5_plugin */*p*/);
426
427 void *
428 _krb5_plugin_get_symbol (struct krb5_plugin */*p*/);
429
430 krb5_error_code
431 _krb5_plugin_register (
432         krb5_context /*context*/,
433         enum plugin_type /*type*/,
434         const char */*name*/,
435         void */*symbol*/);
436
437 krb5_error_code KRB5_LIB_FUNCTION
438 _krb5_principal2principalname (
439         PrincipalName */*p*/,
440         const krb5_principal /*from*/);
441
442 krb5_error_code KRB5_LIB_FUNCTION
443 _krb5_principalname2krb5_principal (
444         krb5_context /*context*/,
445         krb5_principal */*principal*/,
446         const PrincipalName /*from*/,
447         const Realm /*realm*/);
448
449 krb5_ssize_t KRB5_LIB_FUNCTION
450 _krb5_put_int (
451         void */*buffer*/,
452         unsigned long /*value*/,
453         size_t /*size*/);
454
455 krb5_error_code KRB5_LIB_FUNCTION
456 _krb5_rd_req_out_ctx_alloc (
457         krb5_context /*context*/,
458         krb5_rd_req_out_ctx */*ctx*/);
459
460 krb5_error_code KRB5_LIB_FUNCTION
461 _krb5_s4u2self_to_checksumdata (
462         krb5_context /*context*/,
463         const PA_S4U2Self */*self*/,
464         krb5_data */*data*/);
465
466 int
467 _krb5_send_and_recv_tcp (
468         int /*fd*/,
469         time_t /*tmout*/,
470         const krb5_data */*req*/,
471         krb5_data */*rep*/);
472
473 int
474 _krb5_xlock (
475         krb5_context /*context*/,
476         int /*fd*/,
477         krb5_boolean /*exclusive*/,
478         const char */*filename*/);
479
480 int
481 _krb5_xunlock (
482         krb5_context /*context*/,
483         int /*fd*/);
484
485 #endif /* __krb5_private_h__ */