xref: /freebsd/crypto/krb5/doc/appdev/refs/api/index.rst (revision 7f2fe78b9dd5f51c821d771b63d2e096f6fd49e9)
1krb5 API
2========
3
4
5Frequently used public interfaces
6----------------------------------
7
8.. toctree::
9   :maxdepth: 1
10
11   krb5_build_principal.rst
12   krb5_build_principal_alloc_va.rst
13   krb5_build_principal_ext.rst
14   krb5_cc_close.rst
15   krb5_cc_default.rst
16   krb5_cc_default_name.rst
17   krb5_cc_destroy.rst
18   krb5_cc_dup.rst
19   krb5_cc_get_name.rst
20   krb5_cc_get_principal.rst
21   krb5_cc_get_type.rst
22   krb5_cc_initialize.rst
23   krb5_cc_new_unique.rst
24   krb5_cc_resolve.rst
25   krb5_change_password.rst
26   krb5_chpw_message.rst
27   krb5_expand_hostname.rst
28   krb5_free_context.rst
29   krb5_free_error_message.rst
30   krb5_free_principal.rst
31   krb5_fwd_tgt_creds.rst
32   krb5_get_default_realm.rst
33   krb5_get_error_message.rst
34   krb5_get_host_realm.rst
35   krb5_get_credentials.rst
36   krb5_get_fallback_host_realm.rst
37   krb5_get_init_creds_keytab.rst
38   krb5_get_init_creds_opt_alloc.rst
39   krb5_get_init_creds_opt_free.rst
40   krb5_get_init_creds_opt_get_fast_flags.rst
41   krb5_get_init_creds_opt_set_address_list.rst
42   krb5_get_init_creds_opt_set_anonymous.rst
43   krb5_get_init_creds_opt_set_canonicalize.rst
44   krb5_get_init_creds_opt_set_change_password_prompt.rst
45   krb5_get_init_creds_opt_set_etype_list.rst
46   krb5_get_init_creds_opt_set_expire_callback.rst
47   krb5_get_init_creds_opt_set_fast_ccache.rst
48   krb5_get_init_creds_opt_set_fast_ccache_name.rst
49   krb5_get_init_creds_opt_set_fast_flags.rst
50   krb5_get_init_creds_opt_set_forwardable.rst
51   krb5_get_init_creds_opt_set_in_ccache.rst
52   krb5_get_init_creds_opt_set_out_ccache.rst
53   krb5_get_init_creds_opt_set_pa.rst
54   krb5_get_init_creds_opt_set_pac_request.rst
55   krb5_get_init_creds_opt_set_preauth_list.rst
56   krb5_get_init_creds_opt_set_proxiable.rst
57   krb5_get_init_creds_opt_set_renew_life.rst
58   krb5_get_init_creds_opt_set_responder.rst
59   krb5_get_init_creds_opt_set_salt.rst
60   krb5_get_init_creds_opt_set_tkt_life.rst
61   krb5_get_init_creds_password.rst
62   krb5_get_profile.rst
63   krb5_get_prompt_types.rst
64   krb5_get_renewed_creds.rst
65   krb5_get_validated_creds.rst
66   krb5_init_context.rst
67   krb5_init_secure_context.rst
68   krb5_is_config_principal.rst
69   krb5_is_thread_safe.rst
70   krb5_kt_close.rst
71   krb5_kt_client_default.rst
72   krb5_kt_default.rst
73   krb5_kt_default_name.rst
74   krb5_kt_dup.rst
75   krb5_kt_get_name.rst
76   krb5_kt_get_type.rst
77   krb5_kt_resolve.rst
78   krb5_kuserok.rst
79   krb5_parse_name.rst
80   krb5_parse_name_flags.rst
81   krb5_principal_compare.rst
82   krb5_principal_compare_any_realm.rst
83   krb5_principal_compare_flags.rst
84   krb5_prompter_posix.rst
85   krb5_realm_compare.rst
86   krb5_responder_get_challenge.rst
87   krb5_responder_list_questions.rst
88   krb5_responder_set_answer.rst
89   krb5_responder_otp_get_challenge.rst
90   krb5_responder_otp_set_answer.rst
91   krb5_responder_otp_challenge_free.rst
92   krb5_responder_pkinit_get_challenge.rst
93   krb5_responder_pkinit_set_answer.rst
94   krb5_responder_pkinit_challenge_free.rst
95   krb5_set_default_realm.rst
96   krb5_set_password.rst
97   krb5_set_password_using_ccache.rst
98   krb5_set_principal_realm.rst
99   krb5_set_trace_callback.rst
100   krb5_set_trace_filename.rst
101   krb5_sname_match.rst
102   krb5_sname_to_principal.rst
103   krb5_unparse_name.rst
104   krb5_unparse_name_ext.rst
105   krb5_unparse_name_flags.rst
106   krb5_unparse_name_flags_ext.rst
107   krb5_us_timeofday.rst
108   krb5_verify_authdata_kdc_issued.rst
109
110Rarely used public interfaces
111--------------------------------
112
113.. toctree::
114   :maxdepth: 1
115
116   krb5_425_conv_principal.rst
117   krb5_524_conv_principal.rst
118   krb5_address_compare.rst
119   krb5_address_order.rst
120   krb5_address_search.rst
121   krb5_allow_weak_crypto.rst
122   krb5_aname_to_localname.rst
123   krb5_anonymous_principal.rst
124   krb5_anonymous_realm.rst
125   krb5_appdefault_boolean.rst
126   krb5_appdefault_string.rst
127   krb5_auth_con_free.rst
128   krb5_auth_con_genaddrs.rst
129   krb5_auth_con_get_checksum_func.rst
130   krb5_auth_con_getaddrs.rst
131   krb5_auth_con_getauthenticator.rst
132   krb5_auth_con_getflags.rst
133   krb5_auth_con_getkey.rst
134   krb5_auth_con_getkey_k.rst
135   krb5_auth_con_getlocalseqnumber.rst
136   krb5_auth_con_getrcache.rst
137   krb5_auth_con_getrecvsubkey.rst
138   krb5_auth_con_getrecvsubkey_k.rst
139   krb5_auth_con_getremoteseqnumber.rst
140   krb5_auth_con_getsendsubkey.rst
141   krb5_auth_con_getsendsubkey_k.rst
142   krb5_auth_con_init.rst
143   krb5_auth_con_set_checksum_func.rst
144   krb5_auth_con_set_req_cksumtype.rst
145   krb5_auth_con_setaddrs.rst
146   krb5_auth_con_setflags.rst
147   krb5_auth_con_setports.rst
148   krb5_auth_con_setrcache.rst
149   krb5_auth_con_setrecvsubkey.rst
150   krb5_auth_con_setrecvsubkey_k.rst
151   krb5_auth_con_setsendsubkey.rst
152   krb5_auth_con_setsendsubkey_k.rst
153   krb5_auth_con_setuseruserkey.rst
154   krb5_cc_cache_match.rst
155   krb5_cc_copy_creds.rst
156   krb5_cc_end_seq_get.rst
157   krb5_cc_get_config.rst
158   krb5_cc_get_flags.rst
159   krb5_cc_get_full_name.rst
160   krb5_cc_move.rst
161   krb5_cc_next_cred.rst
162   krb5_cc_remove_cred.rst
163   krb5_cc_retrieve_cred.rst
164   krb5_cc_select.rst
165   krb5_cc_set_config.rst
166   krb5_cc_set_default_name.rst
167   krb5_cc_set_flags.rst
168   krb5_cc_start_seq_get.rst
169   krb5_cc_store_cred.rst
170   krb5_cc_support_switch.rst
171   krb5_cc_switch.rst
172   krb5_cccol_cursor_free.rst
173   krb5_cccol_cursor_new.rst
174   krb5_cccol_cursor_next.rst
175   krb5_cccol_have_content.rst
176   krb5_clear_error_message.rst
177   krb5_check_clockskew.rst
178   krb5_copy_addresses.rst
179   krb5_copy_authdata.rst
180   krb5_copy_authenticator.rst
181   krb5_copy_checksum.rst
182   krb5_copy_context.rst
183   krb5_copy_creds.rst
184   krb5_copy_data.rst
185   krb5_copy_error_message.rst
186   krb5_copy_keyblock.rst
187   krb5_copy_keyblock_contents.rst
188   krb5_copy_principal.rst
189   krb5_copy_ticket.rst
190   krb5_find_authdata.rst
191   krb5_free_addresses.rst
192   krb5_free_ap_rep_enc_part.rst
193   krb5_free_authdata.rst
194   krb5_free_authenticator.rst
195   krb5_free_cred_contents.rst
196   krb5_free_creds.rst
197   krb5_free_data.rst
198   krb5_free_data_contents.rst
199   krb5_free_default_realm.rst
200   krb5_free_enctypes.rst
201   krb5_free_error.rst
202   krb5_free_host_realm.rst
203   krb5_free_keyblock.rst
204   krb5_free_keyblock_contents.rst
205   krb5_free_keytab_entry_contents.rst
206   krb5_free_string.rst
207   krb5_free_ticket.rst
208   krb5_free_unparsed_name.rst
209   krb5_get_etype_info.rst
210   krb5_get_permitted_enctypes.rst
211   krb5_get_server_rcache.rst
212   krb5_get_time_offsets.rst
213   krb5_init_context_profile.rst
214   krb5_init_creds_free.rst
215   krb5_init_creds_get.rst
216   krb5_init_creds_get_creds.rst
217   krb5_init_creds_get_error.rst
218   krb5_init_creds_get_times.rst
219   krb5_init_creds_init.rst
220   krb5_init_creds_set_keytab.rst
221   krb5_init_creds_set_password.rst
222   krb5_init_creds_set_service.rst
223   krb5_init_creds_step.rst
224   krb5_init_keyblock.rst
225   krb5_is_referral_realm.rst
226   krb5_kdc_sign_ticket.rst
227   krb5_kdc_verify_ticket.rst
228   krb5_kt_add_entry.rst
229   krb5_kt_end_seq_get.rst
230   krb5_kt_get_entry.rst
231   krb5_kt_have_content.rst
232   krb5_kt_next_entry.rst
233   krb5_kt_read_service_key.rst
234   krb5_kt_remove_entry.rst
235   krb5_kt_start_seq_get.rst
236   krb5_make_authdata_kdc_issued.rst
237   krb5_marshal_credentials.rst
238   krb5_merge_authdata.rst
239   krb5_mk_1cred.rst
240   krb5_mk_error.rst
241   krb5_mk_ncred.rst
242   krb5_mk_priv.rst
243   krb5_mk_rep.rst
244   krb5_mk_rep_dce.rst
245   krb5_mk_req.rst
246   krb5_mk_req_extended.rst
247   krb5_mk_safe.rst
248   krb5_os_localaddr.rst
249   krb5_pac_add_buffer.rst
250   krb5_pac_free.rst
251   krb5_pac_get_buffer.rst
252   krb5_pac_get_types.rst
253   krb5_pac_init.rst
254   krb5_pac_parse.rst
255   krb5_pac_sign.rst
256   krb5_pac_sign_ext.rst
257   krb5_pac_verify.rst
258   krb5_pac_verify_ext.rst
259   krb5_pac_get_client_info.rst
260   krb5_prepend_error_message.rst
261   krb5_principal2salt.rst
262   krb5_rd_cred.rst
263   krb5_rd_error.rst
264   krb5_rd_priv.rst
265   krb5_rd_rep.rst
266   krb5_rd_rep_dce.rst
267   krb5_rd_req.rst
268   krb5_rd_safe.rst
269   krb5_read_password.rst
270   krb5_salttype_to_string.rst
271   krb5_server_decrypt_ticket_keytab.rst
272   krb5_set_default_tgs_enctypes.rst
273   krb5_set_error_message.rst
274   krb5_set_kdc_recv_hook.rst
275   krb5_set_kdc_send_hook.rst
276   krb5_set_real_time.rst
277   krb5_string_to_cksumtype.rst
278   krb5_string_to_deltat.rst
279   krb5_string_to_enctype.rst
280   krb5_string_to_salttype.rst
281   krb5_string_to_timestamp.rst
282   krb5_timeofday.rst
283   krb5_timestamp_to_sfstring.rst
284   krb5_timestamp_to_string.rst
285   krb5_tkt_creds_free.rst
286   krb5_tkt_creds_get.rst
287   krb5_tkt_creds_get_creds.rst
288   krb5_tkt_creds_get_times.rst
289   krb5_tkt_creds_init.rst
290   krb5_tkt_creds_step.rst
291   krb5_unmarshal_credentials.rst
292   krb5_verify_init_creds.rst
293   krb5_verify_init_creds_opt_init.rst
294   krb5_verify_init_creds_opt_set_ap_req_nofail.rst
295   krb5_vprepend_error_message.rst
296   krb5_vset_error_message.rst
297   krb5_vwrap_error_message.rst
298   krb5_wrap_error_message.rst
299
300
301Public interfaces that should not be called directly
302-------------------------------------------------------
303
304.. toctree::
305   :maxdepth: 1
306
307   krb5_c_block_size.rst
308   krb5_c_checksum_length.rst
309   krb5_c_crypto_length.rst
310   krb5_c_crypto_length_iov.rst
311   krb5_c_decrypt.rst
312   krb5_c_decrypt_iov.rst
313   krb5_c_derive_prfplus.rst
314   krb5_c_encrypt.rst
315   krb5_c_encrypt_iov.rst
316   krb5_c_encrypt_length.rst
317   krb5_c_enctype_compare.rst
318   krb5_c_free_state.rst
319   krb5_c_fx_cf2_simple.rst
320   krb5_c_init_state.rst
321   krb5_c_is_coll_proof_cksum.rst
322   krb5_c_is_keyed_cksum.rst
323   krb5_c_keyed_checksum_types.rst
324   krb5_c_keylengths.rst
325   krb5_c_make_checksum.rst
326   krb5_c_make_checksum_iov.rst
327   krb5_c_make_random_key.rst
328   krb5_c_padding_length.rst
329   krb5_c_prf.rst
330   krb5_c_prfplus.rst
331   krb5_c_prf_length.rst
332   krb5_c_random_add_entropy.rst
333   krb5_c_random_make_octets.rst
334   krb5_c_random_os_entropy.rst
335   krb5_c_random_to_key.rst
336   krb5_c_string_to_key.rst
337   krb5_c_string_to_key_with_params.rst
338   krb5_c_valid_cksumtype.rst
339   krb5_c_valid_enctype.rst
340   krb5_c_verify_checksum.rst
341   krb5_c_verify_checksum_iov.rst
342   krb5_cksumtype_to_string.rst
343   krb5_decode_authdata_container.rst
344   krb5_decode_ticket.rst
345   krb5_deltat_to_string.rst
346   krb5_encode_authdata_container.rst
347   krb5_enctype_to_name.rst
348   krb5_enctype_to_string.rst
349   krb5_free_checksum.rst
350   krb5_free_checksum_contents.rst
351   krb5_free_cksumtypes.rst
352   krb5_free_tgt_creds.rst
353   krb5_k_create_key.rst
354   krb5_k_decrypt.rst
355   krb5_k_decrypt_iov.rst
356   krb5_k_encrypt.rst
357   krb5_k_encrypt_iov.rst
358   krb5_k_free_key.rst
359   krb5_k_key_enctype.rst
360   krb5_k_key_keyblock.rst
361   krb5_k_make_checksum.rst
362   krb5_k_make_checksum_iov.rst
363   krb5_k_prf.rst
364   krb5_k_reference_key.rst
365   krb5_k_verify_checksum.rst
366   krb5_k_verify_checksum_iov.rst
367
368
369Legacy convenience interfaces
370------------------------------
371
372.. toctree::
373   :maxdepth: 1
374
375   krb5_recvauth.rst
376   krb5_recvauth_version.rst
377   krb5_sendauth.rst
378
379
380Deprecated public interfaces
381------------------------------
382
383.. toctree::
384   :maxdepth: 1
385
386   krb5_524_convert_creds.rst
387   krb5_auth_con_getlocalsubkey.rst
388   krb5_auth_con_getremotesubkey.rst
389   krb5_auth_con_initivector.rst
390   krb5_build_principal_va.rst
391   krb5_c_random_seed.rst
392   krb5_calculate_checksum.rst
393   krb5_checksum_size.rst
394   krb5_encrypt.rst
395   krb5_decrypt.rst
396   krb5_eblock_enctype.rst
397   krb5_encrypt_size.rst
398   krb5_finish_key.rst
399   krb5_finish_random_key.rst
400   krb5_cc_gen_new.rst
401   krb5_get_credentials_renew.rst
402   krb5_get_credentials_validate.rst
403   krb5_get_in_tkt_with_password.rst
404   krb5_get_in_tkt_with_skey.rst
405   krb5_get_in_tkt_with_keytab.rst
406   krb5_get_init_creds_opt_init.rst
407   krb5_init_random_key.rst
408   krb5_kt_free_entry.rst
409   krb5_random_key.rst
410   krb5_process_key.rst
411   krb5_string_to_key.rst
412   krb5_use_enctype.rst
413   krb5_verify_checksum.rst
414