[SSSD] [PATCH] krb5: include backwards compatible declaration of krb5_trace_info

Jakub Hrozek jhrozek at redhat.com
Mon Feb 4 16:35:59 UTC 2013


The attached patch allows to compile the SSSD with krb5 1.11, which is
present in F19 for example.
-------------- next part --------------
>From d4732b44601963907e75216c49dbeebd8d958a4f Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <jhrozek at redhat.com>
Date: Mon, 4 Feb 2013 11:30:48 -0500
Subject: [PATCH] krb5: include backwards compatible declaration of
 krb5_trace_info

krb5-1.10 used to include "struct krb5_trace_info", now krb5-1.11
includes a "krb5_trace_info" typedefed from "struct _krb5_trace_info".

Do the same in the SSSD to allow compiling with both 1.10 and 1.11.
---
 src/external/krb5.m4 | 2 +-
 src/util/sss_krb5.c  | 8 +++++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/external/krb5.m4 b/src/external/krb5.m4
index 5bc871128193e19038c7325b7dbab40e94128171..f1679a151b613b3f685953453a314f734419fa41 100644
--- a/src/external/krb5.m4
+++ b/src/external/krb5.m4
@@ -37,7 +37,7 @@ SAVE_LIBS=$LIBS
 CFLAGS="$CFLAGS $KRB5_CFLAGS"
 LIBS="$LIBS $KRB5_LIBS"
 AC_CHECK_HEADERS([krb5.h krb5/krb5.h])
-AC_CHECK_TYPES([krb5_ticket_times, krb5_times], [], [],
+AC_CHECK_TYPES([krb5_ticket_times, krb5_times, krb5_trace_info], [], [],
                [ #ifdef HAVE_KRB5_KRB5_H
                  #include <krb5/krb5.h>
                  #else
diff --git a/src/util/sss_krb5.c b/src/util/sss_krb5.c
index bb61d10938a74d768c31869cae79fa1e348d3693..ab0344c8048523e08dbe29a05aefbc45e2f7668e 100644
--- a/src/util/sss_krb5.c
+++ b/src/util/sss_krb5.c
@@ -1001,9 +1001,15 @@ sss_krb5_residual_check_type(const char *full_location,
 }
 
 #ifdef HAVE_KRB5_SET_TRACE_CALLBACK
+
+#ifndef HAVE_KRB5_TRACE_INFO
+/* krb5-1.10 had struct krb5_trace_info, 1.11 has type named krb5_trace_info */
+typedef struct krb5_trace_info krb5_trace_info;
+#endif  /* HAVE_KRB5_TRACE_INFO */
+
 static void
 sss_child_krb5_trace_cb(krb5_context context,
-                        const struct krb5_trace_info *info, void *data)
+                        const krb5_trace_info *info, void *data)
 {
     if (info == NULL) {
         /* Null info means destroy the callback data. */
-- 
1.8.1



More information about the sssd-devel mailing list