Use sigaction module rather than signal().
authorEric Blake <ebb9@byu.net>
Sat, 21 Jun 2008 13:08:49 +0000 (07:08 -0600)
committerEric Blake <ebb9@byu.net>
Sat, 21 Jun 2008 20:56:08 +0000 (14:56 -0600)
commit4b2f21b36a615728ebf2a0e1bc2c8def175703a8
tree257dcc1ca178c3efff3c679b967972633bd3a4bd
parentcfb3906f210bec09f48f5d48511b72064153311a
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>
12 files changed:
ChangeLog
lib/c-stack.c
lib/fatal-signal.c
lib/nanosleep.c
lib/sig-handler.h [new file with mode: 0644]
lib/sigprocmask.c
m4/nanosleep.m4
modules/c-stack
modules/fatal-signal
modules/nanosleep
modules/sigaction
modules/sigprocmask