2009-07-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Try all available addresses returned by DNS until it gets
	connected in HTTP(S)/FTP download
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/AbstractProxyRequestCommand.cc
	* src/AbstractProxyRequestCommand.h
	* src/DNSCache.h
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpInitiateConnectionCommand.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpInitiateConnectionCommand.h
	* src/HttpRequestCommand.cc
	* src/HttpRequestCommand.h
	* src/InitiateConnectionCommand.cc
	* src/InitiateConnectionCommand.h
	* test/DNSCacheTest.cc
	* test/Makefile.am
	* test/SimpleDNSCacheTest.cc
This commit is contained in:
Tatsuhiro Tsujikawa 2009-07-02 15:18:13 +00:00
parent 8796993c71
commit 01fdb2aaeb
22 changed files with 351 additions and 130 deletions

View file

@ -48,6 +48,10 @@ protected:
SharedHandle<HttpConnection> httpConnection;
std::string _connectedHostname;
std::string _connectedAddr;
uint16_t _connectedPort;
virtual bool executeInternal();
public:
AbstractProxyRequestCommand(int cuid,
@ -61,6 +65,14 @@ public:
virtual ~AbstractProxyRequestCommand();
virtual Command* getNextCommand() = 0;
void setConnectedAddr
(const std::string& hostname, const std::string& addr, uint16_t port)
{
_connectedHostname = hostname;
_connectedAddr = addr;
_connectedPort = port;
}
};
} // namespace aria2