summaryrefslogtreecommitdiff
path: root/src/HttpInitiateConnectionCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-05-21 13:54:50 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-05-21 13:54:50 +0000
commit92f84f71f575fe4548f4a43575fbf49ce7d50d26 (patch)
tree12148ce1e8515acff763602aa0b99f89172bdf33 /src/HttpInitiateConnectionCommand.cc
parent47adbe618c85b437220588fa1f7d602e113f7875 (diff)
2010-05-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that connection pooling does not take into account proxy. This means that when connection A via proxy X is pooled, it will be wrongly reused in the download using proxy Y. * src/DownloadEngine.cc * src/DownloadEngine.h * src/FtpFinishDownloadCommand.cc * src/FtpInitiateConnectionCommand.cc * src/FtpNegotiationCommand.cc * src/HttpDownloadCommand.cc * src/HttpInitiateConnectionCommand.cc * src/HttpResponseCommand.cc * src/HttpSkipResponseCommand.cc
Diffstat (limited to 'src/HttpInitiateConnectionCommand.cc')
-rw-r--r--src/HttpInitiateConnectionCommand.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/HttpInitiateConnectionCommand.cc b/src/HttpInitiateConnectionCommand.cc
index 25df1bb4..ca650ea8 100644
--- a/src/HttpInitiateConnectionCommand.cc
+++ b/src/HttpInitiateConnectionCommand.cc
@@ -70,7 +70,8 @@ Command* HttpInitiateConnectionCommand::createNextCommand
Command* command;
if(!proxyRequest.isNull()) {
SharedHandle<SocketCore> pooledSocket =
- e->popPooledSocket(req->getHost(), req->getPort());
+ e->popPooledSocket(req->getHost(), req->getPort(),
+ proxyRequest->getHost(), proxyRequest->getPort());
std::string proxyMethod = resolveProxyMethod(req->getProtocol());
if(pooledSocket.isNull()) {
if(logger->info()) {