]> ruderich.org/simon Gitweb - tlsproxy/tlsproxy.git/blobdiff - src/connection.c
Fix error handling for getaddrinfo().
[tlsproxy/tlsproxy.git] / src / connection.c
index 3f361a03effdd8cbd54a5bbe17d068b98f714ac2..f608339f8014ba0427f515c36a14f1d29a51e894 100644 (file)
 #include "connection.h"
 #include "verify.h"
 
-/* close() */
-#include <unistd.h>
-/* getaddrinfo() */
+#include <errno.h>
 #include <netdb.h>
-/* poll() */
 #include <poll.h>
-/* errno */
-#include <errno.h>
+#include <unistd.h>
 
 
 /* Maximum length of a HTTP request line. Longer request lines are aborted
@@ -774,7 +770,12 @@ static int connect_to_host(const char *hostname, const char *port) {
                           | AI_V4MAPPED;   /* support IPv4 through IPv6 */
     gai_return = getaddrinfo(hostname, port, &gai_hints, &gai_result);
     if (gai_return != 0) {
-        LOG_PERROR(LOG_WARNING, "connect_to_host(): getaddrinfo()");
+        if (gai_return == EAI_SYSTEM) {
+            LOG_PERROR(LOG_WARNING, "connect_to_host(): getaddrinfo()");
+        } else {
+            LOG(LOG_WARNING, "connect_to_host(): getaddrinfo(): %s",
+                             gai_strerror(gai_return));
+        }
         return -1;
     }