crm_debug_2("Processing IPC message from %s on %s channel", cib_client->id, cib_client->channel_name);
op = cl_get_string(op_request, F_CIB_OPERATION); crm_info("Operation %s from client %s/%s", op, cib_client->id, cib_client->channel_name);
cib_common_callback(	IPC_Channel *channel, gpointer user_data, gboolean privileged){	int rc = cib_ok;	int lpc = 0;	HA_Message *op_request = NULL;	cib_client_t *cib_client = user_data;	if(cib_client == NULL) {		crm_err("Receieved call from unknown source. Discarding.");		return FALSE;	}		crm_debug_2("Callback for %s on %s channel",		    cib_client->id, cib_client->channel_name);	while(channel->ops->is_message_pending(channel)) {		if (channel->ch_status != IPC_CONNECT) {			/* The message which was pending for us is that			 * the channel is no longer fully connected.			 *			 * Dont read requests from disconnected clients			 */			break;		}		op_request = msgfromIPC(channel, 0);		if (op_request == NULL) {			perror("Receive failure:");			break;		}		crm_debug_2("Processing IPC message from %s on %s channel",			    cib_client->id, cib_client->channel_name);		crm_log_message_adv(LOG_MSG, "Client[inbound]", op_request);				lpc++;		rc = cib_ok;				CRM_DEV_ASSERT(			ha_msg_add(op_request, F_CIB_CLIENTID, cib_client->id) == HA_OK);		if(crm_assert_failed == FALSE) {			cib_process_request(				op_request, privileged, FALSE, cib_client);		}				crm_debug_3("Cleaning up request");		crm_msg_del(op_request);		op_request = NULL;	}	crm_debug_2("Processed %d messages", lpc);	return cib_process_disconnect(channel, cib_client);}