MKTEMP(2) System Calls Manual MKTEMP(2)NAME
mktemp - make a unique file name
SYNOPSIS
#include <u.h>
#include <libc.h>
char* mktemp(char *template)
DESCRIPTION
Mktemp replaces template by a unique file name, and returns the address of the template. The template should look like a file name with
eleven trailing The are replaced by a letter followed by the current process id. Letters from to are tried until a name that can be
accessed (see access(2)) is generated. If no such name can be generated, mktemp returns "/".
Alef
There is no mktemp in Alef.
SOURCE
/sys/src/libc/port/mktemp.c
SEE ALSO getpid(2), access(2)MKTEMP(2)
Check Out this Related Man Page
mktemp(3) Library Functions Manual mktemp(3)NAME
mktemp, mkstemp - Construct a unique file name
LIBRARY
Standard C Library (libc.so, libc.a),
System V Compatibility Library (libsys5.a)
SYNOPSIS
Standard C Library
#include <stdlib.h>
int mkstemp( char *template);
char *mktemp( char *template);
STANDARDS
Interfaces documented on this reference page conform to industry standards as follows:
mktemp(), mkstemp(): XPG4-UNIX
Refer to the standards(5) reference page for more information about industry standards and associated tags.
PARAMETERS
Points to a string to be replaced with a unique file name. The string in the template parameter must be a file name with six trailing Xs.
DESCRIPTION
The mktemp() function replaces the contents of the string pointed to by the template parameter with a unique file name. The application
must initialize template to be a file name with six trailing Xs; mktemp() replaces the Xs in the template string with a unique file name.
Under libc.a, the file name is a unique combination of the thread name and process ID. Under libsys5.a, the file name is created with the
getpid function.
The mkstemp() function performs the same substitution to the template name and also returns a file descriptor for the file and opens the
file with "owner" reading and writing privileges (0600). The function thus prevents any possible race condition between testing whether the
file exists and opening it for use. The mkstemp() function is not available under libsys5.a.
RETURN VALUES
Upon successful completion, the mktemp() function returns the address of the string pointed to by the template parameter.
If the string pointed to by the template parameter contains no Xs, or if the mktemp() function is unable to construct a unique file name,
the first character of the template parameter string is replaced with a null character, and a null pointer is returned.
Upon successful completion, the mkstemp() function returns an open file descriptor. If the mkstemp() function fails, it returns a value of
-1.
ERRORS
No errors are defined for this routine.
RELATED INFORMATION
Functions: tmpfile(3), tmpnam(3), getpid(2)
Standards: standards(5) delim off
mktemp(3)