Add option for using Sun Kerberos fixing bug #344728 2006-06-05 Irene
authorIrene Huang <irene.huang@sun.com>
Tue, 5 Jun 2007 13:29:59 +0000 (13:29 +0000)
committerIrene Huang <ireneh@src.gnome.org>
Tue, 5 Jun 2007 13:29:59 +0000 (13:29 +0000)
2007-06-05  Irene Huang  <irene.huang@sun.com>

        * configure.in: Add option for using Sun Kerberos
        fixing bug #344728
2006-06-05  Irene Huang  <irene.huang@sun.com>

        * camel-sasl-gssapi.c: Add headers for Sun Kerberos
        fixing bug #344728

svn path=/trunk/; revision=7809

ChangeLog
camel/ChangeLog
camel/camel-sasl-gssapi.c
configure.in

index 71de8eb..38ebc9f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-06-05  Irene Huang  <irene.huang@sun.com>
+
+       * configure.in: Add option for using Sun Kerberos
+       fixing bug #344728
+
 2007-05-14  Srinivasa Ragavan
        
        * NEWS, configure.in: Evolution Data Server 1.11.3 release.
index 3435850..3933cf6 100644 (file)
@@ -1,3 +1,12 @@
+2007-06-05  Irene Huang  <irene.huang@sun.com>
+
+       * camel-sasl-gssapi.c: Add headers for Sun Kerberos
+       fixing bug #344728
+
+2007-06-05  Irene Huang  <irene.huang@sun.com>
+
+       * camel-sasl-gssapi.c:
+
 2007-06-01  Karl Relton  <karllinuxtest.relton@ntlworld.com>
 
         ** Fix for bug #311512
index 5f1d00e..78c68f1 100644 (file)
 #ifdef HAVE_MIT_KRB5
 #include <gssapi/gssapi.h>
 #include <gssapi/gssapi_generic.h>
-#else /* HAVE_HEIMDAL_KRB5 */
+#endif
+#ifdef HAVE_HEIMDAL_KRB5
 #include <gssapi.h>
 #define gss_nt_service_name GSS_C_NT_HOSTBASED_SERVICE
+#else /* HAVE_SUN_KRB5 */
+#include <gssapi/gssapi.h>
+#include <gssapi/gssapi_ext.h>
+extern gss_OID gss_nt_service_name;
 #endif
 
 #ifndef GSS_C_OID_KRBV5_DES
index 832e3d3..2ee17c2 100644 (file)
@@ -981,13 +981,18 @@ if test "x${with_krb5}" != "xno"; then
        
        mitlibs="-lkrb5 -lk5crypto -lcom_err -lgssapi_krb5"
        heimlibs="-lkrb5 -lcrypto -lasn1 -lcom_err -lroken -lgssapi"
+       sunlibs="-lkrb5 -lgss"
        AC_CACHE_CHECK([for Kerberos 5], ac_cv_lib_kerberos5,
        [
                LDFLAGS="$LDFLAGS -L$with_krb5_libs $mitlibs"
                AC_TRY_LINK([#include <krb5.h>],krb5_init_context, ac_cv_lib_kerberos5="$mitlibs",
                [
                        LDFLAGS="$LDFLAGS_save -L$with_krb5_libs $heimlibs"
-                       AC_TRY_LINK_FUNC(krb5_init_context, ac_cv_lib_kerberos5="$heimlibs", ac_cv_lib_kerberos5="no")
+                       AC_TRY_LINK_FUNC(krb5_init_context, ac_cv_lib_kerberos5="$heimlibs", 
+                       [
+                               LDFLAGS="$LDFLAGS_save -L$with_krb5_libs $sunlibs"
+                               AC_TRY_LINK_FUNC(krb5_init_context, ac_cv_lib_kerberos5="$sunlibs", ac_cv_lib_kerberos5="no")
+                       ])
                ])
                LDFLAGS="$LDFLAGS_save"
        ])
@@ -1002,13 +1007,23 @@ if test "x${with_krb5}" != "xno"; then
                        fi
                        msg_krb5="yes (MIT)"
                else
-                       AC_DEFINE(HAVE_HEIMDAL_KRB5,1,[Define if you have Heimdal])
-                       if test -z "$with_krb5_includes"; then
-                               KRB5_CFLAGS="-I$with_krb5/include/heimdal"
+                       if test "$ac_cv_lib_kerberos5" = "$heimlibs"; then
+                               AC_DEFINE(HAVE_HEIMDAL_KRB5,1,[Define if you have Heimdal])
+                               if test -z "$with_krb5_includes"; then
+                                       KRB5_CFLAGS="-I$with_krb5/include/heimdal"
+                               else
+                                       KRB5_CFLAGS="-I$with_krb5_includes"
+                               fi
+                               msg_krb5="yes (Heimdal)"
                        else
-                               KRB5_CFLAGS="-I$with_krb5_includes"
+                               AC_DEFINE(HAVE_SUN_KRB5,1,[Define if you have Sun Kerberosv5])
+                               if test -z "$with_krb5_includes"; then
+                                       KRB5_CFLAGS="-I$with_krb5/include/kerberosv5"
+                               else
+                                       KRB5_CFLAGS="-I$with_krb5_includes"
+                               fi
+                               msg_krb5="yes (Sun)"
                        fi
-                       msg_krb5="yes (Heimdal)"
                fi
                KRB5_LDFLAGS="-L$with_krb5_libs $ac_cv_lib_kerberos5"
                AC_MSG_RESULT(msg_krb5)