diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-09-09 12:00:42 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-09-09 12:00:42 +0000 |
| commit | d687886c24eb0d8325e0568f4a6ed304c4011966 (patch) | |
| tree | f236533ed580c999a32525392f2261bf02eacb2c /src/HttpInitiateConnectionCommand.cc | |
| parent | 420500f6bf53e0fafc6660deaa014b425af13fe7 (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.cc | 9 |
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; |
