crm_malloc(blob, sizeof(cib_callback_client_t));
crm_malloc0(blob, sizeof(cib_callback_client_t));
add_cib_op_callback(	int call_id, gboolean only_success, void *user_data,	void (*callback)(const HA_Message*, int, int, crm_data_t*,void*)) {	cib_callback_client_t *blob = NULL;	if(call_id < 0) {		crm_warn("CIB call failed: %s", cib_error2string(call_id));		if(only_success == FALSE) {			callback(NULL, call_id, call_id, NULL, user_data);		}		return FALSE;	}		crm_malloc(blob, sizeof(cib_callback_client_t));	blob->only_success = only_success;	blob->user_data = user_data;	blob->callback = callback;		g_hash_table_insert(		cib_op_callback_table, GINT_TO_POINTER(call_id), blob);	return TRUE;}