Subject: setjmp/sigsetjmp/longjmp/siglongjmp errors on many ports?
To: None <tech-userlevel@netbsd.org>
From: Michael Graff <explorer@flame.org>
List: tech-userlevel
Date: 11/27/1999 01:20:41
On the i386, the set/longjmp() functions use sigblock() and
sigsetmask() to store the signal state. These use an int, not the
now-longer sigset_t, which means signals > 31 won't properly be saved
or restored.
On the alpha, once again setjmp() and friends call sigblock,
__sigaltstack14(), and the like to save state. It uses sigreturn() to
return to the setjmp() point, however.
Does this seem slightly wrong, or am I confused?
--Michael