Provided by: manpages-es_1.55-3_all bug

NOMBRE

       tempnam - crea un nombre para un fichero temporal

SINOPSIS

       #include <stdio.h>

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

DESCRIPCIÓN

       La  función tempnam() devuelve un puntero a una cadena que es un nombre
       válido de fichero tal que no existe un fichero con este  nombre  cuando
       tempnam()  lo  comprueba.   El  sufijo del nombre de fichero de la ruta
       generada comenzará con pfj en  el  caso  de  que  pfj  sea  una  cadena
       distinta  de  NULL  con  al menos 5 bytes.  La parte de directorios del
       prefijo de la ruta generada necesita ser ‘adecuada’ (normalmente,  esto
       implica  que al menos se pueda escribir).  Los pasos que se siguen para
       intentar encontrar un directorio adecuado son los siguientes: (i) En el
       caso  de  que la variable de entorno TMPDIR exista y contenga el nombre
       de un directorio apropiado, se utiliza ese.  (ii) En caso contrario, si
       el  argumento  dir  es  distinto de NULL y apropiado, se usa.  (iii) En
       caso contrario, P_tmpdir (tal y como se define  en  <stdio.h>)  se  usa
       cuando  sea  conveniente.  (iv) Finalmente, se puede usar un directorio
       definido por la implementación.

VALOR DEVUELTO

       La función tempnam() devuelve un puntero al nombre de fichero único  en
       el sistema o NULL si no se puede generar el nombre.

ERRORES

       ENOMEM Ha fallado la reserva de memoria.

OBSERVACIONES

       SUSv2  no  menciona  el  uso  de  TMPDIR. glibc lo usará sólo cuando el
       programa no sea suid.  SVID2 especifica que el directorio usado  en  el
       caso  (iv)  es  /tmp.   SVID2  especifica  que  la  cadena que devuelve
       tempnam() se reservó usando malloc(3)  y  que,  por  tanto,  puede  ser
       liberada con free(3).

       La función tempnam() genera una cadena diferente cada vez que se llama,
       hasta TMP_MAX veces (definida  en  <stdio.h>).   Si  se  llama  más  de
       TMP_MAX veces, el comportamiento depende de la implementación.

       En el caso de que el argumento pfj tenga una longitud mayor de 5, glibc
       usará los primeros 5 bytes. En el caso de que la búsqueda de un  nombre
       único falle, glibc devolverá EEXIST.

FALLOS

       El  significado  preciso  de  ‘adecuado’  no  está  definido.  Está sin
       especificar cómo se determina la accesibilidad de un directorio.  Nunca
       use esta función. En su lugar, use mkstemp(3).

CONFORME A

       SVID 2, BSD 4.3

VÉASE TAMBIÉN

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

                                 14 junio 1999                      TEMPNAM(3)