iofunc_readlink()

Подтвердить способность клиента прочитать символьную ссылку

Прототип:

#include <sys/iofunc.h>
int iofunc_readlink( resmgr_context_t *ctp,
io_readlink_t *msg,
iofunc_attr_t *attr,
struct _client_info *info );

Аргументы:

ctp
Указатель на структуру resmgr_context_t, которую библиотека менеджера ресурсов использует для передачи контекстной информации между функциями.
msg
Указатель на структуру io_readlink_t, содержащую сообщение, полученное менеджером ресурсов.
attr
Указатель на атрибутную запись iofunc_attr_t, описывающую характеристики устройства, связанного с менеджером ресурсов.
info
Указатель на структуру с информацией о клиентском соединении struct _client_info.

Библиотека:

libc

Описание:

Вспомогательная функция iofunc_readlink() поддерживает запросы readlink(), проверяя, может ли клиент прочитать символическую ссылку. Похожа на iofunc_open().

Функция iofunc_readlink() проверяет, имеет ли клиент (описываемый необязательной структурой info) доступ для открытия ресурса (имя передаётся в структуре msg). Структура attr содержит атрибуты ресурса.

Аргумент info может быть передан как NULL, в этом случае iofunc_readlink() сама получает информацию о клиенте с помощью вызова iofunc_client_info(). Но, конечно, более эффективно получить информацию о клиенте один раз, чем каждый раз вызывать эту функцию с NULL.

Функция iofunc_readlink() обрабатывает проверку readlink уровня POSIX.

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

EBADFSYS
В dattr был передан NULL.
EOK
Успешное завершение.

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

ЗОСРВ «Нейтрино»

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

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

struct _client_info, io_readlink_t, struct _io_connect, struct _io_connect_link_reply, struct _io_connect_ftype_reply, iofunc_open(), readlink(), resmgr_context_t




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