19 lines
376 B
C
19 lines
376 B
C
#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;
|
|
}
|