Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       ftok - Convertir un nom de fichier et un identificateur de projet en clé IPC System V

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #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

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌───────────────────────────────────────────────────────────────────────┬──────────────────────┬─────────┐
       │InterfaceAttributValeur  │
       ├───────────────────────────────────────────────────────────────────────┼──────────────────────┼─────────┤
       │ftok()                                                                 │ Sécurité des threads │ MT-Safe │
       └───────────────────────────────────────────────────────────────────────┴──────────────────────┴─────────┘

STANDARDS

       POSIX.1-2001, POSIX.1-2008.

NOTES

       Sur d'anciens systèmes, 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 faible du
       numéro d'inode, et les huit bits de poids faible 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.

EXEMPLES

       Consultez semget(2).

VOIR AUSSI

       msgget(2), semget(2), shmget(2), stat(2), sysvipc(7)

TRADUCTION

       La  traduction  française   de   cette   page   de   manuel   a   été   créée   par   Christophe   Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>, François Micaux, Alain Portal  <aportal@univ-montp2.fr>,  Jean-Philippe  Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,     Thomas     Huriaux      <thomas.huriaux@gmail.com>,      Nicolas      François
       <nicolas.francois@centraliens.net>,     Florentin     Duneau    <fduneau@gmail.com>,    Simon    Paillard
       <simon.paillard@resel.enst-bretagne.fr>,   Denis   Barbier   <barbier@debian.org>   et    David    Prévot
       <david@tilapin.org>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General Public License
       version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les  conditions  de   copie   et   de
       distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si  vous  découvrez  un  bogue  dans la traduction de cette page de manuel, veuillez envoyer un message à
       ⟨debian-l10n-french@lists.debian.org⟩.