|
@@ -0,0 +1,49 @@
|
|
|
+From a844abca43349739c36a4cdb7ea6f3bce560bd7f Mon Sep 17 00:00:00 2001
|
|
|
+From: Rolf Eike Beer <eb@emlix.com>
|
|
|
+Date: Thu, 8 Nov 2018 08:14:46 +0100
|
|
|
+Subject: [PATCH] look for pthread_atfork() also in lib c_nonshared
|
|
|
+
|
|
|
+Newer versions of glibc do not have pthread_nonshared anymore, instead the
|
|
|
+symbol is in c_nonshared. This fixes a crash on start on those platforms
|
|
|
+(namely with syslog-ng).
|
|
|
+
|
|
|
+Signed-off-by: Rolf Eike Beer <eb@emlix.com>
|
|
|
+[ThomasDS: backport from https://github.com/buytenh/ivykis/pull/16, at this
|
|
|
+moment not yet merged upstream.
|
|
|
+See also:
|
|
|
+- https://github.com/buytenh/ivykis/issues/15
|
|
|
+- https://github.com/balabit/syslog-ng/issues/2263
|
|
|
+]
|
|
|
+Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
|
|
|
+
|
|
|
+---
|
|
|
+ configure.ac | 2 ++
|
|
|
+ src/pthr.h | 2 +-
|
|
|
+ 2 files changed, 3 insertions(+), 1 deletion(-)
|
|
|
+
|
|
|
+diff --git a/lib/ivykis/configure.ac b/lib/ivykis/configure.ac
|
|
|
+index e9b10c0..56440d1 100644
|
|
|
+--- a/lib/ivykis/configure.ac
|
|
|
++++ b/lib/ivykis/configure.ac
|
|
|
+@@ -88,6 +88,8 @@ esac
|
|
|
+ # link in libpthread_nonshared.a if it is available.
|
|
|
+ #
|
|
|
+ AC_CHECK_LIB([pthread_nonshared], [pthread_atfork])
|
|
|
++# the lib is gone in glibc 2.28, things are now in c_nonshared
|
|
|
++AC_CHECK_LIB([c_nonshared], [pthread_atfork])
|
|
|
+
|
|
|
+ # Checks for header files.
|
|
|
+ AC_CHECK_HEADERS([process.h])
|
|
|
+diff --git a/lib/ivykis/src/pthr.h b/lib/ivykis/src/pthr.h
|
|
|
+index a41eaf3..32c1af2 100644
|
|
|
+--- a/lib/ivykis/src/pthr.h
|
|
|
++++ b/lib/ivykis/src/pthr.h
|
|
|
+@@ -42,7 +42,7 @@ static inline int pthreads_available(void)
|
|
|
+ * symbol because that causes it to be undefined even if you link
|
|
|
+ * libpthread_nonshared.a in explicitly.
|
|
|
+ */
|
|
|
+-#ifndef HAVE_LIBPTHREAD_NONSHARED
|
|
|
++#if !defined(HAVE_LIBPTHREAD_NONSHARED) && !defined(HAVE_LIBC_NONSHARED)
|
|
|
+ #pragma weak pthread_atfork
|
|
|
+ #endif
|
|
|
+
|