use ssize_t instead of unsigned int to avoid warning.