Change (void *) to (unsigned char *) for portability.