summaryrefslogtreecommitdiff
path: root/windows_port.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2003-10-07 21:54:04 +0000
committerDaniel Stenberg <daniel@haxx.se>2003-10-07 21:54:04 +0000
commit5e847a14bd65383ce65f143c578e120899981fd9 (patch)
tree0072e647fe22e05aee94cf4e4bf101209e30626c /windows_port.c
downloadc-ares-5e847a14bd65383ce65f143c578e120899981fd9.tar.gz
c-ares-5e847a14bd65383ce65f143c578e120899981fd9.tar.bz2
c-ares-5e847a14bd65383ce65f143c578e120899981fd9.zip
ares 1.1.1 with collected applied patches
Diffstat (limited to 'windows_port.c')
-rw-r--r--windows_port.c61
1 files changed, 61 insertions, 0 deletions
diff --git a/windows_port.c b/windows_port.c
new file mode 100644
index 0000000..215c130
--- /dev/null
+++ b/windows_port.c
@@ -0,0 +1,61 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <ctype.h>
+#include <string.h>
+
+#include "nameser.h"
+
+int
+strncasecmp(const char *a, const char *b, size_t n)
+{
+ size_t i;
+
+ for (i = 0; i < n; i++) {
+ int c1 = isupper(a[i]) ? tolower(a[i]) : a[i];
+ int c2 = isupper(b[i]) ? tolower(b[i]) : b[i];
+ if (c1 != c2) return c1-c2;
+ }
+ return 0;
+}
+
+int
+strcasecmp(const char *a, const char *b)
+{
+ return strncasecmp(a, b, strlen(a)+1);
+}
+
+int
+gettimeofday(struct timeval *tv, struct timezone *tz)
+{
+ FILETIME ft;
+ LARGE_INTEGER li;
+ __int64 t;
+ static int tzflag;
+
+ if (tv)
+ {
+ GetSystemTimeAsFileTime(&ft);
+ li.LowPart = ft.dwLowDateTime;
+ li.HighPart = ft.dwHighDateTime;
+ t = li.QuadPart; /* In 100-nanosecond intervals */
+ //t -= EPOCHFILETIME; /* Offset to the Epoch time */
+ t /= 10; /* In microseconds */
+ tv->tv_sec = (long)(t / 1000000);
+ tv->tv_usec = (long)(t % 1000000);
+ }
+
+#if 0
+ if (tz)
+ {
+ if (!tzflag)
+ {
+ _tzset();
+ tzflag++;
+ }
+ tz->tz_minuteswest = _timezone / 60;
+ tz->tz_dsttime = _daylight;
+ }
+#endif
+
+ return 0;
+}