瀏覽代碼

Disable IPv6 on non-async NameResolver if configuration wants

Tatsuhiro Tsujikawa 9 年之前
父節點
當前提交
7b2e797fdf
共有 2 個文件被更改,包括 6 次插入0 次删除
  1. 3 0
      src/DHTEntryPointNameResolveCommand.cc
  2. 3 0
      src/NameResolveCommand.cc

+ 3 - 0
src/DHTEntryPointNameResolveCommand.cc

@@ -124,6 +124,9 @@ bool DHTEntryPointNameResolveCommand::execute()
     {
       NameResolver res;
       res.setSocktype(SOCK_DGRAM);
+      if (e_->getOption()->getAsBool(PREF_DISABLE_IPV6)) {
+        res.setFamily(AF_INET);
+      }
       while (!entryPoints_.empty()) {
         std::string hostname = entryPoints_.front().first;
         try {

+ 3 - 0
src/NameResolveCommand.cc

@@ -105,6 +105,9 @@ bool NameResolveCommand::execute()
     {
       NameResolver resolver;
       resolver.setSocktype(SOCK_DGRAM);
+      if (e_->getOption()->getAsBool(PREF_DISABLE_IPV6)) {
+        resolver.setFamily(AF_INET);
+      }
       try {
         resolver.resolve(res, hostname);
       }