X-Git-Url: https://git.openafs.org/?p=openafs.git;a=blobdiff_plain;f=src%2Fcf%2Fkerberos.m4;h=8ec840d2492eb8c3af423a4b9933b7ad59db3f49;hp=1de5c793d69b3765a76f3f7f83c84abf2ae6c5d4;hb=5e752a9cffcb057da595dcaebbf8d1a10c78b8f0;hpb=7ad8a32a0ebbbd2be37eb3a323b23bc017dc1423 diff --git a/src/cf/kerberos.m4 b/src/cf/kerberos.m4 index 1de5c79..8ec840d 100644 --- a/src/cf/kerberos.m4 +++ b/src/cf/kerberos.m4 @@ -10,7 +10,7 @@ dnl AC_ARG_VAR(KRB5CFLAGS, [C flags to compile Kerberos 5 programs]) dnl AC_ARG_VAR(KRB5LIBS, [Libraries and flags to compile Kerberos 5 programs]) dnl AC_ARG_VAR(KRB5_CONFIG, [Location of krb5-config script]) -AC_ARG_WITH([krb5-conf],[--with-krb5-config[=krb5-config-location] Use a krb5-config script to configure Kerberos]) +AC_ARG_WITH([krb5-conf],[--with-krb5-conf[=krb5-config-location] Use a krb5-config script to configure Kerberos]) if test X$with_krb5_conf != X; then conf_krb5=YES if test X$with_krb5_conf = Xyes; then @@ -54,13 +54,57 @@ BUILD_KRB5=no if test X$conf_krb5 = XYES; then AC_MSG_RESULT([Configuring support for Kerberos 5 utilities]) BUILD_KRB5=yes - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS KRB5CFLAGS" + save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $KRB5CFLAGS" save_LIBS="$LIBS" LIBS="$LIBS $KRB5LIBS" - AC_CHECK_FUNCS([add_to_error_table]) - CFLAGS="$save_CFLAGS" + AC_CHECK_FUNCS([add_to_error_table add_error_table krb5_princ_size krb5_principal_get_comp_string krb5_524_convert_creds krb524_convert_creds_kdc]) + AC_CHECK_HEADERS([kerberosIV/krb.h]) + AC_CHECK_HEADERS([kerberosV/heim_err.h]) + +AC_MSG_CHECKING(for krb5_creds.keyblock existence) +AC_CACHE_VAL(ac_cv_krb5_creds_keyblock_exists, +[ +AC_TRY_COMPILE( +[#include ], +[krb5_creds _c; +printf("%x\n", _c.keyblock);], +ac_cv_krb5_creds_keyblock_exists=yes, +ac_cv_krb5_creds_keyblock_exists=no)]) +AC_MSG_RESULT($ac_cv_krb5_creds_keyblock_exists) + +AC_MSG_CHECKING(for krb5_creds.session existence) +AC_CACHE_VAL(ac_cv_krb5_creds_session_exists, +[ +AC_TRY_COMPILE( +[#include ], +[krb5_creds _c; +printf("%x\n", _c.session);], +ac_cv_krb5_creds_session_exists=yes, +ac_cv_krb5_creds_session_exists=no)]) +AC_MSG_RESULT($ac_cv_krb5_creds_session_exists) + +if test "x$ac_cv_krb5_creds_keyblock_exists" = "xyes"; then + AC_DEFINE(HAVE_KRB5_CREDS_KEYBLOCK, 1, [define if krb5_creds has keyblock]) +fi +if test "x$ac_cv_krb5_creds_session_exists" = "xyes"; then + AC_DEFINE(HAVE_KRB5_CREDS_SESSION, 1, [define if krb5_creds has session]) +fi + +dnl AC_CHECK_MEMBERS([krb5_creds.keyblock, krb5_creds.session],,, [#include ]) + CPPFLAGS="$save_CPPFLAGS" LIBS="$save_LIBS" fi + +if test "$ac_cv_header_kerberosV_heim_err_h" = "yes"; then + ASETKEY= +else + ASETKEY=asetkey +fi + AC_SUBST(BUILD_KRB5) +AC_SUBST(KRB5CFLAGS) +AC_SUBST(KRB5LIBS) +AC_SUBST(ASETKEY) + ])dnl