| #include "cache.h" |
| #include "tr2_tbuf.h" |
| |
| void tr2_tbuf_local_time(struct tr2_tbuf *tb) |
| { |
| struct timeval tv; |
| struct tm tm; |
| time_t secs; |
| |
| gettimeofday(&tv, NULL); |
| secs = tv.tv_sec; |
| localtime_r(&secs, &tm); |
| |
| xsnprintf(tb->buf, sizeof(tb->buf), "%02d:%02d:%02d.%06ld", tm.tm_hour, |
| tm.tm_min, tm.tm_sec, (long)tv.tv_usec); |
| } |
| |
| void tr2_tbuf_utc_datetime_extended(struct tr2_tbuf *tb) |
| { |
| struct timeval tv; |
| struct tm tm; |
| time_t secs; |
| |
| gettimeofday(&tv, NULL); |
| secs = tv.tv_sec; |
| gmtime_r(&secs, &tm); |
| |
| xsnprintf(tb->buf, sizeof(tb->buf), |
| "%4d-%02d-%02dT%02d:%02d:%02d.%06ldZ", tm.tm_year + 1900, |
| tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, tm.tm_sec, |
| (long)tv.tv_usec); |
| } |
| |
| void tr2_tbuf_utc_datetime(struct tr2_tbuf *tb) |
| { |
| struct timeval tv; |
| struct tm tm; |
| time_t secs; |
| |
| gettimeofday(&tv, NULL); |
| secs = tv.tv_sec; |
| gmtime_r(&secs, &tm); |
| |
| xsnprintf(tb->buf, sizeof(tb->buf), "%4d%02d%02dT%02d%02d%02d.%06ldZ", |
| tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, |
| tm.tm_min, tm.tm_sec, (long)tv.tv_usec); |
| } |