summaryrefslogtreecommitdiff
path: root/src/TrackerWatcherCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-03-30 14:17:16 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-03-30 14:17:16 +0000
commit68156ef258079c50965b86483ea7b119a82c93ad (patch)
tree7f50cdfd25990fed28fb84bb1d8e6ba943fefed2 /src/TrackerWatcherCommand.cc
parent2c20f588c89bbca4e5aacd6c81d0993fab359793 (diff)
2010-03-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --bt-tracker-connect-timeout and --bt-tracker-timeout option. * doc/aria2c.1.txt * src/OptionHandlerFactory.cc * src/TrackerWatcherCommand.cc * src/prefs.cc * src/prefs.h * src/usage_text.h
Diffstat (limited to 'src/TrackerWatcherCommand.cc')
-rw-r--r--src/TrackerWatcherCommand.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/TrackerWatcherCommand.cc b/src/TrackerWatcherCommand.cc
index 30dcbbda..3e10b713 100644
--- a/src/TrackerWatcherCommand.cc
+++ b/src/TrackerWatcherCommand.cc
@@ -217,8 +217,6 @@ TrackerWatcherCommand::createRequestGroup(const std::string& uri)
std::vector<std::string> uris;
uris.push_back(uri);
SharedHandle<RequestGroup> rg(new RequestGroup(getOption()));
- // If backup tracker is available, only try 2 times for each tracker
- // and if they all fails, then try next one.
if(backupTrackerIsAvailable(_requestGroup->getDownloadContext())) {
if(logger->debug()) {
logger->debug("This is multi-tracker announce.");
@@ -228,11 +226,16 @@ TrackerWatcherCommand::createRequestGroup(const std::string& uri)
logger->debug("This is single-tracker announce.");
}
}
+ // If backup tracker is available, try 2 times for each tracker
+ // and if they all fails, then try next one.
rg->getOption()->put(PREF_MAX_TRIES, "2");
// TODO When dry-run mode becomes available in BitTorrent, set
// PREF_DRY_RUN=false too.
rg->getOption()->put(PREF_USE_HEAD, V_FALSE);
-
+ // Setting tracker timeouts
+ rg->setTimeout(rg->getOption()->getAsInt(PREF_BT_TRACKER_TIMEOUT));
+ rg->getOption()->put(PREF_CONNECT_TIMEOUT,
+ rg->getOption()->get(PREF_BT_TRACKER_CONNECT_TIMEOUT));
static const std::string TRACKER_ANNOUNCE_FILE("[tracker.announce]");
SharedHandle<DownloadContext> dctx
(new DownloadContext(getOption()->getAsInt(PREF_SEGMENT_SIZE),