* lib/fsync.c: New file.
* m4/fsync.m4: New file.
* modules/fsync: New file.
* modules/fsync-tests: New file.
* tests/test-fsync.c: New file.
* modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST
both GNULIB_FSYNC and HAVE_FSYNC.
* lib/unistd.in.h (@GNULIB_FSYNC@): Add a block for fsync.
* MODULES.html.sh (posix_functions): Add fsync.
* doc/posix-functions/fsync.texi: Update.
* lib/open.c (rpl_open): Close fd before returning error.
* lib/fopen.c (rpl_fopen): Close fd before returning error.
* doc/posix-functions/open.texi (open): Document that Irix also
has the bug.
* doc/posix-functions/fopen.texi (fopen): Likewise.
Reported by Paolo Bonzini.
Signed-off-by: Eric Blake <ebb9@byu.net>
* m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
whether sigaltstack uses wrong end of stack_t (copied in part from
libsigsegv).
* lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
Irix bug, without requiring an over-allocation.
* doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
bug.
Signed-off-by: Eric Blake <ebb9@byu.net>
* doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
not allowing a stream visiting a directory, even though reading
from such a stream is not portable.
Signed-off-by: Eric Blake <ebb9@byu.net>
* m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
not all, bugs from NetBSD 3.0 have been fixed.
* doc/posix-functions/frexp.texi (frexp): Document bug.
Reported by Thomas Klausner.
Signed-off-by: Eric Blake <ebb9@byu.net>
* m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
sa_sigaction...
* m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
(gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
* m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
* modules/signal (Makefile.am): Use the value.
* lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
&& !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
* doc/posix-headers/signal.texi (signal.h): Document this
portability issue.
* doc/posix-functions/sigaction.texi (sigaction): Likewise.
Reported by Tom G. Christensen.
Signed-off-by: Eric Blake <ebb9@byu.net>