Blob Blame History Raw
autofs-5.0.6 - fix libtirpc name clash
From: Ian Kent <ikent@redhat.com>
The tirpc function auth_destroy() is a macro definition in tirpc/rpc/auth.h
which includes an unconditional call to a function log_debug() which clashes
with an autofs function of the same name and has a different call signature.
To fix it redefine auth_destroy() and exclude the debug log call.
---
CHANGELOG | 1 +
lib/rpc_subs.c | 10 ++++++++++
2 files changed, 11 insertions(+)
--- autofs-5.0.6.orig/CHANGELOG
+++ autofs-5.0.6/CHANGELOG
@@ -41,6 +41,7 @@
- fix dlopen() error handling in sss module.
- fix configure string length tests for sss library.
- fix initialization in rpc create_client().
+- fix libtirpc name clash.
28/06/2011 autofs-5.0.6
-----------------------
--- autofs-5.0.6.orig/lib/rpc_subs.c
+++ autofs-5.0.6/lib/rpc_subs.c
@@ -34,6 +34,16 @@
#include <pthread.h>
#include <poll.h>
+#ifdef WITH_LIBTIRPC
+#undef auth_destroy
+#define auth_destroy(auth) \
+ do { \
+ int refs; \
+ if ((refs = auth_put((auth))) == 0) \
+ ((*((auth)->ah_ops->ah_destroy))(auth));\
+ } while (0)
+#endif
+
#include "mount.h"
#include "rpc_subs.h"
#include "automount.h"