for(lpc = 0; error == NULL && lpc < strlen(input); lpc++) {
for(lpc = 0; error == NULL && lpc < (ssize_t)strlen(input); lpc++) {
get_tag_name(const char *input) {	int lpc = 0;	char ch = 0;	const char *error = NULL;	gboolean do_special = FALSE;		for(lpc = 0; error == NULL && lpc < strlen(input); lpc++) {		ch = input[lpc];		crm_insane("Processing char %c [%d]", ch, lpc);		switch(ch) {			case EOF: 			case 0:				error = "unexpected EOS";				break;			case '?':				if(lpc == 0) {					/* weird xml tag that we dont care about */					do_special = TRUE;				} else {					return lpc;				}				break;			case '/':			case '>':			case '\t':			case '\n':			case ' ':				if(!do_special) {					return lpc;				}				break;			default:				if(do_special) {				} else if('a' <= ch && ch <= 'z') {				} else if('A' <= ch && ch <= 'Z') {				} else if(ch == '_') {				} else {					error = "bad character, not in [a-zA-Z_]";				} 				break;		}	}	crm_err("Error parsing token near %.15s: %s", input, crm_str(error));	return -1;}