The branch main has been updated by cy:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=1876de606eb876b7a97beccfe6fcc89e60a72a25

commit 1876de606eb876b7a97beccfe6fcc89e60a72a25
Author:     Cy Schubert <[email protected]>
AuthorDate: 2025-12-18 00:50:44 +0000
Commit:     Cy Schubert <[email protected]>
CommitDate: 2026-01-20 13:41:02 +0000

    krb5: Expose missing symbols
    
    Add symbols found in the port but not in base. This requires replacing
    a shared libkrb5profile.so with libkrb5profile.a (with -fPIC so it can
    be used by shared libraries). We do this by making libkrb5profile
    INTERNALLIB.
    
    Base currently has libkrb5profile in a shared library. The patch moves
    those functions to the various "consumer" libraries as the port does.
    
    Symbols that should be in the other libraries are in libkrb5profile.so.
    This is causing some ports issues.
    
    PR:             291695
    Reported by:    michaelo, markj,  Chris Inacio <[email protected]>
    Tested by:      michaelo
    Fixes:          ae07a5805b19
    Reviewed by:    michaelo (previous version)
    MFC after:      2 weeks
    Differential revision:  https://reviews.freebsd.org/D54323
---
 ObsoleteFiles.inc                        |    4 +
 krb5/lib/apputils/Makefile               |    1 +
 krb5/lib/crypto/Makefile                 |    3 +-
 krb5/lib/crypto/version.map              |   59 ++
 krb5/lib/gssapi/Makefile                 |    3 +-
 krb5/lib/gssapi/version.map              |  308 ++++++++
 krb5/lib/kadm5clnt/Makefile              |    3 +-
 krb5/lib/kadm5clnt/version.map           |   36 +
 krb5/lib/kadm5srv/Makefile               |    3 +-
 krb5/lib/kadm5srv/version.map            |   29 +
 krb5/lib/kadmin_common/Makefile          |    1 +
 krb5/lib/kdb/Makefile                    |    3 +-
 krb5/lib/kdb/version.map                 |   27 +
 krb5/lib/kprop_util/Makefile             |    1 +
 krb5/lib/krad/Makefile                   |    1 +
 krb5/lib/krad/version.map                |   11 +
 krb5/lib/krb5/Makefile                   |    5 +-
 krb5/lib/krb5/version.map                | 1196 ++++++++++++++++++++++++++++++
 krb5/lib/rpc/Makefile                    |    1 +
 krb5/lib/rpc/version.map                 |   28 +
 krb5/libexec/kadmind/Makefile            |    3 +-
 krb5/libexec/kdc/Makefile                |    1 +
 krb5/libexec/kprop/Makefile              |    3 +-
 krb5/libexec/kpropd/Makefile             |    3 +-
 krb5/libexec/kproplog/Makefile           |    3 +-
 krb5/plugins/audit/Makefile              |    1 +
 krb5/plugins/k5tls/Makefile              |    3 +-
 krb5/plugins/kdb/db2/Makefile            |    3 +-
 krb5/plugins/kdb/db2/version.map         |  148 ++++
 krb5/plugins/preauth/otp/Makefile        |    3 +-
 krb5/plugins/preauth/otp/version.map     |    3 +
 krb5/plugins/preauth/pkinit/Makefile     |    3 +-
 krb5/plugins/preauth/pkinit/version.map  |  128 ++++
 krb5/plugins/preauth/spake/Makefile      |    3 +-
 krb5/plugins/preauth/spake/version.map   |   22 +
 krb5/plugins/preauth/test/Makefile       |    3 +-
 krb5/plugins/preauth/test/version.map    |    2 +
 krb5/usr.bin/gss-client/Makefile         |    3 +-
 krb5/usr.bin/kadmin/Makefile             |    3 +-
 krb5/usr.bin/kdestroy/Makefile           |    3 +-
 krb5/usr.bin/kinit/Makefile              |    3 +-
 krb5/usr.bin/klist/Makefile              |    3 +-
 krb5/usr.bin/kpasswd/Makefile            |    3 +-
 krb5/usr.bin/ksu/Makefile                |    1 +
 krb5/usr.bin/kswitch/Makefile            |    3 +-
 krb5/usr.bin/ktutil/Makefile             |    3 +-
 krb5/usr.bin/kvno/Makefile               |    3 +-
 krb5/usr.bin/sclient/Makefile            |    3 +-
 krb5/usr.bin/sim_client/Makefile         |    3 +-
 krb5/usr.sbin/gss-server/Makefile        |    3 +-
 krb5/usr.sbin/kadmin.local/Makefile      |    3 +-
 krb5/usr.sbin/kdb5_util/Makefile         |    3 +-
 krb5/usr.sbin/sim_server/Makefile        |    3 +-
 krb5/usr.sbin/sserver/Makefile           |    3 +-
 krb5/util/et/version.map                 |    2 +
 krb5/util/profile/Makefile               |    4 +-
 krb5/util/profile/version.map            |   74 --
 krb5/util/support/version.map            |    5 +
 krb5/util/verto/version.map              |    7 +
 lib/libpam/modules/pam_krb5/Makefile     |    1 +
 lib/libpam/modules/pam_ksu/Makefile      |    1 +
 share/mk/src.libnames.mk                 |    2 +-
 tools/build/depend-cleanup.sh            |    9 +
 tools/build/mk/OptionalObsoleteFiles.inc |    2 -
 64 files changed, 2103 insertions(+), 111 deletions(-)

diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index 8f44feb757e5..5231cbb3fe13 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -51,6 +51,10 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20260120: Made libkrb5profile INTERNALLIB
+OLD_LIBS+=usr/lib/libkrb5profile.so.122
+OLD_FILES+=usr/lib/libkrb5profile.so
+
 # 20260114: remove ncurses html documentation
 OLD_FILES+=usr/share/doc/ncurses/hackguide.html
 OLD_FILES+=usr/share/doc/ncurses/ncurses-intro.html
diff --git a/krb5/lib/apputils/Makefile b/krb5/lib/apputils/Makefile
index 1a79b3800863..38491579a619 100644
--- a/krb5/lib/apputils/Makefile
+++ b/krb5/lib/apputils/Makefile
@@ -22,6 +22,7 @@ SRCS= net-server.c \
 CFLAGS+=-I${KRB5_DIR}/lib/apputils \
        -I${KRB5_DIR}/include \
        -I${KRB5_SRCTOP}/include \
+       -I${KRB5_OBJTOP}/util/profile \
        -I${.OBJDIR}
 
 .include <bsd.lib.mk>
diff --git a/krb5/lib/crypto/Makefile b/krb5/lib/crypto/Makefile
index 9521b48f020c..a130a858cfa4 100644
--- a/krb5/lib/crypto/Makefile
+++ b/krb5/lib/crypto/Makefile
@@ -41,6 +41,7 @@ CFLAGS+=-I${.CURDIR:H:H}/include \
        -I${KRB5_DIR}/lib/crypto/builtin/md5 \
        -I${KRB5_DIR}/lib/crypto/builtin/sha1 \
        -I${KRB5_DIR}/lib/crypto/builtin/sha2 \
-       -I${SRCTOP}/crypto/openssl/include
+       -I${SRCTOP}/crypto/openssl/include \
+       -I${KRB5_OBJTOP}/util/profile
 
 .include <bsd.lib.mk>
diff --git a/krb5/lib/crypto/version.map b/krb5/lib/crypto/version.map
index 702abf195db0..4cb528537201 100644
--- a/krb5/lib/crypto/version.map
+++ b/krb5/lib/crypto/version.map
@@ -106,5 +106,64 @@ k5crypto_3_MIT {
                k5_enctype_to_ssf;
                krb5int_c_deprecated_enctype;
                krb5_c_checksum_length;
+               k5_derive_random_rfc3961;
+               k5_des_fixup_key_parity;
+               k5_iov_cursor_get;
+               k5_iov_cursor_init;
+               k5_iov_cursor_put;
+               k5_rand2key_des3;
+               k5_rand2key_direct;
+               k5_sp800_108_counter_hmac;
+               k5_sp800_108_feedback_cmac;
+               krb5_decrypt_data;
+               krb5_random_confounder;
+               krb5int_MD4Final;
+               krb5int_MD4Init;
+               krb5int_MD4Update;
+               krb5int_aes2_crypto_length;
+               krb5int_aes2_prf;
+               krb5int_aes2_string_to_key;
+               krb5int_aes_crypto_length;
+               krb5int_aes_string_to_key;
+               krb5int_arcfour_crypto_length;
+               krb5int_arcfour_decrypt;
+               krb5int_arcfour_encrypt;
+               krb5int_arcfour_prf;
+               krb5int_arcfour_string_to_key;
+               krb5int_arcfour_translate_usage;
+               krb5int_c_iov_decrypt_stream;
+               krb5int_c_locate_iov;
+               krb5int_c_padding_length;
+               krb5int_camellia_crypto_length;
+               krb5int_camellia_string_to_key;
+               krb5int_cksumtypes_list;
+               krb5int_default_free_state;
+               krb5int_derive_keyblock;
+               krb5int_des_init_state;
+               krb5int_des_prf;
+               krb5int_dk_checksum;
+               krb5int_dk_cmac_checksum;
+               krb5int_dk_cmac_decrypt;
+               krb5int_dk_cmac_encrypt;
+               krb5int_dk_cmac_prf;
+               krb5int_dk_crypto_length;
+               krb5int_dk_decrypt;
+               krb5int_dk_encrypt;
+               krb5int_dk_prf;
+               krb5int_dk_string_to_key;
+               krb5int_enctypes_list;
+               krb5int_etm_checksum;
+               krb5int_etm_decrypt;
+               krb5int_etm_encrypt;
+               krb5int_hash_sha1;
+               krb5int_hmac_keyblock;
+               krb5int_hmacmd5_checksum;
+               krb5int_pbkdf2_hmac;
+               krb5int_raw_crypto_length;
+               krb5int_raw_decrypt;
+               krb5int_raw_encrypt;
+               krb5int_unkeyed_checksum;
+               mit_des_fixup_key_parity;
+               unsupported_etypes;
 };
 HIDDEN { local: __*; _rest*; _save*; *; };
diff --git a/krb5/lib/gssapi/Makefile b/krb5/lib/gssapi/Makefile
index a434b29a2dfb..eca8dd6ffde9 100644
--- a/krb5/lib/gssapi/Makefile
+++ b/krb5/lib/gssapi/Makefile
@@ -43,7 +43,8 @@ CFLAGS+=${DEFINES} \
        -I${KRB5_OBJTOP}/lib/gssapi \
        -I${KRB5_OBJTOP}/lib \
        -I${KRB5_DIR}/include \
-       -I${KRB5_SRCTOP}/include
+       -I${KRB5_SRCTOP}/include \
+       -I${KRB5_OBJTOP}/util/profile
 
 .include <bsd.lib.mk>
 
diff --git a/krb5/lib/gssapi/version.map b/krb5/lib/gssapi/version.map
index 42f32cc55edf..e6358e8226fe 100644
--- a/krb5/lib/gssapi/version.map
+++ b/krb5/lib/gssapi/version.map
@@ -172,5 +172,313 @@ gssapi_krb5_2_MIT {
                gss_add_cred_from;
                gss_store_cred_into;
                gssint_g_seqstate_init;
+               GSS_C_INQ_ODBC_SESSION_KEY;
+               et_ggss_error_table;
+               et_k5g_error_table;
+               generic_gss_add_buffer_set_member;
+               generic_gss_add_oid_set_member;
+               generic_gss_copy_oid;
+               generic_gss_copy_oid_set;
+               generic_gss_create_empty_buffer_set;
+               generic_gss_create_empty_oid_set;
+               generic_gss_display_mech_attr;
+               generic_gss_oid_compose;
+               generic_gss_oid_decompose;
+               generic_gss_oid_to_str;
+               generic_gss_release_buffer;
+               generic_gss_release_buffer_set;
+               generic_gss_release_oid;
+               generic_gss_release_oid_set;
+               generic_gss_str_to_oid;
+               generic_gss_test_oid_set_member;
+               gss_krb5int_ccache_name;
+               gss_krb5int_copy_ccache;
+               gss_krb5int_export_lucid_sec_context;
+               gss_krb5int_extract_authtime_from_sec_context;
+               gss_krb5int_extract_authz_data_from_sec_context;
+               gss_krb5int_free_lucid_sec_context;
+               gss_krb5int_get_cred_impersonator;
+               gss_krb5int_get_tkt_flags;
+               gss_krb5int_import_cred;
+               gss_krb5int_initialize_library;
+               gss_krb5int_inq_odbc_session_key;
+               gss_krb5int_inq_sspi_session_key;
+               gss_krb5int_lib_fini;
+               gss_krb5int_lib_init;
+               gss_krb5int_make_seal_token_v3_iov;
+               gss_krb5int_register_acceptor_identity;
+               gss_krb5int_rotate_left;
+               gss_krb5int_sec_context_sasl_ssf;
+               gss_krb5int_set_allowable_enctypes;
+               gss_krb5int_set_cred_rcache;
+               gss_krb5int_unseal_v3_iov;
+               gss_ma_known_attrs;
+               gss_mech_set_spnego;
+               gss_mech_spnego;
+               gss_spnegoint_lib_fini;
+               gss_spnegoint_lib_init;
+               gssint_convert_name_to_union_name;
+               gssint_create_copy_buffer;
+               gssint_create_union_context;
+               gssint_delete_internal_sec_context;
+               gssint_display_internal_name;
+               gssint_export_internal_name;
+               gssint_g_display_com_err_status;
+               gssint_g_display_major_status;
+               gssint_g_get_token_header;
+               gssint_g_make_string_buffer;
+               gssint_g_make_token_header;
+               gssint_g_seqstate_check;
+               gssint_g_seqstate_externalize;
+               gssint_g_seqstate_free;
+               gssint_g_seqstate_internalize;
+               gssint_g_seqstate_size;
+               gssint_g_token_size;
+               gssint_g_verify_token_header;
+               gssint_get_mech_type;
+               gssint_get_mechanism;
+               gssint_get_mechanism_cred;
+               gssint_get_modOptions;
+               gssint_get_public_oid;
+               gssint_import_internal_name;
+               gssint_krb5_keytab_lock;
+               gssint_make_public_oid_set;
+               gssint_mecherrmap_destroy;
+               gssint_mecherrmap_get;
+               gssint_mecherrmap_init;
+               gssint_mecherrmap_map;
+               gssint_mecherrmap_map_errcode;
+               gssint_mechglue_initialize_library;
+               gssint_register_mechinfo;
+               gssint_release_internal_name;
+               gssint_select_mech_type;
+               gssint_unwrap_aead;
+               gssint_wrap_aead;
+               gssspi_exchange_meta_data;
+               gssspi_query_mechanism_info;
+               gssspi_query_meta_data;
+               iakerb_gss_accept_sec_context;
+               iakerb_gss_acquire_cred;
+               iakerb_gss_acquire_cred_from;
+               iakerb_gss_acquire_cred_with_password;
+               iakerb_gss_context_time;
+               iakerb_gss_delete_sec_context;
+               iakerb_gss_export_sec_context;
+               iakerb_gss_get_mic;
+               iakerb_gss_get_mic_iov;
+               iakerb_gss_get_mic_iov_length;
+               iakerb_gss_import_name;
+               iakerb_gss_import_sec_context;
+               iakerb_gss_init_sec_context;
+               iakerb_gss_inquire_context;
+               iakerb_gss_inquire_sec_context_by_oid;
+               iakerb_gss_process_context_token;
+               iakerb_gss_pseudo_random;
+               iakerb_gss_set_sec_context_option;
+               iakerb_gss_unwrap;
+               iakerb_gss_unwrap_iov;
+               iakerb_gss_verify_mic;
+               iakerb_gss_verify_mic_iov;
+               iakerb_gss_wrap;
+               iakerb_gss_wrap_iov;
+               iakerb_gss_wrap_iov_length;
+               iakerb_gss_wrap_size_limit;
+               iakerb_make_finished;
+               iakerb_verify_finished;
+               initialize_ggss_error_table;
+               initialize_k5g_error_table;
+               kg_acceptor_princ;
+               kg_all_mechs;
+               kg_allocate_iov;
+               kg_arcfour_docrypt;
+               kg_arcfour_docrypt_iov;
+               kg_caller_provided_ccache_name;
+               kg_checksum_channel_bindings;
+               kg_compare_name;
+               kg_compose_deleg_cred;
+               kg_confounder_size;
+               kg_cred_resolve;
+               kg_cred_set_initial_refresh;
+               kg_cred_time_to_refresh;
+               kg_ctx_externalize;
+               kg_ctx_internalize;
+               kg_ctx_size;
+               kg_decrypt;
+               kg_decrypt_iov;
+               kg_duplicate_name;
+               kg_encrypt;
+               kg_encrypt_inplace;
+               kg_encrypt_iov;
+               kg_fixup_padding_iov;
+               kg_get_ccache_name;
+               kg_get_defcred;
+               kg_get_seq_num;
+               kg_init_name;
+               kg_integ_only_iov;
+               kg_iov_msglen;
+               kg_kdc_flag_mutex;
+               kg_locate_header_iov;
+               kg_locate_iov;
+               kg_make_checksum_iov_v1;
+               kg_make_checksum_iov_v3;
+               kg_make_confounder;
+               kg_make_seed;
+               kg_make_seq_num;
+               kg_release_iov;
+               kg_release_name;
+               kg_seal;
+               kg_seal_iov;
+               kg_seal_iov_length;
+               kg_set_ccache_name;
+               kg_setup_keys;
+               kg_sync_ccache_name;
+               kg_translate_flag_iov;
+               kg_unseal_iov;
+               kg_value_from_cred_store;
+               kg_verify_checksum_iov_v3;
+               kg_verify_checksum_v1;
+               kg_verify_checksum_v3;
+               kg_verify_mic_v1;
+               krb5_gss_accept_sec_context;
+               krb5_gss_accept_sec_context_ext;
+               krb5_gss_acquire_cred;
+               krb5_gss_acquire_cred_from;
+               krb5_gss_acquire_cred_impersonate_name;
+               krb5_gss_acquire_cred_with_password;
+               krb5_gss_canonicalize_name;
+               krb5_gss_compare_name;
+               krb5_gss_context_time;
+               krb5_gss_convert_static_mech_oid;
+               krb5_gss_delete_error_info;
+               krb5_gss_delete_name_attribute;
+               krb5_gss_delete_sec_context;
+               krb5_gss_display_name;
+               krb5_gss_display_status;
+               krb5_gss_duplicate_name;
+               krb5_gss_export_cred;
+               krb5_gss_export_name;
+               krb5_gss_export_name_composite;
+               krb5_gss_export_sec_context;
+               krb5_gss_get_error_message;
+               krb5_gss_get_mic;
+               krb5_gss_get_mic_iov;
+               krb5_gss_get_mic_iov_length;
+               krb5_gss_get_name_attribute;
+               krb5_gss_import_cred;
+               krb5_gss_import_name;
+               krb5_gss_import_sec_context;
+               krb5_gss_indicate_mechs;
+               krb5_gss_init_context;
+               krb5_gss_init_sec_context;
+               krb5_gss_init_sec_context_ext;
+               krb5_gss_inquire_context;
+               krb5_gss_inquire_cred;
+               krb5_gss_inquire_cred_by_mech;
+               krb5_gss_inquire_name;
+               krb5_gss_inquire_names_for_mech;
+               krb5_gss_inquire_sec_context_by_oid;
+               krb5_gss_internal_release_oid;
+               krb5_gss_map_name_to_any;
+               krb5_gss_oid_array;
+               krb5_gss_process_context_token;
+               krb5_gss_pseudo_random;
+               krb5_gss_release_any_name_mapping;
+               krb5_gss_release_cred;
+               krb5_gss_release_name;
+               krb5_gss_release_oid;
+               krb5_gss_save_error_info;
+               krb5_gss_save_error_message;
+               krb5_gss_save_error_string;
+               krb5_gss_set_name_attribute;
+               krb5_gss_set_sec_context_option;
+               krb5_gss_store_cred;
+               krb5_gss_store_cred_into;
+               krb5_gss_unwrap;
+               krb5_gss_unwrap_iov;
+               krb5_gss_validate_cred;
+               krb5_gss_validate_cred_1;
+               krb5_gss_verify_mic;
+               krb5_gss_verify_mic_iov;
+               krb5_gss_wrap;
+               krb5_gss_wrap_iov;
+               krb5_gss_wrap_iov_length;
+               krb5_gss_wrap_size_limit;
+               krb5int_gss_use_kdc_context;
+               negoex_accept;
+               negoex_add_auth_mech;
+               negoex_add_exchange_message;
+               negoex_add_nego_message;
+               negoex_add_verify_message;
+               negoex_add_verify_no_key_alert;
+               negoex_common_auth_schemes;
+               negoex_delete_auth_mech;
+               negoex_init;
+               negoex_locate_alert_message;
+               negoex_locate_auth_scheme;
+               negoex_locate_exchange_message;
+               negoex_locate_nego_message;
+               negoex_locate_verify_message;
+               negoex_parse_token;
+               negoex_prep_context_for_negoex;
+               negoex_prep_context_for_spnego;
+               negoex_random;
+               negoex_release_context;
+               negoex_restrict_auth_schemes;
+               negoex_select_auth_mech;
+               spnego_gss_accept_sec_context;
+               spnego_gss_acquire_cred;
+               spnego_gss_acquire_cred_from;
+               spnego_gss_acquire_cred_impersonate_name;
+               spnego_gss_acquire_cred_with_password;
+               spnego_gss_compare_name;
+               spnego_gss_complete_auth_token;
+               spnego_gss_context_time;
+               spnego_gss_delete_name_attribute;
+               spnego_gss_delete_sec_context;
+               spnego_gss_display_name;
+               spnego_gss_display_name_ext;
+               spnego_gss_display_status;
+               spnego_gss_duplicate_name;
+               spnego_gss_export_cred;
+               spnego_gss_export_name_composite;
+               spnego_gss_export_sec_context;
+               spnego_gss_get_mic;
+               spnego_gss_get_mic_iov;
+               spnego_gss_get_mic_iov_length;
+               spnego_gss_get_name_attribute;
+               spnego_gss_import_cred;
+               spnego_gss_import_name;
+               spnego_gss_import_sec_context;
+               spnego_gss_init_sec_context;
+               spnego_gss_inquire_attrs_for_mech;
+               spnego_gss_inquire_context;
+               spnego_gss_inquire_cred;
+               spnego_gss_inquire_cred_by_oid;
+               spnego_gss_inquire_mech_for_saslname;
+               spnego_gss_inquire_name;
+               spnego_gss_inquire_names_for_mech;
+               spnego_gss_inquire_saslname_for_mech;
+               spnego_gss_inquire_sec_context_by_oid;
+               spnego_gss_localname;
+               spnego_gss_map_name_to_any;
+               spnego_gss_process_context_token;
+               spnego_gss_pseudo_random;
+               spnego_gss_release_any_name_mapping;
+               spnego_gss_release_cred;
+               spnego_gss_release_name;
+               spnego_gss_set_cred_option;
+               spnego_gss_set_name_attribute;
+               spnego_gss_set_neg_mechs;
+               spnego_gss_set_sec_context_option;
+               spnego_gss_unwrap;
+               spnego_gss_unwrap_aead;
+               spnego_gss_unwrap_iov;
+               spnego_gss_verify_mic;
+               spnego_gss_verify_mic_iov;
+               spnego_gss_wrap;
+               spnego_gss_wrap_aead;
+               spnego_gss_wrap_iov;
+               spnego_gss_wrap_iov_length;
+               spnego_gss_wrap_size_limit;
 };
 HIDDEN { local: __*; _rest*; _save*; *; };
diff --git a/krb5/lib/kadm5clnt/Makefile b/krb5/lib/kadm5clnt/Makefile
index ef01a5f779e3..27546a87949e 100644
--- a/krb5/lib/kadm5clnt/Makefile
+++ b/krb5/lib/kadm5clnt/Makefile
@@ -35,7 +35,8 @@ CFLAGS+=-I${KRB5_DIR}/lib \
        -I${KRB5_DIR}/include \
        -I${KRB5_OBJTOP}/include/krb5_private \
        -I${KRB5_SRCTOP}/include \
-       -I${KRB5_OBJTOP}/lib
+       -I${KRB5_OBJTOP}/lib \
+       -I${KRB5_OBJTOP}/util/profile
 
 INCSDIR=${INCLUDEDIR}/kadm5
 INCS=  admin.h \
diff --git a/krb5/lib/kadm5clnt/version.map b/krb5/lib/kadm5clnt/version.map
index bb3feb11cff1..4343dbd9f04e 100644
--- a/krb5/lib/kadm5clnt/version.map
+++ b/krb5/lib/kadm5clnt/version.map
@@ -117,5 +117,41 @@ kadm5clnt_mit_12_MIT {
                kadm5_init_iprop;
                xdr_calias_arg;
                kadm5_create_alias;
+               chpass_principal3_2;
+               chpass_principal_2;
+               chrand_principal3_2;
+               chrand_principal_2;
+               create_alias_2;
+               create_policy_2;
+               create_principal3_2;
+               create_principal_2;
+               delete_policy_2;
+               delete_principal_2;
+               et_ovk_error_table;
+               et_ovku_error_table;
+               get_policy_2;
+               get_pols_2;
+               get_principal_2;
+               get_principal_keys_2;
+               get_princs_2;
+               get_privs_2;
+               get_strings_2;
+               init_2;
+               initialize_ovk_error_table;
+               initialize_ovku_error_table;
+               krb5_aprof_get_string_all;
+               modify_policy_2;
+               modify_principal_2;
+               purgekeys_2;
+               rename_principal_2;
+               set_string_2;
+               setkey_principal3_2;
+               setkey_principal4_2;
+               setkey_principal_2;
+               xdr_gstrings_arg;
+               xdr_gstrings_ret;
+               xdr_krb5_string_attr;
+               xdr_purgekeys_arg;
+               xdr_sstring_arg;
 };
 HIDDEN { local: __*; _rest*; _save*; *; };
diff --git a/krb5/lib/kadm5srv/Makefile b/krb5/lib/kadm5srv/Makefile
index 9eecd20ca822..826a9edad25a 100644
--- a/krb5/lib/kadm5srv/Makefile
+++ b/krb5/lib/kadm5srv/Makefile
@@ -41,7 +41,8 @@ CFLAGS+=-I${KRB5_DIR}/lib \
        -I${KRB5_OBJTOP}/lib \
        -I${KRB5_OBJTOP}/lib/gssapi \
        -I${KRB5_DIR}/lib/gssapi/krb5 \
-       -I${KRB5_DIR}/lib/gssapi/generic
+       -I${KRB5_DIR}/lib/gssapi/generic \
+       -I${KRB5_OBJTOP}/util/profile
 CWARNFLAGS.gcc+=-Wno-alloc-size-larger-than
 
 GEN_KADM_ERR=  kadm_err.et
diff --git a/krb5/lib/kadm5srv/version.map b/krb5/lib/kadm5srv/version.map
index 4eb5ba7c3ead..d8dc8cfe0b0d 100644
--- a/krb5/lib/kadm5srv/version.map
+++ b/krb5/lib/kadm5srv/version.map
@@ -136,5 +136,34 @@ kadm5srv_mit_12_MIT {
                kadm5_init_iprop;
                xdr_calias_arg;
                kadm5_create_alias;
+               destroy_pwqual;
+               et_ovk_error_table;
+               et_ovku_error_table;
+               init_pwqual;
+               initialize_ovk_error_table;
+               initialize_ovku_error_table;
+               k5_kadm5_hook_alias;
+               k5_kadm5_hook_chpass;
+               k5_kadm5_hook_create;
+               k5_kadm5_hook_free_handles;
+               k5_kadm5_hook_load;
+               k5_kadm5_hook_modify;
+               k5_kadm5_hook_remove;
+               k5_kadm5_hook_rename;
+               k5_pwqual_check;
+               k5_pwqual_free_handles;
+               k5_pwqual_load;
+               k5_pwqual_name;
+               kadm5_get_admin_service_name;
+               kdb_free_keyblocks;
+               kdb_get_active_mkey;
+               kdb_get_entry;
+               kdb_get_hist_key;
+               master_keyblock;
+               pwqual_dict_initvt;
+               pwqual_empty_initvt;
+               pwqual_hesiod_initvt;
+               pwqual_princ_initvt;
+               xdr_kadm5_key_data;
 };
 HIDDEN { local: __*; _rest*; _save*; *; };
diff --git a/krb5/lib/kadmin_common/Makefile b/krb5/lib/kadmin_common/Makefile
index 9eed31bc94f3..926a7b266c05 100644
--- a/krb5/lib/kadmin_common/Makefile
+++ b/krb5/lib/kadmin_common/Makefile
@@ -27,6 +27,7 @@ CFLAGS+=-I${KRB5_DIR}/lib/krad \
        -I${KRB5_SRCTOP}/include \
        -I${KRB5_DIR}/util \
        -I${KRB5_OBJTOP}/util \
+       -I${KRB5_OBJTOP}/util/profile \
        -I${.OBJDIR}
 
 CLEANFILES=    kadmin_ct.c ktutil_ct.c
diff --git a/krb5/lib/kdb/Makefile b/krb5/lib/kdb/Makefile
index 80039ad83502..52087f9cd389 100644
--- a/krb5/lib/kdb/Makefile
+++ b/krb5/lib/kdb/Makefile
@@ -37,7 +37,8 @@ CFLAGS+=${DEFINES} \
        -I${KRB5_DIR}/lib/kdb \
        -I${KRB5_OBJTOP}/lib/kdb \
        -I${KRB5_DIR}/include \
-       -I${KRB5_SRCTOP}/include
+       -I${KRB5_SRCTOP}/include \
+       -I${KRB5_OBJTOP}/util/profile
 
 ADB_ERR=       adb_err.et
 ADB_ERR_C=     ${ADB_ERR:S/.et$/.c/}
diff --git a/krb5/lib/kdb/version.map b/krb5/lib/kdb/version.map
index 54a093ff72bc..4a0b0d3df1b7 100644
--- a/krb5/lib/kdb/version.map
+++ b/krb5/lib/kdb/version.map
@@ -110,5 +110,32 @@ kdb5_10_MIT {
                krb5_dbe_sort_key_data;
                krb5_dbe_make_alias_entry;
                krb5_dbe_read_alias;
+               et_adb_error_table;
+               initialize_adb_error_table;
+               krb5_db_def_fetch_mkey;
+               krb5_db_def_rename_principal;
+               krb5_db_load_module;
+               krb5_dbe_def_cpw;
+               krb5_dbe_def_search_enctype;
+               krb5_dbe_delete_tl_data;
+               krb5_dbe_free_tl_data;
+               krb5_def_fetch_mkey_list;
+               krb5int_delete_principal_no_log;
+               krb5int_put_principal_no_log;
+               ulog_conv_2dbentry;
+               ulog_conv_2logentry;
+               xdr_kdb_sno_t;
+               xdr_kdb_ulog_t;
+               xdr_kdbe_attr_type_t;
+               xdr_kdbe_data_t;
+               xdr_kdbe_key_t;
+               xdr_kdbe_princ_t;
+               xdr_kdbe_pw_hist_t;
+               xdr_kdbe_t;
+               xdr_kdbe_time_t;
+               xdr_kdbe_tl_t;
+               xdr_kdbe_val_t;
+               xdr_update_status_t;
+               xdr_utf8str_t;
 };
 HIDDEN { local: __*; _rest*; _save*; *; };
diff --git a/krb5/lib/kprop_util/Makefile b/krb5/lib/kprop_util/Makefile
index aaaeb969058d..d29f17e20b65 100644
--- a/krb5/lib/kprop_util/Makefile
+++ b/krb5/lib/kprop_util/Makefile
@@ -21,6 +21,7 @@ SRCS= kprop_util.c
 CFLAGS+=-I${KRB5_DIR}/lib/krad \
        -I${KRB5_DIR}/include \
        -I${KRB5_SRCTOP}/include \
+       -I${KRB5_OBJTOP}/util/profile \
        -I${.OBJDIR}
 
 .include <bsd.lib.mk>
diff --git a/krb5/lib/krad/Makefile b/krb5/lib/krad/Makefile
index 36074dff1296..17cd4f8142b5 100644
--- a/krb5/lib/krad/Makefile
+++ b/krb5/lib/krad/Makefile
@@ -27,6 +27,7 @@ SRCS= attr.c \
 CFLAGS+=-I${KRB5_DIR}/lib/krad \
        -I${KRB5_DIR}/include \
        -I${KRB5_SRCTOP}/include \
+       -I${KRB5_OBJTOP}/util/profile \
        -I${.OBJDIR}
 
 .include <bsd.lib.mk>
diff --git a/krb5/lib/krad/version.map b/krb5/lib/krad/version.map
index a18fa4665e50..6ffe589a4226 100644
--- a/krb5/lib/krad/version.map
+++ b/krb5/lib/krad/version.map
@@ -23,5 +23,16 @@ krad_0_MIT {
                krad_client_new;
                krad_client_free;
                krad_client_send;
+               kr_attr_decode;
+               kr_attr_encode;
+               kr_attr_valid;
+               kr_attrset_decode;
+               kr_attrset_encode;
+               kr_remote_cancel;
+               kr_remote_cancel_all;
+               kr_remote_equals;
+               kr_remote_free;
+               kr_remote_new;
+               kr_remote_send;
 };
 HIDDEN { local: __*; _rest*; _save*; *; };
diff --git a/krb5/lib/krb5/Makefile b/krb5/lib/krb5/Makefile
index b3587cf58c2b..b232a8a3e6ee 100644
--- a/krb5/lib/krb5/Makefile
+++ b/krb5/lib/krb5/Makefile
@@ -51,7 +51,10 @@ CFLAGS+=${DEFINES} \
        -I${KRB5_DIR}/util/profile \
        -I${KRB5_DIR}/include \
        -I${KRB5_SRCTOP}/include \
-       -I${KRB5_DIR}
+       -I${KRB5_DIR} \
+       -I${KRB5_OBJTOP}/util/profile
+
+LDFLAGS+=-Wl,--error-limit=0
 
 MANGROUPS=     KRB5
 KRB5=          k5identity.5 \
diff --git a/krb5/lib/krb5/version.map b/krb5/lib/krb5/version.map
index 3de2fdd879d0..924737afcedc 100644
--- a/krb5/lib/krb5/version.map
+++ b/krb5/lib/krb5/version.map
@@ -634,5 +634,1201 @@ krb5_3_MIT {
                k5_addr_directional_init;
                k5_print_addr;
                k5_print_addr_port;
+               _krb5_use_dns_kdc;
+               _krb5_use_dns_realm;
+               anon_princ;
+               aux_info_address_1_untagged;
+               aux_info_authdata_1_untagged;
+               aux_info_authdata_types;
+               aux_info_bitstring_data;
+               aux_info_checksum_1_untagged;
+               aux_info_der_data;
+               aux_info_etype_info2_1_def_untagged;
+               aux_info_etype_info_1_def_untagged;
+               aux_info_etype_list;
+               aux_info_gstring_data;
+               aux_info_keyblock_1_untagged;
+               aux_info_oid_data;
+               aux_info_ostring_data;
+               aux_info_pa_data_2_untagged;
+               aux_info_pa_pk_as_rep;
+               aux_info_pa_spake;
+               aux_info_princname_1_untagged;
+               aux_info_req_body_8_untagged;
+               aux_info_spake_support_0_untagged;
+               aux_info_typed_data_1_untagged;
+               aux_info_utf8_data;
+               ccselect_hostname_initvt;
+               ccselect_k5identity_initvt;
+               ccselect_realm_initvt;
+               clpreauth_encrypted_challenge_initvt;
+               clpreauth_encrypted_timestamp_initvt;
+               clpreauth_otp_initvt;
+               clpreauth_sam2_initvt;
+               decode_krb5_auth_pack;
+               decode_krb5_checksum;
+               decode_krb5_etype_list;
+               decode_krb5_kdc_dh_key_info;
+               decode_krb5_pa_pk_as_rep;
+               decode_krb5_pa_pk_as_req;
+               decode_krb5_principal_name;
+               decode_krb5_reply_key_pack;
+               decode_krb5_safe_with_body;
+               decode_krb5_td_dh_parameters;
+               decode_krb5_td_trusted_certifiers;
+               encode_krb5_auth_pack;
+               encode_krb5_etype_list;
+               encode_krb5_fast_req;
+               encode_krb5_kdc_dh_key_info;
+               encode_krb5_pa_fx_fast_request;
+               encode_krb5_pa_pac_req;
+               encode_krb5_pa_pk_as_rep;
+               encode_krb5_pa_pk_as_req;
+               encode_krb5_reply_key_pack;
+               encode_krb5_safe_with_body;
+               encode_krb5_setpw_req;
+               encode_krb5_td_dh_parameters;
+               encode_krb5_td_trusted_certifiers;
+               et_k5e1_error_table;
+               et_prof_error_table;
+               hostrealm_dns_initvt;
+               hostrealm_domain_initvt;
+               hostrealm_profile_initvt;
+               hostrealm_registry_initvt;
+               initialize_prof_error_table;
+               interface_names;
+               k5_asn1_decode_atype;
+               k5_asn1_decode_bitstring;
+               k5_asn1_decode_bool;
+               k5_asn1_decode_bytestring;
+               k5_asn1_decode_generaltime;
+               k5_asn1_decode_int;
+               k5_asn1_decode_uint;
+               k5_asn1_encode_atype;
+               k5_asn1_encode_bitstring;
+               k5_asn1_encode_bool;
+               k5_asn1_encode_bytestring;
+               k5_asn1_encode_generaltime;
+               k5_asn1_encode_int;
+               k5_asn1_encode_uint;
+               k5_asn1_full_decode;
+               k5_asn1_full_encode;
+               k5_atype_ad_kdc_issued;
+               k5_atype_ad_kdcissued_0;
+               k5_atype_ad_kdcissued_0_untagged;
+               k5_atype_ad_kdcissued_1;
+               k5_atype_ad_kdcissued_1_untagged;
+               k5_atype_ad_kdcissued_2;
+               k5_atype_ad_kdcissued_2_untagged;
+               k5_atype_ad_kdcissued_3;
+               k5_atype_ad_kdcissued_3_untagged;
+               k5_atype_address;
+               k5_atype_address_0;
+               k5_atype_address_0_untagged;
+               k5_atype_address_1;
+               k5_atype_address_1_untagged;
+               k5_atype_address_ptr;
+               k5_atype_algid_0;
+               k5_atype_algid_1;
+               k5_atype_algorithm_identifier;
+               k5_atype_ap_rep;
+               k5_atype_ap_rep_0;
+               k5_atype_ap_rep_1;
+               k5_atype_ap_rep_2;
+               k5_atype_ap_rep_2_untagged;
+               k5_atype_ap_rep_enc_part;
+               k5_atype_ap_rep_enc_part_0;
+               k5_atype_ap_rep_enc_part_0_untagged;
+               k5_atype_ap_rep_enc_part_1;
+               k5_atype_ap_rep_enc_part_1_untagged;
+               k5_atype_ap_rep_enc_part_2;
+               k5_atype_ap_rep_enc_part_2_untagged;
+               k5_atype_ap_rep_enc_part_3;
+               k5_atype_ap_rep_enc_part_3_untagged;
+               k5_atype_ap_rep_msg_type;
+               k5_atype_ap_req;
+               k5_atype_ap_req_0;
+               k5_atype_ap_req_1;
+               k5_atype_ap_req_2;
+               k5_atype_ap_req_2_untagged;
+               k5_atype_ap_req_3;
+               k5_atype_ap_req_3_untagged;
+               k5_atype_ap_req_4;
+               k5_atype_ap_req_4_untagged;
+               k5_atype_ap_req_msg_type;
+               k5_atype_as_rep;
+               k5_atype_as_req;
+               k5_atype_as_req_2;
+               k5_atype_as_req_encode;
+               k5_atype_as_req_msg_type;
+               k5_atype_auth_data;
+               k5_atype_auth_data_ptr;
+               k5_atype_auth_pack;
+               k5_atype_auth_pack_0;
+               k5_atype_auth_pack_0_untagged;
+               k5_atype_auth_pack_1;
+               k5_atype_auth_pack_1_untagged;
+               k5_atype_auth_pack_2;
+               k5_atype_auth_pack_2_untagged;
+               k5_atype_auth_pack_3;
+               k5_atype_auth_pack_3_untagged;
+               k5_atype_auth_pack_4;
+               k5_atype_auth_pack_4_untagged;
+               k5_atype_authdata_0;
+               k5_atype_authdata_0_untagged;
+               k5_atype_authdata_1;
+               k5_atype_authdata_1_untagged;
+               k5_atype_authdata_elt;
+               k5_atype_authdata_elt_ptr;
+               k5_atype_authdata_elt_type;
+               k5_atype_authdata_elt_type_0;
+               k5_atype_authdata_types;
+               k5_atype_authenticator;
+               k5_atype_authenticator_0;
+               k5_atype_authenticator_1;
+               k5_atype_authenticator_1_untagged;
+               k5_atype_authenticator_2;
+               k5_atype_authenticator_2_untagged;
+               k5_atype_authenticator_3;
+               k5_atype_authenticator_3_untagged;
+               k5_atype_authenticator_4;
+               k5_atype_authenticator_4_untagged;
+               k5_atype_authenticator_5;
+               k5_atype_authenticator_5_untagged;
+               k5_atype_authenticator_6;
+               k5_atype_authenticator_6_untagged;
+               k5_atype_authenticator_7;
+               k5_atype_authenticator_7_untagged;
+               k5_atype_authenticator_8;
+               k5_atype_authenticator_8_untagged;
+               k5_atype_bitstring_data;
+               k5_atype_cammac;
+               k5_atype_cammac_0;
+               k5_atype_cammac_0_untagged;
+               k5_atype_cammac_1;
+               k5_atype_cammac_1_untagged;
+               k5_atype_cammac_2;
+               k5_atype_cammac_2_untagged;
+               k5_atype_cammac_3;
+               k5_atype_cammac_3_untagged;
+               k5_atype_checksum;
+               k5_atype_checksum_0;
+               k5_atype_checksum_0_untagged;
+               k5_atype_checksum_1;
+               k5_atype_checksum_1_untagged;
+               k5_atype_checksum_ptr;
+               k5_atype_cred_0;
+               k5_atype_cred_1;
+               k5_atype_cred_2;
+               k5_atype_cred_2_untagged;
+               k5_atype_cred_3;
+               k5_atype_cred_3_untagged;
+               k5_atype_cred_info;
+               k5_atype_cred_info_0;
+               k5_atype_cred_info_0_untagged;
+               k5_atype_cred_info_1;
+               k5_atype_cred_info_10;
+               k5_atype_cred_info_10_untagged;
+               k5_atype_cred_info_1_untagged;
+               k5_atype_cred_info_2;
+               k5_atype_cred_info_2_untagged;
+               k5_atype_cred_info_3;
+               k5_atype_cred_info_3_untagged;
+               k5_atype_cred_info_4;
+               k5_atype_cred_info_4_untagged;
+               k5_atype_cred_info_5;
+               k5_atype_cred_info_5_untagged;
*** 2018 LINES SKIPPED ***

Reply via email to