diff options
Diffstat (limited to 'upstream/archlinux/man3p/tempnam.3p')
-rw-r--r-- | upstream/archlinux/man3p/tempnam.3p | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/upstream/archlinux/man3p/tempnam.3p b/upstream/archlinux/man3p/tempnam.3p new file mode 100644 index 00000000..9478b90a --- /dev/null +++ b/upstream/archlinux/man3p/tempnam.3p @@ -0,0 +1,150 @@ +'\" et +.TH TEMPNAM "3P" 2017 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" +.SH PROLOG +This manual page is part of the POSIX Programmer's Manual. +The Linux implementation of this interface may differ (consult +the corresponding Linux manual page for details of Linux behavior), +or the interface may not be implemented on Linux. +.\" +.SH NAME +tempnam +\(em create a name for a temporary file +.SH SYNOPSIS +.LP +.nf +#include <stdio.h> +.P +char *tempnam(const char *\fIdir\fP, const char *\fIpfx\fP); +.fi +.SH DESCRIPTION +The +\fItempnam\fR() +function shall generate a pathname that may be used for a temporary +file. +.P +The +\fItempnam\fR() +function allows the user to control the choice of a directory. The +.IR dir +argument points to the name of the directory in which the file is to be +created. If +.IR dir +is a null pointer or points to a string which is not a name for an +appropriate directory, the path prefix defined as P_tmpdir in the +.IR <stdio.h> +header shall be used. If that directory is not accessible, an +implementation-defined directory may be used. +.P +Many applications prefer their temporary files to have certain initial +letter sequences in their names. The +.IR pfx +argument should be used for this. This argument may be a null pointer +or point to a string of up to five bytes to be used as the beginning of +the filename. +.P +Some implementations of +\fItempnam\fR() +may use +\fItmpnam\fR() +internally. On such implementations, if called more than +{TMP_MAX} +times in a single process, the behavior is implementation-defined. +.SH "RETURN VALUE" +Upon successful completion, +\fItempnam\fR() +shall allocate space for a string, put the generated pathname in that +space, and return a pointer to it. The pointer shall be suitable for +use in a subsequent call to +\fIfree\fR(). +Otherwise, it shall return a null pointer and set +.IR errno +to indicate the error. +.SH ERRORS +The +\fItempnam\fR() +function shall fail if: +.TP +.BR ENOMEM +Insufficient storage space is available. +.LP +.IR "The following sections are informative." +.SH EXAMPLES +.SS "Generating a Pathname" +.P +The following example generates a pathname for a temporary file in +directory +.BR /tmp , +with the prefix +.IR file . +After the pathname has been created, the call to +\fIfree\fR() +deallocates the space used to store the pathname. +.sp +.RS 4 +.nf + +#include <stdio.h> +#include <stdlib.h> +\&... +const char *directory = "/tmp"; +const char *fileprefix = "file"; +char *file; +.P +file = tempnam(directory, fileprefix); +free(file); +.fi +.P +.RE +.SH "APPLICATION USAGE" +This function only creates pathnames. It is the application's +responsibility to create and remove the files. Between the time a +pathname is created and the file is opened, it is possible for some +other process to create a file with the same name. Applications may +find +\fItmpfile\fR() +more useful. +.P +Applications should use the +\fItmpfile\fR(), +\fImkdtemp\fR(), +or +\fImkstemp\fR() +functions instead of the obsolescent +\fItempnam\fR() +function. +.SH RATIONALE +None. +.SH "FUTURE DIRECTIONS" +The +\fItempnam\fR() +function may be removed in a future version. +.SH "SEE ALSO" +.IR "\fIfopen\fR\^(\|)", +.IR "\fIfree\fR\^(\|)", +.IR "\fImkdtemp\fR\^(\|)", +.IR "\fIopen\fR\^(\|)", +.IR "\fItmpfile\fR\^(\|)", +.IR "\fItmpnam\fR\^(\|)", +.IR "\fIunlink\fR\^(\|)" +.P +The Base Definitions volume of POSIX.1\(hy2017, +.IR "\fB<stdio.h>\fP" +.\" +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1-2017, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 7, 2018 Edition, +Copyright (C) 2018 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 . +.PP +Any typographical or formatting errors that appear +in this page are most likely +to have been introduced during the conversion of the source files to +man page format. To report such errors, see +https://www.kernel.org/doc/man-pages/reporting_bugs.html . |