Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       ftok - Convertir un nom de fichier et un identificateur de projet en clé 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'identité  du  fichier  indiqué  par  pathname  (qui doit exister et être
       accessible), et les huit bits de poids faible de proj_id (qui doit être non nul) pour créer une  clé  IPC
       System V de type key_t, utilisable avec msgget(2), semget(2) ou shmget(2).

       La  valeur résultante est la même pour tous les chemins d'accès identifiant le même fichier, en utilisant
       une valeur identique pour proj_id. La valeur devrait être  différente  lorsque  des  fichiers  différents
       (existants simultanément), ou des identificateurs de projet différents sont employés.

VALEUR RENVOYÉE

       En  cas de succès, la clé générée key_t est renvoyée. Sinon elle renvoie -1, et errno indique l'erreur de
       la même façon que l'appel système stat(2).

ATTRIBUTS

   Multithreading (voir pthreads(7))
       La fonction ftok() est sûre dans un contexte multithread.

CONFORMITÉ

       POSIX.1-2001.

NOTES

       Avec les bibliothèques libc4 et libc5 (et également sous SunOS 4.x), le prototype était

              key_t ftok(char *pathname, char proj_id);

       De nos jours proj_id est un int, mais seuls huit bits sont utilisés. L'habitude veut que l'on utilise  un
       caractère  ASCII  comme  identifiant  de  proj_id,  ce qui explique pourquoi le comportement est indéfini
       lorsque proj_id vaut zéro.

       Naturellement, aucune garantie ne peut être donné sur le fait que la clé key_t résultante soit unique. En
       général, la meilleure méthode est de combiner l'octet de proj_id, les seize  bits  de  poids  faibles  du
       numéro  d'inode,  et  les huit bits de poids faibles du numéro de périphérique 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.65 du projet man-pages Linux. Une description du projet et des
       instructions     pour     signaler     des     anomalies    peuvent    être    trouvées    à    l'adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par
       l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

       Christophe      Blaess      <http://www.blaess.fr/christophe/>      (1996-2003),       Alain       Portal
       <http://manpagesfr.free.fr/>  (2003-2006).  Florentin  Duneau  et  l'équipe  francophone de traduction de
       Debian (2006-2009).

       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> ».

GNU                                              7 octobre 2013                                          FTOK(3)