20 lines
396 B
C
20 lines
396 B
C
#include "time32.h"
|
|
#include <sys/time.h>
|
|
#include <errno.h>
|
|
#include <stdint.h>
|
|
|
|
int __gettimeofday_time32(struct timeval32 *tv32, void *tz)
|
|
{
|
|
struct timeval tv;
|
|
if (!tv32) return 0;
|
|
int r = gettimeofday(&tv, 0);
|
|
if (r) return r;
|
|
if (tv.tv_sec < INT32_MIN || tv.tv_sec > INT32_MAX) {
|
|
errno = EOVERFLOW;
|
|
return -1;
|
|
}
|
|
tv32->tv_sec = tv.tv_sec;
|
|
tv32->tv_usec = tv.tv_usec;
|
|
return 0;
|
|
}
|