1 /* 2 * Public domain 3 * sys/time.h compatibility shim 4 */ 5 6 #ifndef LIBCRYPTOCOMPAT_SYS_TIME_H 7 #define LIBCRYPTOCOMPAT_SYS_TIME_H 8 9 #ifdef _MSC_VER 10 #include <winsock2.h> 11 int gettimeofday(struct timeval *tp, void *tzp); 12 #else 13 #include_next <sys/time.h> 14 #endif 15 16 #ifndef timersub 17 #define timersub(tvp, uvp, vvp) \ 18 do { \ 19 (vvp)->tv_sec = (tvp)->tv_sec - (uvp)->tv_sec; \ 20 (vvp)->tv_usec = (tvp)->tv_usec - (uvp)->tv_usec; \ 21 if ((vvp)->tv_usec < 0) { \ 22 (vvp)->tv_sec--; \ 23 (vvp)->tv_usec += 1000000; \ 24 } \ 25 } while (0) 26 #endif 27 28 #endif 29