Daniel/Daniel,

On Tue, 2008-10-28 at 15:51 -0400, Nate Straz wrote:
> On Oct 27 22:25, Daniel Gollub wrote:
> > pan segfaults when receiving various signal registered by sigaction.
> > 
> > ----->8--------
> > i386:~ # /usr/lib/ltp/pan/pan -q -e -S -a 24911 -n 24911 -f /root/ftest05 &
> > [1] 25049
> > i386:~ # killall -SIGINT pan
> > [1]+  Segmentation fault      /usr/lib/ltp/pan/pan -q -e -S -a 24911 -n 
> > 24911 -f /root/ftest05
> > ------8<-------
> > 
> > Valgrind reports various uninitalied bytes of the sigaction struct:
> > 
> > ----->8--------
> > ==25055== Syscall param rt_sigaction(act->sa_mask) points to uninitialised 
> > byte(s)
> > ==25055==    at 0x407AA17: __libc_sigaction (in /lib/libc-2.4.so)
> > ==25055==    by 0x407AB02: sigaction (in /lib/libc-2.4.so)
> > ==25055==    by 0x804AAEF: main (pan.c:448)
> > ==25055==  Address 0xbe9763a4 is on thread 1's stack
> > ==25055== 
> > ==25055== Syscall param rt_sigaction(act->sa_flags) points to uninitialised 
> > byte(s)
> > ==25055==    at 0x407AA17: __libc_sigaction (in /lib/libc-2.4.so)
> > ==25055==    by 0x407AB02: sigaction (in /lib/libc-2.4.so)
> > ==25055==    by 0x804AAEF: main (pan.c:448)
> > ==25055==  Address 0xbe97639c is on thread 1's stack
> > ------8<-------
> > 
> > Initializing the sigaction struct as empty avoids a segfault of "pan".
> > 
> > 
> > Signed-off-by: Daniel Gollub <[EMAIL PROTECTED]>
> 
> Acked-by: Nate Straz <[EMAIL PROTECTED]>
> 

Thanks.

Regards--
Subrata

> > 
> > ---
> > 
> >  pan/pan.c |    4 ++++
> >  1 files changed, 4 insertions(+), 0 deletions(-)
> > 
> > diff --git a/pan/pan.c b/pan/pan.c
> > index 457de0f..0ed4be3 100644
> > --- a/pan/pan.c
> > +++ b/pan/pan.c
> > @@ -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);
> > 
> > -------------------------------------------------------------------------
> > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> > Build the coolest Linux based applications with Moblin SDK & win great 
> > prizes
> > Grand prize is a trip for two to an Open Source event anywhere in the world
> > http://moblin-contest.org/redirect.php?banner_id=100&url=/
> > _______________________________________________
> > Ltp-list mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/ltp-list
> 
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> Ltp-list mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ltp-list


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

Reply via email to