*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Linux man pages -> tempnam (3)              



NAME    [Toc]    [Back]

       tempnam - create a name for a temporary file

SYNOPSIS    [Toc]    [Back]

       #include <stdio.h>

       char *tempnam(const char *dir, const char *pfx);

DESCRIPTION    [Toc]    [Back]

       The  tempnam()  function  returns a pointer to a string that is a valid
       filename, and such that a file with this name did not exist when  temp-
       nam()  checked.	 The  filename	suffix	of the pathname generated will
       start with pfx in case pfx is a non-NULL string of at most five	bytes.
       The  directory  prefix part of the pathname generated is required to be
       `appropriate' (often that at least implies writable).  Attempts to find
       an  appropriate	directory  go through the following steps: (i) In case
       the environment variable TMPDIR exists and  contains  the  name	of  an
       appropriate  directory, that is used.  (ii) Otherwise, if the dir argument
 is	non-NULL  and  appropriate,  it  is  used.   (iii)  Otherwise,
       P_tmpdir  (as  defined  in  <stdio.h>)  is used when appropriate.  (iv)
       Finally an implementation-defined directory may be used.

RETURN VALUE    [Toc]    [Back]

       The tempnam() function returns a pointer to a  unique  temporary  filename,
 or NULL if a unique name cannot be generated.

ERRORS    [Toc]    [Back]

       ENOMEM Allocation of storage failed.

NOTES    [Toc]    [Back]

       SUSv2  does  not mention the use of TMPDIR; glibc will use it only when
       the program is not suid.  SVID2 specifies that the directory used under
       (iv)  is  /tmp.	 SVID2 specifies that the string returned by tempnam()
       was allocated using malloc(3) and hence can be freed by free(3).

       The tempnam() function generates a different string  each  time	it  is
       called,	up  to	TMP_MAX  (defined in <stdio.h>) times. If it is called
       more than TMP_MAX times, the behaviour is implementation defined.

       In case the pfx argument has length larger than five,  glibc  will  use
       the  first  five bytes.	Upon failure to find a unique name, glibc will
       return EEXIST.

BUGS    [Toc]    [Back]

       The precise meaning of `appropriate' is undefined;  it  is  unspecified
       how  accessibility  of a directory is determined.  Never use this function.
 Use tmpfile(3) instead.

CONFORMING TO    [Toc]    [Back]

       SVID 2, BSD 4.3

SEE ALSO    [Toc]    [Back]

       mktemp(3), mkstemp(3), tmpfile(3), tmpnam(3)

				  1999-06-14			    TEMPNAM(3)
[ Back ]
 Similar pages
Name OS Title
tmpfile IRIX create a temporary file
tmpfile Tru64 Create a temporary file
tmpfile Linux create a temporary file
mkstemp Linux create a unique temporary file
tempfile Linux create a temporary file in a safe manner
tempnam Tru64 Construct the name for a temporary file
tmpnam FreeBSD temporary file routines
tempnam FreeBSD temporary file routines
tempnam OpenBSD temporary file routines
tmpfile FreeBSD temporary file routines
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service