summaryrefslogtreecommitdiff
path: root/gnulib/doc/posix-functions/sigaction.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gnulib/doc/posix-functions/sigaction.texi')
m---------gnulib0
-rw-r--r--gnulib/doc/posix-functions/sigaction.texi62
2 files changed, 62 insertions, 0 deletions
diff --git a/gnulib b/gnulib
deleted file mode 160000
-Subproject 443bc5ffcf7429e557f4a371b0661abe98ddbc1
diff --git a/gnulib/doc/posix-functions/sigaction.texi b/gnulib/doc/posix-functions/sigaction.texi
new file mode 100644
index 0000000..b4db403
--- /dev/null
+++ b/gnulib/doc/posix-functions/sigaction.texi
@@ -0,0 +1,62 @@
+@node sigaction
+@section @code{sigaction}
+@findex sigaction
+
+POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/sigaction.html}
+
+Gnulib module: sigaction
+
+Portability problems fixed by Gnulib:
+@itemize
+@item
+This function is missing on some platforms:
+mingw, MSVC 9.
+@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, MSVC 9, cygwin.
+
+@item
+Support for SA_SIGINFO is missing on some platforms:
+mingw, MSVC 9, Interix 3.5.
+
+@item
+Support for SIGCHLD, and thus for SA_NOCLDSTOP and SA_NOCLDWAIT, is
+missing on some platforms:
+mingw, MSVC 9.
+
+@item
+Support for SA_RESETHAND is missing on some platforms:
+NonStop.
+
+@item
+Support for SA_RESTART is missing on some platforms:
+mingw, MSVC 9, NonStop.
+
+@item
+In spite of having SA_SIGACTION, struct sigaction lacks the
+sa_sigaction member on some platforms:
+Irix 5.3.
+
+@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