Re: git: ae07a5805b19 - main - krb5: Add version maps
Date: Tue, 22 Jul 2025 16:19:23 UTC
Am Tage des Herren Tue, 22 Jul 2025 15:48:50 GMT
Cy Schubert <cy@FreeBSD.org> schrieb:
> 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 ***
>
This commit breaks buildworld for me:
[...]
--- libzfs.so.4 ---
Building shared library libzfs.so.4
cc -target x86_64-unknown-freebsd15.0 --sysroot=/usr/obj/usr/src/amd64.amd64/tmp -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -Wl,-zrelro -fstack-protector-strong -shared -Wl,-x -Wl,--fatal-warnings -Wl,--warn-shared-textrel -o libzfs.so.4 -Wl,-soname,libzfs.so.4 libzfs_changelist.pico libzfs_config.pico libzfs_crypto.pico libzfs_dataset.pico libzfs_diff.pico libzfs_import.pico libzfs_iter.pico libzfs_mount.pico libzfs_pool.pico libzfs_sendrecv.pico libzfs_status.pico libzfs_util.pico libzfs_compat.pico libzfs_zmount.pico libshare.pico nfs.pico os/freebsd/nfs.pico os/freebsd/smb.pico cityhash.pico zfeature_common.pico zfs_comutil.pico zfs_deleg.pico zfs_fletcher.pico zfs_fletcher_superscalar.pico zfs_fletcher_superscalar4.pico zfs_namecheck.pico zfs_prop.pico zfs_valstr.pico zpool_prop.pico zprop_common.pico zfs_fletcher_intel.pico zfs_fletcher_sse.pico zfs_fletcher_avx512.pico -lavl -lbsdxml -lcrypto -lgeom -lm -lmd -lnvpair -lrt -lumem -lutil -luutil -lz -lzfs_core -lzutil -lpthread
--- krb5/lib/krb5__L ---
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'et_asn1_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'et_k524_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'et_kdb5_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'et_krb5_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'et_kv5m_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'et_prof_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_asn1_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_k524_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_kdb5_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_krb5_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_k5e1_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_kv5m_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initialize_prof_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_abandon' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_add_relation' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_clear_relation' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_flush' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_flush_to_buffer' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_flush_to_file' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'profile_free_buffer' failed: symbol not defined
ld: error: too many errors emitted, stopping now (use --error-limit=0 to see all errors)
cc: error: linker command failed with exit code 1 (use -v to see invocation)
*** [libkrb5.so.121] Error code 1
make[4]: stopped making "all" in /usr/src/krb5/lib/krb5
make[4]: 1 error
[...]
Kind regards
oh
--
A FreeBSD user