From 30f197727d8dcc361e1df07238d88f8bedf5038d Mon Sep 17 00:00:00 2001 From: Andrew Deason Date: Wed, 11 Sep 2013 11:22:20 -0500 Subject: [PATCH] Probe directly for com_err.h com_err.h can be in com_err.h, et/com_err.h, or krb5/com_err.h (for netbsd 6.1 and possibly other netbsd). aklog currently only includes either com_err.h or et/com_err.h, depending on autoconf probes performed by the krb5.m4 macros. So, also look for krb5/com_err.h. The krb5.m4 macros currently only look for com_err.h at all if certain other libkrb5 tests return certain results, so just look for all of them directly in some of our openafs-specific krb5 probing logic in configure.ac. Also remove the duplicate check for et/com_err.h in acinclude.m4 while we're here. We only use et/com_err.h if krb5 support is enabled, so only check for it in the second of krb5 probes. FIXES 131716 Reviewed-on: http://gerrit.openafs.org/10244 Reviewed-by: Derrick Brashear Tested-by: BuildBot (cherry picked from commit 8e32b11be6ce0517f75588360a3ca8c333358ca3) Change-Id: I567959b6d26ece9606086f4d82c5be40b11d7ea8 Reviewed-on: http://gerrit.openafs.org/10275 Tested-by: BuildBot Reviewed-by: Andrew Deason Reviewed-by: Jeffrey Altman Reviewed-by: Stephan Wiesand --- acinclude.m4 | 1 - configure.ac | 5 +++++ src/aklog/aklog.c | 10 +++++++--- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/acinclude.m4 b/acinclude.m4 index 86ff65bfbb..3adced81d7 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -1310,7 +1310,6 @@ AC_HEADER_DIRENT AC_CHECK_HEADERS([ \ curses.h \ direct.h \ - et/com_err.h \ fcntl.h \ grp.h \ mntent.h \ diff --git a/configure.ac b/configure.ac index 38ac6f256d..d0b329ddfe 100644 --- a/configure.ac +++ b/configure.ac @@ -82,6 +82,11 @@ AS_IF([test x"$KRB5_LIBS" != x], [Define to 1 if you have the `krb524_convert_creds_kdc' function.])])])]) AC_CHECK_HEADERS([kerberosIV/krb.h]) AC_CHECK_HEADERS([kerberosV/heim_err.h]) + AC_CHECK_HEADERS([com_err.h et/com_err.h krb5/com_err.h]) + AS_IF([test x"$ac_cv_header_com_err_h" != xyes \ + && test x"$ac_cv_header_et_com_err_h" != xyes \ + && test x"$ac_cv_header_krb5_com_err_h" != xyes], + [AC_MSG_ERROR([Cannot find a usable com_err.h])]) AC_CHECK_MEMBERS([krb5_creds.keyblock, krb5_creds.keyblock.enctype, krb5_creds.session, krb5_keytab_entry.key, krb5_keytab_entry.keyblock, krb5_keyblock.enctype, diff --git a/src/aklog/aklog.c b/src/aklog/aklog.c index 89f73d80b7..aac7e3352c 100644 --- a/src/aklog/aklog.c +++ b/src/aklog/aklog.c @@ -64,10 +64,14 @@ #include #include -#if defined(HAVE_ET_COM_ERR_H) -#include +#ifdef HAVE_COM_ERR_H +# include +#elif HAVE_ET_COM_ERR_H +# include +#elif HAVE_KRB5_COM_ERR_H +# include #else -#include +# error No com_err.h? We need some kind of com_err.h #endif #ifndef HAVE_KERBEROSV_HEIM_ERR_H