Mercurial > gnulib
view doc/posix-functions/sigaction.texi @ 10229:29502a2dd08a
New module sigaction, for mingw.
* modules/sigaction: New module...
* modules/sigaction-tests: ...and its test.
* m4/sigaction.m4: New file.
* lib/sigaction.c: Likewise.
* tests/test-sigaction.c: Likewise.
* m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
* modules/signal (Makefile.am): Likewise.
* lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
needed.
* doc/posix-headers/signal.texi (signal.h): Mention provided
types.
* doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
that sigaction is preferable.
* doc/posix-functions/sigaction.texi (sigaction): Mention new
module.
* MODULES.html.sh (Support for systems lacking POSIX:2001): Add
sigaction.
Signed-off-by: Eric Blake <ebb9@byu.net>
author | Eric Blake <ebb9@byu.net> |
---|---|
date | Sat, 21 Jun 2008 14:32:55 -0600 |
parents | 070329237839 |
children | a6493a165dd2 |
line wrap: on
line source
@node sigaction @section @code{sigaction} @findex sigaction POSIX specification: @url{http://www.opengroup.org/susv3xsh/sigaction.html} Gnulib module: sigaction Portability problems fixed by Gnulib: @itemize @item This function is missing on some platforms: mingw. @end itemize Portability problems not fixed by Gnulib: @itemize @item POSIX recommends that when specifying SA_RESETHAND, SA_NODEFER must also be specified. @item Support for SA_ONSTACK is missing on some platforms: mingw, cygwin. @item Support for SA_SIGINFO is missing on some platforms: mingw, Interix 3.5. @item Support for SIGCHLD, and thus for SA_NOCLDSTOP and SA_NOCLDWAIT, is missing on some platforms: mingw. @item Support for SA_RESTART is missing on some platforms: mingw. @item The symbolic value @code{SIG_IGN} for the @code{SIGCHLD} signal is equivalent to a signal handler @smallexample void handle_child (int sigchld) @{ while (waitpid (-1, NULL, WNOHANG) > 0) ; @} @end smallexample except that @code{SIG_IGN} for @code{SIGCHLD} has the effect that the children execution times are not accounted in the @code{times} function. On some platforms (BSD? SystemV? Linux?), you need to use the @code{sigaction} flag @code{SA_NOCLDWAIT} in order to obtain this behavior. @end itemize