MCPcopy Create free account
hub / github.com/ClusterLabs/pacemaker / pe_ipc_dispatch

Function pe_ipc_dispatch

pengine/main.c:60–78  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

58gboolean process_pe_message(xmlNode * msg, xmlNode * xml_data, qb_ipcs_connection_t* sender);
59
60static int32_t
61pe_ipc_dispatch(qb_ipcs_connection_t *c, void *data, size_t size)
62{
63 uint32_t id = 0;
64 uint32_t flags = 0;
65 xmlNode *msg = crm_ipcs_recv(c, data, size, &id, &flags);
66
67 if(flags & crm_ipc_client_response) {
68 crm_ipcs_send_ack(c, id, "ack", __FUNCTION__, __LINE__);
69 }
70
71 if (msg != NULL) {
72 xmlNode *data = get_message_xml(msg, F_CRM_DATA);
73
74 process_pe_message(msg, data, c);
75 free_xml(msg);
76 }
77 return 0;
78}
79
80/* Error code means? */
81static int32_t

Callers

nothing calls this directly

Calls 5

crm_ipcs_recvFunction · 0.85
crm_ipcs_send_ackFunction · 0.85
get_message_xmlFunction · 0.85
process_pe_messageFunction · 0.85
free_xmlFunction · 0.85

Tested by

no test coverage detected