sigaction(). This used to broken only when SA_SIGINFO wasn't defined,
until main.c rev. 1.46 and pthread.c rev. 1.10 broke it
unconditionally.
struct sigaction act;
/* actually it should inherit all this from main but... */
+ act.sa_flags = 0;
sigemptyset(&act.sa_mask);
act.sa_handler = shutdwn;
sigaction(SIGTERM, &act, NULL);
#if !defined(_WIN32)
/* signal() should not be used with mit pthreads. Anyway if u
have a posix threads u definitly have posix signals -- Sasha */
+ act.sa_flags = 0;
sigemptyset(&act.sa_mask);
act.sa_handler = shutdwn;
sigaction(SIGTERM, &act, NULL);