Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 21 additions & 25 deletions acinclude/krb5.m4
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,27 @@ AC_DEFUN([SQUID_CHECK_KRB5_CONTEXT_MEMORY_CACHE],[
SQUID_DEFINE_BOOL(HAVE_KRB5_MEMORY_CACHE,$squid_cv_krb5_memory_cache,[kerberos has MEMORY: cache support])
]) dnl SQUID_CHECK_KRB5_CONTEXT_MEMORY_CACHE

dnl check whether the Kerberos context has a memory keytab
AC_DEFUN([SQUID_CHECK_KRB5_CONTEXT_MEMORY_KEYTAB],[
AC_REQUIRE([SQUID_STATE_SAVE])
AC_REQUIRE([SQUID_STATE_ROLLBACK])
AC_REQUIRE([SQUID_DEFINE_BOOL])
AC_CACHE_CHECK([for memory keytab],squid_cv_krb5_memory_keytab,[
SQUID_STATE_SAVE(squid_krb5_test)
CPPFLAGS="-I${srcdir:-.} $CPPFLAGS"
AC_RUN_IFELSE([
AC_LANG_PROGRAM([[#include "compat/krb5.h"]],[[
krb5_context c;
krb5_keytab kt;
krb5_init_context(&c);
return krb5_kt_resolve(c, "MEMORY:test_keytab", &kt);
]])
],[squid_cv_krb5_memory_keytab=yes],[squid_cv_krb5_memory_keytab=no],[:])
SQUID_STATE_ROLLBACK(squid_krb5_test)
])
SQUID_DEFINE_BOOL(HAVE_KRB5_MEMORY_KEYTAB,$squid_cv_krb5_memory_keytab,[Kerberos has MEMORY: keytab support])
]) dnl SQUID_CHECK_KRB5_CONTEXT_MEMORY_KEYTAB

AC_DEFUN([SQUID_CHECK_SOLARIS_KRB5],[
# no pkg-config for solaris native Kerberos
AS_IF([test "$cross_compiling" = "no" -a "x$with_mit_krb5" != "xyes" -a "x$with_mit_krb5" != "xno"],[
Expand Down Expand Up @@ -63,29 +84,6 @@ AC_DEFUN([SQUID_CHECK_SOLARIS_KRB5],[
])
])

dnl check whether the kerberos context has a memory keytab. Sets
dnl squid_cv_memory_keytab if that's the case.
AC_DEFUN([SQUID_CHECK_KRB5_CONTEXT_MEMORY_KEYTAB],[
AC_CACHE_CHECK([for memory keytab], squid_cv_memory_keytab, [
SQUID_STATE_SAVE(squid_krb5_test)
CPPFLAGS="-I${srcdir:-.} $CPPFLAGS"
AC_RUN_IFELSE([
AC_LANG_SOURCE([[
#include "compat/krb5.h"
int main(int argc, char *argv[])
{
krb5_context context;
krb5_keytab kt;

krb5_init_context(&context);
return krb5_kt_resolve(context, "MEMORY:test_keytab", &kt);
}
]])
], [ squid_cv_memory_keytab=yes ], [ squid_cv_memory_keytab=no ], [:])
SQUID_STATE_ROLLBACK(squid_krb5_test)
])
])

dnl check for PAC requirements
AC_DEFUN([SQUID_CHECK_KRB5_PAC_SUPPORT],[
AC_CHECK_TYPE(krb5_pac,[
Expand Down Expand Up @@ -274,8 +272,6 @@ AC_DEFUN([SQUID_CHECK_KRB5_FUNCS],[

SQUID_CHECK_KRB5_CONTEXT_MEMORY_CACHE
SQUID_CHECK_KRB5_CONTEXT_MEMORY_KEYTAB
SQUID_DEFINE_BOOL(HAVE_KRB5_MEMORY_KEYTAB,$squid_cv_memory_keytab,
[Define if kerberos has MEMORY: keytab support])

SQUID_CHECK_WORKING_GSSAPI
SQUID_DEFINE_BOOL(HAVE_GSSAPI,$squid_cv_working_gssapi,[GSSAPI support])
Expand Down
Loading