19 #ifndef CRM_COMMON_IPCS__H
20 # define CRM_COMMON_IPCS__H
23 # include <qb/qbipcs.h>
24 # ifdef HAVE_GNUTLS_GNUTLS_H
26 # include <gnutls/gnutls.h>
37 # ifdef HAVE_GNUTLS_GNUTLS_H
56 # ifdef HAVE_GNUTLS_GNUTLS_H
58 bool tls_handshake_complete;
94 qb_ipcs_connection_t *
ipcs;
118 const char *tag,
const char *
function,
int line);
void crm_client_destroy(crm_client_t *c)
crm_client_t * crm_client_alloc(void *key)
Allocate a new crm_client_t object and generate its ID.
void crm_client_disconnect_all(qb_ipcs_service_t *s)
qb_ipcs_connection_t * ipcs
xmlNode * crm_ipcs_recv(crm_client_t *c, void *data, size_t size, uint32_t *id, uint32_t *flags)
struct mainloop_io_s mainloop_io_t
struct crm_remote_s * remote
crm_client_t * crm_client_get(qb_ipcs_connection_t *c)
Wrappers for and extensions to glib mainloop.
void crm_client_init(void)
void crm_ipcs_send_ack(crm_client_t *c, uint32_t request, uint32_t flags, const char *tag, const char *function, int line)
ssize_t crm_ipcs_send(crm_client_t *c, uint32_t request, xmlNode *message, enum crm_ipc_flags flags)
unsigned int queue_backlog
crm_client_t * crm_client_get_by_id(const char *id)
GHashTable * client_connections
ssize_t crm_ipc_prepare(uint32_t request, xmlNode *message, struct iovec **result, uint32_t max_send_size)
void crm_client_cleanup(void)
bool crm_set_client_queue_max(crm_client_t *client, const char *qmax)
Raise IPC eviction threshold for a client, if allowed.
int crm_ipcs_client_pid(qb_ipcs_connection_t *c)
Wrappers for and extensions to libqb IPC.
const char * crm_client_name(crm_client_t *c)
crm_client_t * crm_client_new(qb_ipcs_connection_t *c, uid_t uid, gid_t gid)
ssize_t crm_ipcs_sendv(crm_client_t *c, struct iovec *iov, enum crm_ipc_flags flags)