X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fdropin.c;h=ab3fd6bb58e91609228d09cbd41c29fc5fe71448;hb=87416bcd8bd3e8816750150e2dbe90a970400a00;hp=f1a51ac85f28395107c9309658ec73035c01cb66;hpb=8aadbd4b37cddaf021949e93bceab98146f4c499;p=tinc diff --git a/src/dropin.c b/src/dropin.c index f1a51ac8..ab3fd6bb 100644 --- a/src/dropin.c +++ b/src/dropin.c @@ -158,8 +158,18 @@ int vasprintf(char **buf, const char *fmt, va_list ap) { #ifndef HAVE_GETTIMEOFDAY int gettimeofday(struct timeval *tv, void *tz) { +#ifdef HAVE_MINGW + FILETIME ft; + GetSystemTimeAsFileTime(&ft); + uint64_t lt = (uint64_t)ft.dwLowDateTime | ((uint64_t)ft.dwHighDateTime << 32); + lt -= 116444736000000000ULL; + tv->tv_sec = lt / 10000000; + tv->tv_usec = (lt / 10) % 1000000; +#else +#warning No high resolution time source! tv->tv_sec = time(NULL); tv->tv_usec = 0; +#endif return 0; } #endif