sym_krb5.c
1 struct krb5_dh_moduli; 2 struct _krb5_krb_auth_data; 3 struct AlgorithmIdentifier; 4 struct _krb5_key_data; 5 struct _krb5_checksum_type; 6 struct _krb5_key_type; 7 struct _krb5_encryption_type; 8 struct _krb5_srv_query_ctx; 9 struct krb5_fast_state; 10 struct _krb5_srp_group; 11 struct _krb5_srp; 12 13 #define KRB5_DEPRECATED 14 #define KRB5_DEPRECATED_FUNCTION(x) 15 #define GSSAPI_DEPRECATED 16 #define HC_DEPRECATED 17 #define HC_DEPRECATED_CRYPTO 18 #define GSSAPI_DEPRECATED_FUNCTION(x) 19 20 #include <config.h> 21 #include <krb5.h> 22 #include <krb5cf-protos.h> 23 #include <krb5_asn1.h> 24 #include "crypto-headers.h" 25 #include <gssapi_rewrite.h> 26 #include <GSS.h> 27 #include <GSSPrivate.h> 28 #include <gssapi.h> 29 #include <gssapi_krb5.h> 30 #include <gssapi_scram.h> 31 #include <gssapi_spnego.h> 32 #include <gssapi_ntlm.h> 33 #include <gssapi_netlogon.h> 34 #include <gssapi_apple.h> 35 #include <gssapi_spi.h> 36 #include <GSSItem.h> 37 #include <heimbase.h> 38 #include <heimbasepriv.h> 39 #include <hx509.h> 40 #include <krb5-private.h> 41 #include <roken.h> 42 #include <rtbl.h> 43 #include <parse_bytes.h> 44 #include <krb5_err.h> 45 #include <heim_err.h> 46 #include <krb_err.h> 47 #include <hdb_err.h> 48 #include <hx509_err.h> 49 #include <heim-ipc.h> 50 #include <wind.h> 51 #include <parse_units.h> 52 #include <parse_time.h> 53 #include <base64.h> 54 #include <hex.h> 55 #include <com_err.h> 56 #include <der.h> 57 #include <rfc2459_asn1.h> 58 #include <cms_asn1.h> 59 #include <spnego_asn1.h> 60 #include <gkrb5_err.h> 61 #include <heimcred.h> 62 63 krb5_error_code _gsskrb5_init (krb5_context *); 64 65 extern int _krb5_AES_string_to_default_iterator; 66 67 struct hx509_collector; 68 struct hx_expr; 69 struct hx509_generate_private_context; 70 struct hx509_keyset_ops; 71 typedef struct hx509_path hx509_path; 72 typedef void (*_hx509_cert_release_func)(struct hx509_cert_data *, void *); 73 74 #include <hx509-private.h> 75 76 extern const void *krb5_sym_export[]; 77 78 #pragma clang diagnostic push 79 #pragma clang diagnostic ignored "-Wdeprecated-declarations" 80 const void *krb5_sym_export[] = { 81 (const void *)&_krb5_AES_string_to_default_iterator, 82 (const void *)&asn1_TicketFlags_table_units, 83 (const void *)&krb5_cc_type_api, 84 (const void *)&krb5_cc_type_file, 85 (const void *)&krb5_cc_type_kcm, 86 (const void *)&krb5_cc_type_memory, 87 (const void *)&krb5_cc_type_kcc, 88 (const void *)&krb5_fcc_ops, 89 #ifdef HEIM_KRB5_ARCFOUR 90 (const void *)&krb5_heim_use_broken_arcfour_string2key, 91 #endif 92 #if HAVE_XCC 93 (const void *)&krb5_xcc_ops, 94 (const void *)&krb5_xcc_api_ops, 95 (const void *)&krb5_xcc_temp_api_ops, 96 (const void *)_krb5_xcc_get_initial_ticket, 97 #endif 98 (const void *)&krb5_mcc_ops, 99 (const void *)_krb5_build_authenticator, 100 (const void *)_krb5_crc_init_table, 101 (const void *)_krb5_crc_update, 102 (const void *)_krb5_expand_default_cc_name, 103 (const void *)_krb5_get_host_realm_int, 104 (const void *)krb5_get_init_creds_opt_set_pkinit_user_cert, 105 (const void *)_krb5_get_init_creds_opt_set_pkinit_user_cert, 106 (const void *)_krb5_get_int, 107 (const void *)_krb5_get_krbtgt, 108 (const void *)_krb5_have_debug, 109 (const void *)_krb5_debug_keyblock, 110 (const void *)_krb5_init_creds_set_pku2u, 111 #ifdef HAVE_KCM 112 (const void *)_krb5_kcm_get_initial_ticket, 113 (const void *)_krb5_kcm_get_status, 114 (const void *)krb5_kcm_ntlm_challenge, 115 (const void *)krb5_kcm_check_ntlm_challenge, 116 #endif 117 (const void *)_krb5_pac_sign, 118 (const void *)_krb5_plugin_find, 119 (const void *)_krb5_plugin_free, 120 (const void *)_krb5_plugin_get_next, 121 (const void *)_krb5_plugin_get_symbol, 122 (const void *)_krb5_principal2principalname, 123 (const void *)_krb5_principalname2krb5_principal, 124 (const void *)_krb5_put_int, 125 (const void *)_krb5_s4u2self_to_checksumdata, 126 (const void *)com_err, 127 (const void *)com_err_va, 128 (const void *)com_right, 129 (const void *)com_right_r, 130 (const void *)error_message, 131 (const void *)heim_ipc_call, 132 (const void *)heim_ipc_free_context, 133 (const void *)heim_ipc_free_data, 134 (const void *)heim_ipc_init_context, 135 (const void *)init_error_table, 136 (const void *)initialize_asn1_error_table, 137 (const void *)initialize_asn1_error_table_r, 138 (const void *)initialize_error_table_r, 139 (const void *)initialize_gk5_error_table, 140 (const void *)initialize_gk5_error_table_r, 141 (const void *)initialize_hdb_error_table_r, 142 (const void *)initialize_heim_error_table, 143 (const void *)initialize_heim_error_table_r, 144 (const void *)initialize_hx_error_table, 145 (const void *)initialize_hx_error_table_r, 146 (const void *)initialize_k524_error_table, 147 (const void *)initialize_k524_error_table_r, 148 (const void *)initialize_krb_error_table, 149 (const void *)initialize_krb_error_table_r, 150 (const void *)initialize_krb5_error_table, 151 (const void *)initialize_krb5_error_table_r, 152 (const void *)initialize_krb_error_table, 153 (const void *)initialize_krb_error_table_r, 154 (const void *)initialize_wind_error_table, 155 (const void *)initialize_wind_error_table_r, 156 (const void *)krb5_abort, 157 (const void *)krb5_abortx, 158 (const void *)krb5_add_et_list, 159 (const void *)krb5_add_extra_addresses, 160 (const void *)krb5_add_ignore_addresses, 161 (const void *)krb5_addlog_dest, 162 (const void *)krb5_addlog_func, 163 (const void *)krb5_addr2sockaddr, 164 (const void *)krb5_address_compare, 165 (const void *)krb5_address_order, 166 (const void *)krb5_address_prefixlen_boundary, 167 (const void *)krb5_address_search, 168 (const void *)krb5_aname_to_localname, 169 (const void *)krb5_anyaddr, 170 (const void *)krb5_appdefault_boolean, 171 (const void *)krb5_appdefault_string, 172 (const void *)krb5_appdefault_time, 173 (const void *)krb5_append_addresses, 174 (const void *)krb5_auth_con_addflags, 175 (const void *)krb5_auth_con_add_AuthorizationData, 176 (const void *)krb5_auth_con_free, 177 (const void *)krb5_auth_con_genaddrs, 178 (const void *)krb5_auth_con_generatelocalsubkey, 179 (const void *)krb5_auth_con_getaddrs, 180 (const void *)krb5_auth_con_getauthenticator, 181 (const void *)krb5_auth_con_getcksumtype, 182 (const void *)krb5_auth_con_getflags, 183 (const void *)krb5_auth_con_getkey, 184 (const void *)krb5_auth_con_getkeytype, 185 (const void *)krb5_auth_con_getlocalseqnumber, 186 (const void *)krb5_auth_con_getlocalsubkey, 187 (const void *)krb5_auth_con_getrcache, 188 (const void *)krb5_auth_con_getremoteseqnumber, 189 (const void *)krb5_auth_con_getremotesubkey, 190 (const void *)_krb5_auth_con_setup_pfs, 191 (const void *)krb5_auth_con_init, 192 (const void *)krb5_auth_con_removeflags, 193 (const void *)krb5_auth_con_setaddrs, 194 (const void *)krb5_auth_con_setaddrs_from_fd, 195 (const void *)krb5_auth_con_setcksumtype, 196 (const void *)krb5_auth_con_setflags, 197 (const void *)krb5_auth_con_setkey, 198 (const void *)krb5_auth_con_setkeytype, 199 (const void *)krb5_auth_con_setlocalseqnumber, 200 (const void *)krb5_auth_con_setlocalsubkey, 201 (const void *)krb5_auth_con_setrcache, 202 (const void *)krb5_auth_con_setremoteseqnumber, 203 (const void *)krb5_auth_con_setremotesubkey, 204 (const void *)krb5_auth_con_setuserkey, 205 (const void *)_krb5_get_ad, 206 (const void *)krb5_build_ap_req, 207 (const void *)krb5_build_principal, 208 (const void *)krb5_build_principal_ext, 209 (const void *)krb5_build_principal_va, 210 (const void *)krb5_build_principal_va_ext, 211 (const void *)krb5_cc_cache_end_seq_get, 212 (const void *)krb5_cc_cache_get_first, 213 (const void *)krb5_cc_cache_match, 214 (const void *)krb5_cc_cache_next, 215 (const void *)krb5_cc_clear_mcred, 216 (const void *)krb5_cc_close, 217 (const void *)krb5_cc_copy_cache, 218 (const void *)krb5_cc_copy_match_f, 219 (const void *)krb5_cc_default, 220 (const void *)krb5_cc_default_name, 221 (const void *)krb5_cc_destroy, 222 (const void *)krb5_cc_end_seq_get, 223 (const void *)krb5_cc_get_config, 224 (const void *)krb5_cc_get_friendly_name, 225 (const void *)krb5_cc_get_full_name, 226 (const void *)krb5_cc_get_kdc_offset, 227 (const void *)krb5_cc_get_lifetime, 228 (const void *)krb5_cc_get_name, 229 (const void *)krb5_cc_get_ops, 230 (const void *)krb5_cc_get_prefix_ops, 231 (const void *)krb5_cc_get_principal, 232 (const void *)krb5_cc_get_type, 233 (const void *)krb5_cc_get_version, 234 (const void *)krb5_cc_initialize, 235 (const void *)krb5_cc_move, 236 (const void *)krb5_cc_new_unique, 237 (const void *)krb5_cc_next_cred, 238 (const void *)krb5_cc_register, 239 (const void *)krb5_cc_remove_cred, 240 (const void *)krb5_cc_resolve, 241 (const void *)krb5_cc_retrieve_cred, 242 (const void *)krb5_cc_set_config, 243 (const void *)krb5_cc_set_default_name, 244 (const void *)krb5_cc_set_flags, 245 (const void *)krb5_cc_set_friendly_name, 246 (const void *)krb5_cc_set_kdc_offset, 247 (const void *)krb5_cc_start_seq_get, 248 (const void *)krb5_cc_store_cred, 249 (const void *)krb5_cc_support_switch, 250 (const void *)krb5_cc_switch, 251 (const void *)krb5_cccol_cursor_free, 252 (const void *)krb5_cccol_cursor_new, 253 (const void *)krb5_cccol_cursor_next, 254 (const void *)krb5_cccol_last_change_time, 255 (const void *)krb5_check_transited, 256 (const void *)krb5_check_transited_realms, 257 (const void *)krb5_checksum_disable, 258 (const void *)krb5_checksum_is_collision_proof, 259 (const void *)krb5_checksum_is_keyed, 260 (const void *)krb5_checksumsize, 261 (const void *)krb5_cksumtype_valid, 262 (const void *)krb5_clear_error_message, 263 (const void *)krb5_closelog, 264 (const void *)krb5_compare_creds, 265 (const void *)krb5_config_file_free, 266 (const void *)krb5_config_free_strings, 267 (const void *)krb5_config_get_bool, 268 (const void *)krb5_config_get_bool_default, 269 (const void *)krb5_config_get_int, 270 (const void *)krb5_config_get_int_default, 271 (const void *)krb5_config_get_list, 272 (const void *)krb5_config_get_string, 273 (const void *)krb5_config_get_string_default, 274 (const void *)krb5_config_get_strings, 275 (const void *)krb5_config_get_time, 276 (const void *)krb5_config_get_time_default, 277 (const void *)krb5_config_parse_file, 278 (const void *)krb5_config_parse_file_multi, 279 (const void *)krb5_copy_address, 280 (const void *)krb5_copy_addresses, 281 (const void *)krb5_copy_creds, 282 (const void *)krb5_copy_creds_contents, 283 (const void *)krb5_copy_data, 284 (const void *)krb5_copy_host_realm, 285 (const void *)krb5_copy_keyblock, 286 (const void *)krb5_copy_keyblock_contents, 287 (const void *)krb5_copy_principal, 288 (const void *)krb5_copy_ticket, 289 (const void *)krb5_create_checksum, 290 (const void *)krb5_create_checksum_iov, 291 (const void *)krb5_crypto_destroy, 292 (const void *)krb5_crypto_get_checksum_type, 293 (const void *)krb5_crypto_getblocksize, 294 (const void *)krb5_crypto_getconfoundersize, 295 (const void *)krb5_crypto_getenctype, 296 (const void *)krb5_crypto_getpadsize, 297 (const void *)krb5_crypto_init, 298 (const void *)krb5_crypto_length, 299 (const void *)krb5_crypto_length_iov, 300 (const void *)krb5_crypto_prf, 301 (const void *)krb5_crypto_prf_length, 302 (const void *)krb5_data_alloc, 303 (const void *)krb5_data_cmp, 304 (const void *)krb5_data_ct_cmp, 305 (const void *)krb5_data_copy, 306 (const void *)krb5_data_free, 307 (const void *)krb5_data_realloc, 308 (const void *)krb5_data_zero, 309 (const void *)krb5_decode_ap_req, 310 (const void *)krb5_decrypt, 311 (const void *)krb5_decrypt_EncryptedData, 312 (const void *)krb5_decrypt_iov_ivec, 313 (const void *)krb5_decrypt_ivec, 314 (const void *)krb5_decrypt_ticket, 315 (const void *)krb5_derive_key, 316 (const void *)krb5_domain_x500_decode, 317 (const void *)krb5_domain_x500_encode, 318 (const void *)krb5_eai_to_heim_errno, 319 (const void *)krb5_encrypt, 320 (const void *)krb5_encrypt_EncryptedData, 321 (const void *)krb5_encrypt_iov_ivec, 322 (const void *)krb5_encrypt_ivec, 323 (const void *)krb5_enctype_disable, 324 (const void *)krb5_enctype_enable, 325 (const void *)krb5_enctype_keybits, 326 (const void *)krb5_enctype_keysize, 327 (const void *)krb5_enctype_to_string, 328 (const void *)krb5_enctype_valid, 329 (const void *)krb5_err, 330 (const void *)krb5_error_from_rd_error, 331 (const void *)krb5_errx, 332 (const void *)krb5_expand_hostname, 333 (const void *)krb5_expand_hostname_realms, 334 (const void *)krb5_find_padata, 335 (const void *)krb5_format_time, 336 (const void *)krb5_free_address, 337 (const void *)krb5_free_addresses, 338 (const void *)krb5_free_ap_rep_enc_part, 339 (const void *)krb5_free_authenticator, 340 (const void *)krb5_free_config_files, 341 (const void *)krb5_free_context, 342 (const void *)krb5_free_cred_contents, 343 (const void *)krb5_free_creds, 344 (const void *)krb5_free_data, 345 (const void *)krb5_free_error, 346 (const void *)krb5_free_error_contents, 347 (const void *)krb5_free_error_message, 348 (const void *)krb5_free_host_realm, 349 (const void *)krb5_free_kdc_rep, 350 (const void *)krb5_free_keyblock, 351 (const void *)krb5_free_keyblock_contents, 352 (const void *)krb5_free_principal, 353 (const void *)krb5_free_salt, 354 (const void *)krb5_free_ticket, 355 (const void *)krb5_fwd_tgt_creds, 356 (const void *)krb5_generate_random_block, 357 (const void *)krb5_generate_random_keyblock, 358 (const void *)krb5_generate_seq_number, 359 (const void *)krb5_generate_subkey_extended, 360 (const void *)krb5_get_all_client_addrs, 361 (const void *)krb5_get_all_server_addrs, 362 (const void *)krb5_get_credentials, 363 (const void *)krb5_get_credentials_with_flags, 364 (const void *)krb5_get_creds, 365 (const void *)krb5_get_creds_opt_add_options, 366 (const void *)krb5_get_creds_opt_alloc, 367 (const void *)krb5_get_creds_opt_free, 368 (const void *)krb5_get_creds_opt_set_enctype, 369 (const void *)krb5_get_creds_opt_set_impersonate, 370 (const void *)krb5_get_creds_opt_set_options, 371 (const void *)krb5_get_creds_opt_set_ticket, 372 (const void *)krb5_get_debug_dest, 373 (const void *)krb5_get_default_config_files, 374 (const void *)krb5_get_default_in_tkt_etypes, 375 (const void *)krb5_get_default_principal, 376 (const void *)krb5_get_default_realm, 377 (const void *)krb5_get_default_realms, 378 (const void *)krb5_get_dns_canonicalize_hostname, 379 (const void *)krb5_get_err_text, 380 (const void *)krb5_get_error_message, 381 (const void *)krb5_get_error_string, 382 (const void *)krb5_get_extra_addresses, 383 (const void *)krb5_get_fcache_version, 384 (const void *)krb5_get_forwarded_creds, 385 (const void *)krb5_get_host_realm, 386 (const void *)krb5_get_ignore_addresses, 387 (const void *)krb5_get_init_creds_keyblock, 388 (const void *)krb5_get_init_creds_keytab, 389 (const void *)krb5_get_init_creds_opt_alloc, 390 (const void *)krb5_get_init_creds_opt_free, 391 (const void *)krb5_get_init_creds_opt_set_address_list, 392 (const void *)krb5_get_init_creds_opt_set_addressless, 393 (const void *)krb5_get_init_creds_opt_set_anonymous, 394 (const void *)krb5_get_init_creds_opt_set_canonicalize, 395 (const void *)krb5_get_init_creds_opt_set_default_flags, 396 (const void *)krb5_get_init_creds_opt_set_etype_list, 397 (const void *)krb5_get_init_creds_opt_set_forwardable, 398 (const void *)krb5_get_init_creds_opt_set_pa_password, 399 (const void *)krb5_get_init_creds_opt_set_pac_request, 400 (const void *)krb5_get_init_creds_opt_set_pkinit, 401 (const void *)krb5_get_init_creds_opt_set_preauth_list, 402 (const void *)krb5_get_init_creds_opt_set_proxiable, 403 (const void *)krb5_get_init_creds_opt_set_renew_life, 404 (const void *)krb5_get_init_creds_opt_set_salt, 405 (const void *)krb5_get_init_creds_opt_set_tkt_life, 406 (const void *)krb5_get_init_creds_opt_set_win2k, 407 (const void *)krb5_get_init_creds_password, 408 (const void *)krb5_get_kdc_cred, 409 (const void *)krb5_get_kdc_sec_offset, 410 (const void *)krb5_get_max_time_skew, 411 (const void *)krb5_get_pw_salt, 412 (const void *)krb5_get_renewed_creds, 413 (const void *)krb5_get_server_rcache, 414 (const void *)krb5_get_use_admin_kdc, 415 (const void *)krb5_get_validated_creds, 416 (const void *)krb5_get_warn_dest, 417 (const void *)krb5_get_wrapped_length, 418 (const void *)krb5_getportbyname, 419 (const void *)krb5_h_addr2addr, 420 (const void *)krb5_h_addr2sockaddr, 421 (const void *)krb5_h_errno_to_heim_errno, 422 (const void *)krb5_hmac, 423 (const void *)krb5_init_context, 424 (const void *)krb5_init_context_flags, 425 (const void *)krb5_init_creds_free, 426 (const void *)krb5_init_creds_get, 427 (const void *)krb5_init_creds_get_creds, 428 (const void *)krb5_init_creds_init, 429 (const void *)krb5_init_creds_set_password, 430 (const void *)krb5_init_creds_set_pkinit_client_cert, 431 (const void *)krb5_init_creds_set_service, 432 (const void *)krb5_init_creds_set_sitename, 433 (const void *)krb5_init_creds_set_source_app, 434 (const void *)krb5_init_creds_set_source_process, 435 (const void *)krb5_init_creds_step, 436 (const void *)krb5_init_creds_get_as_reply_key, 437 (const void *)krb5_init_ets, 438 (const void *)_krb5_init_etype, 439 (const void *)krb5_initlog, 440 (const void *)krb5_is_config_principal, 441 (const void *)krb5_is_thread_safe, 442 #ifdef HAVE_KCM 443 (const void *)krb5_kcm_call, 444 (const void *)krb5_kcm_storage_request, 445 (const void *)krb5_kcm_get_principal_list, 446 #endif 447 (const void *)krb5_kerberos_enctypes, 448 (const void *)krb5_keyblock_get_enctype, 449 (const void *)krb5_keyblock_init, 450 (const void *)krb5_keyblock_key_proc, 451 (const void *)krb5_keyblock_zero, 452 (const void *)krb5_krbhst_format_string, 453 (const void *)krb5_krbhst_free, 454 (const void *)krb5_krbhst_get_addrinfo, 455 (const void *)krb5_krbhst_init, 456 (const void *)krb5_krbhst_init_flags, 457 (const void *)krb5_krbhst_next, 458 (const void *)krb5_krbhst_next_as_string, 459 (const void *)krb5_krbhst_reset, 460 (const void *)krb5_krbhst_set_delgated_uuid, 461 (const void *)krb5_krbhst_set_delgated_pid, 462 (const void *)krb5_krbhst_set_hostname, 463 (const void *)krb5_krbhst_set_sitename, 464 (const void *)krb5_kt_add_entry, 465 (const void *)krb5_kt_close, 466 (const void *)krb5_kt_compare, 467 (const void *)krb5_kt_copy_entry_contents, 468 (const void *)krb5_kt_default, 469 (const void *)krb5_kt_default_modify_name, 470 (const void *)krb5_kt_default_name, 471 (const void *)krb5_kt_destroy, 472 (const void *)krb5_kt_end_seq_get, 473 (const void *)krb5_kt_free_entry, 474 (const void *)krb5_kt_get_entry, 475 (const void *)krb5_kt_get_full_name, 476 (const void *)krb5_kt_get_name, 477 (const void *)krb5_kt_get_type, 478 (const void *)krb5_kt_next_entry, 479 (const void *)krb5_kt_read_service_key, 480 (const void *)krb5_kt_register, 481 (const void *)krb5_kt_remove_entry, 482 (const void *)krb5_kt_resolve, 483 (const void *)krb5_kt_start_seq_get, 484 (const void *)krb5_kuserok, 485 (const void *)krb5_log, 486 (const void *)krb5_log_msg, 487 (const void *)krb5_make_addrport, 488 (const void *)krb5_make_principal, 489 (const void *)krb5_max_sockaddr_size, 490 (const void *)krb5_mk_error, 491 (const void *)krb5_mk_priv, 492 (const void *)krb5_mk_rep, 493 (const void *)krb5_mk_req, 494 (const void *)krb5_mk_req_exact, 495 (const void *)krb5_mk_req_extended, 496 (const void *)krb5_mk_safe, 497 (const void *)krb5_net_read, 498 (const void *)krb5_net_write, 499 (const void *)krb5_net_write_block, 500 (const void *)krb5_openlog, 501 (const void *)krb5_pac_add_buffer, 502 (const void *)krb5_pac_copy_credential_package, 503 (const void *)krb5_pac_process_credentials_buffer, 504 (const void *)krb5_pac_free, 505 (const void *)krb5_pac_get_buffer, 506 (const void *)krb5_pac_get_types, 507 (const void *)krb5_pac_init, 508 (const void *)krb5_pac_parse, 509 (const void *)krb5_pac_verify, 510 (const void *)krb5_padata_add, 511 (const void *)krb5_parse_address, 512 (const void *)krb5_parse_name, 513 (const void *)krb5_parse_name_flags, 514 (const void *)krb5_parse_nametype, 515 (const void *)krb5_passwd_result_to_string, 516 (const void *)krb5_plugin_register, 517 (const void *)krb5_prepend_config_files, 518 (const void *)krb5_prepend_config_files_default, 519 (const void *)krb5_principal_compare, 520 (const void *)krb5_principal_compare_any_realm, 521 (const void *)krb5_principal_get_comp_string, 522 (const void *)krb5_principal_get_num_comp, 523 (const void *)krb5_principal_get_realm, 524 (const void *)krb5_principal_get_type, 525 (const void *)krb5_principal_is_lkdc, 526 (const void *)krb5_principal_is_gss_hostbased_service, 527 (const void *)krb5_principal_match, 528 (const void *)krb5_principal_set_realm, 529 (const void *)krb5_principal_set_type, 530 (const void *)krb5_print_address, 531 (const void *)krb5_prompter_posix, 532 (const void *)krb5_prompter_print_only, 533 (const void *)krb5_random_to_key, 534 (const void *)krb5_rc_close, 535 (const void *)krb5_rc_default, 536 (const void *)krb5_rc_default_name, 537 (const void *)krb5_rc_default_type, 538 (const void *)krb5_rc_destroy, 539 (const void *)krb5_rc_expunge, 540 (const void *)krb5_rc_get_lifespan, 541 (const void *)krb5_rc_get_name, 542 (const void *)krb5_rc_get_type, 543 (const void *)krb5_rc_initialize, 544 (const void *)krb5_rc_recover, 545 (const void *)krb5_rc_resolve, 546 (const void *)krb5_rc_resolve_full, 547 (const void *)krb5_rc_resolve_type, 548 (const void *)krb5_rc_store, 549 (const void *)krb5_rd_cred, 550 (const void *)krb5_rd_cred2, 551 (const void *)krb5_rd_error, 552 (const void *)krb5_rd_priv, 553 (const void *)krb5_rd_rep, 554 (const void *)krb5_rd_req, 555 (const void *)krb5_rd_req_ctx, 556 (const void *)krb5_rd_req_in_ctx_alloc, 557 (const void *)krb5_rd_req_in_ctx_free, 558 (const void *)krb5_rd_req_in_set_keyblock, 559 (const void *)krb5_rd_req_in_set_keytab, 560 (const void *)krb5_rd_req_in_set_pac_check, 561 (const void *)krb5_rd_req_in_set_as_reply_key, 562 (const void *)krb5_rd_req_out_ctx_free, 563 (const void *)krb5_rd_req_out_copy_pac, 564 (const void *)krb5_rd_req_out_get_ap_req_options, 565 (const void *)krb5_rd_req_out_get_flags, 566 (const void *)krb5_rd_req_out_get_keyblock, 567 (const void *)krb5_rd_req_out_get_ticket, 568 (const void *)krb5_rd_req_out_get_server, 569 (const void *)krb5_rd_req_with_keyblock, 570 (const void *)krb5_rd_safe, 571 (const void *)krb5_read_message, 572 (const void *)krb5_read_priv_message, 573 (const void *)krb5_read_safe_message, 574 (const void *)krb5_realm_compare, 575 (const void *)krb5_realm_is_lkdc, 576 (const void *)krb5_recvauth, 577 (const void *)krb5_recvauth_match_version, 578 (const void *)krb5_ret_address, 579 (const void *)krb5_ret_addrs, 580 (const void *)krb5_ret_authdata, 581 (const void *)krb5_ret_creds, 582 (const void *)krb5_ret_creds_tag, 583 (const void *)krb5_ret_data, 584 (const void *)krb5_ret_int16, 585 (const void *)krb5_ret_int32, 586 (const void *)krb5_ret_int8, 587 (const void *)krb5_ret_keyblock, 588 (const void *)krb5_ret_principal, 589 (const void *)krb5_ret_string, 590 (const void *)krb5_ret_stringnl, 591 (const void *)krb5_ret_stringz, 592 (const void *)krb5_ret_times, 593 (const void *)krb5_ret_uint16, 594 (const void *)krb5_ret_uint32, 595 (const void *)krb5_ret_uint8, 596 (const void *)krb5_salttype_to_string, 597 (const void *)krb5_sendauth, 598 (const void *)krb5_sendto_context, 599 (const void *)krb5_sendto_ctx_add_flags, 600 (const void *)krb5_sendto_ctx_alloc, 601 (const void *)krb5_sendto_ctx_free, 602 (const void *)krb5_sendto_ctx_get_flags, 603 (const void *)krb5_sendto_ctx_set_func, 604 (const void *)krb5_sendto_ctx_set_type, 605 (const void *)krb5_sendto_set_delegated_app, 606 (const void *)krb5_set_config_files, 607 (const void *)krb5_set_debug_dest, 608 (const void *)krb5_set_default_in_tkt_etypes, 609 (const void *)krb5_set_default_realm, 610 (const void *)krb5_set_dns_canonicalize_hostname, 611 (const void *)krb5_set_error_message, 612 (const void *)krb5_set_extra_addresses, 613 (const void *)krb5_set_fcache_version, 614 (const void *)krb5_set_home_dir_access, 615 (const void *)krb5_set_ignore_addresses, 616 (const void *)krb5_set_kdc_sec_offset, 617 (const void *)krb5_set_max_time_skew, 618 (const void *)krb5_set_password, 619 (const void *)krb5_set_password_using_ccache, 620 (const void *)krb5_set_real_time, 621 (const void *)krb5_set_use_admin_kdc, 622 (const void *)krb5_set_warn_dest, 623 (const void *)krb5_sname_to_principal, 624 (const void *)krb5_sock_to_principal, 625 (const void *)krb5_sockaddr2address, 626 (const void *)krb5_sockaddr2port, 627 (const void *)krb5_sockaddr_uninteresting, 628 (const void *)krb5_storage_clear_flags, 629 (const void *)krb5_storage_emem, 630 (const void *)krb5_storage_free, 631 (const void *)krb5_storage_from_data, 632 (const void *)krb5_storage_from_fd, 633 (const void *)krb5_storage_from_mem, 634 (const void *)krb5_storage_from_mem_copy, 635 (const void *)krb5_storage_from_readonly_mem, 636 (const void *)krb5_storage_get_byteorder, 637 (const void *)krb5_storage_get_eof_code, 638 (const void *)krb5_storage_is_flags, 639 (const void *)krb5_storage_read, 640 (const void *)krb5_storage_seek, 641 (const void *)krb5_storage_set_byteorder, 642 (const void *)krb5_storage_set_eof_code, 643 (const void *)krb5_storage_set_flags, 644 (const void *)krb5_storage_to_data, 645 (const void *)krb5_storage_truncate, 646 (const void *)krb5_storage_write, 647 (const void *)krb5_store_address, 648 (const void *)krb5_store_addrs, 649 (const void *)krb5_store_authdata, 650 (const void *)krb5_store_creds, 651 (const void *)krb5_store_creds_tag, 652 (const void *)krb5_store_data, 653 (const void *)krb5_store_int16, 654 (const void *)krb5_store_int32, 655 (const void *)krb5_store_int8, 656 (const void *)krb5_store_keyblock, 657 (const void *)krb5_store_principal, 658 (const void *)krb5_store_string, 659 (const void *)krb5_store_stringnl, 660 (const void *)krb5_store_stringz, 661 (const void *)krb5_store_times, 662 (const void *)krb5_store_uint16, 663 (const void *)krb5_store_uint32, 664 (const void *)krb5_store_uint8, 665 (const void *)krb5_string_to_deltat, 666 (const void *)krb5_string_to_enctype, 667 (const void *)krb5_string_to_key, 668 (const void *)krb5_string_to_key_data, 669 (const void *)krb5_string_to_key_data_salt, 670 (const void *)krb5_string_to_key_data_salt_opaque, 671 #ifdef HEIM_KRB5_DES3 672 (const void *)krb5_string_to_key_derived, 673 #endif 674 (const void *)krb5_string_to_key_salt, 675 (const void *)krb5_string_to_key_salt_opaque, 676 (const void *)krb5_string_to_salttype, 677 (const void *)krb5_ticket_get_authorization_data_type, 678 (const void *)krb5_ticket_get_client, 679 (const void *)krb5_ticket_get_endtime, 680 (const void *)krb5_ticket_get_server, 681 (const void *)krb5_timeofday, 682 (const void *)krb5_unparse_name, 683 (const void *)krb5_unparse_name_fixed, 684 (const void *)krb5_unparse_name_fixed_flags, 685 (const void *)krb5_unparse_name_fixed_short, 686 (const void *)krb5_unparse_name_flags, 687 (const void *)krb5_unparse_name_short, 688 (const void *)krb5_us_timeofday, 689 (const void *)krb5_vabort, 690 (const void *)krb5_vabortx, 691 (const void *)krb5_verify_ap_req, 692 (const void *)krb5_verify_ap_req2, 693 (const void *)krb5_verify_authenticator_checksum, 694 (const void *)krb5_verify_checksum, 695 (const void *)krb5_verify_checksum_iov, 696 (const void *)krb5_verify_init_creds, 697 (const void *)krb5_verify_init_creds_opt_init, 698 (const void *)krb5_verify_init_creds_opt_set_ap_req_nofail, 699 (const void *)krb5_verify_opt_alloc, 700 (const void *)krb5_verify_opt_free, 701 (const void *)krb5_verify_opt_init, 702 (const void *)krb5_verify_opt_set_ccache, 703 (const void *)krb5_verify_opt_set_flags, 704 (const void *)krb5_verify_opt_set_keytab, 705 (const void *)krb5_verify_opt_set_secure, 706 (const void *)krb5_verify_opt_set_service, 707 (const void *)krb5_verify_opt_set_server, 708 (const void *)krb5_verify_user, 709 (const void *)krb5_verify_user_lrealm, 710 (const void *)krb5_verify_user_opt, 711 (const void *)krb5_verr, 712 (const void *)krb5_verrx, 713 (const void *)krb5_vlog, 714 (const void *)krb5_vlog_msg, 715 (const void *)krb5_vset_error_message, 716 (const void *)krb5_vwarn, 717 (const void *)krb5_vwarnx, 718 (const void *)krb5_warn, 719 (const void *)krb5_warnx, 720 (const void *)krb5_write_message, 721 (const void *)krb5_write_priv_message, 722 (const void *)krb5_write_safe_message, 723 (const void *)krb5_xfree, 724 (const void *)reset_com_err_hook, 725 (const void *)set_com_err_hook, 726 (const void *)wind_ucs2utf8, 727 (const void *)wind_ucs2utf8_length, 728 (const void *)wind_ucs4utf8, 729 (const void *)wind_ucs4utf8_copy, 730 (const void *)wind_utf8ucs2, 731 (const void *)wind_utf8ucs2_length, 732 (const void *)wind_utf8ucs4, 733 (const void *)wind_utf8ucs4_copy, 734 (const void *)krb5_init_creds_set_kdc_hostname, 735 (const void *)krb5_init_creds_store_config, 736 (const void *)krb5_principal_is_pku2u, 737 (const void *)krb5_principal_is_null, 738 (const void *)krb5_get_init_creds_opt_set_process_last_req, 739 (const void *)krb5_get_all_any_addrs, 740 (const void *)krb5_init_creds_set_keytab, 741 (const void *)krb5_init_creds_warn_user, 742 (const void *)krb5_reload_config, 743 (const void *)krb5_cc_hold, 744 (const void *)krb5_cc_unhold, 745 (const void *)krb5_tkt_creds_step, 746 (const void *)krb5_tkt_creds_free, 747 (const void *)krb5_tkt_creds_get_creds, 748 (const void *)krb5_tkt_creds_init, 749 (const void *)krb5_cc_resolve_by_uuid, 750 (const void *)krb5_cc_get_uuid, 751 (const void *)krb5_principal_is_krbtgt, 752 (const void *)krb5_principal_is_root_krbtgt, 753 (const void *)krb5_homedir_access, 754 (const void *)krb5_verify_opt_set_prompter, 755 (const void *)krb5_ret_uuid, 756 (const void *)krb5_store_uuid, 757 (const void *)krb5_plugin_run_f, 758 (const void *)krb5_load_plugins, 759 (const void *)krb5_kt_have_content, 760 (const void *)krb5_enomem, 761 (const void *)krb5_init_creds_store, 762 (const void *)krb5_process_last_request, 763 (const void *)krb5_init_creds_set_fast_ccache, 764 (const void *)krb5_crypto_fx_cf2, 765 (const void *)_krb5_fast_armor_key, 766 (const void *)krb5_uuid_to_string, 767 (const void *)krb5_string_to_uuid, 768 (const void *)krb5_time_abs, 769 (const void *)_krb5_init_creds_get_cred_endtime, 770 (const void *)krb5_cc_set_acl, 771 (const void *)_krb5_init_creds_get_cred_client, 772 (const void *)_krb5_state_srv_sort, 773 (const void *)_krb5_fast_cf2, 774 (const void *)_krb5_validate_pa_enc_challange, 775 (const void *)_krb5_make_pa_enc_challange, 776 (const void *)HeimCredCopyAttribute, 777 (const void *)HeimCredCopyAttributes, 778 (const void *)HeimCredCopyDefaultCredential, 779 (const void *)HeimCredCopyFromUUID, 780 (const void *)HeimCredCopyQuery, 781 (const void *)HeimCredCreate, 782 (const void *)HeimCredDelete, 783 (const void *)HeimCredDeleteByUUID, 784 (const void *)HeimCredDeleteQuery, 785 (const void *)HeimCredDeleteAll, 786 (const void *)HeimCredGetUUID, 787 (const void *)HeimCredGetAttributes, 788 (const void *)HeimCredGetImpersonateBundle, 789 (const void *)HeimCredGetImpersonateAuditToken, 790 (const void *)HeimCredMove, 791 (const void *)HeimCredReleaseTransient, 792 (const void *)HeimCredRetainTransient, 793 (const void *)HeimCredSetAttribute, 794 (const void *)HeimCredSetAttributes, 795 (const void *)HeimCredSetImpersonateBundle, 796 (const void *)HeimCredSetImpersonateAuditToken, 797 (const void *)HeimCredCopyStatus, 798 (const void *)HeimCredDoAuth, 799 (const void *)&kHEIMAttrType, 800 (const void *)&kHEIMTypeGeneric, 801 (const void *)&kHEIMTypeKerberos, 802 (const void *)&kHEIMTypeIAKerb, 803 (const void *)&kHEIMTypeNTLM, 804 (const void *)&kHEIMTypeConfiguration, 805 (const void *)&kHEIMTypeSchema, 806 (const void *)&kHEIMTypeKerberosAcquireCred, 807 (const void *)&kHEIMObjectType, 808 (const void *)&kHEIMObjectKerberos, 809 (const void *)&kHEIMObjectNTLM, 810 (const void *)&kHEIMObjectGeneric, 811 (const void *)&kHEIMObjectConfiguration, 812 (const void *)&kHEIMObjectKerberosAcquireCred, 813 (const void *)&kHEIMObjectAny, 814 (const void *)&kHEIMAttrClientName, 815 (const void *)&kHEIMNameUserName, 816 (const void *)&kHEIMNameMechKerberos, 817 (const void *)&kHEIMNameMechIAKerb, 818 (const void *)&kHEIMNameMechNTLM, 819 (const void *)&kHEIMAttrServerName, 820 (const void *)&kHEIMAttrUUID, 821 (const void *)&kHEIMAttrDisplayName, 822 (const void *)&kHEIMAttrCredential, 823 (const void *)&kHEIMCredentialPassword, 824 (const void *)&kHEIMCredentialCertificate, 825 (const void *)&kHEIMAttrLeadCredential, 826 (const void *)&kHEIMAttrParentCredential, 827 (const void *)&kHEIMAttrData, 828 (const void *)&kHEIMAttrTransient, 829 (const void *)&kHEIMAttrAllowedDomain, 830 (const void *)&kHEIMAttrStatus, 831 (const void *)&kHEIMStatusInvalid, 832 (const void *)&kHEIMStatusCanRefresh, 833 (const void *)&kHEIMStatusValid, 834 (const void *)&kHEIMAttrStoreTime, 835 (const void *)&kHEIMAttrAuthTime, 836 (const void *)&kHEIMAttrExpire, 837 (const void *)&kHEIMAttrRenewTill, 838 (const void *)&kHEIMAttrRetainStatus, 839 (const void *)&kHEIMAttrBundleIdentifierACL, 840 (const void *)&kHEIMAttrDefaultCredential, 841 (const void *)&kHEIMAttrTemporaryCache, 842 (const void *)&kHEIMAttrKerberosTicketGrantingTicket, 843 (const void *)&kHEIMAttrAltDSID, 844 (const void *)&kHEIMAttrUserID, 845 (const void *)&kHEIMAttrASID, 846 (const void *)&kHEIMAttrNTLMUsername, 847 (const void *)&kHEIMAttrNTLMDomain, 848 (const void *)&kHEIMAttrNTLMChannelBinding, 849 (const void *)&kHEIMAttrNTLMChallenge, 850 (const void *)&kHEIMAttrNTLMType1Data, 851 (const void *)&kHEIMAttrNTLMType2Data, 852 (const void *)&kHEIMAttrNTLMType3Data, 853 (const void *)&kHEIMAttrNTLMClientTargetName, 854 (const void *)&kHEIMAttrNTLMClientFlags, 855 (const void *)&kHEIMAttrNTLMSessionKey, 856 (const void *)&kHEIMAttrNTLMKCMFlags, 857 (const void *)_krb5_srp_create, 858 (const void *)_krb5_srp_create_pa, 859 (const void *)_krb5_srp_keysize, 860 (const void *)_krb5_srp_pkisize, 861 (const void *)_krb5_srp_reply_key, 862 (const void *)_krb5_srp_validate_group, 863 (const void *)krb5_enctype_warning, 864 NULL 865 }; 866 867 #pragma clang diagnostic pop 868