diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2013-09-26 14:47:21 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2013-09-26 14:47:21 +0200 |
commit | 1f8c579badcc777bb7012675a39d3e13cbaf818e (patch) | |
tree | 7ca06bc2482469c65fccb2392ca0996465fb4cf6 | |
parent | a8b1e96d7bf91d97646789c1805587ca1ebba3e9 (diff) | |
parent | 9c8f4f49b02f2d92e618e7b70a9e23a3c8d4c8aa (diff) | |
download | rsyslog-1f8c579badcc777bb7012675a39d3e13cbaf818e.tar.gz rsyslog-1f8c579badcc777bb7012675a39d3e13cbaf818e.tar.bz2 rsyslog-1f8c579badcc777bb7012675a39d3e13cbaf818e.zip |
Merge branch 'v7-stable'
Conflicts:
plugins/omprog/omprog.c
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | plugins/omprog/omprog.c | 6 |
2 files changed, 9 insertions, 1 deletions
@@ -105,6 +105,10 @@ Version 7.5.0 [devel] 2013-06-11 Thanks to Axel Rau for the patch. --------------------------------------------------------------------------- Version 7.4.5 [v7.4-stable] 2013-09-?? +- bugfix: omprog blocked signals to executed programs + The made it impossible to send signals to programs executed via + omprog. + Thanks to Risto Vaarandi for the analysis and a patch. - bugfix: doc: imuxsock legacy param $SystemLogSocketParseTrusted was misspelled Thanks to David Lang for alerting us diff --git a/plugins/omprog/omprog.c b/plugins/omprog/omprog.c index 940ef8d7..5f3b112f 100644 --- a/plugins/omprog/omprog.c +++ b/plugins/omprog/omprog.c @@ -131,6 +131,8 @@ static void execBinary(instanceData *pData, int fdStdin) { int i, iRet; struct sigaction sigAct; + sigset_t set; + char *newargv[] = { NULL }; char *newenviron[] = { NULL }; assert(pData != NULL); @@ -154,10 +156,12 @@ static void execBinary(instanceData *pData, int fdStdin) /* reset signal handlers to default */ memset(&sigAct, 0, sizeof(sigAct)); - sigfillset(&sigAct.sa_mask); + sigemptyset(&sigAct.sa_mask); sigAct.sa_handler = SIG_DFL; for(i = 1 ; i < NSIG ; ++i) sigaction(i, &sigAct, NULL); + sigemptyset(&set); + sigprocmask(SIG_SETMASK, &set, NULL); alarm(0); |