The mkfifo() function attempts to create a FIFO special file named by the pathname to which the argument path points. GNU and POSIX specifications for this function vary in the following areas.
Permissions are specified in the mode argument.
GNU specifies that:
permissions are modified by the process umask in the usual way: the permissions of the created node are (mode & ~umask).
POSIX specifies that:
file permission bits of the new FIFO are initialized from mode. The file permission bits of the mode argument are modified by the process file creation mask. When bits in mode other than the file permission bits are set, the effect is implementation-dependent.
upon successful completion, mkfifo() marks for update the st_atime, st_ctime and st_mtime fields of the file. Also, the st_ctime and st_mtime fields of the directory that contains the new entry are marked for update.