The system_gmtime function is a thread-safe version of the standard gmtime function. It returns the current time adjusted to Greenwich Mean Time.
struct tm *system_gmtime(const time_t *tp, const struct tm *res);
A pointer to a calendar time (tm) structure containing the GMT time. Depending on your system, the pointer may point to the data item represented by the second parameter, or it may point to a statically allocated item. For portability, do not assume either situation.
time_t *tp is an arithmetic time.
tm *res is a pointer to a calendar time (tm) structure.
time_t tp;struct tm res, *resp;tp = time(NULL); resp = system_gmtime(&tp, &res);