Provided by:
manpages-fr-dev_3.27fr1.4-1_all 
NOM
ftok - Convertir un nom de fichier et un identificateur de projet en
cle IPC System V
SYNOPSIS
#include <sys/types.h>
#include <sys/ipc.h>
key_t ftok(const char *pathname, int proj_id);
DESCRIPTION
La fonction ftok() utilise l'identite du fichier indique par pathname
(qui doit exister et etre accessible), et les huit bits de poids faible
de proj_id (qui doit etre non nul) pour creer une cle IPC System V de
type key_t, utilisable avec msgget(2), semget(2) ou shmget(2).
La valeur resultante est la meme pour tous les chemins d'acces
identifiant le meme fichier, en utilisant une valeur identique pour
proj_id. La valeur devrait etre differente lorsque des fichiers
differents (existants simultanement), ou des identificateurs de projet
differents sont employes.
VALEUR RENVOY'EE
En cas de succes, la cle generee key_t est renvoyee. Sinon elle renvoie
-1, et errno indique l'erreur de la meme facon que l'appel systeme
stat(2).
CONFORMIT'E
POSIX.1-2001.
NOTES
Avec les bibliotheques libc4 et libc5 (et egalement sous SunOS 4.x), le
prototype etait
key_t ftok(char *pathname, char proj_id);
De nos jours proj_id est un int, mais seuls huit bits sont utilises.
L'habitude veut que l'on utilise un caractere ASCII comme identifiant
de proj_id, ce qui explique pourquoi le comportement est indefini
lorsque proj_id vaut zero.
Naturellement, aucune garantie ne peut etre donne sur le fait que la
cle key_t resultante soit unique. En general, la meilleure methode est
de combiner l'octet de proj_id, les seize bits de poids faibles du
numero d'inode, et les huit bits de poids faibles du numero de
peripherique pour obtenir un entier sur 32 bits. Des collisions peuvent
se produire facilement, par exemple entre les fichiers se trouvant sur
/dev/hda1 et ceux sur /dev/sda1.
VOIR AUSSI
msgget(2), semget(2), shmget(2), stat(2), svipc(7)
COLOPHON
Cette page fait partie de la publication 3.27 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent etre trouvees a l'adresse
<URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION
Depuis 2010, cette traduction est maintenue a l'aide de l'outil po4a
<URL:http://po4a.alioth.debian.org/> par l'equipe de traduction
francophone au sein du projet perkamon
<URL:http://perkamon.alioth.debian.org/>.
Christophe Blaess <URL:http://www.blaess.fr/christophe/> (1996-2003),
Alain Portal <URL:http://manpagesfr.free.fr/> (2003-2006). Florentin
Duneau et l'equipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en ecrivant a
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir acces a la version anglaise de ce document
en utilisant la commande << man -L C <section> <page_de_man> >>.