Функция mkfifo

Прототип функции

#include <sys/stat.h>
#include <unistd.h>

int mkfifo(char *path, int mode);

Описание функции

Функция mkfifo предназначена для создания FIFO в операционной системе.

Параметр path является указателем на строку, содержащую полное или относительное имя файла, который будет являться меткой FIFO на диске. Для успешного создания FIFO файла с таким именем перед вызовом функции не должно существовать.
Параметр
mode устанавливает атрибуты прав доступа различных категорий пользователей к FIFO. Этот параметр задается как некоторая сумма следующих восьмеричных значений:

0400 - Разрешено чтение для пользователя, создавшего FIFO.
0200 - Разрешена запись для пользователя, создавшего FIFO.
0040 - Разрешено чтение для группы пользователя, создавшего FIFO.
0020 - Разрешена запись для группы пользователя, создавшего FIFO.
0004 - Разрешено чтение для всех остальных пользователей
0002 - Разрешена запись для всех остальных пользователей

При создании FIFO реально устанавливаемые права доступа получаются из стандартной комбинации параметра mode и маски создания файлов текущего процесса umask, а именно - они равны  mode & ~umask.

При успешном создании FIFO функция возвращает значение 0, при неуспешном - отрицательное значение.