*esp_code = be32_to_cpup((__be32 *)event); 
from_buf = get_unaligned((__be32 *)event); *esp_code = be32_to_cpup(&from_buf); 
scdrv_parse_event(char *event, int *src, int *code, int *esp_code, char *desc){	char *desc_end;	/* record event source address */	*src = be32_to_cpup((__be32 *)event);	event += 4; 			/* move on to event code */	/* record the system controller's event code */	*code = be32_to_cpup((__be32 *)event);	event += 4;			/* move on to event arguments */	/* how many arguments are in the packet? */	if (*event++ != 2) {		/* if not 2, give up */		return -1;	}	/* parse out the ESP code */	if (*event++ != IR_ARG_INT) {		/* not an integer argument, so give up */		return -1;	}	*esp_code = be32_to_cpup((__be32 *)event);	event += 4;	/* parse out the event description */	if (*event++ != IR_ARG_ASCII) {		/* not an ASCII string, so give up */		return -1;	}	event[CHUNKSIZE-1] = '\0';	/* ensure this string ends! */	event += 2; 			/* skip leading CR/LF */	desc_end = desc + sprintf(desc, "%s", event);	/* strip trailing CR/LF (if any) */	for (desc_end--;	     (desc_end != desc) && ((*desc_end == 0xd) || (*desc_end == 0xa));	     desc_end--) {		*desc_end = '\0';	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/1a402aaca51b7d56e62348f50a426c531b6bc29e/snsc_event.c/buggy/drivers/char/snsc_event.c