RemoteServerStatus *remote = new RemoteServerStatus();
remote->baseurl = baseurl;
remote->active_count = 0;
- remote->request_by_filename = false;
m_remotes.push_back(remote);
}
<< e.what() << std::endl;
}
}
-
- // For compatibility: If index.mth is not found, assume that the
- // server contains files named like the original files (not their sha1)
-
- // Do NOT check for any particular response code (e.g. 404) here,
- // because different servers respond differently
-
- if (!fetch_result.succeeded && !fetch_result.timeout) {
- infostream << "Client: Enabling compatibility mode for remote "
- << "server \"" << remote->baseurl << "\"" << std::endl;
- remote->request_by_filename = true;
-
- // Assume every file is available on this server
-
- for(std::map<std::string, FileStatus*>::iterator
- it = m_files.upper_bound(m_name_bound);
- it != m_files.end(); ++it) {
- FileStatus *f = it->second;
- if (!f->received)
- f->available_remotes.push_back(remote_id);
- }
- }
}
void ClientMediaDownloader::remoteMediaReceived(
m_remotes[remote_id];
std::string url = remote->baseurl +
- (remote->request_by_filename ? name :
- hex_encode(filestatus->sha1));
+ hex_encode(filestatus->sha1);
verbosestream << "Client: "
<< "Requesting remote media file "
<< "\"" << name << "\" "