Provided by:
manpages-de-dev_0.5-4.1ubuntu1_all 
BEZEICHNUNG
ftok - konvertiere einen Pfadnamen und einen Projektbezeichner in einen
IPC-Schlüssel
ÜBERSICHT
# include <sys/types.h>
# include <sys/ipc.h>
key_t ftok ( char *pathname, char proj )
BESCHREIBUNG
Die Funktion ftok() wandelt den Pfadnamen einer existierenden und
"anfassbaren" Datei zusammen mit einem Projektbezeichner in einen IPC-
Systemschlüssel vom Typ key_t um.
RÜCKGABEWERT
Bei Erfolg wird der umgewandelte Wert vom Typ key_t zurückgegeben,
ansonsten -1 und der Fehlerindikator errno wird wie beim stat(2)
Systemaufruf gesetzt.
FEHLER
Der Algorithmus zur Berechnung des key_t-Wertes garantiert keinen
eindeutigen Schlüssel. Zur Berechnung wird der stat()-Systemaufruf
verwendet, um die Inode-Nummer der Datei sowie die Minor Device Nummer
des beinhaltenden Dateisystems zu erhalten. Die unteren 16 Bit der
Inode-Nummer wird nun verknüpft mit den 8 Bit des Projektbezeichners
proj und den 8 Bit der Minor Device Nummer.
- Zwei unterschiedliche Namen, die dieselbe Datei bezeichnen
(Hardlink), ergeben gleiche Schlüssel.
- Da die unteren 16 bit der Inode-Nummer verwendet werden, besteht
die geringe Chance, den gleichen Schlüssel für Dateien zu
erhalten, die auf unterschiedliche Inodes verweisen.
- Da nicht zwischen Major Device Nummern unterschieden wird,
besteht bei Systemen mit mehreren Festplattenkontrollern die
geringe Gefahr einer Kollision.
SIEHE AUCH
ipc(5), msgget(2), semget(2), shmget(2), stat(2).