Provided by:
manpages-fr-dev_2.64.1-1_all 
NOM
mkstemp - Créér un fichier temporaire unique.
SYNOPSIS
#include <stdlib.h>
int mkstemp (char *template);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
mkstemp(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500
DESCRIPTION
La fonction mkstemp() génère un nom de fichier temporaire unique, à
partir du motif template. Les six derniers caractères de template
doivent être XXXXXX et ils seront alors remplacés par une chaîne
rendant ce nom de fichier unique. Le fichier est créé en mode lecture
et écriture avec les permissions 0666 jusqu’à la glibc 2.0.6, et avec
les permissions 0600 depuis la glibc 2.0.7. Comme il sera modifié,
template ne doit pas être une chaîne constante, mais devrait être
déclaré comme un tableau de caractères. Le fichier est ouvert avec
open(2) et l’attribut O_EXCL, garantissant que vous êtes le seul
propriétaire du fichier créé par mkstemp().
VALEUR RENVOYÉE
Si elle réussit, mkstemp() renvoie le descripteur de fichier du fichier
temporaire. En cas d’erreur, elle renvoie -1 et remplit errno en
conséquence.
ERREURS
EEXIST Impossible de créer un nom de fichier unique. Le contenu
template est imprévisible.
EINVAL Les six derniers caractères de template ne sont pas XXXXXX.
template n’est pas modifiée.
CONFORMITÉ À
BSD 4.3, POSIX.1-2001
NOTES
L’ancien comportement (créer les fichiers avec le mode 0666) est un
trou de sécurité potentiel, surtout depuis que les autres dérivés Unix
utilisent le mode 0600 et quelqu’un risque d’oublier ce détail en
effectuant un portage de programme.
Plus généralement, les spécifications POSIX ne disent rien des modes
des fichiers, ainsi les applications doivent s’assurer que la valeur
d’umask est correcte avant d’appeler mkstemp().
Le prototype se trouve dans <unistd.h> pour libc4, libc5, glibc1.
Glibc2 suit POSIX.1 et possède le prototype dans <stdlib.h>.
N’utilisez pas cette fonction, utilisez à la place tmpfile(3). Elle est
mieux définie et plus portable.
VOIR AUSSI
mkdtemp(3), mktemp(3), tempnam(3), tmpfile(3), tmpnam(3)
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».