tmpfile(3) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | ATTRIBUTES | VERSIONS | STANDARDS | HISTORY | NOTES | SEE ALSO | COLOPHON

tmpfile(3)              Library Functions Manual              tmpfile(3)

NAME         top

       tmpfile - create a temporary file

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #include <stdio.h>

       FILE *tmpfile(void);

DESCRIPTION         top

       The tmpfile() function opens a unique temporary file in binary
       read/write (w+b) mode.  The file will be automatically deleted
       when it is closed or the program terminates.

RETURN VALUE         top

       The tmpfile() function returns a stream descriptor, or NULL if a
       unique filename cannot be generated or the unique file cannot be
       opened.  In the latter case, errno is set to indicate the error.

ERRORS         top

       EACCES Search permission denied for directory in file's path
              prefix.

       EEXIST Unable to generate a unique filename.

       EINTR  The call was interrupted by a signal; see signal(7).

       EMFILE The per-process limit on the number of open file
              descriptors has been reached.

       ENFILE The system-wide limit on the total number of open files
              has been reached.

       ENOSPC There was no room in the directory to add the new
              filename.

       EROFS  Read-only filesystem.

ATTRIBUTES         top

       For an explanation of the terms used in this section, see
       attributes(7).
       ┌─────────────────────────────────────┬───────────────┬─────────┐
       │ Interface                           Attribute     Value   │
       ├─────────────────────────────────────┼───────────────┼─────────┤
       │ tmpfile()                           │ Thread safety │ MT-Safe │
       └─────────────────────────────────────┴───────────────┴─────────┘

VERSIONS         top

       The standard does not specify the directory that tmpfile() will
       use.  glibc will try the path prefix P_tmpdir defined in
       <stdio.h>, and if that fails, then the directory /tmp.

STANDARDS         top

       C11, POSIX.1-2008.

HISTORY         top

       POSIX.1-2001, C89, SVr4, 4.3BSD, SUSv2.

NOTES         top

       POSIX.1-2001 specifies: an error message may be written to stdout
       if the stream cannot be opened.

SEE ALSO         top

       exit(3), mkstemp(3), mktemp(3), tempnam(3), tmpnam(3)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.9.1.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2024-06-26.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org

Linux man-pages 6.9.1          2024-05-02                     tmpfile(3)

Pages that refer to this page: getpid(2)open(2)exit(3)mkdtemp(3)mkstemp(3)mktemp(3)stdio(3)tempnam(3)tmpnam(3)