flink()

Assign a pathname to a file descriptor

Synopsis:

#include <unistd.h>

int flink( int fd,
           const char *path );

Arguments:

fd
The file descriptor.
path
The path you want to associate with the file descriptor.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The flink() function assigns the pathname, path, to the file associated with the file descriptor, fd.

Returns:

0
Success.
-1
An error occurred; errno is set.

Errors:

EACCES
A component of either path prefix denies search permission, or the link named by path is in a directory with a mode that denies write permission.
EBADF
The file descriptor fd is invalid.
EEXIST
The link named by path already exists.
ELOOP
Too many levels of symbolic links or prefixes.
EMLINK
The number of links to the file would exceed LINK_MAX.
ENAMETOOLONG
The length of the path string exceeds PATH_MAX, or a pathname component is longer than NAME_MAX.
ENOENT
This error code can mean the following:
  • A component of either path prefix doesn't exist.
  • The path points to an empty string.
ENOSPC
The directory that would contain the link can't be extended.
ENOSYS
The flink() function isn't implemented for the filesystem specified in path.
ENOTDIR
A component of either path prefix isn't a directory.
EROFS
The requested link requires writing in a directory on a read-only filesystem.
EXDEV
The link named by path is on a different logical disk.

Classification:

Unix

Safety:  
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes