Структура, характеризующая сообщения менеджера ресурсов типа _IO_OPENFD
#include <sys/iofunc.h>
struct _io_openfd {
uint16_t type;
uint16_t combine_len;
uint32_t ioflag;
uint16_t sflag;
uint16_t xtype;
struct _msg_info info;
uint32_t reserved2;
uint32_t key;
};
typedef union {
struct _io_openfd i;
} io_openfd_t;
Данная структура ассоциирована с сообщениями менеджера ресурсов типа _IO_OPENFD
. Поле i представляет собой структуру типа _io_openfd
и определяет входящие данные (поступающие в менеджер ресурсов):
- type
-
_IO_OPENFD
. - combine_len
- Если сообщение является составным, это поле будет содержать
_IO_COMBINE_FLAG
. - ioflag
- Способ открытия клиентом файла (комбинация битов):
- _IO_FLAG_RD
- разрешить чтение файла.
- _IO_FLAG_WR
- разрешить запись файла.
- O_APPEND
- разрешить добавление (запись в конец файла).
- O_TRUNC
- если файл существует, сократить его размер до нуля. Если файл не существует, флаг игнорируется.
- sflag
- Параметры разделения файла (комбинация битов):
- SH_COMPAT
- установить режим совместимости.
- SH_DENYRW
- запретить доступ к файлу на чтение или запись.
- SH_DENYWR
- запретить доступ на запись к файлу.
- SH_DENYRD
- запретить доступ на чтение к файлу.
- SH_DENYNO
- разрешить доступ к файлу как на чтение, так и на запись.
- xtype
- Расширенная информация о типе сообщения, которая может изменить поведение функции ввода-вывода. Одно из следующих значений:
- _IO_OPENFD_NONE
- обычная операция открытия.
- _IO_OPENFD_PIPE
- открывается канал (pipe).
- _IO_OPENFD_RESERVED
- Зарезервировано.
- info
- Указатель на struct _msg_info, которая содержит информацию о полученном сообщении.
- key
- Зарезервировано.
ЗОСРВ «Нейтрино»
resmgr_io_funcs_t, iofunc_openfd_default(), iofunc_openfd()
Предыдущий раздел: Описание API системной библиотеки