Re-enable threaded host resolving
[pazpar2-moved-to-github.git] / src / getaddrinfo.c
index 6632b90..3ca2f4e 100644 (file)
@@ -1,5 +1,5 @@
 /* This file is part of Pazpar2.
-   Copyright (C) 2006-2010 Index Data
+   Copyright (C) 2006-2011 Index Data
 
 Pazpar2 is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free
@@ -79,11 +79,12 @@ void perform_getaddrinfo(struct work *w)
     struct hostent *hp;
 #endif
     char *hostport = xstrdup(w->hostport);
-    
     if ((port = strchr(hostport, ':')))
         *(port++) = '\0';
     else
+    {
         port = "210";
+    }
 
 #if HAVE_GETADDRINFO
     hints.ai_flags = 0;
@@ -98,7 +99,7 @@ void perform_getaddrinfo(struct work *w)
     // returns AF_INET address.
     if ((res = getaddrinfo(hostport, port, &hints, &addrinfo)))
     {
-        yaz_log(YLOG_WARN, "Failed to resolve %s: %s", 
+        yaz_log(YLOG_WARN, "Failed to resolve %s %s", 
                 w->hostport, gai_strerror(res));
     }
     else
@@ -194,7 +195,7 @@ int host_getaddrinfo(struct host *host, iochan_man_t iochan_man)
     struct work *w = xmalloc(sizeof(*w));
     int use_thread = 0; /* =0 to disable threading entirely */
 
-    w->hostport = host->hostport;
+    w->hostport = host->tproxy ? host->tproxy : host->proxy;
     w->ipport = 0;
     w->host = host;
     w->iochan_man = iochan_man;