ret = I_FAIL;
register_fsa_error(C_FSA_INTERNAL, I_FAIL, NULL);
do_te_invoke(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 ret = I_NULL;	HA_Message *cmd = NULL;		if(is_set(fsa_input_register, R_TE_CONNECTED) == FALSE){		crm_info("Waiting for the TE to connect");		crmd_fsa_stall();		return I_NULL;			}	if(action & A_TE_INVOKE) {		ha_msg_input_t *input = fsa_typed_data(fsa_dt_ha_msg);		if(input->xml != NULL) {			cmd = create_request(				CRM_OP_TRANSITION, input->xml, NULL,				CRM_SYSTEM_TENGINE, CRM_SYSTEM_DC, NULL);						send_request(cmd, NULL);		} else {			ret = I_FAIL;		}		} else if(action & A_TE_CANCEL) {		cmd = create_request(			CRM_OP_TEABORT, NULL, NULL,			CRM_SYSTEM_TENGINE, CRM_SYSTEM_DC, NULL);				send_request(cmd, NULL);	}	return ret;}