char ch = 0;
int ch = 0;
stdin2xml(void) {#ifdef USE_LIBXML	return file2xml(stdin);#else	int lpc = 0;	int MAX_XML_BUFFER = 20000;		char ch = 0;	gboolean more = TRUE;	gboolean inTag = FALSE;	FILE *input = stdin;	char *xml_buffer = NULL;	crm_data_t *xml_obj = NULL;	crm_malloc(xml_buffer, sizeof(char)*(MAX_XML_BUFFER+1));		while (more && lpc < MAX_XML_BUFFER) {		ch = fgetc(input);/* 		crm_devel("Got [%c]", ch); */		switch(ch) {			case EOF: 			case 0:				ch = 0;				more = FALSE; 				xml_buffer[lpc++] = ch;				break;			case '>':			case '<':				inTag = TRUE;				if(ch == '>') { inTag = FALSE; }				xml_buffer[lpc++] = ch;				break;			case '\n':			case '\t':			case ' ':				ch = ' ';				if(inTag) {					xml_buffer[lpc++] = ch;				} 				break;			default:				xml_buffer[lpc++] = ch;				break;		}	}		xml_buffer[MAX_XML_BUFFER] = 0;	xml_obj = string2xml(xml_buffer);	crm_free(xml_buffer);	crm_xml_devel(xml_obj, "Created fragment");	return xml_obj;#endif}