[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [leafnode-list] leafnode 1.9.31.devel1 available, to address



Richard van der Hoff <richard@xxxxxxxxxxxxxxxxxx> writes:

> Actually, it's BSD-compatible systems that have the problem.  I'm no
> expert on any of this, but my signal(2) manpage says:

> 'The original Unix signal() would reset the handler to SIG_DFL, and
> System V (and the Linux kernel and libc4,5) does the same.  On the
> other hand, BSD does not reset the handler, but blocks new instances of
> this signal from occurring during a call of the handler.  The glibc2
> library follows the BSD behaviour.'
>
> It's the fact that BSD blocks the signal, and the signal is never
> unblocked again, that causes the problems.

Well, we have two issues here:

1. signal handler behaviour

2. setjmp behaviour.

> I'm also a bit dubious about your addition of
>    #define _XOPEN_SOURCE 500
> Matthias.  signal(2) goes on to say:

Single Unix Specification says this is needed to enable
sigsetjmp/siglongjmp, so there's no way around this actually. Looks like
I'm going to kill signal and go for sigaction instead before 1.9.31 to
avoid these problems. Thanks for pointing this out.

Other than that, remember that any system has an egocentric view of the
Unix/Linux world, and portability is not the ultimate goal.

-- 
Matthias Andree
leafnode-1 download: http://sourceforge.net/projects/leafnode/
leafnode-1 docs/new: http://mandree.home.pages.de/leafnode/
leafnode-2 homepage: http://mandree.home.pages.de/leafnode/beta/

-- 
leafnode-list@xxxxxxxxxxxxxxxxxxxxxxxxxxxx -- mailing list for leafnode
To unsubscribe, send mail with "unsubscribe" in the subject to the list