Связать две директории
#include <sys/iofunc.h>int iofunc_link( resmgr_context_t *ctp,io_link_t *msg,iofunc_attr_t *attr,iofunc_attr_t *dattr,struct _client_info *info );
NULL
или указатель на структуру iofunc_attr_t, описывающую характеристики родительского каталога.NULL
или указатель на структуру struct _client_info с информацией о клиенте.libc
Вспомогательная функция iofunc_link() связывает директорию attr с dattr для контекста ctp. Это похоже на функцию iofunc_open():
Функция iofunc_link() проверяет, имеет ли клиент (описываемый необязательным аргументом info) доступ к ресурсу (имя передаётся в структуре msg). Структура attr описывает атрибуты ресурса, а необязательная структура dattr определяет атрибуты родительской директории (например если dattr не равно NULL
, это подразумевает, что ресурс, описываемый attr, будет создан в директории, указанной в dattr).
Если передать аргумент info как NULL
, то в этом случае функция iofunc_link() сама получит информацию о клиенте через вызов iofunc_client_info(), вернёт эту информацию в info и установит код ошибки. Но, разумеется, эффективнее будет получить информацию о клиенте один раз, а не вызывать эту функцию с NULL
каждый раз.
NULL
.NULL
.ЗОСРВ «Нейтрино»
struct _client_info, io_link_t, ConnectClientInfo(), iofunc_attr_t, iofunc_client_info(), iofunc_open(), struct _msg_info, resmgr_context_t
Предыдущий раздел: Описание API системной библиотеки