FTOK(3)             Linux Programmer's Manual             FTOK(3)

       ftok  -  convert  a pathname and a project identifier to a
       System V IPC key

       # include <sys/types.h>
       # include <sys/ipc.h>

       key_t ftok ( char *pathname, char proj )

       The function converts the pathname of an existing accessi-
       ble file and a project identifier into a key_t type System
       V IPC key.

       On success the return value will be  the  converted  key_t
       value, otherwise -1 with errno indicating the error as for
       the stat(2) system call.

       The generated key_t value is obtained  stat-ing  the  disk
       file  corresponding to pathname in order to get its i-node
       number and the minor device number of  the  filesystem  on
       which  the  disk file resides, then by combining the 8 bit
       proj value along with the lower 16 bits of the i-node num-
       ber,  along  with  the  8 bits of the minor device number.
       The algorithm does not guarantee a unique key  value.   In

       o      Two  different  names linking to the same file pro-
              duce same key values.

       o      Using the lower 16 bits of the i-node number, gives
              some  chance  (also usually small) to have same key
              values  for  file  names  referring  to   different

       o      Not  discriminating  among  major  device  numbers,
              gives some chance of collision (also usually small)
              for systems with multiple disk controllers.

       ipc(5), msgget(2), semget(2), shmget(2), stat(2).

Linux 0.99.13            November 1, 1993                       1