Call()
Функция объявлена в файле coresrv/syscalls.h
.
Retcode Call(Handle handle, const SMsgHdr *msgOut, SMsgHdr *msgIn);
Функция отправляет IPC-запрос серверному процессу и блокирует вызывающий поток до получения IPC-ответа или ошибки. Функция вызывается клиентским процессом.
Параметры:
handle
– клиентский IPC-дескриптор используемого канала;msgOut
– буфер, содержащий IPC-запрос;msgIn
– буфер под IPC-ответ.
Возвращаемое значение:
- rcOk – обмен IPC-сообщениями успешно завершен;
- rcInvalidArgument – IPC-запрос и/или IPC-ответ имеют некорректную структуру;
- rcSecurityDisallow – отправка IPC-запроса или IPC-ответа запрещена модулем безопасности KSM;
- rcNotConnected – серверный IPC-дескриптор канала не найден.
Возможны другие коды возврата.
В началоRecv()
Функция объявлена в файле coresrv/syscalls.h
.
Retcode Recv(Handle handle, SMsgHdr *msgIn);
Функция блокирует вызывающий поток до получения IPC-запроса. Функция вызывается серверным процессом.
Параметры:
handle
– серверный IPC-дескриптор используемого канала;msgIn
– буфер под IPC-запрос.
Возвращаемое значение:
- rcOk – IPC-запрос успешно получен;
- rcInvalidArgument – IPC-запрос имеет некорректную структуру;
- rcSecurityDisallow – отправка IPC-запроса запрещена модулем безопасности KSM.
Возможны другие коды возврата.
В началоReply()
Функция объявлена в файле coresrv/syscalls.h
.
Retcode Reply(Handle handle, const SMsgHdr *msgOut);
Функция отправляет IPC-ответ и блокирует вызывающий поток до получения ответа клиентом или получения ошибки. Функция вызывается серверным процессом.
Параметры:
handle
– серверный IPC-дескриптор используемого канала;msgOut
– буфер, содержащий IPC-ответ.
Возвращаемое значение:
- rcOk – IPC-ответ успешно получен клиентом;
- rcInvalidArgument – IPC-ответ имеет некорректную структуру;
- rcSecurityDisallow – отправка IPC-ответа запрещена модулем безопасности KSM.
Возможны другие коды возврата.
В начало