freopen-safer: new module
[gnulib.git] / doc / posix-functions / stderr.texi
index 5a518a6..7b8c17f 100644 (file)
@@ -17,4 +17,11 @@ stderr is created in 32-bit mode instead of 64-bit mode: Cygwin 1.5.x.
 One workaround is to use freopen(NULL, ``r+'', stderr) on Cygwin 1.5.21
 or newer.  Another is to use the gnulib ftello module and do
 ftello(stderr).
+@item
+POSIX states that a setuid application can guarantee that fd 2 is
+open, but some systems guarantee this even for non-setuid programs.
+If an application is executed with fd 2 closed, use of @code{stderr}
+can affect an unrelated file that happened to be assigned to fd 2.
+The gnulib *-safer modules may be used to guarantee that fd 2 stays
+reserved for @code{stderr}.
 @end itemize