2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>

Don't pool connection if HTTP proxy is enabled.
	* src/FtpFinishDownloadCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/HttpSkipResponseCommand.cc
pull/1/head
Tatsuhiro Tsujikawa 2008-05-17 09:26:47 +00:00
parent 7c6ed037e3
commit 77d892d7f2
4 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,10 @@
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Don't pool connection if HTTP proxy is enabled.
* src/FtpFinishDownloadCommand.cc
* src/FtpNegotiationCommand.cc
* src/HttpSkipResponseCommand.cc
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Don't add closed socket to DownloadEngine::addSocketForReadCheck()

View File

@ -81,7 +81,8 @@ bool FtpFinishDownloadCommand::execute()
if(status != 226) {
throw DlAbortEx(StringFormat(EX_BAD_STATUS, status).str());
}
if(e->option->getAsBool(PREF_FTP_REUSE_CONNECTION)) {
if(!e->option->getAsBool(PREF_HTTP_PROXY_ENABLED) &&
e->option->getAsBool(PREF_FTP_REUSE_CONNECTION)) {
std::pair<std::string, uint16_t> peerInfo;
socket->getPeerInfo(peerInfo);
e->poolSocket(peerInfo.first, peerInfo.second, socket);

View File

@ -438,7 +438,8 @@ bool FtpNegotiationCommand::processSequence(const SegmentHandle& segment) {
void FtpNegotiationCommand::poolConnection() const
{
if(e->option->getAsBool(PREF_FTP_REUSE_CONNECTION)) {
if(!e->option->getAsBool(PREF_HTTP_PROXY_ENABLED) &&
e->option->getAsBool(PREF_FTP_REUSE_CONNECTION)) {
std::pair<std::string, uint16_t> peerInfo;
socket->getPeerInfo(peerInfo);
e->poolSocket(peerInfo.first, peerInfo.second, socket);

View File

@ -48,6 +48,8 @@
#include "StringFormat.h"
#include "DlAbortEx.h"
#include "HttpHeader.h"
#include "prefs.h"
#include "Option.h"
namespace aria2 {
@ -111,7 +113,8 @@ bool HttpSkipResponseCommand::executeInternal()
|| (_transferDecoder.isNull() && _totalLength == _receivedBytes)) {
if(!_transferDecoder.isNull()) _transferDecoder->end();
if(req->supportsPersistentConnection()) {
if(!e->option->getAsBool(PREF_HTTP_PROXY_ENABLED) &&
req->supportsPersistentConnection()) {
std::pair<std::string, uint16_t> peerInfo;
socket->getPeerInfo(peerInfo);
e->poolSocket(peerInfo.first, peerInfo.second, socket);