Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Jul 2025 18:19:23 +0200
From:      A FreeBSD User <freebsd@walstatt-de.de>
To:        Cy Schubert <cy@FreeBSD.org>
Cc:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   Re: git: ae07a5805b19 - main - krb5: Add version maps
Message-ID:  <20250722181950.436cf5f2@thor.sb211.local>
In-Reply-To: <202507221548.56MFmoo2060272@gitrepo.freebsd.org>
References:  <202507221548.56MFmoo2060272@gitrepo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_/3b9oI2.3_7A1jvWoWXZscF=
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

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:
>=20
> URL: https://cgit.FreeBSD.org/src/commit/?id=3Dae07a5805b1906f29e786f415d=
67bef334557bd3
>=20
> 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
>=20
>     krb5: Add version maps
>    =20
>     Shared objects must have version maps. These were copied from upstrea=
m's
>     *.exports files.
>    =20
>     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(+)
>=20
> 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=3D		k5crypto
>  # SHLIB_MAJOR=3D	3
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	com_err krb5support crypto
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  # 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=3D		gssapi_krb5
>  # SHLIB_MAJOR=3D	2
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	krb5 k5crypto com_err krb5profile krb5support
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  # 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=3D		kadm5clnt_mit
>  # SHLIB_MAJOR=3D	12
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	krb5profile gssrpc gssapi_krb5 krb5 k5crypto krb5support com_e=
rr
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  SRCS=3D	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=3D		kadm5srv_mit
>  # SHLIB_MAJOR=3D	12
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	krb5profile gssrpc gssapi_krb5 kdb5 krb5 k5crypto krb5support =
com_err
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  INCSDIR=3D	${INCLUDEDIR}/kadm5
> =20
> 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=3D		kdb5
>  # SHLIB_MAJOR=3D	10
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	krb5profile gssrpc krb5 k5crypto com_err krb5support gssapi_kr=
b5
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  SRCS=3D	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=3D	krad
>  # SHLIB_MAJOR=3D	0
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	krb5 k5crypto com_err krb5profile krb5support verto
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  SRCS=3D	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=3D		krb5
>  LDFLAGS=3D-Wl,--no-undefined
>  LIBADD=3D	krb5profile k5crypto com_err krb5support
>  # SHLIB_MAJOR=3D	3
> +VERSION_MAP=3D	${.CURDIR}/version.map
> =20
>  SRCS=3D	krb5_libinit.c
> =20
> 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 ***
>=20

This commit breaks buildworld for me:

[...]
--- libzfs.so.4 ---
Building shared library libzfs.so.4
cc -target x86_64-unknown-freebsd15.0 --sysroot=3D/usr/obj/usr/src/amd64.am=
d64/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-text=
rel  -o libzfs.so.4 -Wl,-soname,libzfs.so.4 libzfs_changelist.pico libzfs_c=
onfig.pico libzfs_crypto.pico libzfs_dataset.pico libzfs_diff.pico libzfs_i=
mport.pico libzfs_iter.pico libzfs_mount.pico libzfs_pool.pico libzfs_sendr=
ecv.pico libzfs_status.pico libzfs_util.pico libzfs_compat.pico libzfs_zmou=
nt.pico libshare.pico nfs.pico os/freebsd/nfs.pico os/freebsd/smb.pico city=
hash.pico zfeature_common.pico zfs_comutil.pico zfs_deleg.pico zfs_fletcher=
.pico zfs_fletcher_superscalar.pico zfs_fletcher_superscalar4.pico zfs_name=
check.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  -la=
vl  -lbsdxml  -lcrypto  -lgeom  -lm  -lmd  -lnvpair   -lrt  -lumem  -lutil =
 -luutil  -lz  -lzfs_core  -lzutil -lpthread=20
--- 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 'initiali=
ze_asn1_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initiali=
ze_k524_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initiali=
ze_kdb5_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initiali=
ze_krb5_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initiali=
ze_k5e1_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initiali=
ze_kv5m_error_table' failed: symbol not defined
ld: error: version script assignment of 'KRB5_KRB5_1.0' to symbol 'initiali=
ze_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=3D0 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

--=20

A FreeBSD user

--Sig_/3b9oI2.3_7A1jvWoWXZscF=
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature

-----BEGIN PGP SIGNATURE-----

iHUEARYKAB0WIQRQheDybVktG5eW/1Kxzvs8OqokrwUCaH+6JgAKCRCxzvs8Oqok
rz1VAQDDq4V6MObXYvyA5liPSVRzt6VwRI5VIOtXiDwnLQOMCgEAwohmaDUqbUm8
aSpBkv1bYWobutUpSggRP2MaeRNPmwY=
=L1s/
-----END PGP SIGNATURE-----

--Sig_/3b9oI2.3_7A1jvWoWXZscF=--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20250722181950.436cf5f2>