如何判断安装的libcurl是否启用了异步DNS?

时间:2014-09-23 14:44:53

标签: proxy dns tornado libcurl

我想尝试使用Tornado的代理功能。为此,文档告诉我,我需要使用异步DNS解析器编译libcurl。

我有一个通过yum(7.29)安装的libcurl版本,但我无法弄清楚如何判断它是否是使用异步DNS解析构建的。

如果没有,有没有办法启用它,还是我必须从头开始构建它?似乎后者是我到目前为止唯一可以找到的选择,希望我错过了一些东西。

谢谢!

1 个答案:

答案 0 :(得分:2)

调用curl_version_info()并检查返回的结构及其“功能”字段:

   int features;             /* bitmask, see below */

如果该字段设置了CURL_VERSION_ASYNCHDNS位,则您知道此libcurl构建异步解析名称。使用任何一个线程或它都是为了使用c-ares而构建的。

如果未设置该位,则构建它以使用同步名称解析。