gnulib-tool.py: import mktemp
[gnulib.git] / doc / glibc-functions / pipe2.texi
blob5bbfded13b6f35e1330f6701fac429d52c9f227f
1 @node pipe2
2 @subsection @code{pipe2}
3 @findex pipe2
5 Gnulib module: pipe2
7 Portability problems fixed by Gnulib:
8 @itemize
9 @item
10 This function is missing on many non-glibc platforms:
11 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.3, Cygwin 1.7.1, mingw, MSVC 14, Interix 3.5, BeOS, Android 2.2.
12 But the replacement function is not atomic; this matters in multi-threaded
13 programs that spawn child processes.
14 @end itemize
16 Portability problems not fixed by Gnulib:
17 @itemize
18 @item
19 This function crashes rather than failing with @code{EMFILE} if no
20 resources are left on some platforms:
21 Cygwin 1.7.9.
22 @end itemize
24 Note: This function portably supports the @code{O_NONBLOCK} flag only if the
25 gnulib module @code{nonblocking} is also used.