From 0a4a36b3de71a8cfc65af7d36f927f7907c714e0 Mon Sep 17 00:00:00 2001 From: Ian Kent Date: May 22 2012 09:46:29 +0000 Subject: - fix libtirpc name clash (bz821660). --- diff --git a/autofs-5.0.6-fix-libtirpc-name-clash.patch b/autofs-5.0.6-fix-libtirpc-name-clash.patch new file mode 100644 index 0000000..2cbc299 --- /dev/null +++ b/autofs-5.0.6-fix-libtirpc-name-clash.patch @@ -0,0 +1,45 @@ +autofs-5.0.6 - fix libtirpc name clash + +From: Ian Kent + +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 + #include + ++#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" diff --git a/autofs.spec b/autofs.spec index 11da9bf..68b4144 100644 --- a/autofs.spec +++ b/autofs.spec @@ -8,7 +8,7 @@ Summary: A tool for automatically mounting and unmounting filesystems Name: autofs Version: 5.0.6 -Release: 18%{?dist} +Release: 19%{?dist} Epoch: 1 License: GPLv2+ Group: System Environment/Daemons @@ -58,6 +58,7 @@ Patch42: autofs-5.0.6-fix-sss-wildcard-match.patch Patch43: autofs-5.0.6-fix-dlopen-error-handling-in-sss-module.patch Patch44: autofs-5.0.6-fix-configure-string-length-tests.patch Patch45: autofs-5.0.6-fix-initialization-in-rpc-create_client.patch +Patch46: autofs-5.0.6-fix-libtirpc-name-clash.patch Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %if %{with_systemd} BuildRequires: systemd-units @@ -159,6 +160,7 @@ echo %{version}-%{release} > .version %patch43 -p1 %patch44 -p1 %patch45 -p1 +%patch46 -p1 %build #CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr --libdir=%{_libdir} @@ -261,6 +263,11 @@ fi %dir /etc/auto.master.d %changelog +* Tue May 22 2012 Ian Kent - 1:5.0.6-19 +- [abrt] autofs-5.0.6-16.fc17: clnt_dg_control: + Process /usr/sbin/automount was killed by signal 11 (SIGSEGV) + - fix libtirpc name clash (bz821660). + * Tue May 22 2012 Ian Kent - 1:5.0.6-18 - [abrt] autofs-5.0.6-16.fc17: clnt_dg_control: Process /usr/sbin/automount was killed by signal 11 (SIGSEGV)