X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=src%2Fgetaddrinfo.c;h=63586c7513aef60445fb1fcea72cbf54342152b4;hb=cc178327044177f177d0474b757f53bcd86b4d42;hp=0e9a96a9ef8a313a89597f62bd36f15a3489bf3d;hpb=f89a08d579f270d78b6e48a04ec63cef23539c88;p=pazpar2-moved-to-github.git diff --git a/src/getaddrinfo.c b/src/getaddrinfo.c index 0e9a96a..63586c7 100644 --- a/src/getaddrinfo.c +++ b/src/getaddrinfo.c @@ -23,14 +23,25 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include "sel_thread.h" +#if HAVE_UNISTD_H #include +#endif #include -#include + #include #include +#if HAVE_SYS_SOCKET_H #include +#endif +#ifdef WIN32 +#include +#endif +#if HAVE_NETDB_H #include +#endif +#if HAVE_NETINET_IN_H #include +#endif #include #include @@ -122,11 +133,14 @@ static void work_handler(void *vp) if (sec) { yaz_log(log_level, "waiting %d seconds", sec); +#if HAVE_UNISTD_H sleep(sec); +#endif } perform_getaddrinfo(w); } +#ifndef WIN32 void iochan_handler(struct iochan *i, int event) { sel_thread_t p = iochan_getdata(i); @@ -162,6 +176,7 @@ static void getaddrinfo_start(void) yaz_log(log_level, "resolver start"); resolver_thread = p; } +#endif int host_getaddrinfo(struct host *host) { @@ -171,21 +186,21 @@ int host_getaddrinfo(struct host *host) w->hostport = host->hostport; w->ipport = 0; w->host = host; +#ifndef WIN32 if (use_thread) { if (resolver_thread == 0) getaddrinfo_start(); assert(resolver_thread); sel_thread_add(resolver_thread, w); + return 0; } - else - { - perform_getaddrinfo(w); - host->ipport = w->ipport; - xfree(w); - if (!host->ipport) - return -1; - } +#endif + perform_getaddrinfo(w); + host->ipport = w->ipport; + xfree(w); + if (!host->ipport) + return -1; return 0; }