shutdown_escalation_timmer->period_ms = 10000; shutdown_escalation_timmer->fsa_input = I_DC_TIMEOUT;
shutdown_escalation_timmer->period_ms = 50000; shutdown_escalation_timmer->fsa_input = I_ERROR;   cib_subsystem = (struct crm_subsystem_s*) ha_malloc(sizeof(struct crm_subsystem_s));  cib_subsystem->pid = 0; cib_subsystem->respawn = 1; cib_subsystem->command = NULL; cib_subsystem->path = ha_strdup(BIN_DIR); cib_subsystem->command = BIN_DIR"/cib";  te_subsystem = (struct crm_subsystem_s*) ha_malloc(sizeof(struct crm_subsystem_s));  te_subsystem->pid = 0; te_subsystem->respawn = 1; te_subsystem->command = NULL; te_subsystem->path = ha_strdup(BIN_DIR); te_subsystem->command = BIN_DIR"/tengine";  pe_subsystem = (struct crm_subsystem_s*) ha_malloc(sizeof(struct crm_subsystem_s));  pe_subsystem->pid = 0; pe_subsystem->respawn = 1; pe_subsystem->command = NULL; pe_subsystem->path = ha_strdup(BIN_DIR); pe_subsystem->command = BIN_DIR"/pengine";
do_startup(long long action,	enum crmd_fsa_state cur_state,	enum crmd_fsa_input current_input,	void *data){	FNIN();	fsa_input_register = 0; // zero out the regester		cl_log(LOG_INFO, "Register PID");	register_pid(PID_FILE, FALSE, shutdown);		cl_log_set_logfile(DAEMON_LOG);/*	if (crm_debug()) { */		cl_log_set_debugfile(DAEMON_DEBUG);/*  		cl_log_enable_stderr(FALSE); 	} */		pending_remote_replies = g_hash_table_new(&g_str_hash, &g_str_equal);	ipc_clients = g_hash_table_new(&g_str_hash, &g_str_equal);		/* change the logging facility to the one used by heartbeat daemon */	fsa_cluster_connection = ll_cluster_new("heartbeat");		int facility;	cl_log(LOG_INFO, "Switching to Heartbeat logger");	if ((facility =	     fsa_cluster_connection->llc_ops->get_logfacility(		     fsa_cluster_connection)) > 0) {		cl_log_set_facility(facility);	}		int was_error = 0;	CRM_DEBUG2("Facility: %d", facility);		if(was_error == 0) {		CRM_DEBUG("Init server comms");		was_error = init_server_ipc_comms(CRM_SYSTEM_CRMD,						  crmd_client_connect,						  default_ipc_input_destroy);	}		if (was_error == 0) {		CRM_DEBUG("Finding our node name");		fsa_our_uname = fsa_cluster_connection->llc_ops->get_mynodeid(			fsa_cluster_connection);				if (fsa_our_uname == NULL) {			cl_log(LOG_ERR, "get_mynodeid() failed");			was_error = 1;	    }		cl_log(LOG_INFO, "Hostname: %s", fsa_our_uname);	}	/* set up the timers */	election_trigger = (fsa_timer_t *)ha_malloc(sizeof(fsa_timer_t));	election_timeout = (fsa_timer_t *)ha_malloc(sizeof(fsa_timer_t));	shutdown_escalation_timmer = (fsa_timer_t *)		ha_malloc(sizeof(fsa_timer_t));	election_trigger->source_id = -1;	election_trigger->period_ms = 5000;	election_trigger->fsa_input = I_DC_TIMEOUT;	election_timeout->source_id = -1;	election_timeout->period_ms = 10000;	election_timeout->fsa_input = I_ELECTION_DC;		shutdown_escalation_timmer->source_id = -1;	shutdown_escalation_timmer->period_ms = 10000;	shutdown_escalation_timmer->fsa_input = I_DC_TIMEOUT;	if (was_error == 0) {		CRM_DEBUG2("Starting DC timer: %d seconds",			  election_trigger->period_ms/1000);		startTimer(election_trigger);	}			if(was_error)		FNRET(I_FAIL);		FNRET(I_NULL);}