Hash :
4b2f21b3
Author :
Date :
2008-06-21T07:08:49
Use sigaction module rather than signal(). * modules/c-stack (Depends-on): Add sigaction. * modules/fatal-signal (Depends-on): Likewise. * modules/nanosleep (Depends-on): Likewise. * modules/sigprocmask (Files): Add sig-handler.h. * modules/sigaction (Files): Likewise. * lib/sig-handler.h (get_handler): New file, suggested by Paul Eggert. * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions. (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal. * lib/fatal-signal.c (uninstall_handlers, install_handlers) (init_fatal_signals): Likewise. * lib/nanosleep.c (rpl_nanosleep): Likewise. (siginterrupt): Delete fallback. * lib/sigprocmask.c (handler_t): Delete. (old_handlers): Use sa_handler_t instead. * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for siginterrupt. Signed-off-by: Eric Blake <ebb9@byu.net>
Description:
Emergency actions in case of a fatal signal.
Files:
lib/fatal-signal.h
lib/fatal-signal.c
m4/fatal-signal.m4
m4/sig_atomic_t.m4
Depends-on:
xalloc
stdbool
unistd
sigaction
sigprocmask
raise
configure.ac:
gl_FATAL_SIGNAL
Makefile.am:
lib_SOURCES += fatal-signal.h fatal-signal.c
Include:
"fatal-signal.h"
License:
GPL
Maintainer:
Bruno Haible