pemsg_strm = fopen(DEVEL_DIR"/pemsg.log", "w"); 
pemsg_strm = fopen(DEVEL_DIR"/pe.log", "w"); 
process_pe_message(xmlNodePtr msg, IPC_Channel *sender){	char *msg_buffer = NULL;	const char *sys_to = NULL;	const char *op = get_xml_attr (msg, XML_TAG_OPTIONS,				       XML_ATTR_OP, TRUE);	const char *ref = xmlGetProp(msg, XML_ATTR_REFERENCE);	if(safe_str_eq(xmlGetProp(msg, XML_ATTR_MSGTYPE), XML_ATTR_REQUEST)) {		crm_info(		       "Message was a response not a request."		       "  Discarding");	}	crm_verbose("Processing %s op (ref=%s)...", op, ref);	if(pemsg_strm == NULL) {		pemsg_strm = fopen(DEVEL_DIR"/pemsg.log", "w");	}	msg_buffer = dump_xml_node(msg, FALSE);	fprintf(pemsg_strm, "%s: %s\n", "[in ]", msg_buffer);	fflush(pemsg_strm);	crm_free(msg_buffer);		sys_to = xmlGetProp(msg, XML_ATTR_SYSTO);	if(op == NULL){		// error	} else if(strcmp(op, CRM_OP_HELLO) == 0) {		// ignore			} else if(sys_to == NULL || strcmp(sys_to, CRM_SYSTEM_PENGINE) != 0) {		crm_verbose("Bad sys-to %s", sys_to);		return FALSE;			} else if(strcmp(op, CRM_OP_PECALC) == 0) {		xmlNodePtr input_cib = find_xml_node(msg, XML_TAG_CIB);		xmlNodePtr output = do_calculations(input_cib);		if (send_ipc_reply(sender, msg, output) ==FALSE) {			crm_warn(			       "Answer could not be sent");		}		free_xml(output);	} else if(strcmp(op, CRM_OP_QUIT) == 0) {		crm_err("Received quit message, terminating");		exit(0);	}		return TRUE;}
8182	/local/tlutelli/issta_data/temp/c/2005_temp/2005/8182/31dd1f16e41f41bcd399655f2d07aa1d79768280/pengine.c/clean/crm/pengine/pengine.c