DOKK / manpages / debian 12 / manpages-es-dev / tmpnam_r.3.es
tmpnam(3) Library Functions Manual tmpnam(3)

tmpnam, tmpnam_r - crea un nombre para un archivo temporal

Biblioteca Estándar C (libc, -lc)

#include <stdio.h>
char *tmpnam(char *s);
char *tmpnam_r(char *s);

Requisitos de Macros de Prueba de Características para glibc (véase feature_test_macros(7)):

tmpnam_r()


A partir de glibc 2.19:
_DEFAULT_SOURCE
Desdes glibc 2.19 y posteriores:
_BSD_SOURCE || _SVID_SOURCE

Aviso: no use esta función. En su lugar use mkstemp(3) o tmpfile(3).

La función tmpnam() devuelve un puntero a una cadena que es un nombre válido de fichero tal que no existe un fichero con ese nombre en ningún instante por lo que los programadores ingénuos pueden pensar en él como en un nombre adecuado para un fichero temporal. Si el argumento s es NULL este nombre se genera en un área estática interna que puede ser sobreescrito por la siguiente llamada a tmpnam(). Si s no es NULL, el nombre se copia al array de caracteres (de longitud, al menos, L_tmpnam) apuntado por s y se devuelve el valor s en caso de éxito.

La ruta que se crea tiene como prefijo de directorios P_tmpdir. (Tanto L_tmpnam como P_tmpdir se definen en <stdio.h>, de la misma manera que el valor TMP_MAX mencionado más abajo).

The tmpnam_r() function performs the same task as tmpnam(), but returns NULL (to indicate an error) if s is NULL.

Estas funciones devuelven un puntero al nombre único de archivo temporal, o NULL si no se puede generar un nombre único.

No se han definido errores.

Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

Interfaz Atributo Valor
tmpnam() Seguridad del hilo MT-Unsafe race:tmpnam/!s
tmpnam_r() Seguridad del hilo Multi-hilo seguro

tmpnam(): SVr4, 4.3BSD, C99, POSIX.1-2001. POSIX.1-2008 señala tmpnam() como obsoleto.

tmpnam_r() is a nonstandard extension that is also available on a few other systems.

La función tmpnam() genera una cadena diferente cada vez que se llama, hasta TMP_MAX veces. Si se llama más de TMP_MAX veces, el comportamiento depende de la implementación.

Although these functions generate names that are difficult to guess, it is nevertheless possible that between the time that the pathname is returned and the time that the program opens it, another program might create that pathname using open(2), or create it as a symbolic link. This can lead to security holes. To avoid such possibilities, use the open(2) O_EXCL flag to open the pathname. Or better yet, use mkstemp(3) or tmpfile(3).

Portable applications that use threads cannot call tmpnam() with a NULL argument if either _POSIX_THREADS or _POSIX_THREAD_SAFE_FUNCTIONS is defined.

Nunca use esta función. En su lugar use mkstemp(3) o tmpfile(3).

mkstemp(3), mktemp(3), tempnam(3), tmpfile(3)

La traducción al español de esta página del manual fue creada por Juan Piernas <piernas@ditec.um.es> y Marcos Fouces <marcos@debian.org>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.

29 Diciembre 2022 Páginas de manual de Linux 6.03