signal handler defaulting fix ...
A message that is not in the archive (sent off-list or not yet received): [email protected]
[email protected] (Edgar Toernig) wrote on 29.06.04 in <[email protected]>:
Quoted 9 lines
Not the signal part. It was written for libc5. There, signals set with signal(2) were reset when raised (SysV-style). Leaving such a signal handler with longjmp was perfectly valid.
Glibc2 changed the rules: signals set with signal(2) are not reset but blocked during delivery (BSD-style). It worked for a while because the kernel ignored the sigmask for some signals.
So, if one is to blame then glibc2 by breaking compatibility.
You might want to study /usr/include/signal.h and /usr/include/feature.h.
And then you might try stuff like -D_SVID_SOURCE or -Dsignal=sysv_signal, for example.
And stop blaming glibc for your failures.
MfG Kai