rt_ssize_t can give negative error code, which follows the unix style correctly
* [rtc] use gmtime_r to replace gmtime