diff options
Diffstat (limited to 'gnulib/doc/posix-functions/signal.texi')
m--------- | gnulib | 0 | ||||
-rw-r--r-- | gnulib/doc/posix-functions/signal.texi | 25 |
2 files changed, 25 insertions, 0 deletions
diff --git a/gnulib b/gnulib deleted file mode 160000 -Subproject 4fc10daa05477586fea99b6b3ca02a87d1102fa diff --git a/gnulib/doc/posix-functions/signal.texi b/gnulib/doc/posix-functions/signal.texi new file mode 100644 index 00000000..4c3ba6ca --- /dev/null +++ b/gnulib/doc/posix-functions/signal.texi @@ -0,0 +1,25 @@ +@node signal +@section @code{signal} +@findex signal + +POSIX specification: @url{http://www.opengroup.org/onlinepubs/9699919799/functions/signal.html} + +Gnulib module: --- + +Portability problems fixed by Gnulib: +@itemize +@end itemize + +Portability problems not fixed by Gnulib: +@itemize +@item +On System V platforms, when the signal is triggered, the kernel uninstalls the +handler (i.e.@: resets the signal's action to SIG_DFL) before invoking the +handler. This opens the door to race conditions: undesired things happen +if the signal is triggered twice and the signal handler was not quick enough +reinstalling itself as a handler. On BSD platforms and glibc platforms, on the +other hand, when the signal is triggered, the kernel blocks the signal +before invoking the handler. This is saner, but POSIX still allows either +behavior. To avoid this problem, use @code{sigaction} instead of +@code{signal}. +@end itemize |