diff options
author | subrata_modak <subrata_modak> | 2008-10-29 07:03:39 +0000 |
---|---|---|
committer | subrata_modak <subrata_modak> | 2008-10-29 07:03:39 +0000 |
commit | 929af412082caa0012e42ebe88e38351e6961a5e (patch) | |
tree | b81dae8e2de3daf8ba421170b470aaa54a229c9e /pan | |
parent | 4c48a2ab43677167a2126443ca7db52ebb400a84 (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>.
Diffstat (limited to 'pan')
-rw-r--r-- | pan/pan.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -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); |