10 #ifndef CRM_COMMON_IPC__H
11 # define CRM_COMMON_IPC__H
24 #include <qb/qbipcc.h>
29 # define create_reply(request, xml_response_data) create_reply_adv(request, xml_response_data, __FUNCTION__);
30 xmlNode *
create_reply_adv(xmlNode * request, xmlNode * xml_response_data,
const char *origin);
32 # define create_request(task, xml_data, host_to, sys_to, sys_from, uuid_from) create_request_adv(task, xml_data, host_to, sys_to, sys_from, uuid_from, __FUNCTION__)
35 const char *sys_to,
const char *sys_from,
const char *uuid_from,
67 int32_t ms_timeout, xmlNode ** reply);
114 pid_t *gotpid, uid_t *gotuid, gid_t *gotgid);
118 const char *major_version,
const char *minor_version);
bool crm_ipc_connect(crm_ipc_t *client)
Establish an IPC connection to a Pacemaker component.
int crm_ipc_get_fd(crm_ipc_t *client)
xmlNode * create_reply_adv(xmlNode *request, xmlNode *xml_response_data, const char *origin)
long crm_ipc_read(crm_ipc_t *client)
xmlNode * create_hello_message(const char *uuid, const char *client_name, const char *major_version, const char *minor_version)
uint32_t crm_ipc_buffer_flags(crm_ipc_t *client)
const char * crm_ipc_buffer(crm_ipc_t *client)
struct crm_ipc_s crm_ipc_t
Wrappers for and extensions to libxml2.
unsigned int crm_ipc_default_buffer_size(void)
void crm_ipc_destroy(crm_ipc_t *client)
void pcmk_free_ipc_event(struct iovec *event)
Free an I/O vector created by crm_ipc_prepare()
bool crm_ipc_connected(crm_ipc_t *client)
int crm_ipc_ready(crm_ipc_t *client)
Check whether an IPC connection is ready to be read.
const char * crm_ipc_name(crm_ipc_t *client)
int crm_ipc_send(crm_ipc_t *client, xmlNode *message, enum crm_ipc_flags flags, int32_t ms_timeout, xmlNode **reply)
xmlNode * create_request_adv(const char *task, xmlNode *xml_data, const char *host_to, const char *sys_to, const char *sys_from, const char *uuid_from, const char *origin)
crm_ipc_t * crm_ipc_new(const char *name, size_t max_size)
void crm_ipc_close(crm_ipc_t *client)
int crm_ipc_is_authentic_process(int sock, uid_t refuid, gid_t refgid, pid_t *gotpid, uid_t *gotuid, gid_t *gotgid)
Check the authenticity of the IPC socket peer process.