Problem Description:
We have an application program running on Linux machine. We have one DNS machine which has IPv6 address and in our Linux machine (in /etc/resolv.conf), we have specified the IPv6 address of DNS machine. When we try to make a request from our application (basically GET,POST etc), which uses libcurl api, then the request gets failed. While debugging we found that the libcurl api was failing while executing curl_easy_perform(). On setting the libcurl api in verbose mode we found that the libcurl api couldn't resolve the IPv6 address from the hostname. It gives following error:
* Resolving host timed out: <host-name>
* Closing connection #0
* Couldn't resolve host name
We also found that our libcurl DNS requests were not reaching to the DNS machine. At the time of issue the application was linked to the libcurl.so.4.
When we linked our application to libcurl.so.3, then everthing works fine.
So it seems to us that there is problem with libcurl's new version.
This issue comes only when we specify the IPv6 address of DNS in /etc/resolv.conf file of Unity Server. If we specify the IPv4 address of DNS machine in /etc/resolv.conf file, then everything works fine with libcurl.so.4 version as well.
See #3412787