diff options
author | Andrew Bartlett <abartlet@samba.org> | 2012-01-05 10:46:24 +1100 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2012-01-10 21:50:07 +0100 |
commit | 17e61e4290d7d95b0bdd2accda24e526484a1c51 (patch) | |
tree | 789cfc106f27a21e8ee9c6bf5dd13a3aea69efc2 /source3 | |
parent | 803dc389d1ade89708a3fedc91dd2c271f4a495b (diff) | |
download | samba-17e61e4290d7d95b0bdd2accda24e526484a1c51.tar.gz samba-17e61e4290d7d95b0bdd2accda24e526484a1c51.tar.bz2 samba-17e61e4290d7d95b0bdd2accda24e526484a1c51.zip |
krb5: Require krb5_c_enctype_compare is available to build with krb5
Diffstat (limited to 'source3')
-rw-r--r-- | source3/configure.in | 6 | ||||
-rw-r--r-- | source3/libsmb/clikrb5.c | 4 | ||||
-rw-r--r-- | source3/wscript | 5 |
3 files changed, 9 insertions, 6 deletions
diff --git a/source3/configure.in b/source3/configure.in index c671a42dcb..1847ad2181 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -3869,7 +3869,6 @@ if test x"$with_ads_support" != x"no"; then AC_CHECK_FUNC_EXT(krb5_krbhst_init, $KRB5_LIBS) AC_CHECK_FUNC_EXT(krb5_krbhst_get_addrinfo, $KRB5_LIBS) AC_CHECK_FUNC_EXT(krb5_c_enctype_compare, $KRB5_LIBS) - AC_CHECK_FUNC_EXT(krb5_enctypes_compatible_keys, $KRB5_LIBS) AC_CHECK_FUNC_EXT(krb5_crypto_init, $KRB5_LIBS) AC_CHECK_FUNC_EXT(krb5_crypto_destroy, $KRB5_LIBS) AC_CHECK_FUNC_EXT(krb5_decode_ap_req, $KRB5_LIBS) @@ -4419,6 +4418,11 @@ if test x"$with_ads_support" != x"no"; then use_ads=no fi + if test x"$ac_cv_func_ext_krb5_c_enctype_compare" != x"yes"; then + AC_MSG_WARN(krb5_c_enctype_compare not found in -lkrb5) + use_ads=no + fi + if test x"$ac_cv_func_ext_krb5_principal2salt" != x"yes" -a \ x"$ac_cv_func_ext_krb5_get_pw_salt" != x"yes" then diff --git a/source3/libsmb/clikrb5.c b/source3/libsmb/clikrb5.c index 6a11def19c..1bd3cede97 100644 --- a/source3/libsmb/clikrb5.c +++ b/source3/libsmb/clikrb5.c @@ -471,14 +471,10 @@ bool unwrap_pac(TALLOC_CTX *mem_ctx, DATA_BLOB *auth_data, DATA_BLOB *unwrapped_ krb5_enctype enctype1, krb5_enctype enctype2) { -#if defined(HAVE_KRB5_C_ENCTYPE_COMPARE) krb5_boolean similar = 0; krb5_c_enctype_compare(context, enctype1, enctype2, &similar); return similar ? True : False; -#elif defined(HAVE_KRB5_ENCTYPES_COMPATIBLE_KEYS) - return krb5_enctypes_compatible_keys(context, enctype1, enctype2) ? True : False; -#endif } static bool ads_cleanup_expired_creds(krb5_context context, diff --git a/source3/wscript b/source3/wscript index 1592ccbdca..903061db9d 100644 --- a/source3/wscript +++ b/source3/wscript @@ -580,7 +580,7 @@ krb5_auth_con_setuseruserkey krb5_locate_kdc krb5_get_permitted_enctypes krb5_get_default_in_tkt_etypes krb5_free_data_contents krb5_principal_get_comp_string krb5_free_unparsed_name krb5_free_keytab_entry_contents krb5_kt_free_entry krb5_krbhst_init -krb5_krbhst_get_addrinfo krb5_c_enctype_compare krb5_enctypes_compatible_keys +krb5_krbhst_get_addrinfo krb5_c_enctype_compare krb5_crypto_init krb5_crypto_destroy krb5_decode_ap_req free_AP_REQ krb5_verify_checksum krb5_c_verify_checksum krb5_principal_compare_any_realm krb5_parse_name_norealm krb5_princ_size krb5_get_init_creds_opt_set_pac_request @@ -755,6 +755,9 @@ return krb5_kt_resolve(context, "WRFILE:api", &keytab); if not conf.CONFIG_SET('HAVE_KRB5_MK_REQ_EXTENDED'): Logs.warn("krb5_mk_req_extended not found in -lkrb5") use_ads=False + if not conf.CONFIG_SET('HAVE_KRB5_C_ENCTYPE_COMPARE'): + Logs.warn("krb5_c_enctype_compare not found in -lkrb5") + use_ads=False if not conf.CONFIG_SET('HAVE_KRB5_PRINCIPAL2SALT') and \ not conf.CONFIG_SET('HAVE_KRB5_GET_PW_SALT'): Logs.warn("no CREATE_KEY_FUNCTIONS detected") |