@node pipe2 @subsection @code{pipe2} @findex pipe2 Gnulib module: pipe2 Portability problems fixed by Gnulib: @itemize @item This function is missing on many non-glibc platforms: Mac OS X 10.5, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, Minix 3.1.8, AIX 5.1, HP-UX 11, IRIX 6.5, OSF/1 5.1, Solaris 11 2011-11, Cygwin 1.7.1, mingw, MSVC 9, Interix 3.5, BeOS. But the replacement function is not atomic; this matters in multi-threaded programs that spawn child processes. @end itemize Portability problems not fixed by Gnulib: @itemize @item This function crashes rather than failing with @code{EMFILE} if no resources are left on some platforms: Cygwin 1.7.9. @end itemize Note: This function portably supports the @code{O_NONBLOCK} flag only if the gnulib module @code{nonblocking} is also used.