flink()

Присвоить путь файловому дескриптору

Прототип:

#include <unistd.h>
int flink( int fd,
const char *path );

Аргументы:

fd
файловый дескриптор.
path
Путь, который необходимо присвоить файловому дескриптору.

Библиотека:

libc

Описание:

Функция flink() связывает путь path с файлом, определяемым файловым дескриптором fd.

Возвращаемое значение:

0
Успешное завершение.
-1
Возникла ошибка. Код ошибки записан в errno.

Коды ошибок:

EACCES
Для части префикса filename отсутствует право поиска, или файл существует и права, определенные mode, отсутствуют, или файл не существует и право на запись для родительской директории, в которой создается файл, отсутствует.
EBADF
Файловый дескриптор fd некорректен.
EEXIST
Ссылка path уже существует.
ELOOP
Слишком много уровней символических ссылок или префиксов.
EMLINK
Количество ссылок на файл превышает LINK_MAX.
ENAMETOOLONG
Длина строки filename превышает PATH_MAX или часть пути к файлу длиннее, чем NAME_MAX.
ENOENT
Данный код ошибки может означать следующее:
ENOSPC
Директория, которая должна содержать ссылку, не может быть расширена.
ENOSYS
Функция flink() не реализована для файловой системы, содержащей path.
ENOTDIR
Часть любого префикса path не является директорией.
EROFS
Ссылка требует записи в директорию в файловой системе, доступной только для чтения.
EXDEV
Ссылка, определяемая path, расположена на другом логическом диске.

Классификация:

Unix

Безопасность использования
Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Тематические ссылки:

link()




Предыдущий раздел: Описание API системной библиотеки