From 016fc0af0c30a22d0154ca6c67bb31bac893fb7b Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Thu, 5 Jan 2012 10:54:50 +1100 Subject: krb5: Require krb5_get_host_realm and krb5_free_host_realm be available to build with krb5 --- source3/configure.in | 12 ++++++++++++ source3/libads/kerberos.c | 4 ---- source3/wscript | 6 ++++++ 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/source3/configure.in b/source3/configure.in index fd28a4bb1a..a2f414b408 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -4422,6 +4422,18 @@ if test x"$with_ads_support" != x"no"; then use_ads=no fi + if test x"$ac_cv_func_ext_krb5_get_host_realm" != x"yes" + then + AC_MSG_WARN(krb5_get_host_realm not found in -lkrb5) + use_ads=no + fi + + if test x"$ac_cv_func_ext_krb5_free_host_realm" != x"yes" + then + AC_MSG_WARN(krb5_free_host_realm 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/libads/kerberos.c b/source3/libads/kerberos.c index f260dcaaf0..a43c7b167c 100644 --- a/source3/libads/kerberos.c +++ b/source3/libads/kerberos.c @@ -484,7 +484,6 @@ char *kerberos_get_default_realm_from_ccache(TALLOC_CTX *mem_ctx) char *kerberos_get_realm_from_hostname(TALLOC_CTX *mem_ctx, const char *hostname) { -#if defined(HAVE_KRB5_GET_HOST_REALM) && defined(HAVE_KRB5_FREE_HOST_REALM) #if defined(HAVE_KRB5_REALM_TYPE) /* Heimdal. */ krb5_realm *realm_list = NULL; @@ -525,9 +524,6 @@ char *kerberos_get_realm_from_hostname(TALLOC_CTX *mem_ctx, const char *hostname ctx = NULL; } return realm; -#else - return NULL; -#endif } char *kerberos_get_principal_from_service_hostname(TALLOC_CTX *mem_ctx, diff --git a/source3/wscript b/source3/wscript index 690ae957e3..e7d9dc09c4 100644 --- a/source3/wscript +++ b/source3/wscript @@ -750,6 +750,12 @@ return krb5_kt_resolve(context, "WRFILE:api", &keytab); 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_GET_HOST_REALM'): + Logs.warn("krb5_get_host_realm not found in -lkrb5") + use_ads=False + if not conf.CONFIG_SET('HAVE_KRB5_FREE_HOST_REALM'): + Logs.warn("krb5_free_host_realm 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") -- cgit