Name
mkfifo - makes a FIFO(First In First Out) file
Library
libc.lib
Synopsis
|
int
mkfifo (const char *path, mode_t mode);
|
Return values
The
mkfifo
function returns the value 0 if successful; otherwise the
value -1 is returned and
errno
is set to indicate the error.
Detailed description
The
mkfifo
system call
creates a new FIFO(First In First Out) file with name
path.
The access permissions are
specified by
mode
and restricted by the
umask
of the calling process.
With the current implementation, the use of
umask
has no effect.
The fifo’s owner ID and group ID is set to root.
Please note that running
stat
on fifo file does not provide
modification time information and is set to file creation time.
Use
fstat
(on the fd) instead to retrieve the last modified time.
Examples
#include <sys/types.h>
#include <sys/stat.h>
#include <stdio.h>
int main(void)
{
char *pathname = "C:\XX";
mode_t mode = 0666;
if (mkfifo(pathname, mode) == -1) {
printf("mkfifo() failed\n");
}
return 0;
}
Errors
The
mkfifo
system call
will fail and no fifo will be created if:
[ENOTDIR]
|
|
A component of the path prefix is not a directory.
|
[ENAMETOOLONG]
|
|
A component or an entire path name exceeded 255 characters.
|
[ENOENT]
|
|
A component of the path prefix does not exist.
|
[EACCES]
|
|
Search permission is denied for a component of the path prefix.
|
[ELOOP]
|
|
Too many symbolic links were encountered in translating the pathname.
|
[EROFS]
|
|
The named file resides on a read-only file system.
|
[EEXIST]
|
|
The named file exists.
|
[ENOSPC]
|
|
The directory in which the entry for the new fifo is being placed
cannot be extended because there is no space left on the file
system containing the directory.
|
See also
chmod,
stat,
umask
Feedback
For additional information or queries on this page send feedback
© 2005-2007 Nokia
|
|