26 void send_str(ostream& o,
const string& s,
bool checklen =
true);
29 void read_str(istream& i,
string& s,
bool checklen =
true);
60 inline const string &
name()
const {
return m_strName;}
62 inline const string &
desc()
const {
return m_strDesc;}
92 virtual bool IsAuthenticated() = 0;
94 virtual bool IsAuthorized() = 0;
95 virtual bool IsAdmin() = 0;
96 virtual bool IsSuperuser() = 0;
97 virtual bool IsService() = 0;
99 virtual string userId() = 0;
101 virtual string localhost() = 0;
103 virtual int localport() = 0;
104 virtual string peerhost() = 0;
105 virtual int peerport() = 0;
116 #define ALD_LOAD_RPC_COMMANDS "LoadRpcCommands"
118 #define ALD_RPC_KEY "RPC"
119 #define ALD_LPC_KEY "LPC"
140 #define MK_BROADCAST_MESSAGE(msg, arg) string(msg)+":"+arg
149 #endif //ALD_RPC_UTILS
list< string > ald_string_list
Список строк
Definition: ALDUtils.h:152
void send_str(ostream &o, const string &s, bool checklen=true)
Запись строки в поток
shared_ptr< CALDRpcCommand > CALDRpcCommandPtr
Разделяемый указатель на RPC команду
Definition: ALDRpcUtils.h:79
string m_strDesc
Описание
Definition: ALDRpcUtils.h:56
string m_strName
Имя
Definition: ALDRpcUtils.h:55
const char * rpcmsgtype2str(unsigned short message)
Вовзращает описание типа сообщения
arcPrivKind
Класс безопасности команды
Definition: ALDRpcUtils.h:41
void read_size(istream &i, size_t &s)
Чтение размера из потока
map< string, CALDRpcCommandPtr > ald_rpc_command_map
Карта RPC команд (имя => разделяемый указатель на RPC команду)
Definition: ALDRpcUtils.h:82
map< string, string > ald_string_map
MAP строка => строка
Definition: ALDUtils.h:164
bool SendBroadcastMessage(IALDCore &Core, const string &msg, ald_string_list *responses=NULL, int timeout=3)
Отправка широковещательного сообщения
Структура RPC запроса
Definition: ald-rpc.h:78
Для аутентифицированных пользователей
Definition: ALDRpcUtils.h:43
void read_str(istream &i, string &s, bool checklen=true)
Чтение строки из потока
IALDCore * m_pCore
Указатель на интерфейс ядра
Definition: ALDRpcUtils.h:54
void send_size(ostream &o, size_t s)
Запись размера в поток
arcPrivKind kind() const
Возвращает класс безопасности
Definition: ALDRpcUtils.h:64
Для привилегированных пользователей
Definition: ALDRpcUtils.h:45
Абстрактный интерфейс RPC сессии
Definition: ALDRpcUtils.h:87
arcPrivKind m_PrivKind
Класс безопасности (default arckPrivileged)
Definition: ALDRpcUtils.h:57
Структура события ALD_LOAD_RPC_COMMANDS.
Definition: ALDRpcUtils.h:123
ald_rpc_command_map * mapRpcCmds
Карта RPC команд
Definition: ALDRpcUtils.h:124
Для авторизованных пользователей
Definition: ALDRpcUtils.h:44
Класс RPC команды
Definition: ALDRpcUtils.h:51
Основной заголовочный файл, содержащий необходимый минимум предварительных объявлений и включений дру...
Объявление RPC интерфейса Astra Linux Directory.
Публичная
Definition: ALDRpcUtils.h:42
Объявление идентификаторов команд RPC интерфейса Astra Linux Directory (см. ald-rpc.h, ALDRpcUtils.h)
const string & desc() const
Возвращает описание
Definition: ALDRpcUtils.h:62
void * extra
Доп. параметр
Definition: ALDRpcUtils.h:126
Абстрактный класс IALDCore - основной интерфейс клиента Astra Linux Directory, с помощью которого вып...
Definition: ALDCore.h:241
const string & name() const
Возвращает имя
Definition: ALDRpcUtils.h:60