Provided by: manpages-de-dev_4.13-4_all 

BEZEICHNUNG
ftok - konvertiert einen Pfadnamen und einen Projektbezeichner in einen System-V-IPC-Schlüssel
ÜBERSICHT
#include <sys/types.h>
#include <sys/ipc.h>
key_t ftok(const char *Pfadname, int Projektkennung);
BESCHREIBUNG
Die Funktion ftok() verwendet die Identität der durch Pfadname (muss auf eine existierende Datei ohne
Zugriffsbeschränkungen weisen) angegebenen Datei und die niederwertigsten 8 Bit von Projektkennung (muss
ungleich Null sein) für die Erzeugung eines System-V-IPC-Schlüssels des Typs key_t. Der Schlüssel eignet
sich für den Einsatz mit msgget(2), semget(2) oder shmget(2).
Der resultierende Wert ist der gleiche für alle Pfadnamen, welche die gleiche Datei benennen, wenn der
gleiche Wert von Projektkennung verwendet wird. Der Rückgabewert sollte ein anderer sein, wenn sich die
(gleichzeitig bestehenden) Dateien oder die Projektkennungen unterscheiden.
RÜCKGABEWERT
Bei Erfolg wird der erzeugte Wert vom Typ key_t zurückgegeben, ansonsten -1 und der Fehlerindikator errno
wird wie beim Systemaufruf stat(2) gesetzt.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
┌───────────────┬───────────────────────┬─────────┐
│ Schnittstelle │ Attribut │ Wert │
├───────────────┼───────────────────────┼─────────┤
│ ftok() │ Multithread-Fähigkeit │ MT-Safe │
└───────────────┴───────────────────────┴─────────┘
KONFORM ZU
POSIX.1-2001, POSIX.1-2008.
ANMERKUNGEN
Auf einigen sehr alten Systemen war der Prototyp:
key_t ftok(char *Pfadname, char Projektkennung);
Heute ist Projektkennung ein int, es werden aber immer noch nur 8 Bit verwendet. Typische Anwendungen
verwenden für Projektkennung ein ASCII-Zeichen, weshalb das Verhalten nicht definiert ist, wenn
Projektkennung gleich Null ist.
Natürlich kann nicht garantiert werden, dass der resultierende key_t-Schlüssel eindeutig ist.
Normalerweise verbindet ein umfassendes Herangehen das gegebene Projektkennung-Byte, die unteren 16 Bits
der Inode-Nummer und die unteren 8 Bit der Gerätenummer zu einem 32-Bit-Ergebnis. Kollisionen können
leicht vorkommen, zum Beispiel zwischen Dateien auf /dev/hda1 und Dateien auf /dev/sda1.
BEISPIELE
Siehe semget(2).
SIEHE AUCH
msgget(2), semget(2), shmget(2), stat(2), sysvipc(7)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 5.10 des Projekts Linux-man-pages. Eine Beschreibung des
Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
sich unter https://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey@infodrom.org>, Martin
Eberhard Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
Mailingliste der Übersetzer.
GNU 11. April 2020 FTOK(3)