From 1d3233612a260c30cd7e7778feb03e9b2981efaa Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Thu, 12 Aug 2004 14:09:10 +0000
Subject: [PATCH] Added "5.9 How does libcurl resolve host names?" since I
 wrote the text in a mail anyway the other day.

---
 docs/FAQ | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/docs/FAQ b/docs/FAQ
index e5cb360fd0..8acb5d9033 100644
--- a/docs/FAQ
+++ b/docs/FAQ
@@ -72,6 +72,7 @@ FAQ
   5.6 What about Keep-Alive or persistent connections?
   5.7 Link errors when building libcurl on Windows!
   5.8 libcurl.so.3: open failed: No such file or directory
+  5.9 How does libcurl resolve host names?
 
  6. License Issues
   6.1 I have a GPL program, can I use the libcurl library?
@@ -795,6 +796,26 @@ FAQ
 
   'man ld.so' and 'man ld' will tell you more details
 
+  5.9 How does libcurl resolve host names?
+
+  libcurl includes a number of different name resolve functions:
+
+  - The non-ipv6 resolver that can use one out of four host name resolve calls
+    (depending on what your system supports):
+
+    A - gethostbyname()
+    B - gethostbyname_r() with 3 arguments
+    C - gethostbyname_r() with 5 arguments
+    D - gethostbyname_r() with 6 arguments
+
+  - The ipv6-resolver that uses getaddrinfo()
+
+  - The c-ares based name resolver that uses the c-ares library for resolves.
+
+  - The Windows threaded resolver. It use:
+
+    A - gethostbyname() on plain ipv4 windows hosts
+    B - getaddrinfo() on ipv6-enabled windows hosts
 
 6. License Issues
 
-- 
GitLab