diff options
Diffstat (limited to 'source3/configure.in')
-rw-r--r-- | source3/configure.in | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/source3/configure.in b/source3/configure.in index 4d1db6f498..66c3ac171e 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -2664,15 +2664,29 @@ if test x"$with_ads_support" != x"no"; then [Whether in-memory keytabs are supported]) fi - AC_CHECK_MEMBER(krb5_keytab_entry.key, - AC_DEFINE(HAVE_KRB5_KEYTAB_ENTRY_KEY, 1, - [Whether krb5_keytab_entry has key member]), [], - [#include <krb5.h>]) - - AC_CHECK_MEMBER(krb5_keytab_entry.keyblock, - AC_DEFINE(HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK, 1, - [Whether krb5_keytab_entry has keyblock member]), [], - [#include <krb5.h>]) + AC_CACHE_CHECK([for key in krb5_keytab_entry], + samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEY,[ + AC_TRY_COMPILE([#include <krb5.h>], + [krb5_keytab_entry entry; entry.key = NULL;], + samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEY=yes, + samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEY=no)]) + + if test x"$samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEY" = x"yes"; then + AC_DEFINE(HAVE_KRB5_KEYTAB_ENTRY_KEY,1, + [Whether krb5_keytab_entry has key member]) + fi + + AC_CACHE_CHECK([for keyblock in krb5_keytab_entry], + samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK,[ + AC_TRY_COMPILE([#include <krb5.h>], + [krb5_keytab_entry entry; entry.keyblock.keytype = 0;], + samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK=yes, + samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK=no)]) + + if test x"$samba_cv_HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK" = x"yes"; then + AC_DEFINE(HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK,1, + [Whether krb5_keytab_entry has keyblock member]) + fi if test x"$ac_cv_lib_ext_krb5_krb5_mk_req_extended" = x"yes"; then AC_DEFINE(HAVE_KRB5,1,[Whether to have KRB5 support]) |