]> arthur.barton.de Git - netatalk.git/commitdiff
Heimdal Kerberos compatibility fixes
authorFrank Lahm <franklahm@googlemail.com>
Sat, 28 Apr 2012 17:59:41 +0000 (19:59 +0200)
committerFrank Lahm <franklahm@googlemail.com>
Sat, 28 Apr 2012 17:59:41 +0000 (19:59 +0200)
etc/afpd/status.c
macros/netatalk.m4

index 55862da5a5ea5d14c456102652035feea899557c..bdee676dcfe646c62900db4043d9eabf8d03b845 100644 (file)
@@ -416,7 +416,11 @@ static size_t status_directorynames(char *data,
                 "status:DirectoryNames: specified service principal '%s' not found in keytab",
                 principal);
             // XXX: should this be krb5_xfree?
+#ifdef HAVE_KRB5_FREE_UNPARSED_NAME
             krb5_free_unparsed_name(context, principal);
+#else
+           krb5_xfree(principal);
+#endif
             goto krb5_cleanup;
         }
         krb5_free_principal(context, service_principal);
@@ -454,7 +458,11 @@ krb5_error:
         error_msg = krb5_get_error_message(context, ret);
         LOG(log_note, logtype_afpd, "Can't get principal from default keytab: %s",
             (char *)error_msg);
+#ifdef HAVE_KRB5_FREE_ERROR_MESSAGE
         krb5_free_error_message(context, error_msg);
+#else
+       krb5_xfree(error_msg);
+#endif
     }
 
 krb5_cleanup:
index dfc56d7427a1f47d2b3a2fe44a52aa779c2119a8..e3bc4e8473c79545532b88f7c27ee0d5ab70cd24 100644 (file)
@@ -550,6 +550,15 @@ fi
 if test x"$with_kerberos" = x"yes"; then
    AC_DEFINE([HAVE_KERBEROS], [1], [Define if Kerberos 5 is available])
 fi
+
+dnl Check for krb5_free_unparsed_name and krb5_free_error_message
+save_CFLAGS="$CFLAGS"
+save_LIBS="$LIBS"
+CFLAGS="$KRB5_CFLAGS"
+LIBS="$KRB5_LIBS"
+AC_CHECK_FUNCS([krb5_free_unparsed_name krb5_free_error_message])
+CFLAGS="$save_CFLAGS"
+LIBS="$save_LIBS"
 ])
 
 dnl Check for overwrite the config files or not
@@ -966,4 +975,4 @@ AC_CACHE_CHECK([if the realpath function allows a NULL argument],
 if test x"$neta_cv_REALPATH_TAKES_NULL" = x"yes"; then
     AC_DEFINE(REALPATH_TAKES_NULL,1,[Whether the realpath function allows NULL])
 fi
-])
\ No newline at end of file
+])