diff options
Diffstat (limited to 'man3p/tmpfile.3p')
-rw-r--r-- | man3p/tmpfile.3p | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/man3p/tmpfile.3p b/man3p/tmpfile.3p new file mode 100644 index 000000000..24d9a069b --- /dev/null +++ b/man3p/tmpfile.3p @@ -0,0 +1,113 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "TMPFILE" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" tmpfile +.SH NAME +tmpfile \- create a temporary file +.SH SYNOPSIS +.LP +\fB#include <stdio.h> +.br +.sp +FILE *tmpfile(void); +.br +\fP +.SH DESCRIPTION +.LP +The \fItmpfile\fP() function shall create a temporary file and open +a corresponding stream. The file shall be automatically +deleted when all references to the file are closed. The file is opened +as in \fIfopen\fP() +for update (\fIw\fP+). +.LP +In +some implementations, a permanent file may be left behind if the process +calling \fItmpfile\fP() is killed while it is processing +a call to \fItmpfile\fP(). +.LP +An error message may be written to standard error if the stream cannot +be opened. +.SH RETURN VALUE +.LP +Upon successful completion, \fItmpfile\fP() shall return a pointer +to the stream of the file that is created. Otherwise, it +shall return a null pointer \ and set \fIerrno\fP to indicate the +error. +.SH ERRORS +.LP +The \fItmpfile\fP() function shall fail if: +.TP 7 +.B EINTR +A +signal was caught during \fItmpfile\fP(). +.TP 7 +.B EMFILE +{OPEN_MAX} file descriptors are currently open in the calling process. +.TP 7 +.B ENFILE +The maximum allowable number of files is currently open in the system. +.TP 7 +.B ENOSPC +The directory or file system which would contain the new file cannot +be expanded. +.TP 7 +.B EOVERFLOW +The file is a regular file and the size of the file cannot be represented +correctly in an object of type \fBoff_t\fP. +.sp +.LP +The \fItmpfile\fP() function may fail if: +.TP 7 +.B EMFILE +{FOPEN_MAX} streams are currently open in the calling process. +.TP 7 +.B ENOMEM +Insufficient storage space is available. +.sp +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.SS Creating a Temporary File +.LP +The following example creates a temporary file for update, and returns +a pointer to a stream for the created file in the +\fIfp\fP variable. +.sp +.RS +.nf + +\fB#include <stdio.h> +\&... +FILE *fp; +.sp + +fp = tmpfile (); +\fP +.fi +.RE +.SH APPLICATION USAGE +.LP +It should be possible to open at least {TMP_MAX} temporary files during +the lifetime of the program (this limit may be shared +with \fItmpnam\fP()) and there should be no limit on the number simultaneously +open other +than this limit and any limit on the number of open files ( {FOPEN_MAX}). +.SH RATIONALE +.LP +None. +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIfopen\fP() , \fItmpnam\fP() , \fIunlink\fP() +, the Base Definitions volume of IEEE\ Std\ 1003.1-2001, \fI<stdio.h>\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |