2023-10-25 18:02:23

by Petr Vorel

[permalink] [raw]
Subject: [PATCH 1/1] libtirpc: Add detection for new rpc_gss_sec members

From: Petr Vorel <[email protected]>

4b272471 started to use struct rpc_gss_sec member minor_status, which
was added in new libtirpc 1.3.4. Add check for the member to prevent
failure on older libtirpc headers.

Fixes: 4b272471 ("gssd: handle KRB5_AP_ERR_BAD_INTEGRITY for machine credentials")
Signed-off-by: Petr Vorel <[email protected]>
---
aclocal/libtirpc.m4 | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/aclocal/libtirpc.m4 b/aclocal/libtirpc.m4
index bddae022..dd351722 100644
--- a/aclocal/libtirpc.m4
+++ b/aclocal/libtirpc.m4
@@ -25,6 +25,10 @@ AC_DEFUN([AC_LIBTIRPC], [
[AC_DEFINE([HAVE_LIBTIRPC_SET_DEBUG], [1],
[Define to 1 if your tirpc library provides libtirpc_set_debug])],,
[${LIBS}])])
+ AS_IF([test "$enable_gss" = "yes"],
+ [AC_CHECK_MEMBER(struct rpc_gss_sec.minor_status,,
+ [AC_MSG_ERROR([Missing rpc_gss_sec.minor_status in <rpc/auth_gss.h>, update libtirpc or run with --disable-gss])],
+ [#include <rpc/auth_gss.h>])])

AC_SUBST([AM_CPPFLAGS])
AC_SUBST(LIBTIRPC)
--
2.42.0