]> git.llucax.com Git - software/libev.git/blobdiff - evdns.c
big win32 check-in
[software/libev.git] / evdns.c
diff --git a/evdns.c b/evdns.c
index 6ba23f11aa40b9fa65009ba31f8ed92373b64594..c12b4f6a0400374a70a00cae38cb7c98eda07ff7 100644 (file)
--- a/evdns.c
+++ b/evdns.c
@@ -1,4 +1,4 @@
-#define DNS_USE_GETTIMEOFDAY_FOR_ID 1
+/* $Id: evdns.c,v 1.16 2007-11-06 16:09:37 root Exp $ */
 
 /* The original version of this module was written by Adam Langley; for
  * a history of modifications, check out the subversion logs.
 
 /* The original version of this module was written by Adam Langley; for
  * a history of modifications, check out the subversion logs.
 #endif
 
 #ifdef WIN32
 #endif
 
 #ifdef WIN32
+#ifndef EV_STANDALONE
 #include "misc.h"
 #endif
 #include "misc.h"
 #endif
+#endif
 
 /* #define NDEBUG */
 
 
 /* #define NDEBUG */
 
@@ -78,7 +80,6 @@
 
 #include <string.h>
 #include <fcntl.h>
 
 #include <string.h>
 #include <fcntl.h>
-#include <sys/time.h>
 #ifdef HAVE_STDINT_H
 #include <stdint.h>
 #endif
 #ifdef HAVE_STDINT_H
 #include <stdint.h>
 #endif
@@ -86,7 +87,6 @@
 #include <string.h>
 #include <errno.h>
 #include <assert.h>
 #include <string.h>
 #include <errno.h>
 #include <assert.h>
-#include <unistd.h>
 #include <limits.h>
 #include <sys/stat.h>
 #include <ctype.h>
 #include <limits.h>
 #include <sys/stat.h>
 #include <ctype.h>
@@ -175,7 +175,7 @@ struct request {
 };
 
 #ifndef HAVE_STRUCT_IN6_ADDR
 };
 
 #ifndef HAVE_STRUCT_IN6_ADDR
-struct xin6_addr {
+struct in6_addr {
        u8 s6_addr[16];
 };
 #endif
        u8 s6_addr[16];
 };
 #endif
@@ -190,7 +190,7 @@ struct reply {
                } a;
                struct {
                        u32 addrcount;
                } a;
                struct {
                        u32 addrcount;
-                       struct xin6_addr addresses[MAX_ADDRS];
+                       struct in6_addr addresses[MAX_ADDRS];
                } aaaa;
                struct {
                        char name[HOST_NAME_MAX];
                } aaaa;
                struct {
                        char name[HOST_NAME_MAX];
@@ -2265,7 +2265,7 @@ int evdns_resolve_reverse(struct in_addr *in, int flags, evdns_callback_type cal
        return 0;
 }
 
        return 0;
 }
 
-int evdns_resolve_reverse_ipv6(struct xin6_addr *in, int flags, evdns_callback_type callback, void *ptr) {
+int evdns_resolve_reverse_ipv6(struct in6_addr *in, int flags, evdns_callback_type callback, void *ptr) {
        char buf[96];
        char *cp;
        struct request *req;
        char buf[96];
        char *cp;
        struct request *req;
@@ -2544,6 +2544,12 @@ evdns_resolv_set_defaults(int flags) {
        if (flags & DNS_OPTION_NAMESERVERS) evdns_nameserver_ip_add("127.0.0.1");
 }
 
        if (flags & DNS_OPTION_NAMESERVERS) evdns_nameserver_ip_add("127.0.0.1");
 }
 
+#ifndef HAVE_STRTOK_R
+static char *
+strtok_r(char *s, const char *delim, char **state) {
+       return strtok(s, delim);
+}
+#endif
 
 /* helper version of atoi which returns -1 on error */
 static int
 
 /* helper version of atoi which returns -1 on error */
 static int
@@ -2616,9 +2622,9 @@ static void
 resolv_conf_parse_line(char *const start, int flags) {
        char *strtok_state;
        static const char *const delims = " \t";
 resolv_conf_parse_line(char *const start, int flags) {
        char *strtok_state;
        static const char *const delims = " \t";
-#define NEXT_TOKEN strtok(NULL, delims, &strtok_state)
+#define NEXT_TOKEN strtok_r(NULL, delims, &strtok_state)
 
 
-       char *const first_token = strtok(start, delims, &strtok_state);
+       char *const first_token = strtok_r(start, delims, &strtok_state);
        if (!first_token) return;
 
        if (!strcmp(first_token, "nameserver") && (flags & DNS_OPTION_NAMESERVERS)) {
        if (!first_token) return;
 
        if (!strcmp(first_token, "nameserver") && (flags & DNS_OPTION_NAMESERVERS)) {