diff options
author | bsiegert <bsiegert@pkgsrc.org> | 2019-03-17 15:45:44 +0000 |
---|---|---|
committer | bsiegert <bsiegert@pkgsrc.org> | 2019-03-17 15:45:44 +0000 |
commit | 03a5c08993d910826a8c712d69b5ffd6fc2f31c9 (patch) | |
tree | 7eed19f40446f44713a50f22fca9565d140417cf | |
parent | 2f3065011f17174cab2e67b96fad7d787ce8f339 (diff) | |
download | pkgsrc-03a5c08993d910826a8c712d69b5ffd6fc2f31c9.tar.gz |
Pullup ticket #5924 - requested by bouyer
sysutils/syslog-ng: NetBSD bugfix
Revisions pulled up:
- sysutils/syslog-ng/Makefile 1.34
- sysutils/syslog-ng/distinfo 1.16
- sysutils/syslog-ng/patches/patch-lib_signal-handler.c 1.1
---
Module Name: pkgsrc
Committed By: bouyer
Date: Fri Mar 15 10:04:00 UTC 2019
Modified Files:
pkgsrc/sysutils/syslog-ng: Makefile distinfo
Added Files:
pkgsrc/sysutils/syslog-ng/patches: patch-lib_signal-handler.c
Log Message:
syslog-ng overloads sigaction() with its own version, and calls the libc
sigaction() with a dlsym call. On NetBSD this ends up calling the compatibility
sigaction() which fails with ENOSYS if COMPAT_13 is not in the kernel.
Even with COMPAT_13 it would be incorrect because we call the compat
sigaction() with the non-compat arguments.
On NetBSD, fix this by calling explicitely __libc_sigaction14().
Bump PKGREVISION
-rw-r--r-- | sysutils/syslog-ng/Makefile | 4 | ||||
-rw-r--r-- | sysutils/syslog-ng/distinfo | 3 | ||||
-rw-r--r-- | sysutils/syslog-ng/patches/patch-lib_signal-handler.c | 23 |
3 files changed, 28 insertions, 2 deletions
diff --git a/sysutils/syslog-ng/Makefile b/sysutils/syslog-ng/Makefile index a53af69b629..ed9cc8e98f5 100644 --- a/sysutils/syslog-ng/Makefile +++ b/sysutils/syslog-ng/Makefile @@ -1,7 +1,9 @@ -# $NetBSD: Makefile,v 1.33 2018/02/28 13:26:08 fhajny Exp $ +# $NetBSD: Makefile,v 1.33.8.1 2019/03/17 15:45:44 bsiegert Exp $ .include "../../sysutils/syslog-ng/Makefile.common" +PKGREVISION= 1 + CONFIGURE_ARGS+= --enable-ssl CONFIGURE_ARGS+= --enable-stomp CONFIGURE_ARGS+= --enable-tcp-wrapper diff --git a/sysutils/syslog-ng/distinfo b/sysutils/syslog-ng/distinfo index 420503b6b66..3aabab2c060 100644 --- a/sysutils/syslog-ng/distinfo +++ b/sysutils/syslog-ng/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.15 2018/08/15 13:08:21 fhajny Exp $ +$NetBSD: distinfo,v 1.15.4.1 2019/03/17 15:45:44 bsiegert Exp $ SHA1 (syslog-ng-3.17.2.tar.gz) = 75d7881d2cf258017c3b98fd37ceb3322c1855ad RMD160 (syslog-ng-3.17.2.tar.gz) = 6464dd3fd20662e69e3056d090bcce470be90e93 @@ -6,4 +6,5 @@ SHA512 (syslog-ng-3.17.2.tar.gz) = 2b82ea047bab125d35ab0a90e933b8a282852c6b4a9a8 Size (syslog-ng-3.17.2.tar.gz) = 9119227 bytes SHA1 (patch-ac) = 7d48f689b6ff69c68697baf729fba8be9aec5ce8 SHA1 (patch-configure) = 2d8ef2285de44de016f44e51be47cd4c1178dfdb +SHA1 (patch-lib_signal-handler.c) = dd59ad8dba34139da6233aa65ded757f3268ac5c SHA1 (patch-modules_system-source_system-source.c) = 14c2bb4b6681766da1330b43965da9547cf73b12 diff --git a/sysutils/syslog-ng/patches/patch-lib_signal-handler.c b/sysutils/syslog-ng/patches/patch-lib_signal-handler.c new file mode 100644 index 00000000000..601c9f13056 --- /dev/null +++ b/sysutils/syslog-ng/patches/patch-lib_signal-handler.c @@ -0,0 +1,23 @@ +$NetBSD: patch-lib_signal-handler.c,v 1.1.2.2 2019/03/17 15:45:44 bsiegert Exp $ +sigaction() is the old, compat syscall. On NetBSD call the up to date one. + +--- lib/signal-handler.c.orig 2019-03-15 09:25:35.669181384 +0100 ++++ lib/signal-handler.c 2019-03-15 09:29:02.023178726 +0100 +@@ -45,6 +45,9 @@ + static int + call_original_sigaction(int signum, const struct sigaction *act, struct sigaction *oldact) + { ++#ifdef __NetBSD__ ++ __libc_sigaction14(signum, act, oldact); ++#else + static int (*real_sa)(int, const struct sigaction *, struct sigaction *); + + if (real_sa == NULL) +@@ -52,6 +55,7 @@ + real_sa = dlsym(RTLD_NEXT, "sigaction"); + } + return real_sa(signum, act, oldact); ++#endif + } + + static gboolean |