#include "time32.h" | |
#include <time.h> | |
#include <errno.h> | |
#include <stdint.h> | |
int __clock_gettime32(clockid_t clk, struct timespec32 *ts32) | |
{ | |
struct timespec ts; | |
int r = clock_gettime(clk, &ts); | |
if (r) return r; | |
if (ts.tv_sec < INT32_MIN || ts.tv_sec > INT32_MAX) { | |
errno = EOVERFLOW; | |
return -1; | |
} | |
ts32->tv_sec = ts.tv_sec; | |
ts32->tv_nsec = ts.tv_nsec; | |
return 0; | |
} |