Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Feb 2003 18:04:59 -0800
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Vaclav Haisman <V.Haisman@sh.cvut.cz>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Raising SIGSEGV in SIGSEGV handler makes FreeBSD loop
Message-ID:  <3E5437CB.DC14EC42@mindspring.com>
References:  <20030219134131.T70370-100000@logout.sh.cvut.cz>

next in thread | previous in thread | raw e-mail | index | archive | help
Vaclav Haisman wrote:
> > man 2 abort
> >
> > -- Terry
> 
> logout ~/tmp>man 2 abort
> No entry for abort in section 2 of the manual
> 
> Besides, this doesn't explain anything. I see I haven't asked any question in
> my previous post. So, why does FreeBSD behave different?

Because POSIX mandates that it do so?

man 3 signal tells us:

     The handled signal is unblocked when the function returns and the process
     continues from where it left off when the signal occurred.  Unlike previ-
     ous signal facilities, the handler func() remains installed after a sig-
     nal has been delivered.

If you want this to not happen, you should explicitly uninstall the
handler, or you should call abort(3) (or _exit(2), if you don't want
to leave a core dump).

-- Terry

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3E5437CB.DC14EC42>