result = I_FAIL; 
register_fsa_error(C_FSA_INTERNAL, I_FAIL, NULL); 
do_te_control(long long action,	      enum crmd_fsa_cause cause,	      enum crmd_fsa_state cur_state,	      enum crmd_fsa_input current_input,	      fsa_data_t *msg_data){	enum crmd_fsa_input result = I_NULL;	struct crm_subsystem_s *this_subsys = te_subsystem;		long long stop_actions = A_TE_STOP;	long long start_actions = A_TE_START;	int lpc, pid_status;	/* 		if(action & stop_actions && cur_state != S_STOPPING *//* 		   && is_set(fsa_input_register, R_TE_PEND)) { *//* 			result = I_WAIT_FOR_EVENT; *//* 			return result; *//* 		} */		if(action & stop_actions) {		if(stop_subsystem(this_subsys) == FALSE)			result = I_FAIL;		else if(this_subsys->pid > 0){			lpc = CLIENT_EXIT_WAIT;			pid_status = -1;			while(lpc-- > 0 && this_subsys->pid > 0) {				sleep(1);				if(! CL_PID_EXISTS(this_subsys->pid)				   || waitpid(this_subsys->pid,					      &pid_status, WNOHANG) > 0) {					this_subsys->pid = -1;					break;				}			}						if(this_subsys->pid != -1) {				crm_err("Proc %s is still active with pid=%d",				       this_subsys->name, this_subsys->pid);				result = I_FAIL;			} 		}		cleanup_subsystem(this_subsys);	}	if(action & start_actions) {		if(cur_state != S_STOPPING) {			if(start_subsystem(this_subsys) == FALSE) {				result = I_FAIL;				cleanup_subsystem(this_subsys);			}		} else {			crm_info("Ignoring request to start %s while shutting down",				 this_subsys->name);		}	}	return result;}
8182	/local/tlutelli/issta_data/temp/c/2005_temp/2005/8182/f63be351bf358efcb1f16cb8a97218d2879a41a9/tengine.c/buggy/crm/crmd/tengine.c