wasi-libc/libc-top-half/musl/compat/time32/gettimeofday_time32.c
Dan Gohman 575e1579a4 Update to musl 1.2.0.
See the WHATSNEW file for details. The biggest change in musl is the
switch to 64-bit time_t for 32-bit targets, however WASI libc was already
using 64-bit time_t. The main change affecting WASI is an update to
Unicode 12.1.0.
2020-02-26 10:23:05 -08:00

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;
}