crm_debug("Adding channel to mainloop");
crm_devel("Adding channel to mainloop");
cib_register_ha(ll_cluster_t *hb_cluster, const char *client_name){	int facility;	const char *uname = NULL;		if(safe_val3(NULL, hb_cluster, llc_ops, errmsg) == NULL) {		crm_crit("cluster errmsg function unavailable");	}		crm_info("Signing in with Heartbeat");	if (hb_cluster->llc_ops->signon(hb_cluster, client_name)!= HA_OK) {		crm_err("Cannot sign on with heartbeat: %s",			hb_cluster->llc_ops->errmsg(hb_cluster));		return FALSE;	}	/* change the logging facility to the one used by heartbeat daemon */	crm_info("Switching to Heartbeat logger");	if (( facility =	      hb_cluster->llc_ops->get_logfacility(hb_cluster)) > 0) {		cl_log_set_facility(facility); 	}		crm_verbose("Facility: %d", facility);	  	crm_debug("Be informed of CIB messages");	if (HA_OK != hb_cluster->llc_ops->set_msg_callback(		    hb_cluster, T_CIB, cib_peer_callback, hb_cluster)){				crm_err("Cannot set msg callback: %s",			hb_cluster->llc_ops->errmsg(hb_cluster));		return FALSE;	}	crm_debug("Finding our node name");	if ((uname = hb_cluster->llc_ops->get_mynodeid(hb_cluster)) == NULL) {		crm_err("get_mynodeid() failed");		return FALSE;	}		cib_our_uname = crm_strdup(uname);	crm_info("FSA Hostname: %s", cib_our_uname);	crm_debug("Adding channel to mainloop");	G_main_add_IPC_Channel(		G_PRIORITY_HIGH, hb_cluster->llc_ops->ipcchan(hb_cluster),		FALSE, cib_ha_dispatch, hb_cluster /* userdata  */,  		cib_ha_connection_destroy);	return TRUE;    }