summaryrefslogtreecommitdiff
path: root/src/HttpInitiateConnectionCommand.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-09-09 12:00:42 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-09-09 12:00:42 +0000
commitd687886c24eb0d8325e0568f4a6ed304c4011966 (patch)
treef236533ed580c999a32525392f2261bf02eacb2c /src/HttpInitiateConnectionCommand.cc
parent420500f6bf53e0fafc6660deaa014b425af13fe7 (diff)
2010-09-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved connectedHostname, connectedAddr and connectedPort to Request object. Mark cached IP address bad on timeout to allow aria2 to renew IP address cache. * src/AbstractCommand.cc * src/AbstractProxyRequestCommand.cc * src/AbstractProxyRequestCommand.h * src/FtpInitiateConnectionCommand.cc * src/FtpNegotiationCommand.cc * src/FtpNegotiationCommand.h * src/HttpInitiateConnectionCommand.cc * src/HttpRequestCommand.cc * src/HttpRequestCommand.h * src/InitiateConnectionCommand.cc * src/InitiateConnectionCommand.h * src/Request.cc * src/Request.h
Diffstat (limited to 'src/HttpInitiateConnectionCommand.cc')
-rw-r--r--src/HttpInitiateConnectionCommand.cc9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/HttpInitiateConnectionCommand.cc b/src/HttpInitiateConnectionCommand.cc
index 9d62fbc2..aad8f938 100644
--- a/src/HttpInitiateConnectionCommand.cc
+++ b/src/HttpInitiateConnectionCommand.cc
@@ -85,6 +85,7 @@ Command* HttpInitiateConnectionCommand::createNextCommand
createSocket();
getSocket()->establishConnection(addr, port);
+ getRequest()->setConnectedAddrInfo(hostname, addr, port);
if(proxyMethod == V_TUNNEL) {
HttpProxyRequestCommand* c =
new HttpProxyRequestCommand(getCuid(),
@@ -94,7 +95,6 @@ Command* HttpInitiateConnectionCommand::createNextCommand
getDownloadEngine(),
proxyRequest,
getSocket());
- c->setConnectedAddr(hostname, addr, port);
command = c;
} else if(proxyMethod == V_GET) {
SharedHandle<HttpConnection> httpConnection
@@ -106,7 +106,6 @@ Command* HttpInitiateConnectionCommand::createNextCommand
httpConnection,
getDownloadEngine(),
getSocket());
- c->setConnectedAddr(hostname, addr, port);
c->setProxyRequest(proxyRequest);
command = c;
} else {
@@ -114,6 +113,7 @@ Command* HttpInitiateConnectionCommand::createNextCommand
throw DL_ABORT_EX("ERROR");
}
} else {
+ setConnectedAddrInfo(getRequest(), hostname, pooledSocket);
SharedHandle<HttpConnection> httpConnection
(new HttpConnection(getCuid(), pooledSocket));
HttpRequestCommand* c = new HttpRequestCommand(getCuid(),
@@ -139,8 +139,10 @@ Command* HttpInitiateConnectionCommand::createNextCommand
}
createSocket();
getSocket()->establishConnection(addr, port);
+ getRequest()->setConnectedAddrInfo(hostname, addr, port);
} else {
setSocket(pooledSocket);
+ setConnectedAddrInfo(getRequest(), hostname, pooledSocket);
}
SharedHandle<HttpConnection> httpConnection
(new HttpConnection(getCuid(), getSocket()));
@@ -150,9 +152,6 @@ Command* HttpInitiateConnectionCommand::createNextCommand
httpConnection,
getDownloadEngine(),
getSocket());
- if(pooledSocket.isNull()) {
- c->setConnectedAddr(hostname, addr, port);
- }
command = c;
}
return command;