summaryrefslogtreecommitdiffstats
path: root/src/lib/gssapi/generic/gssapi_generic.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/gssapi/generic/gssapi_generic.h')
-rw-r--r--src/lib/gssapi/generic/gssapi_generic.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/lib/gssapi/generic/gssapi_generic.h b/src/lib/gssapi/generic/gssapi_generic.h
index 2a0c59fdd8..d8c7ec66a6 100644
--- a/src/lib/gssapi/generic/gssapi_generic.h
+++ b/src/lib/gssapi/generic/gssapi_generic.h
@@ -27,12 +27,22 @@
* $Id$
*/
-#if defined(__MWERKS__) || defined(applec) || defined(THINK_C)
-#include <gssapi.h>
+#if defined(macintosh) || (defined(__MACH__) && defined(__APPLE__))
+#include <Kerberos/gssapi.h>
#else
#include <gssapi/gssapi.h>
#endif
+#if defined(__cplusplus) && !defined(GSSAPIGENERIC_BEGIN_DECLS)
+#define GSSAPIGENERIC_BEGIN_DECLS extern "C" {
+#define GSSAPIGENERIC_END_DECLS }
+#else
+#define GSSAPIGENERIC_BEGIN_DECLS
+#define GSSAPIGENERIC_END_DECLS
+#endif
+
+GSSAPIGENERIC_BEGIN_DECLS
+
/* Deprecated MIT krb5 oid names provided for compatibility.
* The correct oids (GSS_C_NT_USER_NAME, etc) from rfc 2744
* are defined in gssapi.h. */
@@ -44,4 +54,6 @@ extern gss_OID gss_nt_service_name_v2;
GSS_DLLIMP extern gss_OID gss_nt_service_name;
extern gss_OID gss_nt_exported_name;
+GSSAPIGENERIC_END_DECLS
+
#endif /* _GSSAPI_GENERIC_H_ */