git: ae07a5805b19 - main - krb5: Add version maps
Date: Tue, 22 Jul 2025 15:48:50 UTC
The branch main has been updated by cy:
URL: https://cgit.FreeBSD.org/src/commit/?id=ae07a5805b1906f29e786f415d67bef334557bd3
commit ae07a5805b1906f29e786f415d67bef334557bd3
Author: Cy Schubert <cy@FreeBSD.org>
AuthorDate: 2025-07-22 15:38:19 +0000
Commit: Cy Schubert <cy@FreeBSD.org>
CommitDate: 2025-07-22 15:48:40 +0000
krb5: Add version maps
Shared objects must have version maps. These were copied from upstream's
*.exports files.
Reminded by: kib
Fixes: ee3960cba106
---
krb5/lib/crypto/Makefile | 1 +
krb5/lib/crypto/version.map | 108 ++++++
krb5/lib/gssapi/Makefile | 1 +
krb5/lib/gssapi/version.map | 173 +++++++++
krb5/lib/kadm5clnt/Makefile | 1 +
krb5/lib/kadm5clnt/version.map | 118 ++++++
krb5/lib/kadm5srv/Makefile | 1 +
krb5/lib/kadm5srv/version.map | 137 +++++++
krb5/lib/kdb/Makefile | 1 +
krb5/lib/kdb/version.map | 111 ++++++
krb5/lib/krad/Makefile | 1 +
krb5/lib/krad/version.map | 26 ++
krb5/lib/krb5/Makefile | 1 +
krb5/lib/krb5/version.map | 658 ++++++++++++++++++++++++++++++++
krb5/lib/rpc/Makefile | 1 +
krb5/lib/rpc/version.map | 147 +++++++
krb5/plugins/audit/Makefile | 1 +
krb5/plugins/audit/version.map | 10 +
krb5/plugins/k5tls/Makefile | 1 +
krb5/plugins/k5tls/version.map | 4 +
krb5/plugins/kdb/db2/Makefile | 1 +
krb5/plugins/kdb/db2/version.map | 109 ++++++
krb5/plugins/preauth/otp/Makefile | 1 +
krb5/plugins/preauth/otp/version.map | 4 +
krb5/plugins/preauth/pkinit/Makefile | 1 +
krb5/plugins/preauth/pkinit/version.map | 5 +
krb5/plugins/preauth/spake/Makefile | 1 +
krb5/plugins/preauth/spake/version.map | 5 +
krb5/plugins/preauth/test/Makefile | 1 +
krb5/plugins/preauth/test/version.map | 5 +
30 files changed, 1635 insertions(+)
diff --git a/krb5/lib/crypto/Makefile b/krb5/lib/crypto/Makefile
index 5087a2fb559b..5efe53d12aa8 100644
--- a/krb5/lib/crypto/Makefile
+++ b/krb5/lib/crypto/Makefile
@@ -17,6 +17,7 @@ LIB= k5crypto
# SHLIB_MAJOR= 3
LDFLAGS=-Wl,--no-undefined
LIBADD= com_err krb5support crypto
+VERSION_MAP= ${.CURDIR}/version.map
# XXX The following doesn't work. Even though the pathnames are the same
# XXX we need to use the alternative .include statements.
diff --git a/krb5/lib/crypto/version.map b/krb5/lib/crypto/version.map
new file mode 100644
index 000000000000..bd4c2c1cd23f
--- /dev/null
+++ b/krb5/lib/crypto/version.map
@@ -0,0 +1,108 @@
+KRB5_CRYPTO_1.0 {
+ global:
+ krb5_c_make_random_key;
+ krb5_c_encrypt_length;
+ krb5_process_key;
+ krb5_string_to_cksumtype;
+ krb5_c_valid_enctype;
+ krb5_c_valid_cksumtype;
+ krb5_string_to_key;
+ krb5_c_encrypt_iov;
+ krb5_c_checksum_length;
+ is_keyed_cksum;
+ krb5_c_padding_length;
+ is_coll_proof_cksum;
+ krb5_init_random_key;
+ krb5_c_string_to_key_with_params;
+ krb5_c_random_make_octets;
+ krb5_c_random_os_entropy;
+ krb5_c_decrypt;
+ krb5_c_crypto_length;
+ krb5_c_block_size;
+ krb5_cksumtype_to_string;
+ krb5_c_keyed_checksum_types;
+ krb5_c_is_keyed_cksum;
+ krb5_c_crypto_length_iov;
+ valid_cksumtype;
+ krb5_c_random_seed;
+ krb5_c_random_to_key;
+ krb5_verify_checksum;
+ krb5_c_free_state;
+ krb5_c_verify_checksum;
+ krb5_c_random_add_entropy;
+ krb5_c_decrypt_iov;
+ krb5_c_make_checksum;
+ krb5_checksum_size;
+ krb5_free_cksumtypes;
+ krb5_finish_key;
+ krb5_encrypt_size;
+ krb5_c_keylengths;
+ krb5_c_prf;
+ krb5_encrypt;
+ krb5_string_to_enctype;
+ krb5_c_is_coll_proof_cksum;
+ krb5_c_init_state;
+ krb5_eblock_enctype;
+ krb5_decrypt;
+ krb5_c_encrypt;
+ krb5_c_enctype_compare;
+ krb5_c_verify_checksum_iov;
+ valid_enctype;
+ krb5_enctype_to_string;
+ krb5_enctype_to_name;
+ krb5_c_make_checksum_iov;
+ krb5_calculate_checksum;
+ krb5_c_string_to_key;
+ krb5_use_enctype;
+ krb5_random_key;
+ krb5_finish_random_key;
+ krb5_c_prf_length;
+ krb5int_c_mandatory_cksumtype;
+ krb5_c_fx_cf2_simple;
+ krb5int_c_weak_enctype;
+ krb5_encrypt_data;
+ krb5int_c_copy_keyblock;
+ krb5int_c_copy_keyblock_contents;
+ krb5int_c_free_keyblock_contents;
+ krb5int_c_free_keyblock;
+ krb5int_c_init_keyblock;
+ krb5int_hash_md4;
+ krb5int_hash_md5;
+ krb5int_hash_sha256;
+ krb5int_hash_sha384;
+ krb5int_enc_arcfour;
+ krb5int_hmac;
+ krb5_k_create_key;
+ krb5_k_decrypt;
+ krb5_k_decrypt_iov;
+ krb5_k_encrypt;
+ krb5_k_encrypt_iov;
+ krb5_k_free_key;
+ krb5_k_key_enctype;
+ krb5_k_key_keyblock;
+ krb5_k_make_checksum;
+ krb5_k_make_checksum_iov;
+ krb5_k_prf;
+ krb5_k_reference_key;
+ krb5_k_verify_checksum;
+ krb5_k_verify_checksum_iov;
+ krb5int_aes_encrypt;
+ krb5int_aes_decrypt;
+ krb5int_enc_des3;
+ krb5int_arcfour_gsscrypt;
+ krb5int_camellia_encrypt;
+ krb5int_cmac_checksum;
+ krb5int_enc_aes128;
+ krb5int_enc_aes256;
+ krb5int_enc_camellia128;
+ krb5int_enc_camellia256;
+ krb5int_derive_key;
+ krb5int_derive_random;
+ k5_sha256;
+ krb5int_nfold;
+ k5_allow_weak_pbkdf2iter;
+ krb5_c_prfplus;
+ krb5_c_derive_prfplus;
+ k5_enctype_to_ssf;
+ krb5int_c_deprecated_enctype;
+};
diff --git a/krb5/lib/gssapi/Makefile b/krb5/lib/gssapi/Makefile
index 51ed6f162d65..569452cfb538 100644
--- a/krb5/lib/gssapi/Makefile
+++ b/krb5/lib/gssapi/Makefile
@@ -17,6 +17,7 @@ LIB= gssapi_krb5
# SHLIB_MAJOR= 2
LDFLAGS=-Wl,--no-undefined
LIBADD= krb5 k5crypto com_err krb5profile krb5support
+VERSION_MAP= ${.CURDIR}/version.map
# This is a contcatonation of:
# crypto/krb5/src/lib/gssapi/libgssapi_krb5.exports
diff --git a/krb5/lib/gssapi/version.map b/krb5/lib/gssapi/version.map
new file mode 100644
index 000000000000..95f7ed5151db
--- /dev/null
+++ b/krb5/lib/gssapi/version.map
@@ -0,0 +1,173 @@
+KRB5_GSSAPI_1.0 {
+ global:
+ GSS_C_ATTR_LOCAL_LOGIN_USER;
+ GSS_C_INQ_NEGOEX_KEY;
+ GSS_C_INQ_NEGOEX_VERIFY_KEY;
+ GSS_C_INQ_SSPI_SESSION_KEY;
+ GSS_C_MA_AUTH_INIT;
+ GSS_C_MA_AUTH_INIT_ANON;
+ GSS_C_MA_AUTH_INIT_INIT;
+ GSS_C_MA_AUTH_TARG;
+ GSS_C_MA_AUTH_TARG_ANON;
+ GSS_C_MA_AUTH_TARG_INIT;
+ GSS_C_MA_CBINDINGS;
+ GSS_C_MA_COMPRESS;
+ GSS_C_MA_CONF_PROT;
+ GSS_C_MA_CTX_TRANS;
+ GSS_C_MA_DELEG_CRED;
+ GSS_C_MA_DEPRECATED;
+ GSS_C_MA_INTEG_PROT;
+ GSS_C_MA_ITOK_FRAMED;
+ GSS_C_MA_MECH_COMPOSITE;
+ GSS_C_MA_MECH_CONCRETE;
+ GSS_C_MA_MECH_GLUE;
+ GSS_C_MA_MECH_NEGO;
+ GSS_C_MA_MECH_PSEUDO;
+ GSS_C_MA_MIC;
+ GSS_C_MA_NEGOEX_AND_SPNEGO;
+ GSS_C_MA_NOT_DFLT_MECH;
+ GSS_C_MA_NOT_MECH;
+ GSS_C_MA_OOS_DET;
+ GSS_C_MA_PFS;
+ GSS_C_MA_PROT_READY;
+ GSS_C_MA_REPLAY_DET;
+ GSS_C_MA_WRAP;
+ GSS_C_NT_ANONYMOUS;
+ GSS_C_NT_COMPOSITE_EXPORT;
+ GSS_C_NT_EXPORT_NAME;
+ GSS_C_NT_HOSTBASED_SERVICE;
+ GSS_C_NT_HOSTBASED_SERVICE_X;
+ GSS_C_NT_MACHINE_UID_NAME;
+ GSS_C_NT_STRING_UID_NAME;
+ GSS_C_NT_USER_NAME;
+ GSS_C_SEC_CONTEXT_SASL_SSF;
+ GSS_KRB5_CRED_NO_CI_FLAGS_X;
+ GSS_KRB5_GET_CRED_IMPERSONATOR;
+ GSS_KRB5_NT_ENTERPRISE_NAME;
+ GSS_KRB5_NT_PRINCIPAL_NAME;
+ GSS_KRB5_NT_X509_CERT;
+ gss_accept_sec_context;
+ gss_acquire_cred;
+ gss_acquire_cred_from;
+ gss_acquire_cred_impersonate_name;
+ gss_acquire_cred_with_password;
+ gss_add_buffer_set_member;
+ gss_add_cred;
+ gss_add_cred_from;
+ gss_add_cred_impersonate_name;
+ gss_add_cred_with_password;
+ gss_add_oid_set_member;
+ gss_authorize_localname;
+ gss_canonicalize_name;
+ gss_compare_name;
+ gss_complete_auth_token;
+ gss_context_time;
+ gss_create_empty_buffer_set;
+ gss_create_empty_oid_set;
+ gss_decapsulate_token;
+ gss_delete_name_attribute;
+ gss_delete_sec_context;
+ gss_display_mech_attr;
+ gss_display_name;
+ gss_display_name_ext;
+ gss_display_status;
+ gss_duplicate_name;
+ gss_encapsulate_token;
+ gss_export_cred;
+ gss_export_name;
+ gss_export_name_composite;
+ gss_export_sec_context;
+ gss_get_mic;
+ gss_get_mic_iov;
+ gss_get_mic_iov_length;
+ gss_get_name_attribute;
+ gss_import_cred;
+ gss_import_name;
+ gss_import_sec_context;
+ gss_indicate_mechs;
+ gss_indicate_mechs_by_attrs;
+ gss_init_sec_context;
+ gss_inquire_attrs_for_mech;
+ gss_inquire_context;
+ gss_inquire_cred;
+ gss_inquire_cred_by_mech;
+ gss_inquire_cred_by_oid;
+ gss_inquire_mech_for_saslname;
+ gss_inquire_mechs_for_name;
+ gss_inquire_name;
+ gss_inquire_names_for_mech;
+ gss_inquire_saslname_for_mech;
+ gss_inquire_sec_context_by_oid;
+ gss_krb5_ccache_name;
+ gss_krb5_copy_ccache;
+ gss_krb5_export_lucid_sec_context;
+ gss_krb5_free_lucid_sec_context;
+ gss_krb5_get_tkt_flags;
+ gss_krb5_import_cred;
+ gss_krb5_set_allowable_enctypes;
+ gss_krb5_set_cred_rcache;
+ gss_krb5int_make_seal_token_v3;
+ gss_krb5int_unseal_token_v3;
+ gss_localname;
+ gss_map_name_to_any;
+ gss_mech_iakerb;
+ gss_mech_initialize;
+ gss_mech_krb5;
+ gss_mech_krb5_old;
+ gss_mech_krb5_wrong;
+ gss_mech_set_krb5;
+ gss_mech_set_krb5_both;
+ gss_mech_set_krb5_old;
+ gss_nt_exported_name;
+ gss_nt_krb5_name;
+ gss_nt_krb5_principal;
+ gss_nt_machine_uid_name;
+ gss_nt_service_name;
+ gss_nt_service_name_v2;
+ gss_nt_string_uid_name;
+ gss_nt_user_name;
+ gss_oid_equal;
+ gss_oid_to_str;
+ gss_pname_to_uid;
+ gss_process_context_token;
+ gss_pseudo_random;
+ gss_release_any_name_mapping;
+ gss_release_buffer;
+ gss_release_buffer_set;
+ gss_release_cred;
+ gss_release_iov_buffer;
+ gss_release_name;
+ gss_release_oid;
+ gss_release_oid_set;
+ gss_seal;
+ gss_set_cred_option;
+ gss_set_name_attribute;
+ gss_set_neg_mechs;
+ gss_set_sec_context_option;
+ gss_sign;
+ gss_store_cred;
+ gss_store_cred_into;
+ gss_str_to_oid;
+ gss_test_oid_set_member;
+ gss_unseal;
+ gss_unwrap;
+ gss_unwrap_aead;
+ gss_unwrap_iov;
+ gss_userok;
+ gss_verify;
+ gss_verify_mic;
+ gss_verify_mic_iov;
+ gss_wrap;
+ gss_wrap_aead;
+ gss_wrap_iov;
+ gss_wrap_iov_length;
+ gss_wrap_size_limit;
+ gssint_g_seqstate_init;
+ gsskrb5_extract_authtime_from_sec_context;
+ gsskrb5_extract_authz_data_from_sec_context;
+ gssspi_mech_invoke;
+ gssspi_set_cred_option;
+ krb5_gss_dbg_client_expcreds;
+ krb5_gss_register_acceptor_identity;
+ krb5_gss_use_kdc_context;
+};
diff --git a/krb5/lib/kadm5clnt/Makefile b/krb5/lib/kadm5clnt/Makefile
index ddb9b0e9fec5..c9f199bdaea3 100644
--- a/krb5/lib/kadm5clnt/Makefile
+++ b/krb5/lib/kadm5clnt/Makefile
@@ -17,6 +17,7 @@ LIB= kadm5clnt_mit
# SHLIB_MAJOR= 12
LDFLAGS=-Wl,--no-undefined
LIBADD= krb5profile gssrpc gssapi_krb5 krb5 k5crypto krb5support com_err
+VERSION_MAP= ${.CURDIR}/version.map
SRCS= alt_prof.c \
chpass_util.c \
diff --git a/krb5/lib/kadm5clnt/version.map b/krb5/lib/kadm5clnt/version.map
new file mode 100644
index 000000000000..9743c7cf6140
--- /dev/null
+++ b/krb5/lib/kadm5clnt/version.map
@@ -0,0 +1,118 @@
+KRB5_KADM5_CLNT_1.0 {
+ global:
+ _kadm5_check_handle;
+ _kadm5_chpass_principal_util;
+ kadm5_chpass_principal;
+ kadm5_chpass_principal_3;
+ kadm5_chpass_principal_util;
+ kadm5_create_policy;
+ kadm5_create_principal;
+ kadm5_create_principal_3;
+ kadm5_decrypt_key;
+ kadm5_delete_policy;
+ kadm5_delete_principal;
+ kadm5_destroy;
+ kadm5_flush;
+ kadm5_free_config_params;
+ kadm5_free_kadm5_key_data;
+ kadm5_free_key_data;
+ kadm5_free_name_list;
+ kadm5_free_policy_ent;
+ kadm5_free_principal_ent;
+ kadm5_free_strings;
+ kadm5_get_admin_service_name;
+ kadm5_get_config_params;
+ kadm5_get_policies;
+ kadm5_get_policy;
+ kadm5_get_principal;
+ kadm5_get_principal_keys;
+ kadm5_get_principals;
+ kadm5_get_privs;
+ kadm5_get_strings;
+ kadm5_init;
+ kadm5_init_anonymous;
+ kadm5_init_krb5_context;
+ kadm5_init_with_creds;
+ kadm5_init_with_password;
+ kadm5_init_with_skey;
+ kadm5_lock;
+ kadm5_modify_policy;
+ kadm5_modify_principal;
+ kadm5_purgekeys;
+ kadm5_randkey_principal;
+ kadm5_randkey_principal_3;
+ kadm5_rename_principal;
+ kadm5_set_string;
+ kadm5_setkey_principal;
+ kadm5_setkey_principal_3;
+ kadm5_setkey_principal_4;
+ kadm5_unlock;
+ krb5_aprof_get_boolean;
+ krb5_aprof_get_deltat;
+ krb5_aprof_get_int32;
+ krb5_aprof_get_string;
+ krb5_aprof_getvals;
+ krb5_flagnum_to_string;
+ krb5_flagspec_to_mask;
+ krb5_flags_to_strings;
+ krb5_free_key_data_contents;
+ krb5_keysalt_is_present;
+ krb5_keysalt_iterate;
+ krb5_klog_close;
+ krb5_klog_init;
+ krb5_klog_reopen;
+ krb5_klog_set_context;
+ krb5_klog_syslog;
+ krb5_string_to_keysalts;
+ xdr_chpass3_arg;
+ xdr_chpass_arg;
+ xdr_chrand3_arg;
+ xdr_chrand_arg;
+ xdr_chrand_ret;
+ xdr_cpol_arg;
+ xdr_cprinc3_arg;
+ xdr_cprinc_arg;
+ xdr_dpol_arg;
+ xdr_dprinc_arg;
+ xdr_generic_ret;
+ xdr_getpkeys_arg;
+ xdr_getpkeys_ret;
+ xdr_getprivs_ret;
+ xdr_gpol_arg;
+ xdr_gpol_ret;
+ xdr_gpols_arg;
+ xdr_gpols_ret;
+ xdr_gprinc_arg;
+ xdr_gprinc_ret;
+ xdr_gprincs_arg;
+ xdr_gprincs_ret;
+ xdr_kadm5_key_data;
+ xdr_kadm5_policy_ent_rec;
+ xdr_kadm5_principal_ent_rec;
+ xdr_kadm5_ret_t;
+ xdr_krb5_deltat;
+ xdr_krb5_enctype;
+ xdr_krb5_flags;
+ xdr_krb5_int16;
+ xdr_krb5_key_data_nocontents;
+ xdr_krb5_key_salt_tuple;
+ xdr_krb5_keyblock;
+ xdr_krb5_kvno;
+ xdr_krb5_octet;
+ xdr_krb5_principal;
+ xdr_krb5_salttype;
+ xdr_krb5_timestamp;
+ xdr_krb5_tl_data;
+ xdr_krb5_ui_2;
+ xdr_krb5_ui_4;
+ xdr_mpol_arg;
+ xdr_mprinc_arg;
+ xdr_nullstring;
+ xdr_nulltype;
+ xdr_rprinc_arg;
+ xdr_setkey3_arg;
+ xdr_setkey4_arg;
+ xdr_setkey_arg;
+ xdr_ui_4;
+ kadm5_init_iprop;
+};
diff --git a/krb5/lib/kadm5srv/Makefile b/krb5/lib/kadm5srv/Makefile
index f716dfcdaedc..90a2180d496a 100644
--- a/krb5/lib/kadm5srv/Makefile
+++ b/krb5/lib/kadm5srv/Makefile
@@ -17,6 +17,7 @@ LIB= kadm5srv_mit
# SHLIB_MAJOR= 12
LDFLAGS=-Wl,--no-undefined
LIBADD= krb5profile gssrpc gssapi_krb5 kdb5 krb5 k5crypto krb5support com_err
+VERSION_MAP= ${.CURDIR}/version.map
INCSDIR= ${INCLUDEDIR}/kadm5
diff --git a/krb5/lib/kadm5srv/version.map b/krb5/lib/kadm5srv/version.map
new file mode 100644
index 000000000000..a0e9da6daef2
--- /dev/null
+++ b/krb5/lib/kadm5srv/version.map
@@ -0,0 +1,137 @@
+KRB5_KADM5_SRV_1.0 {
+ global:
+ _kadm5_check_handle;
+ _kadm5_chpass_principal_util;
+ hist_princ;
+ kadm5_chpass_principal;
+ kadm5_chpass_principal_3;
+ kadm5_chpass_principal_util;
+ kadm5_create_policy;
+ kadm5_create_principal;
+ kadm5_create_principal_3;
+ kadm5_decrypt_key;
+ kadm5_delete_policy;
+ kadm5_delete_principal;
+ kadm5_destroy;
+ kadm5_flush;
+ kadm5_free_config_params;
+ kadm5_free_kadm5_key_data;
+ kadm5_free_key_data;
+ kadm5_free_name_list;
+ kadm5_free_policy_ent;
+ kadm5_free_principal_ent;
+ kadm5_free_strings;
+ kadm5_get_config_params;
+ kadm5_get_policies;
+ kadm5_get_policy;
+ kadm5_get_principal;
+ kadm5_get_principal_keys;
+ kadm5_get_principals;
+ kadm5_get_privs;
+ kadm5_get_strings;
+ kadm5_init;
+ kadm5_init_anonymous;
+ kadm5_init_krb5_context;
+ kadm5_init_with_creds;
+ kadm5_init_with_password;
+ kadm5_init_with_skey;
+ kadm5_lock;
+ kadm5_modify_policy;
+ kadm5_modify_principal;
+ kadm5_purgekeys;
+ kadm5_randkey_principal;
+ kadm5_randkey_principal_3;
+ kadm5_rename_principal;
+ kadm5_set_string;
+ kadm5_setkey_principal;
+ kadm5_setkey_principal_3;
+ kadm5_setkey_principal_4;
+ kadm5_unlock;
+ kdb_delete_entry;
+ kdb_free_entry;
+ kdb_init_hist;
+ kdb_init_master;
+ kdb_iter_entry;
+ kdb_put_entry;
+ krb5_aprof_get_boolean;
+ krb5_aprof_get_deltat;
+ krb5_aprof_get_int32;
+ krb5_aprof_get_string;
+ krb5_aprof_get_string_all;
+ krb5_aprof_getvals;
+ krb5_copy_key_data_contents;
+ krb5_flagnum_to_string;
+ krb5_flagspec_to_mask;
+ krb5_flags_to_strings;
+ krb5_free_key_data_contents;
+ krb5_keysalt_is_present;
+ krb5_keysalt_iterate;
+ krb5_klog_close;
+ krb5_klog_init;
+ krb5_klog_reopen;
+ krb5_klog_set_context;
+ krb5_klog_syslog;
+ krb5_string_to_keysalts;
+ master_db;
+ master_princ;
+ osa_free_princ_ent;
+ passwd_check;
+ xdr_chpass3_arg;
+ xdr_chpass_arg;
+ xdr_chrand3_arg;
+ xdr_chrand_arg;
+ xdr_chrand_ret;
+ xdr_cpol_arg;
+ xdr_cprinc3_arg;
+ xdr_cprinc_arg;
+ xdr_dpol_arg;
+ xdr_dprinc_arg;
+ xdr_generic_ret;
+ xdr_getpkeys_arg;
+ xdr_getpkeys_ret;
+ xdr_getprivs_ret;
+ xdr_gpol_arg;
+ xdr_gpol_ret;
+ xdr_gpols_arg;
+ xdr_gpols_ret;
+ xdr_gprinc_arg;
+ xdr_gprinc_ret;
+ xdr_gprincs_arg;
+ xdr_gprincs_ret;
+ xdr_gstrings_arg;
+ xdr_gstrings_ret;
+ xdr_kadm5_policy_ent_rec;
+ xdr_kadm5_principal_ent_rec;
+ xdr_kadm5_ret_t;
+ xdr_krb5_deltat;
+ xdr_krb5_enctype;
+ xdr_krb5_flags;
+ xdr_krb5_int16;
+ xdr_krb5_key_data;
+ xdr_krb5_key_data_nocontents;
+ xdr_krb5_key_salt_tuple;
+ xdr_krb5_keyblock;
+ xdr_krb5_kvno;
+ xdr_krb5_octet;
+ xdr_krb5_principal;
+ xdr_krb5_salttype;
+ xdr_krb5_string_attr;
+ xdr_krb5_timestamp;
+ xdr_krb5_tl_data;
+ xdr_krb5_ui_2;
+ xdr_krb5_ui_4;
+ xdr_mpol_arg;
+ xdr_mprinc_arg;
+ xdr_nullstring;
+ xdr_nulltype;
+ xdr_osa_princ_ent_rec;
+ xdr_osa_pw_hist_ent;
+ xdr_purgekeys_arg;
+ xdr_rprinc_arg;
+ xdr_setkey3_arg;
+ xdr_setkey4_arg;
+ xdr_setkey_arg;
+ xdr_sstring_arg;
+ xdr_ui_4;
+ kadm5_init_iprop;
+};
diff --git a/krb5/lib/kdb/Makefile b/krb5/lib/kdb/Makefile
index ac7f058a7f11..57fe32e39347 100644
--- a/krb5/lib/kdb/Makefile
+++ b/krb5/lib/kdb/Makefile
@@ -17,6 +17,7 @@ LIB= kdb5
# SHLIB_MAJOR= 10
LDFLAGS=-Wl,--no-undefined
LIBADD= krb5profile gssrpc krb5 k5crypto com_err krb5support gssapi_krb5
+VERSION_MAP= ${.CURDIR}/version.map
SRCS= decrypt_key.c \
encrypt_key.c \
diff --git a/krb5/lib/kdb/version.map b/krb5/lib/kdb/version.map
new file mode 100644
index 000000000000..9522af1e9edd
--- /dev/null
+++ b/krb5/lib/kdb/version.map
@@ -0,0 +1,111 @@
+KRB5_KDB5_1.0 {
+ global:
+ krb5_db_setup_lib_handle;
+ krb5_db_open;
+ krb5_db_inited;
+ krb5_db_alloc;
+ krb5_db_free;
+ krb5_db_allowed_to_delegate_from;
+ krb5_db_audit_as_req;
+ krb5_db_check_allowed_to_delegate;
+ krb5_db_get_s4u_x509_principal;
+ krb5_db_check_policy_as;
+ krb5_db_check_policy_tgs;
+ krb5_db_check_transited_realms;
+ krb5_db_create;
+ krb5_db_delete_principal;
+ krb5_db_destroy;
+ krb5_db_fetch_mkey;
+ krb5_db_fetch_mkey_list;
+ krb5_db_fini;
+ krb5_db_free_principal;
+ krb5_db_get_age;
+ krb5_db_get_key_data_kvno;
+ krb5_db_get_context;
+ krb5_db_get_principal;
+ krb5_db_issue_pac;
+ krb5_db_iterate;
+ krb5_db_lock;
+ krb5_db_mkey_list_alias;
+ krb5_db_put_principal;
+ krb5_db_refresh_config;
+ krb5_db_rename_principal;
+ krb5_db_set_context;
+ krb5_db_setup_mkey_name;
+ krb5_db_unlock;
+ krb5_db_store_master_key;
+ krb5_db_store_master_key_list;
+ krb5_dbe_apw;
+ krb5_dbe_ark;
+ krb5_dbe_cpw;
+ krb5_dbe_create_key_data;
+ krb5_dbe_crk;
+ krb5_dbe_find_act_mkey;
+ krb5_dbe_fetch_act_key_list;
+ krb5_dbe_find_enctype;
+ krb5_dbe_find_mkey;
+ krb5_dbe_free_actkvno_list;
+ krb5_dbe_free_key_data_contents;
+ krb5_dbe_free_mkey_aux_list;
+ krb5_dbe_free_key_list;
+ krb5_dbe_free_string;
+ krb5_dbe_free_strings;
+ krb5_dbe_get_mkvno;
+ krb5_dbe_get_string;
+ krb5_dbe_get_strings;
+ krb5_dbe_compute_salt;
+ krb5_dbe_lookup_last_admin_unlock;
+ krb5_dbe_lookup_last_pwd_change;
+ krb5_dbe_lookup_actkvno;
+ krb5_dbe_lookup_mkey_aux;
+ krb5_dbe_lookup_mkvno;
+ krb5_dbe_lookup_mod_princ_data;
+ krb5_dbe_lookup_tl_data;
+ krb5_dbe_search_enctype;
+ krb5_dbe_set_string;
+ krb5_dbe_specialize_salt;
+ krb5_dbe_update_actkvno;
+ krb5_dbe_update_last_admin_unlock;
+ krb5_dbe_update_last_pwd_change;
+ krb5_dbe_update_mkey_aux;
+ krb5_dbe_update_mkvno;
+ krb5_dbe_update_mod_princ_data;
+ krb5_dbe_update_tl_data;
+ krb5_db_update_tl_data;
+ krb5_dbe_def_encrypt_key_data;
+ krb5_dbe_def_decrypt_key_data;
+ krb5_dbe_decrypt_key_data;
+ krb5_dbe_encrypt_key_data;
+ krb5_kt_kdb_ops;
+ krb5_ktkdb_close;
+ krb5_ktkdb_get_entry;
+ krb5_ktkdb_resolve;
+ krb5_ktkdb_set_context;
+ krb5_mkey_pwd_prompt1;
+ krb5_mkey_pwd_prompt2;
+ krb5_db_create_policy;
+ krb5_db_get_policy;
+ krb5_db_put_policy;
+ krb5_db_iter_policy;
+ krb5_db_delete_policy;
+ krb5_db_free_policy;
+ krb5_def_store_mkey_list;
+ krb5_db_promote;
+ krb5_db_register_keytab;
+ ulog_add_update;
+ ulog_init_header;
+ ulog_map;
+ ulog_set_role;
+ ulog_free_entries;
+ xdr_kdb_last_t;
+ xdr_kdb_incr_result_t;
+ xdr_kdb_fullresync_result_t;
+ ulog_fini;
+ ulog_get_entries;
+ ulog_get_last;
+ ulog_get_sno_status;
+ ulog_replay;
+ ulog_set_last;
+ xdr_kdb_incr_update_t;
+ krb5_dbe_sort_key_data;
+};
diff --git a/krb5/lib/krad/Makefile b/krb5/lib/krad/Makefile
index 4b18af482207..28751d9bf9b6 100644
--- a/krb5/lib/krad/Makefile
+++ b/krb5/lib/krad/Makefile
@@ -17,6 +17,7 @@ LIB= krad
# SHLIB_MAJOR= 0
LDFLAGS=-Wl,--no-undefined
LIBADD= krb5 k5crypto com_err krb5profile krb5support verto
+VERSION_MAP= ${.CURDIR}/version.map
SRCS= attr.c \
attrset.c \
diff --git a/krb5/lib/krad/version.map b/krb5/lib/krad/version.map
new file mode 100644
index 000000000000..7e058d9bd494
--- /dev/null
+++ b/krb5/lib/krad/version.map
@@ -0,0 +1,26 @@
+KRB5_KRAD_1.0 {
+ global:
+ krad_code_name2num;
+ krad_code_num2name;
+ krad_attr_name2num;
+ krad_attr_num2name;
+ krad_attrset_new;
+ krad_attrset_copy;
+ krad_attrset_free;
+ krad_attrset_add;
+ krad_attrset_add_number;
+ krad_attrset_del;
+ krad_attrset_get;
+ krad_packet_bytes_needed;
+ krad_packet_free;
+ krad_packet_new_request;
+ krad_packet_new_response;
+ krad_packet_decode_request;
+ krad_packet_decode_response;
+ krad_packet_encode;
+ krad_packet_get_code;
+ krad_packet_get_attr;
+ krad_client_new;
+ krad_client_free;
+ krad_client_send;
+};
diff --git a/krb5/lib/krb5/Makefile b/krb5/lib/krb5/Makefile
index bf90c7fc80f7..76f40a3174cc 100644
--- a/krb5/lib/krb5/Makefile
+++ b/krb5/lib/krb5/Makefile
@@ -17,6 +17,7 @@ LIB= krb5
LDFLAGS=-Wl,--no-undefined
LIBADD= krb5profile k5crypto com_err krb5support
# SHLIB_MAJOR= 3
+VERSION_MAP= ${.CURDIR}/version.map
SRCS= krb5_libinit.c
diff --git a/krb5/lib/krb5/version.map b/krb5/lib/krb5/version.map
new file mode 100644
index 000000000000..bd852023ff6c
--- /dev/null
+++ b/krb5/lib/krb5/version.map
@@ -0,0 +1,658 @@
+KRB5_KRB5_1.0 {
+ global:
+ _krb5_conf_boolean;
+ decode_krb5_ad_kdcissued;
+ decode_krb5_ap_rep;
+ decode_krb5_ap_rep_enc_part;
+ decode_krb5_ap_req;
+ decode_krb5_as_rep;
+ decode_krb5_as_req;
+ decode_krb5_authdata;
+ decode_krb5_authenticator;
+ decode_krb5_cammac;
+ decode_krb5_cred;
+ decode_krb5_enc_cred_part;
+ decode_krb5_enc_data;
+ decode_krb5_enc_kdc_rep_part;
+ decode_krb5_enc_priv_part;
+ decode_krb5_enc_sam_response_enc_2;
+ decode_krb5_enc_tkt_part;
+ decode_krb5_encryption_key;
+ decode_krb5_error;
+ decode_krb5_etype_info;
+ decode_krb5_etype_info2;
+ decode_krb5_fast_req;
+ decode_krb5_fast_response;
+ decode_krb5_iakerb_finished;
+ decode_krb5_iakerb_header;
+ decode_krb5_kdc_req_body;
+ decode_krb5_otp_tokeninfo;
+ decode_krb5_kkdcp_message;
+ decode_krb5_pa_enc_ts;
+ decode_krb5_pa_for_user;
+ decode_krb5_pa_fx_fast_reply;
+ decode_krb5_pa_fx_fast_request;
+ decode_krb5_pa_otp_challenge;
+ decode_krb5_pa_otp_req;
+ decode_krb5_pa_otp_enc_req;
+ decode_krb5_pa_pac_options;
+ decode_krb5_pa_pac_req;
+ decode_krb5_pa_s4u_x509_user;
+ decode_krb5_pa_spake;
+ decode_krb5_padata_sequence;
+ decode_krb5_priv;
+ decode_krb5_safe;
+ decode_krb5_sam_challenge_2;
+ decode_krb5_sam_challenge_2_body;
+ decode_krb5_sam_response_2;
+ decode_krb5_secure_cookie;
+ decode_krb5_setpw_req;
+ decode_krb5_spake_factor;
+ decode_krb5_tgs_rep;
+ decode_krb5_tgs_req;
+ decode_krb5_ticket;
+ decode_krb5_typed_data;
+ decode_utf8_strings;
+ encode_krb5_ad_kdcissued;
+ encode_krb5_ap_rep;
+ encode_krb5_ap_rep_enc_part;
+ encode_krb5_ap_req;
+ encode_krb5_as_rep;
+ encode_krb5_as_req;
+ encode_krb5_authdata;
+ encode_krb5_authenticator;
+ encode_krb5_cammac;
+ encode_krb5_checksum;
+ encode_krb5_cred;
+ encode_krb5_enc_cred_part;
+ encode_krb5_enc_data;
+ encode_krb5_enc_kdc_rep_part;
+ encode_krb5_enc_priv_part;
+ encode_krb5_enc_sam_response_enc_2;
+ encode_krb5_enc_tkt_part;
+ encode_krb5_encryption_key;
+ encode_krb5_error;
+ encode_krb5_etype_info;
+ encode_krb5_etype_info2;
+ encode_krb5_fast_response;
+ encode_krb5_iakerb_finished;
+ encode_krb5_iakerb_header;
+ encode_krb5_kdc_req_body;
+ encode_krb5_otp_tokeninfo;
+ encode_krb5_kkdcp_message;
+ encode_krb5_pa_enc_ts;
+ encode_krb5_pa_for_user;
+ encode_krb5_pa_fx_fast_reply;
+ encode_krb5_pa_otp_challenge;
+ encode_krb5_pa_otp_req;
+ encode_krb5_pa_otp_enc_req;
+ encode_krb5_pa_pac_options;
+ encode_krb5_pa_s4u_x509_user;
+ encode_krb5_pa_spake;
+ encode_krb5_padata_sequence;
+ encode_krb5_pkinit_supp_pub_info;
+ encode_krb5_priv;
+ encode_krb5_s4u_userid;
+ encode_krb5_safe;
+ encode_krb5_sam_challenge_2;
+ encode_krb5_sam_challenge_2_body;
+ encode_krb5_sam_response_2;
+ encode_krb5_secure_cookie;
+ encode_krb5_sp80056a_other_info;
+ encode_krb5_spake_factor;
+ encode_krb5_tgs_rep;
+ encode_krb5_tgs_req;
+ encode_krb5_ticket;
+ encode_krb5_typed_data;
+ encode_utf8_strings;
+ et_asn1_error_table;
+ et_k524_error_table;
+ et_kdb5_error_table;
+ et_krb5_error_table;
+ et_kv5m_error_table;
+ et_prof_error_table;
+ initialize_asn1_error_table;
+ initialize_k524_error_table;
+ initialize_kdb5_error_table;
+ initialize_krb5_error_table;
+ initialize_k5e1_error_table;
+ initialize_kv5m_error_table;
+ initialize_prof_error_table;
+ k5_add_empty_pa_data;
+ k5_add_pa_data_element;
+ k5_add_pa_data_from_data;
+ k5_alloc_pa_data;
+ k5_authind_decode;
+ k5_build_conf_principals;
+ k5_cc_store_primary_cred;
+ k5_ccselect_free_context;
+ k5_change_error_message_code;
+ k5_etypes_contains;
+ k5_expand_path_tokens;
+ k5_expand_path_tokens_extra;
+ k5_externalize_auth_context;
+ k5_externalize_authdata;
+ k5_externalize_authdata_context;
+ k5_externalize_context;
+ k5_externalize_keyblock;
+ k5_externalize_principal;
*** 953 LINES SKIPPED ***