00001
00002
00003
00004 #include "wvwin32-sanitize.h"
00005
00006 #define EPOCHFILETIME (116444736000000000LL)
00007
00008 int gettimeofday(struct timeval *tv, struct timezone *tz)
00009 {
00010 FILETIME ft;
00011 LARGE_INTEGER li;
00012 __int64 t;
00013 static int tzflag;
00014
00015 if (tv)
00016 {
00017 GetSystemTimeAsFileTime(&ft);
00018 li.LowPart = ft.dwLowDateTime;
00019 li.HighPart = ft.dwHighDateTime;
00020 t = li.QuadPart;
00021 t -= EPOCHFILETIME;
00022 t /= 10;
00023 tv->tv_sec = (long)(t / 1000000);
00024 tv->tv_usec = (long)(t % 1000000);
00025 }
00026
00027 #if 0
00028 if (tz)
00029 {
00030 if (!tzflag)
00031 {
00032 _tzset();
00033 tzflag++;
00034 }
00035 tz->tz_minuteswest = _timezone / 60;
00036 tz->tz_dsttime = _daylight;
00037 }
00038 #endif
00039 return 0;
00040 }
00041
00042
00043 pid_t getpid()
00044 {
00045 return GetCurrentThreadId();
00046 }
00047
00048
00049 unsigned int sleep(unsigned int secs)
00050 {
00051 Sleep(secs*1000);
00052 return 0;
00053 }
00054
00055
00056
00057
00058 unsigned int alarm(unsigned int t)
00059 {
00060 return 0;
00061 }
00062
00063
00064
00065 int fsync(int fd)
00066 {
00067 return _commit(fd);
00068 }