MirBSD manpage: ftok(3)

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


     ftok - create IPC identifier from a pathname


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

     ftok(const char *path, int id);


     The ftok() function attempts to create a unique key suitable for use with
     the msgget(2), semget(2) and shmget(2) functions given the path of an ex-
     isting file and a user-selectable id.

     The specified path must refer to an existing file that is accessible to
     the calling process or the call will fail. Also, note that links to files
     will return the same key, given the same id. Only the 8 least significant
     bits of id are used in the key generation; the rest of the bits are ig-


     The ftok() function will return (key_t)-1 if path does not exist or if it
     cannot be accessed by the calling process.


     msgget(2), semget(2), shmget(2)


     The ftok() function originated with System V and is typically used by
     programs that use the System V IPC routines.


     Thorsten Lockert <tholo@sigmasoft.com>


     The returned key is computed based on the device and inode of the speci-
     fied path in combination with the given id. Thus it is quite possible for
     the routine to return duplicate keys given that those fields are not 8-
     and 16-bit quantities like they were on System V based systems where this
     library routine's ancestors were originally created.

MirBSD #10-current              June 24, 1994                                1

Generated on 2022-12-24 01:00:14 by $MirOS: src/scripts/roff2htm,v 1.113 2022/12/21 23:14:31 tg Exp $ — This product includes material provided by mirabilos.

These manual pages and other documentation are copyrighted by their respective writers; their sources are available at the project’s CVSweb, AnonCVS and other mirrors. The rest is Copyright © 2002–2022 MirBSD.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.

Kontakt / Impressum & Datenschutzerklärung