@end deftypefn
-@c fopen_unlocked.c:32
+@c fopen_unlocked.c:40
@deftypefn Extension FILE * fdopen_unlocked (int @var{fildes}, const char * @var{mode})
Opens and returns a @code{FILE} pointer via @code{fdopen}. If the
@end deftypefn
-@c fopen_unlocked.c:23
+@c fopen_unlocked.c:31
@deftypefn Extension FILE * fopen_unlocked (const char *@var{path}, const char * @var{mode})
Opens and returns a @code{FILE} pointer via @code{fopen}. If the
@end deftypefn
-@c fopen_unlocked.c:41
+@c fopen_unlocked.c:49
@deftypefn Extension FILE * freopen_unlocked (const char * @var{path}, const char * @var{mode}, FILE * @var{stream})
Opens and returns a @code{FILE} pointer via @code{freopen}. If the
@end deftypefn
+@c fopen_unlocked.c:23
+@deftypefn Extension void unlock_stream (FILE * @var{stream})
+
+If the OS supports it, ensure that the supplied stream is setup to
+avoid any multi-threaded locking. Otherwise leave the @code{FILE}
+pointer unchanged. If the @var{stream} is @code{NULL} do nothing.
+
+@end deftypefn
+
@c vasprintf.c:47
@deftypefn Extension int vasprintf (char **@var{resptr}, const char *@var{format}, va_list @var{args})