xmlSetProp(new_options, XML_ATTR_FILTER_TYPE, section); #ifdef INTEGRATED_CIB
xmlNodePtr new_options = set_xml_attr(NULL, XML_TAG_OPTIONS, XML_ATTR_FILTER_TYPE, section, TRUE);
do_cib_invoke(long long action,	      enum crmd_fsa_cause cause,	      enum crmd_fsa_state cur_state,	      enum crmd_fsa_input current_input,	      void *data){	xmlNodePtr cib_msg = NULL;	FNIN();	if(data != NULL)		cib_msg = (xmlNodePtr)data;		if(action & A_CIB_INVOKE) {		set_xml_property_copy(cib_msg, XML_ATTR_SYSTO, "cib");#ifdef INTEGRATED_CIB		xmlNodePtr answer = process_cib_message(cib_msg, TRUE);		if(relay_message(answer, TRUE) == FALSE) {			cl_log(LOG_ERR, "Confused what to do with cib result");			xml_message_debug(answer, "Couldnt route: ");		}		free_xml(answer);#else		if(relay_message(cib_msg, FALSE) == FALSE) {			cl_log(LOG_ERR, "Confused what to do with message");			xml_message_debug(cib_msg, "Couldnt route: ");		}#endif		} else if(action & A_CIB_BUMPGEN) {   		// check if the response was ok before next bit		xmlNodePtr options = find_xml_node(cib_msg, XML_TAG_OPTIONS);		const char *section = xmlGetProp(options, XML_ATTR_FILTER_TYPE);		xmlNodePtr new_options = create_xml_node(NULL, XML_TAG_OPTIONS);		/* set the section so that we dont always send the		 * whole thing		 */		xmlSetProp(new_options, XML_ATTR_FILTER_TYPE, section);#ifdef INTEGRATED_CIB		xmlNodePtr answer = process_cib_request(CRM_OPERATION_BUMP,							NULL, NULL);		send_request(NULL, answer, CRM_OPERATION_STORE,			     NULL, CRM_SYSTEM_CRMD);		free_xml(answer);#else 		send_request(new_options, NULL, CRM_OPERATION_BUMP,			     NULL, CRM_SYSTEM_CIB);#endif	  	} else if(action & A_UPDATE_NODESTATUS) {	} else {		cl_log(LOG_ERR, "Unexpected action %s",		       fsa_action2string(action));	}			FNRET(I_NULL);}