aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsubrata_modak <subrata_modak>2008-10-29 07:03:39 +0000
committersubrata_modak <subrata_modak>2008-10-29 07:03:39 +0000
commit929af412082caa0012e42ebe88e38351e6961a5e (patch)
treeb81dae8e2de3daf8ba421170b470aaa54a229c9e
parent4c48a2ab43677167a2126443ca7db52ebb400a84 (diff)
Fix segfault of "pan" on signal action. pan segfaults when receiving various signal registered by sigaction. Valgrind reports various uninitalied bytes of the sigaction struct: Initializing the sigaction struct as empty avoids a segfault of "pan". Signed-off-by: Daniel Gollub <dgollub@suse.de>. Acked-by: Nate Straz <nstraz@redhat.com>.
-rw-r--r--pan/pan.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/pan/pan.c b/pan/pan.c
index 457de0f75..e392c3bc6 100644
--- a/pan/pan.c
+++ b/pan/pan.c
@@ -49,7 +49,7 @@
* - added option to create a command file with all failed tests.
*
*/
-/* $Id: pan.c,v 1.26 2008/05/19 13:37:14 subrata_modak Exp $ */
+/* $Id: pan.c,v 1.27 2008/10/29 07:03:39 subrata_modak Exp $ */
#include <errno.h>
#include <string.h>
@@ -444,7 +444,11 @@ main(int argc, char **argv)
rec_signal = send_signal = 0;
if (run_time != -1) { alarm(run_time); }
+
+ sigemptyset(&sa.sa_mask);
+ sa.sa_flags = 0;
sa.sa_handler = wait_handler;
+
sigaction(SIGALRM, &sa, NULL);
sigaction(SIGINT, &sa, NULL);
sigaction(SIGTERM, &sa, NULL);