aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Andree <matthias.andree@gmx.de>2012-08-15 23:41:03 +0200
committerMatthias Andree <matthias.andree@gmx.de>2012-08-15 23:41:03 +0200
commit91b6ab63f35f8f11544b401fced7859d963ad06c (patch)
tree90b7dba76e665983c226e3c987c1e46e368ed89a
parent0f4692d4340712874b66f37228ce73c93ec75aac (diff)
downloadfetchmail-91b6ab63f35f8f11544b401fced7859d963ad06c.tar.gz
fetchmail-91b6ab63f35f8f11544b401fced7859d963ad06c.tar.bz2
fetchmail-91b6ab63f35f8f11544b401fced7859d963ad06c.zip
GSSAPI build fix.
The GSSAPI-related autoconf code now matches gssapi.c better, and uses a different check to look for GSS_C_NT_HOSTBASED_SERVICE. This fixes the GSSAPI-enabled build on NetBSD 6 Beta.
-rw-r--r--NEWS4
-rw-r--r--configure.ac19
-rw-r--r--gssapi.c2
3 files changed, 19 insertions, 6 deletions
diff --git a/NEWS b/NEWS
index 748a5e89..36014655 100644
--- a/NEWS
+++ b/NEWS
@@ -94,6 +94,10 @@ fetchmail-6.3.22 (not yet released):
* The Server certificate: message in verbose mode now appears on stdout like the
remainder of the output. Reported by Henry Jensen, to fix Debian Bug #639807.
+* The GSSAPI-related autoconf code now matches gssapi.c better, and uses
+ a different check to look for GSS_C_NT_HOSTBASED_SERVICE.
+ This fixes the GSSAPI-enabled build on NetBSD 6 Beta.
+
# CHANGES
* On systems where SSLv2_client_method isn't defined in OpenSSL (such as
newer Debian, and Ubuntu starting with 11.10 oneiric ocelot), don't
diff --git a/configure.ac b/configure.ac
index 39a2e025..5bc25fb0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -898,11 +898,20 @@ then
CPPFLAGS="$CPPFLAGS -I$with_gssapi/include"
fi
AC_CHECK_HEADERS(gss.h gssapi.h gssapi/gssapi.h gssapi/gssapi_generic.h)
- if test "$ac_cv_header_gssapi_h" = "yes"; then
- AC_EGREP_HEADER(GSS_C_NT_HOSTBASED_SERVICE, gssapi.h, AC_DEFINE(HAVE_GSS_C_NT_HOSTBASED_SERVICE,1,Define if you have MIT kerberos))
- else
- AC_EGREP_HEADER(GSS_C_NT_HOSTBASED_SERVICE, gssapi/gssapi.h, AC_DEFINE(HAVE_GSS_C_NT_HOSTBASED_SERVICE))
- fi
+ AC_CHECK_DECLS(GSS_C_NT_HOSTBASED_SERVICE,,,[
+ AC_INCLUDES_DEFAULT
+ #if HAVE_GSS_H
+ #include <gss.h>
+ #endif
+ #if HAVE_GSSAPI_GSSAPI_H
+ #include <gssapi/gssapi.h>
+ #elif HAVE_GSSAPI_H
+ #include <gssapi.h>
+ #endif
+ #if HAVE_GSSAPI_GSSAPI_GENERIC_H
+ #include <gssapi/gssapi_generic.h>
+ #endif
+ ])
fi])
dnl ,------------------------------------------------------------------
diff --git a/gssapi.c b/gssapi.c
index 5a05ff8f..c2c7d94f 100644
--- a/gssapi.c
+++ b/gssapi.c
@@ -33,7 +33,7 @@
# ifdef HAVE_GSSAPI_GSSAPI_GENERIC_H
# include <gssapi/gssapi_generic.h>
# endif
-# ifndef HAVE_GSS_C_NT_HOSTBASED_SERVICE
+# if HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE + 0 == 0
# define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
# endif
# endif