From d85121c0dc700cad4bd9735b0ee1dab9addf9dd7 Mon Sep 17 00:00:00 2001
From: Kokan <kokaipeter@gmail.com>
Date: Thu, 17 Jan 2019 18:44:41 +0100
Subject: [PATCH] build: make dlsym optional

In case of static uClibc-ng lib, the <dlfcn.h> does not exists.

The signal-handler.c solves an issue in case of program src/dst
and Java destination. That combination is really rare if not impossible.

This patch simply disables own sigaction if <dlfcn.h> is not present.

Signed-off-by: Kokan <kokaipeter@gmail.com>

Downloaded from upstream commit
https://github.com/balabit/syslog-ng/commit/d85121c0dc700cad4bd9735b0ee1dab9addf9dd7

Signed-off-by: Chris Packham <judge.packham@gmail.com>
---
 CMakeLists.txt        |  1 +
 configure.ac          |  1 +
 lib/CMakeLists.txt    |  1 -
 lib/Makefile.am       |  1 -
 lib/signal-handler.c  |  8 ++++----
 lib/signal-handler.h  | 31 -------------------------------
 syslog-ng-config.h.in |  1 +
 7 files changed, 7 insertions(+), 37 deletions(-)
 delete mode 100644 lib/signal-handler.h

diff --git a/CMakeLists.txt b/CMakeLists.txt
index c847a547b..dee691388 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -106,6 +106,7 @@ check_symbol_exists("getrandom" "sys/random.h" SYSLOG_NG_HAVE_GETRANDOM)
 
 check_include_files(utmp.h SYSLOG_NG_HAVE_UTMP_H)
 check_include_files(utmpx.h SYSLOG_NG_HAVE_UTMPX_H)
+check_include_files(dlfcn.h SYSLOG_NG_HAVE_DLFCN_H)
 
 check_struct_has_member("struct utmpx" "ut_type" "utmpx.h" UTMPX_HAS_UT_TYPE LANGUAGE C)
 check_struct_has_member("struct utmp" "ut_type" "utmp.h" UTMP_HAS_UT_TYPE LANGUAGE C)
diff --git a/configure.ac b/configure.ac
index 6bdd8d252..6ef0ad2b4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -627,6 +627,7 @@ dnl ***************************************************************************
 
 AC_HEADER_STDC
 AC_CHECK_HEADER(dmalloc.h)
+AC_CHECK_HEADER(dlfcn.h)
 AC_CHECK_HEADERS(strings.h	\
 	getopt.h		\
 	stropts.h		\
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index be2da32a4..5268712e9 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -91,7 +91,6 @@ set (LIB_HEADERS
     logthrdestdrv.h
     logwriter.h
     mainloop.h
-    signal-handler.h
     mainloop-call.h
     mainloop-worker.h
     mainloop-io-worker.h
diff --git a/lib/Makefile.am b/lib/Makefile.am
index ec1928795..5f9e93d79 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -129,7 +129,6 @@ pkginclude_HEADERS			+= \
 	lib/logthrdestdrv.h		\
 	lib/logwriter.h			\
 	lib/mainloop.h			\
-	lib/signal-handler.h		\
 	lib/mainloop-call.h		\
 	lib/mainloop-worker.h		\
 	lib/mainloop-io-worker.h	\
diff --git a/lib/signal-handler.c b/lib/signal-handler.c
index 5657ba182..8f52f675b 100644
--- a/lib/signal-handler.c
+++ b/lib/signal-handler.c
@@ -21,14 +21,15 @@
  * COPYING for details.
  *
  */
-#include "signal-handler.h"
 
 #include "syslog-ng.h"
 #include "children.h"
 
-#ifndef _WIN32
+#include <signal.h>
+
+#if SYSLOG_NG_HAVE_DLFCN_H
+
 #include <dlfcn.h>
-#endif
 
 static const struct sigaction *sgchld_handler;
 
@@ -41,7 +42,6 @@ trigger_sigchld_handler_chain(int signum)
     }
 }
 
-#ifndef _WIN32
 static int
 call_original_sigaction(int signum, const struct sigaction *act, struct sigaction *oldact)
 {
diff --git a/lib/signal-handler.h b/lib/signal-handler.h
deleted file mode 100644
index 36e5ac293..000000000
--- a/lib/signal-handler.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (c) 2018 Balabit
- * Copyright (c) 2018 Kokan
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
- *
- * As an additional exemption you are allowed to compile & link against the
- * OpenSSL libraries as published by the OpenSSL project. See the file
- * COPYING for details.
- *
- */
-#ifndef SIGNAL_HANDLER_H_INCLUDED
-#define SIGNAL_HANDLER_H_INCLUDED
-
-#include <signal.h>
-
-void trigger_sigchld_handler_chain(int);
-
-#endif
diff --git a/syslog-ng-config.h.in b/syslog-ng-config.h.in
index 9e372f103..d8208eedd 100644
--- a/syslog-ng-config.h.in
+++ b/syslog-ng-config.h.in
@@ -38,6 +38,7 @@
 #cmakedefine SYSLOG_NG_PATH_XSDDIR "@SYSLOG_NG_PATH_XSDDIR@"
 #cmakedefine SYSLOG_NG_HAVE_GETUTENT @SYSLOG_NG_HAVE_GETUTENT@
 #cmakedefine SYSLOG_NG_HAVE_GETUTXENT @SYSLOG_NG_HAVE_GETUTXENT@
+#cmakedefine SYSLOG_NG_HAVE_DLFCN_H @SYSLOG_NG_HAVE_DLFCN_H@
 #cmakedefine SYSLOG_NG_HAVE_UTMPX_H @SYSLOG_NG_HAVE_UTMPX_H@
 #cmakedefine SYSLOG_NG_HAVE_UTMP_H @SYSLOG_NG_HAVE_UTMP_H@
 #cmakedefine SYSLOG_NG_HAVE_MODERN_UTMP @SYSLOG_NG_HAVE_MODERN_UTMP@
-- 
2.20.1

