Commit Graph

2443 Commits (2e94b4e4eb361f1b8b3e61ce64d2160ea81ebe4a)

Author SHA1 Message Date
Tatsuhiro Tsujikawa 983b6006fd 2010-10-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Append 'u' to hex mask.
	* src/Base64.cc
	* src/BitfieldMan.cc
	* src/BtHandshakeMessage.cc
	* src/BtHandshakeMessage.h
	* src/DHTBucket.cc
	* src/DHTRoutingTableDeserializer.cc
	* src/DHTRoutingTableSerializer.cc
	* src/DefaultBtProgressInfoFile.cc
	* src/MSEHandshake.h
	* src/MultiUrlRequestInfo.cc
	* src/Platform.cc
	* src/SpeedCalc.cc
	* src/UTPexExtensionMessage.cc
	* src/a2netcompat.h
	* src/base32.cc
	* src/bitfield.h
	* src/bittorrent_helper.cc
	* src/cookie_helper.cc
	* src/util.h
2010-10-10 03:08:30 +00:00
Tatsuhiro Tsujikawa 8e059b66fa 2010-10-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added util::lowercase() and util::uppercase().
	* src/cookie_helper.cc
	* src/util.cc
	* src/util.h
	* test/UtilTest.cc
2010-10-10 02:51:38 +00:00
Tatsuhiro Tsujikawa 788679f0df 2010-10-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added test cases for util::parseUIntNoThrow() and
	util::parseLLIntNoThrow().
	* test/UtilTest.cc
2010-10-09 16:58:58 +00:00
Tatsuhiro Tsujikawa 1505671e7b 2010-10-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use util::strip() instead of util::trim()
	* src/ExpatXmlRpcRequestProcessor.cc
	* src/FeatureConfig.cc
	* src/HttpHeader.cc
	* src/MetalinkParserStateV3Impl.cc
	* src/OptionHandlerImpl.h
	* src/ServerStatMan.cc
	* src/UriListParser.cc
	* src/Xml2XmlRpcRequestProcessor.cc
	* src/bittorrent_helper.cc
	* src/cookie_helper.cc
	* src/messageDigest.cc
	* src/util.cc
	* src/util.h
	* test/FeatureConfigTest.cc
	* test/HttpRequestTest.cc
	* test/UriListParserTest.cc
	* test/UtilTest.cc
2010-10-09 16:49:02 +00:00
Tatsuhiro Tsujikawa dbea00fa9d 2010-10-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added util::strip()
	* src/util.cc
	* src/util.h
	* test/UtilTest.cc
2010-10-09 16:22:56 +00:00
Tatsuhiro Tsujikawa f816434d06 2010-10-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tests to HttpRequestTest about trailing slash of cookie
	path.
	* test/HttpRequestTest.cc
2010-10-09 14:52:41 +00:00
Tatsuhiro Tsujikawa b8f8a14937 2010-10-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't append slash in CookieStorage::criteriaFind().  Append file
	part of URI to request-uri in HttpRequest::createRequest().  This
	change reverts the part of the previous change:"The
	request-path must be ends with '/' so that request-path '/foo/'
	path-matches cookie-path '/foo' and '/foo/' in the proposed
	algorithm."
	* src/CookieStorage.cc
	* src/HttpRequest.cc
2010-10-09 14:38:47 +00:00
Tatsuhiro Tsujikawa 8b17d4b276 2010-10-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten Cookie class and Cookie parser based on
	http://tools.ietf.org/html/draft-ietf-httpstate-cookie-14 with
	some modifications. When parsing cookie date, match time first so
	that it parses asctime() format. The request-path must be ends
	with '/' so that request-path '/foo/' path-matches cookie-path
	'/foo' and '/foo/' in the proposed algorithm.
	* src/Cookie.cc
	* src/Cookie.h
	* src/CookieParser.cc: Removed
	* src/CookieParser.h: Removed
	* src/CookieStorage.cc
	* src/CookieStorage.h
	* src/HttpResponse.cc
	* src/Makefile.am
	* src/Makefile.in
	* src/MultiUrlRequestInfo.cc
	* src/NsCookieParser.cc
	* src/NsCookieParser.h
	* src/Sqlite3CookieParser.cc
	* src/Sqlite3CookieParser.h
	* src/a2functional.h
	* src/cookie_helper.cc
	* src/cookie_helper.h
	* src/util.cc
	* src/util.h
	* test/CookieBoxFactoryTest.cc: Removed
	* test/CookieHelperTest.cc
	* test/CookieParserTest.cc: Removed
	* test/CookieStorageTest.cc
	* test/CookieTest.cc
	* test/HttpRequestTest.cc
	* test/Makefile.am
	* test/Makefile.in
	* test/NsCookieParserTest.cc
	* test/Sqlite3CookieParserTest.cc
	* test/TestUtil.cc
	* test/TestUtil.h
	* test/a2functionalTest.cc
	* test/chromium_cookies.sqlite
	* test/cookies.sqlite
	* test/nscookietest.txt
2010-10-09 14:22:49 +00:00
Tatsuhiro Tsujikawa 9b1280f7a3 2010-10-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Supported ANSI C's asctime() format in Time::parseHTTPDate().
	Added Time::parseAsctime(). Changed order of application of parse
	functions. I could not remember why parseRFC850() was tried first.
	* src/TimeA2.cc
	* src/TimeA2.h
	* test/TimeTest.cc
2010-10-04 15:12:27 +00:00
Tatsuhiro Tsujikawa 5db7b123b5 2010-10-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use inet_ntoa if inet_ntop is not available. Since inet_ntoa does
	not handle IPv6 address, IPv6 support is limited in this
	case. Fixed unit test error under mingw32.
	* configure.ac
	* src/AsyncNameResolver.cc
	* src/SocketCore.cc
	* src/bittorrent_helper.cc
	* test/BittorrentHelperTest.cc
	* test/DHTMessageFactoryImplTest.cc
	* test/DHTRoutingTableDeserializerTest.cc
	* test/DHTRoutingTableSerializerTest.cc
	* test/DefaultBtAnnounceTest.cc
	* test/Metalink2RequestGroupTest.cc
	* test/UTPexExtensionMessageTest.cc
2010-10-04 14:33:49 +00:00
Tatsuhiro Tsujikawa 329de2a9b5 2010-10-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reverted the previous change in src/MultiUrlRequestInfo.cc.
	Change log level of warning message about CA certificates to info.
	* src/MultiUrlRequestInfo.cc
2010-10-03 14:13:03 +00:00
Tatsuhiro Tsujikawa be2cd51e1b 2010-10-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed warning message when CA certificates are not imported.
	--ca-certificate and --check-certificate option were added to the
	error message displayed when certificate verification failed.
	* src/MultiUrlRequestInfo.cc
	* src/message.h
2010-10-03 14:07:57 +00:00
Tatsuhiro Tsujikawa af207e6cd8 2010-10-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Print message when performing slow file allocation at first time.
	* src/SingleFileAllocationIterator.cc
	* src/SingleFileAllocationIterator.h
2010-10-03 13:31:58 +00:00
Tatsuhiro Tsujikawa 32d4ffa8ee 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error on OpenBSD4.7(i386). In openssl.m4, we first
	search libcrypto and then libssl because libssl depends on
	libcrypto on OpenBSD.
	* src/Netrc.cc
	* src/Netrc.h
	* src/Triplet.h
	* src/openssl.m4
2010-10-03 09:19:33 +00:00
Tatsuhiro Tsujikawa 584af68e19 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Execute 5 DHT tasks concurrently in each task queue.
	* src/DHTTaskExecutor.cc
	* src/DHTTaskExecutor.h
	* src/DHTTaskQueueImpl.cc
	* src/DHTTaskQueueImpl.h
	* src/Makefile.am
	* test/DHTTaskExecutorTest.cc
	* test/Makefile.am
	* test/MockDHTTask.h
2010-10-02 14:38:37 +00:00
Tatsuhiro Tsujikawa 7375a778c4 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that FtpFinishDownloadCommand does not handle
	timeout. This means it waits for the remote server to send "226
	Transfer Complete" message *without* its own timeout until the
	remote server shutdowns connection(we can detect EOF in this
	case).
	* src/AbstractCommand.h
	* src/FtpFinishDownloadCommand.cc
2010-10-02 10:12:10 +00:00
Tatsuhiro Tsujikawa 86d4d1963a 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup util::percentEncode()
	* src/util.cc
2010-10-02 08:31:28 +00:00
Tatsuhiro Tsujikawa 29d40a666f 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made string literal static std::string in
	util::detectDirTraversal().
	* src/util.cc
2010-10-02 08:29:15 +00:00
Tatsuhiro Tsujikawa d5e0046f29 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten util::escapePath(). Now it does not replace bad chars:it
	performs percent-encode against them.  util::fixTaintedBasename()
	now replaces "/" with "%2F".  Added 0x7f as bad chars in
	util::detectDirTraversal().
	* src/util.cc
	* test/UtilTest.cc
2010-10-02 08:20:10 +00:00
Tatsuhiro Tsujikawa d956ea0b70 2010-10-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Non-UTF8 filenames are now percent-encoded.  For example, filename
	for http://example.org/%90%A2%8AE will be %90%A2%8AE because it is
	Shift_JIS. The comments and name in .torrent file in XML-RPC
	response are percent-encoded if they are not UTF-8.
	* src/FtpNegotiationCommand.cc
	* src/HttpRequestCommand.cc
	* src/HttpResponseCommand.cc
	* src/XmlRpcMethodImpl.cc
	* src/bittorrent_helper.cc
	* src/util.cc
	* src/util.h
	* test/BittorrentHelperTest.cc
	* test/UtilTest.cc
2010-10-02 07:54:43 +00:00
Tatsuhiro Tsujikawa 6c348f0493 2010-09-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed TripletGet as TupleGet. Renamed TripletNthType as
	TupleNthType. Renamed Triplet2Pair as Tuple2Pair.
	* src/RequestGroupMan.cc
	* src/Triplet.h
	* test/TripletTest.cc
2010-09-26 07:23:00 +00:00
Tatsuhiro Tsujikawa 6a07182b0d 2010-09-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use class instead of typename for Triplet template parameter.
	* src/Triplet.h
2010-09-26 06:56:26 +00:00
Tatsuhiro Tsujikawa 41a096035c 2010-09-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten TripletGet.
	* src/Triplet.h
2010-09-26 06:54:25 +00:00
Tatsuhiro Tsujikawa e07f7207fa 2010-09-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten TripletNthType.
	* src/Triplet.h
	* test/TripletTest.cc
2010-09-26 06:46:12 +00:00
Tatsuhiro Tsujikawa aabd7b75f9 2010-09-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Sort usedHosts by least used and faster download speed.
	* src/Makefile.am
	* src/RequestGroupMan.cc
	* src/Triplet.h
	* test/Makefile.am
	* test/TripletTest.cc
2010-09-26 05:47:12 +00:00
Tatsuhiro Tsujikawa ac7d8dc483 2010-09-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made small optimization.
	* src/DownloadCommand.cc
2010-09-23 11:49:37 +00:00
Tatsuhiro Tsujikawa aea9199b40 2010-09-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reset download start time of PeerStat because it is started before
	file allocation begins. Without reset, we have incorrect download
	time and aria2 wrongly determines that download speed is too low
	if --lowest-speed-limit is used.
	* src/StreamFileAllocationEntry.cc
2010-09-23 10:10:16 +00:00
Tatsuhiro Tsujikawa c56a9bc669 2010-09-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added keys parameter to aria2.tellStatus, aria2.tellActive,
	aria2.tellWaiting and aria2.tellStopped XML-RPC method.  'keys' is
	array of string. If it is specified, the response contains only
	keys in 'keys' array. If 'keys' is empty or not specified, the
	response contains all keys.  This is useful when you just want
	specific keys and avoid unnecessary transfers. For example,
	*aria2.tellStatus*("1", ["gid", "status"]) returns 'gid' and
	'status' key. Made get*Param() functions XmlRpcRequest's
	methods and changed portions of the code that were affected by
	this change.
	* doc/aria2c.1.txt
	* src/Makefile.am
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* src/XmlRpcRequest.cc
	* src/XmlRpcRequest.h
	* test/XmlRpcMethodTest.cc
2010-09-19 09:49:11 +00:00
Tatsuhiro Tsujikawa f11ac122ac 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Release 1.10.3
2010-09-15 13:32:08 +00:00
Tatsuhiro Tsujikawa e59ec2f926 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated po templates.
	* po/aria2.pot
2010-09-15 12:51:47 +00:00
Tatsuhiro Tsujikawa 6136272fb2 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added note to --enable-http-pipelining option.
	* doc/aria2c.1.txt
2010-09-15 12:39:55 +00:00
Tatsuhiro Tsujikawa 50a89e2592 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Print a message in console when download is not complete.
	* src/RequestGroupMan.cc
2010-09-15 12:37:02 +00:00
Tatsuhiro Tsujikawa 1d2080361d 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't set error in ServerStat just because resource is not
	there. We can still use the server for other resources.
	* src/AbstractCommand.cc
2010-09-15 12:22:31 +00:00
Tatsuhiro Tsujikawa 2c3411f709 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Disabled --dry-run in multi-file download for now.
	* src/RequestGroup.cc
2010-09-15 12:15:54 +00:00
Tatsuhiro Tsujikawa a27968beda 2010-09-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that a file gets overwritten if -V is given and no
	hash is provided. Fixed the bug that --dry-run leads download
	error. Added RequestGroup::createCheckIntegrityEntry() which
	correctly creates CheckIntegrityEntry objects and open files based
	on -V option and the existence of control file.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/ChecksumCheckIntegrityEntry.cc
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/PieceHashCheckIntegrityEntry.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupEntry.cc
	* src/RequestGroupEntry.h
2010-09-15 11:46:25 +00:00
Tatsuhiro Tsujikawa 7f92e32e48 2010-09-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error without zlib
	* test/Makefile.am
2010-09-13 13:43:06 +00:00
Tatsuhiro Tsujikawa 1906832f43 2010-09-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error without zlib
	* src/HttpResponseCommand.cc
2010-09-13 13:31:09 +00:00
Tatsuhiro Tsujikawa 6b6e6bc495 2010-09-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed ChunkedDecoder. Moved GZipDecodingStreamFilter to under
	'if HAVE_LIBZ'.
	* src/ChunkedDecoder.cc
	* src/ChunkedDecoder.h
	* src/Makefile.am
	* test/ChunkedDecoderTest.cc
	* test/Makefile.am
2010-09-13 12:14:07 +00:00
Tatsuhiro Tsujikawa 7f9e70e5c8 2010-09-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/RequestGroup.cc
2010-09-13 11:53:38 +00:00
Tatsuhiro Tsujikawa 97953dd1ae 2010-09-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that error occurs when downloading zero-length file.
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
2010-09-13 11:47:04 +00:00
Tatsuhiro Tsujikawa 5bf8a53b3f 2010-09-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error without OpenSSL/GnuTLS.
	* src/DownloadCommand.cc
2010-09-11 15:57:41 +00:00
Tatsuhiro Tsujikawa 70ebb788b2 2010-09-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error without BitTorrent support and OpenSSL/GnuTLS.
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/RequestGroup.cc
2010-09-11 15:54:53 +00:00
Tatsuhiro Tsujikawa 58ec84b1e7 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing MockSegment.h to test/Makefile.am
	* test/Makefile.am
2010-09-11 14:41:52 +00:00
Tatsuhiro Tsujikawa 9eaf3ccb0f 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Replaced V_TRUE with A2_V_TRUE. Replaced V_FALSE with A2_V_FALSE.
	* src/AbstractCommand.cc
	* src/HttpResponseCommand.cc
	* src/Option.cc
	* src/OptionHandlerFactory.cc
	* src/OptionHandlerImpl.h
	* src/TrackerWatcherCommand.cc
	* src/download_helper.cc
	* src/main.cc
	* src/prefs.cc
	* src/prefs.h
	* test/AuthConfigFactoryTest.cc
	* test/DefaultBtProgressInfoFileTest.cc
	* test/DownloadHelperTest.cc
	* test/HttpRequestTest.cc
	* test/OptionHandlerTest.cc
	* test/UTMetadataPostDownloadHandlerTest.cc
	* test/XmlRpcMethodTest.cc
2010-09-11 12:48:03 +00:00
Tatsuhiro Tsujikawa 880c6b5498 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated autoconf 2.67
	* configure.ac
2010-09-11 12:28:34 +00:00
Tatsuhiro Tsujikawa 350b6f616c 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.10.3
	* configure.ac
	* doc/aria2c.1.txt
2010-09-11 12:23:12 +00:00
Tatsuhiro Tsujikawa 90c927af74 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated man page according to changes in options.
	* doc/aria2c.1.txt
2010-09-11 12:21:10 +00:00
Tatsuhiro Tsujikawa f82ffef460 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added short option -k for --min-split-size option and -x for
	--max-connection-per-server option. Raised maximum value of
	--max-connection-per-server up to 16.
	* src/OptionHandlerFactory.cc
	* src/usage_text.h
2010-09-11 12:15:41 +00:00
Tatsuhiro Tsujikawa 80edde0205 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use uri::parse instead of Request::setUri() where just URI parser
	is needed.
	* src/AbstractCommand.cc
	* src/AdaptiveURISelector.cc
	* src/DefaultBtAnnounce.cc
	* src/FeedbackURISelector.cc
	* src/FileEntry.cc
	* src/HttpResponseCommand.cc
	* src/ProtocolDetector.cc
	* src/Request.cc
	* src/RequestGroupMan.cc
2010-09-11 12:09:19 +00:00
Tatsuhiro Tsujikawa ec3bd81486 2010-09-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved URI parser code to uri.h, uri.cc to provide fast URI parser
	without Request object initialization.
	* src/Makefile.am
	* src/Request.cc
	* src/uri.cc
	* src/uri.h
	* test/Makefile.am
	* test/RequestTest.cc
	* test/UriTest.cc
2010-09-11 09:11:57 +00:00
Tatsuhiro Tsujikawa cb796432ec 2010-09-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Store last error of removed download result so that it can be used
	as exit status.
	* src/RequestGroupMan.cc
2010-09-10 15:03:40 +00:00
Tatsuhiro Tsujikawa f26685ded1 2010-09-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --max-download-result=NUM option. This option sets maximum
	number of download result kept in memory. The download results are
	completed/error/ removed downloads. The download results are
	stored in FIFO queue and it can store at most NUM download
	results. When queue is full and new download result is created,
	oldest download result is removed from the front of the queue and
	new one is pushed to the back. Setting big number in this option
	may result high memory consumption after thousands of
	downloads. Specifying 0 means no download result is kept.  Default
	value is 1000.
	* src/OptionHandlerFactory.cc
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2010-09-10 14:13:50 +00:00
Tatsuhiro Tsujikawa 32e3ebf112 2010-09-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Check hash(hash for entire file, not piece hash) if
	--check-integrity option is given and file is
	downloaded(determined by file length). If it fails, re-download
	file.
	* src/AbstractCommand.cc
	* src/ChecksumCheckIntegrityEntry.cc
	* src/ChecksumCheckIntegrityEntry.h
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/RequestGroup.cc
2010-09-10 11:52:16 +00:00
Tatsuhiro Tsujikawa 6e7dd1650e 2010-09-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Make finished() return true only when offset == totalLength.
	* src/AdaptiveFileAllocationIterator.cc
	* src/SingleFileAllocationIterator.cc
2010-09-10 11:46:43 +00:00
Tatsuhiro Tsujikawa d687886c24 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
2010-09-09 12:00:42 +00:00
Tatsuhiro Tsujikawa 420500f6bf 2010-09-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call RequestGroupMan::fillRequestGroupFromReserver() repeatedly
	while RequestGroupMan::requestQueueCheck() is true.
	* src/FillRequestGroupCommand.cc
2010-09-08 14:42:03 +00:00
Tatsuhiro Tsujikawa c51815dd52 2010-09-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use const ref
	* src/MultiUrlRequestInfo.cc
2010-09-08 14:39:34 +00:00
Tatsuhiro Tsujikawa 32e1aa1b59 2010-09-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that aria2 reports error and exits with non-zero
	status when file is already downloaded.
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/RequestGroup.cc
2010-09-08 14:38:32 +00:00
Tatsuhiro Tsujikawa bf9fd473bb 2010-09-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Allow '@' in username and password embedded in URI. It should be
	percent-encoded but many people use their mail address as an
	username and forget about PE.
	* src/Request.cc
	* test/RequestTest.cc
2010-09-08 14:35:30 +00:00
Tatsuhiro Tsujikawa f5b3a820ef 2010-09-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Parse original URI when removing same host.
	* src/HttpResponseCommand.cc
2010-09-06 14:52:19 +00:00
Tatsuhiro Tsujikawa efbfe4c006 2010-09-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Data from remote server in HTTP/FTP download are now written to
	the disk(or memory) through StreamFilter. Decoding chunked and
	gziped streams are done cascading StreamFilter.
	Removed inefficient 1byte read code.
	* src/ChunkedDecodingStreamFilter.cc
	* src/ChunkedDecodingStreamFilter.h
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/GZipDecodingStreamFilter.cc
	* src/GZipDecodingStreamFilter.h
	* src/HttpConnection.cc
	* src/HttpDownloadCommand.cc
	* src/HttpResponse.cc
	* src/HttpResponse.h
	* src/HttpResponseCommand.cc
	* src/HttpResponseCommand.h
	* src/HttpSkipResponseCommand.cc
	* src/HttpSkipResponseCommand.h
	* src/Makefile.am
	* src/NullSinkStreamFilter.cc
	* src/NullSinkStreamFilter.h
	* src/RequestGroup.cc
	* src/SinkStreamFilter.cc
	* src/SinkStreamFilter.h
	* src/StreamFilter.cc
	* src/StreamFilter.h
	* test/ChunkedDecodingStreamFilterTest.cc
	* test/GZipDecodingStreamFilterTest.cc
	* test/HttpResponseTest.cc
	* test/Makefile.am
	* test/MockSegment.h
2010-09-06 14:29:36 +00:00
Tatsuhiro Tsujikawa 552c753dbb 2010-09-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Release 1.10.2
2010-08-31 15:32:04 +00:00
Tatsuhiro Tsujikawa 13cb9d5bfe 2010-08-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.10.2
	* configure.ac
	* doc/aria2c.1.txt
2010-08-31 13:52:40 +00:00
Tatsuhiro Tsujikawa 94482144f2 2010-08-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Enclosed classes and structs declared in *.cc files unnamed
	namespace. Added static keyword for function template in *.cc
	files(TODO we should use unnamed namespace instead of static).
	* src/AbstractCommand.cc
	* src/AnnounceList.cc
	* src/BtLeecherStateChoke.cc
	* src/BtLeecherStateChoke.h
	* src/BtSeederStateChoke.cc
	* src/BtSeederStateChoke.h
	* src/ConsoleStatCalc.cc
	* src/ContentTypeRequestGroupCriteria.cc
	* src/CookieStorage.cc
	* src/DHTBucket.cc
	* src/DHTPeerAnnounceEntry.cc
	* src/DHTPeerAnnounceStorage.cc
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultBtRequestFactory.cc
	* src/DefaultPeerStorage.cc
	* src/DefaultPieceStorage.cc
	* src/ExpatMetalinkProcessor.cc
	* src/ExpatXmlRpcRequestProcessor.cc
	* src/FeedbackURISelector.cc
	* src/FileEntry.cc
	* src/Metalink2RequestGroup.cc
	* src/MetalinkEntry.cc
	* src/Metalinker.cc
	* src/MultiDiskAdaptor.cc
	* src/Netrc.cc
	* src/OptionParser.cc
	* src/PieceStatMan.cc
	* src/RarestPieceSelector.cc
	* src/RequestGroupMan.cc
	* src/SegmentMan.cc
	* src/ServerStatMan.cc
	* src/XML2SAXMetalinkProcessor.cc
	* src/Xml2XmlRpcRequestProcessor.cc
	* src/XmlRpcResponse.cc
	* src/a2algo.h
	* src/download_helper.cc
2010-08-31 13:33:05 +00:00
Tatsuhiro Tsujikawa 492d6e9694 2010-08-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc
	* doc/aria2c.1.txt
2010-08-31 11:55:16 +00:00
Tatsuhiro Tsujikawa 939e4b2038 2010-08-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added test for previous change
	* test/NetrcTest.cc
2010-08-31 11:54:44 +00:00
Tatsuhiro Tsujikawa f9d68a4ecf 2010-08-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In .netrc file, if machine name starts ".", aria2 performs domain
	match instead of exact match. This is an extension of aria2.
	* src/Netrc.h
2010-08-31 11:53:48 +00:00
Tatsuhiro Tsujikawa 5cb09dabf5 2010-08-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug which prevents HTTP redirection from working when
	downloading multiple files from same host.
	* src/AbstractCommand.cc
	* src/FileEntry.cc
2010-08-31 11:17:38 +00:00
Tatsuhiro Tsujikawa 3434be8110 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Release 1.10.1
2010-08-29 13:52:31 +00:00
Tatsuhiro Tsujikawa 9f71e4aa81 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Polish and Turkish translations. Thanks to all
	translators.
	* po/pl.po
	* po/tr.po
2010-08-29 13:51:55 +00:00
Tatsuhiro Tsujikawa b41f884fe1 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated po templates.
	* po/aria2.pot
2010-08-29 13:49:42 +00:00
Tatsuhiro Tsujikawa 98c5a86684 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added a note about the number of connections to help message.
	* src/version_usage.cc
2010-08-29 13:46:21 +00:00
Tatsuhiro Tsujikawa 9d58a5cefb 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Run PeerLookupTask more frequently when the number of peer is low.
	* src/DHTGetPeersCommand.cc
	* src/DHTGetPeersCommand.h
2010-08-29 12:43:40 +00:00
Tatsuhiro Tsujikawa c0b0e4f761 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Drop connection when bad ut_metadata is received..
	* src/UTMetadataDataExtensionMessage.cc
2010-08-29 12:40:56 +00:00
Tatsuhiro Tsujikawa 2b93562528 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Drop connection when BtRuntime::isHalt() is true.
	* src/PeerReceiveHandshakeCommand.cc
2010-08-29 12:39:30 +00:00
Tatsuhiro Tsujikawa 2ac3c5bc4d 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Release 1.10.1
2010-08-29 09:36:06 +00:00
Tatsuhiro Tsujikawa 0968d4fedd 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed getMissingFastPiece(piece) and getMissingFastPiece(piece,
	excludedIndexes) from PieceStorage. Done some code cleanup.
	* src/DefaultPieceStorage.h
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
2010-08-29 09:24:17 +00:00
Tatsuhiro Tsujikawa 4b2d1deff6 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Pass excludedIndexes when getting metadata piece.
	* src/UTMetadataRequestFactory.cc
	* test/UTMetadataRequestFactoryTest.cc
2010-08-29 09:22:06 +00:00
Tatsuhiro Tsujikawa e997903e5d 2010-08-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added a sets of overloaded functions for
	PieceStorage::getMissingPiece() and getMissingFastPiece() to get
	multiple pieces more efficiently.
	* src/DefaultBtInteractive.cc
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/DefaultPieceStorageTest.cc
	* test/MockPieceStorage.h
2010-08-29 08:53:19 +00:00
Tatsuhiro Tsujikawa b49081340d 2010-08-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Changed signature of util::executeHook().
	* src/RequestGroupMan.cc
	* src/util.cc
	* src/util.h
2010-08-28 08:47:21 +00:00
Tatsuhiro Tsujikawa d5bb40ce9e 2010-08-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Wait data arrives at clientSocket_ in
	FtpConnectionTest::testReceiveEpsvResponse().
	* test/FtpConnectionTest.cc
2010-08-28 04:40:51 +00:00
Tatsuhiro Tsujikawa 33da745070 2010-08-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added bt-tracker and bt-exclude-tracker to -i list option.
	* doc/aria2c.1.txt
	* doc/xmlrpc/aria2rpc
	* src/download_helper.cc
2010-08-27 11:58:10 +00:00
Tatsuhiro Tsujikawa b9522dea25 2010-08-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't listen on IPv6 socket for BitTorrent, DHT, XML-RPC if
	--disable-ipv6 is true.
	* src/BtSetup.cc
	* src/DownloadEngineFactory.cc
	* src/RequestGroup.cc
2010-08-27 11:48:09 +00:00
Tatsuhiro Tsujikawa 5bcc0ba60a 2010-08-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused debug log.
	* src/DefaultBtInteractive.cc
2010-08-27 11:46:49 +00:00
Tatsuhiro Tsujikawa 835de071f2 2010-08-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Enter end game mode as soon as all pieces are assigned to peer to
	avoid substantial slow down at the very last stage of download.
	* src/DefaultBtInteractive.cc
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
2010-08-26 14:49:40 +00:00
Tatsuhiro Tsujikawa e396d2e2c4 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated IPv6 DHT usage.
	* doc/aria2c.1.txt
2010-08-25 14:26:56 +00:00
Tatsuhiro Tsujikawa d07ed1cc34 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Quoted sample tracker URIs.
	* doc/aria2c.1.txt
2010-08-25 14:24:57 +00:00
Tatsuhiro Tsujikawa ab3d649eef 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --bt-tracker and --bt-exclude-tracker option in man
	page.
	* doc/aria2c.1.txt
2010-08-25 14:22:05 +00:00
Tatsuhiro Tsujikawa 7633410ebf 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set max outstanding request size to 100. Set stepping to 6.
	* src/BtConstants.h
	* src/DefaultBtInteractive.cc
2010-08-25 13:52:37 +00:00
Tatsuhiro Tsujikawa a478cfecc4 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number 1.10.1
	* configure.ac
	* doc/aria2c.1.txt
2010-08-25 12:38:21 +00:00
Tatsuhiro Tsujikawa 065cde0aa5 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up DHT version to 2.
	* src/DHTConstants.h
2010-08-25 12:35:18 +00:00
Tatsuhiro Tsujikawa bfed6e5e31 2010-08-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added error message when given address and resolved address do not
	match in SocketCore::bind().
	* src/SocketCore.cc
2010-08-25 12:32:29 +00:00
Tatsuhiro Tsujikawa 26bf5ab5e2 2010-08-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --bt-tracker and --bt-exclude-tracker option.  In
	--bt-tracker option, you can specify comma separated list of
	additional BitTorrent tracker's announce URI. These URIs are not
	affected by --bt-exclude-tracker option because they are added
	after URIs in --bt-exclude-tracker option are removed.  In
	--bt-exclude-tracker option, you can specify comma separated list
	of BitTorrent tracker's announce URI to remove. You can use
	special value '*' which matches all URIs, thus removes all
	announce URIs. When specifying '*' in shell command-line, don't
	forget to escape or quote it.
	* src/BtDependency.cc
	* src/OptionHandlerFactory.cc
	* src/UTMetadataPostDownloadHandler.cc
	* src/bittorrent_helper.cc
	* src/bittorrent_helper.h
	* src/download_helper.cc
	* src/download_helper.h
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/BittorrentHelperTest.cc
	* test/DownloadHelperTest.cc
2010-08-24 14:21:12 +00:00
Tatsuhiro Tsujikawa a977bffbf5 2010-08-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/DefaultPeerStorage.cc
2010-08-24 11:40:23 +00:00
Tatsuhiro Tsujikawa c09ee2f764 2010-08-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --dht-entry-porint6, --dht-file-path6,
	--dht-listen-addr6 and --enable-dht6 option. Updated other things
	too.
	* doc/aria2c.1.txt
2010-08-22 11:54:47 +00:00
Tatsuhiro Tsujikawa 38fcf1964d 2010-08-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated README
	* README
2010-08-22 11:36:10 +00:00
Tatsuhiro Tsujikawa f5bd49598b 2010-08-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated usage.
	* src/usage_text.h
2010-08-22 11:34:53 +00:00
Tatsuhiro Tsujikawa 161acdf5ec 2010-08-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated README
	* README
2010-08-22 11:19:28 +00:00
Tatsuhiro Tsujikawa 9b9f3a6c63 2010-08-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed uitos(). Use util::uitos() instead.
	* src/SocketCore.cc
2010-08-22 11:16:08 +00:00
Tatsuhiro Tsujikawa d7902f0ed7 2010-08-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't try to send empty string.
	* src/SocketBuffer.cc
	* src/SocketBuffer.h
2010-08-21 13:57:57 +00:00
Tatsuhiro Tsujikawa 8958b92d91 2010-08-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Listen both IPv4 and IPv6 for BitTorrent protocol.
	* src/BtSetup.cc
	* src/PeerListenCommand.cc
	* src/PeerListenCommand.h
2010-08-14 06:52:35 +00:00
Tatsuhiro Tsujikawa 3d9bae9170 2010-08-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added debug log
	* src/DHTPeerLookupTask.cc
2010-08-14 06:50:08 +00:00
Tatsuhiro Tsujikawa 3032d6ed40 2010-08-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Initialized cur_ with values_.end()
	* src/Sequence.h
2010-08-14 03:15:13 +00:00
Tatsuhiro Tsujikawa ef393dba74 2010-08-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Listen both IPv4 and IPv6 for xml-rpc request.
	* src/DownloadEngineFactory.cc
	* src/HttpListenCommand.cc
	* src/HttpListenCommand.h
2010-08-07 15:04:21 +00:00
Tatsuhiro Tsujikawa 15b29bed15 2010-08-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated malformed message handling.
	* src/DHTMessageTracker.cc
	* src/DHTMessageTracker.h
2010-08-07 14:46:22 +00:00
Tatsuhiro Tsujikawa d8e83b3f72 2010-08-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Evaluate callback is non-null.
	* src/DHTMessageTracker.cc
2010-08-07 14:22:33 +00:00
Tatsuhiro Tsujikawa 26d6692376 2010-08-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added IPv6 DHT. Added --dht-entry-porint6, --dht-file-path6,
	--dht-listen-addr6 and --enable-dht6 option.  IPv6 DHT is disabled
	by default. To use IPv6 DHT, you need to use --enable-dht6 and
	specify a global unicast address to --dht-listen-addr6.  IPv6 DHT
	is highly experimental.
	* src/BtSetup.cc
	* src/DHTAutoSaveCommand.cc
	* src/DHTAutoSaveCommand.h
	* src/DHTConnectionImpl.cc
	* src/DHTConnectionImpl.h
	* src/DHTEntryPointNameResolveCommand.cc
	* src/DHTFindNodeReplyMessage.cc
	* src/DHTFindNodeReplyMessage.h
	* src/DHTGetPeersMessage.cc
	* src/DHTGetPeersReplyMessage.cc
	* src/DHTGetPeersReplyMessage.h
	* src/DHTMessageFactory.h
	* src/DHTMessageFactoryImpl.cc
	* src/DHTMessageFactoryImpl.h
	* src/DHTMessageTracker.cc
	* src/DHTRegistry.cc
	* src/DHTRegistry.h
	* src/DHTRoutingTableDeserializer.cc
	* src/DHTRoutingTableDeserializer.h
	* src/DHTRoutingTableSerializer.cc
	* src/DHTRoutingTableSerializer.h
	* src/DHTSetup.cc
	* src/DHTSetup.h
	* src/FtpConnection.cc
	* src/LpdMessageReceiver.cc
	* src/OptionHandlerFactory.cc
	* src/OptionHandlerImpl.h
	* src/PeerInteractionCommand.cc
	* src/RequestGroup.cc
	* src/SocketCore.cc
	* src/SocketCore.h
	* src/bittorrent_helper.cc
	* src/bittorrent_helper.h
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/DHTConnectionImplTest.cc
	* test/DHTFindNodeReplyMessageTest.cc
	* test/DHTGetPeersMessageTest.cc
	* test/DHTGetPeersReplyMessageTest.cc
	* test/DHTMessageFactoryImplTest.cc
	* test/DHTRoutingTableDeserializerTest.cc
	* test/DHTRoutingTableSerializerTest.cc
	* test/LpdMessageDispatcherTest.cc
	* test/MockDHTMessageFactory.h
2010-08-07 14:15:21 +00:00
Tatsuhiro Tsujikawa be7012272d 2010-08-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed AI_V4MAPPED from DEFAULT_AI_FLAGS
	* src/a2netcompat.h
2010-08-07 14:10:17 +00:00
Tatsuhiro Tsujikawa c685ea9de9 2010-08-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added support for peers6 key in tracker response.  Added added6,
	added6.f and dropped6 in ut_pex.
	* src/BtAnnounce.cc
	* src/BtAnnounce.h
	* src/DefaultBtAnnounce.cc
	* src/UTPexExtensionMessage.cc
	* src/UTPexExtensionMessage.h
	* test/DefaultBtAnnounceTest.cc
	* test/UTPexExtensionMessageTest.cc
2010-08-05 11:54:44 +00:00
Tatsuhiro Tsujikawa cba1283aae 2010-08-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added AI_V4MAPPED to DEFAULT_AI_FLAGS
	* src/a2netcompat.h
2010-08-05 11:50:46 +00:00
Tatsuhiro Tsujikawa 785a27f6e8 2010-08-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Add only gracefully disconnected peer to ut_pex dropped list.  Add
	incoming dropped list to PeerStorage.
	* src/DefaultBtInteractive.cc
	* src/DefaultPeerStorage.cc
	* src/InitiatorMSEHandshakeCommand.cc
	* src/Peer.cc
	* src/Peer.h
	* src/PeerConnection.cc
	* src/PeerConnection.h
	* src/PeerInteractionCommand.cc
	* src/PeerReceiveHandshakeCommand.cc
	* src/ReceiverMSEHandshakeCommand.cc
	* src/UTPexExtensionMessage.cc
	* test/DefaultPeerStorageTest.cc
	* test/UTPexExtensionMessageTest.cc
2010-08-04 15:00:38 +00:00
Tatsuhiro Tsujikawa dfdf2d8e56 2010-08-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't use pre-calculate hash value when end-game mode.  Throw
	exception if bad piece is received.
	* src/BtPieceMessage.cc
	* src/DownloadCommand.cc
2010-08-04 14:15:29 +00:00
Tatsuhiro Tsujikawa 2176b68116 2010-08-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten ut_pex peer selection.
	* src/DefaultBtInteractive.cc
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/PeerStorage.h
	* src/UTPexExtensionMessage.h
	* test/DefaultPeerStorageTest.cc
	* test/MockPeerStorage.h
	* test/UTPexExtensionMessageTest.cc
2010-08-04 12:25:46 +00:00
Tatsuhiro Tsujikawa 2bd5020f81 2010-08-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added bittorrent::packcompact() which replaces
	bittorrent::createcompact() and supports IPv6 addresses. Rewritten
	bittorrent::unpackcompact() and bittorrent::extractPeer() to
	support IPv6 addresses. Fixed added.f flags in ut_pex.
	* src/BtConstants.h
	* src/DHTFindNodeReplyMessage.cc
	* src/DHTGetPeersReplyMessage.cc
	* src/DHTMessageFactoryImpl.cc
	* src/DHTRoutingTableDeserializer.cc
	* src/DHTRoutingTableSerializer.cc
	* src/DHTTokenTracker.cc
	* src/DefaultBtAnnounce.cc
	* src/UTPexExtensionMessage.cc
	* src/bittorrent_helper.cc
	* src/bittorrent_helper.h
	* test/BittorrentHelperTest.cc
	* test/DHTFindNodeReplyMessageTest.cc
	* test/DHTGetPeersReplyMessageTest.cc
	* test/DHTMessageFactoryImplTest.cc
	* test/DHTRoutingTableSerializerTest.cc
	* test/DefaultExtensionMessageFactoryTest.cc
	* test/UTPexExtensionMessageTest.cc
2010-08-03 11:44:24 +00:00
Tatsuhiro Tsujikawa 939a372727 2010-08-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --enable-async-dns6 option. This option enables IPv6 name
	resolution in asynchronous DNS resolver. This option will be
	ignored when --async-dns=false.
	* doc/aria2c.1.txt
	* src/AbstractCommand.cc
	* src/AsyncNameResolver.cc
	* src/AsyncNameResolver.h
	* src/DHTEntryPointNameResolveCommand.cc
	* src/OptionHandlerFactory.cc
	* src/download_helper.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2010-08-01 05:59:35 +00:00
Tatsuhiro Tsujikawa 3a0f45ec8d 2010-07-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use hostname of original URI when counting hostname in
	inFlightRequest.
	* src/FileEntry.cc
2010-07-31 14:02:24 +00:00
Tatsuhiro Tsujikawa 7958ce4366 2010-07-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added FTP EPSV and EPRT command support. aria2 issues these
	commands when address family of local socket is AF_INET6.
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* src/SocketCore.cc
	* src/SocketCore.h
	* test/FtpConnectionTest.cc
2010-07-30 14:45:35 +00:00
Tatsuhiro Tsujikawa 20b7c8cd0e 2010-07-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that if hostname is numeric,
	AbstractCommand::resolveHostname() does not add its address to
	given addrs. This makes pooled socket is not used for that
	address.
	* src/AbstractCommand.cc
2010-07-30 14:38:31 +00:00
Tatsuhiro Tsujikawa a21e375baa 2010-07-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set milliseconds in DownloadEngine::refreshInterval_.  Because
	there is difference in accuracy between epoll and clock_gettime(),
	we set DEFAULT_REFRESH_INTERVAL 900ms just lower than default
	timeout 1 sec for epoll. Also set update interval of
	ConsoleStatCalc to 900ms by the same reason.
	* src/ConsoleStatCalc.cc
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
2010-07-28 12:31:55 +00:00
Tatsuhiro Tsujikawa 27e96877b7 2010-07-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten check for fallocate using AC_COMPILE_IFELSE.
	* configure.ac
	* m4/fallocate.m4
2010-07-27 14:37:25 +00:00
Tatsuhiro Tsujikawa 253c0ba353 2010-07-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that HAVE_SOME_FALLOCATE gets undefined if fallocate
	is not available even if posix_fallocate is available. This causes
	FallocFileAllocationIterator.cc is out of compile targets and
	linker error.
	* configure.ac
2010-07-26 12:20:19 +00:00
Tatsuhiro Tsujikawa 6d054eb74f 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Release 1.10.0
2010-07-19 05:45:59 +00:00
Tatsuhiro Tsujikawa da668763a6 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added hidden select-least-used-host option.
	* src/CreateRequestCommand.cc
	* src/OptionHandlerFactory.cc
	* src/TrackerWatcherCommand.cc
	* src/prefs.cc
	* src/prefs.h
2010-07-19 05:37:40 +00:00
Tatsuhiro Tsujikawa a6a18e9ffe 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc for --split option.
	* src/usage_text.h
2010-07-19 05:02:52 +00:00
Tatsuhiro Tsujikawa f0f986077b 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc for --min-split-size option.
	* doc/aria2c.1.txt
	* src/usage_text.h
2010-07-19 04:50:00 +00:00
Tatsuhiro Tsujikawa d8ce5db577 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added max-connection-per-server, min-split-size and
	conditional-get option to -i list option and aria2rpc.
	* doc/aria2c.1.txt
	* doc/xmlrpc/aria2rpc
	* src/download_helper.cc
2010-07-19 04:46:04 +00:00
Tatsuhiro Tsujikawa 78601d277e 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed double free bug
	* src/Sqlite3CookieParserImpl.cc
2010-07-18 16:20:42 +00:00
Tatsuhiro Tsujikawa 07f91a28de 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error with OSX g++ 4.0.1
	* src/FileEntry.h
	* test/FileEntryTest.cc
2010-07-18 15:49:53 +00:00
Tatsuhiro Tsujikawa 5e532638c7 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reverted default value of -j from 2 to 5.
	* doc/aria2c.1.txt
	* src/OptionHandlerFactory.cc
2010-07-18 15:16:31 +00:00
Tatsuhiro Tsujikawa 21887ddb7c 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Metadata download may take very long time. If URIs are
	available, give up metadata download in at most 30 seconds.
	* src/Metalink2RequestGroup.cc
2010-07-18 15:14:50 +00:00
Tatsuhiro Tsujikawa 05d8f8ffdb 2010-07-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call RequestGroup::setForceHaltRequested(true) from
	BtStopDownloadCommand to avoid long delay of tracker request.
	* src/BtStopDownloadCommand.cc
2010-07-18 15:13:43 +00:00
Tatsuhiro Tsujikawa cd13647abe 2010-07-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Pass maxSplitSize as an argument, instead of member variable of
	DefaultPieceStorage. SegmentMan::getSegment(cuid_t,size_t index)
	was renamed to SegmentMan::getSegmentWithIndex(...)
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/DownloadCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/PieceStorage.h
	* src/RequestGroup.cc
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
	* test/SegmentManTest.cc
2010-07-17 14:36:18 +00:00
Tatsuhiro Tsujikawa 27d5c2badc 2010-07-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed prepareForRetry from CreateRequestCommand
	* src/CreateRequestCommand.cc
	* src/CreateRequestCommand.h
2010-07-17 14:33:50 +00:00
Tatsuhiro Tsujikawa 100cd1afd6 2010-07-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set PREF_REUSE_URI=V_FALSE for tracker request.
	* src/TrackerWatcherCommand.cc
2010-07-17 14:31:21 +00:00
Tatsuhiro Tsujikawa e7ca63949c 2010-07-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.10.0
	* configure.ac
	* doc/aria2c.1.txt
2010-07-17 03:41:43 +00:00
Tatsuhiro Tsujikawa d0b727f6dc 2010-07-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Count the number of command used in HTTP(S)/FTP and the number of
	connections in HTTP(S)/FTP independently. The former is used to
	determin whether additional command is needed.  The latter is used
	to report user to how many connections are used in a download.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/CreateRequestCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
2010-07-17 03:23:56 +00:00
Tatsuhiro Tsujikawa 036abeee11 2010-07-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Check status values: 200 and 206.
	* src/HttpResponse.cc
2010-07-16 16:21:45 +00:00
Tatsuhiro Tsujikawa 332a5bd4a1 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reverted previous change and fixed it in a right way.
	* src/HttpDownloadCommand.cc
2010-07-16 16:19:45 +00:00
Tatsuhiro Tsujikawa 3886919101 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Make sure that all decoders are finished to pool socket
	* src/HttpDownloadCommand.cc
2010-07-16 15:19:46 +00:00
Tatsuhiro Tsujikawa 9d5f19d5b1 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed indent of --conditional-get option.
	* src/usage_text.h
2010-07-16 15:06:57 +00:00
Tatsuhiro Tsujikawa 34036e58af 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --on-bt-download-complete=COMMAND option.  For BitTorrent, a
	command specified in --on-download-complete is called when
	download completes and seeding is over. On the other hand, this
	option set the command to be executed when download completes but
	before seeding.
	* doc/aria2c.1.txt
	* src/DefaultPieceStorage.cc
	* src/OptionHandlerFactory.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* src/util.cc
	* src/util.h
2010-07-16 15:00:35 +00:00
Tatsuhiro Tsujikawa db23e29ecf 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc of --split option.
	* doc/aria2c.1.txt
2010-07-16 14:26:31 +00:00
Tatsuhiro Tsujikawa b7e4018e45 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved executeHook and executeHookByOptName to util.
	* src/RequestGroupMan.cc
	* src/util.cc
	* src/util.h
2010-07-16 14:22:57 +00:00
Tatsuhiro Tsujikawa 906215317a 2010-07-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --conditional-get option.  Download file only when the local
	file is older than remote file.  This function only works with
	HTTP(S) downloads only. It does not work if file size is specified
	in Metalink. It also ignores Content-Disposition header. If a
	control file exists, this option will be ignored. This function
	uses If-Modified-Since header to get only newer file
	conditionally. When getting modification time of local file, it
	uses user supplied filename(see --out option) or filename part in
	URI if --out is not specified.
	* doc/aria2c.1.txt
	* src/HttpHeader.cc
	* src/HttpHeader.h
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpRequestCommand.cc
	* src/HttpResponse.cc
	* src/HttpResponseCommand.cc
	* src/OptionHandlerFactory.cc
	* src/TimeA2.cc
	* src/TimeA2.h
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/HttpResponseTest.cc
	* test/TimeTest.cc
2010-07-16 14:13:04 +00:00
Tatsuhiro Tsujikawa 55d98cff0b 2010-07-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
FeedbackURISelector now tries to select URI whose host is least
	used in aria2 globally. Reverted the previous change.
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
	* src/CreateRequestCommand.cc
	* src/FeedbackURISelector.cc
	* src/FeedbackURISelector.h
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/InOrderURISelector.cc
	* src/InOrderURISelector.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/URISelector.h
	* src/a2algo.h
	* test/FeedbackURISelectorTest.cc
	* test/InOrderURISelectorTest.cc
2010-07-15 13:49:02 +00:00
Tatsuhiro Tsujikawa 1984c2a542 2010-07-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Prefer untested server in FeedbackURISelector
	* src/FeedbackURISelector.cc
2010-07-15 11:48:32 +00:00
Tatsuhiro Tsujikawa 86222984cb 2010-07-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --min-split-size option in man page.
	* doc/aria2c.1.txt
2010-07-15 11:43:21 +00:00
Tatsuhiro Tsujikawa 1ddaaf7614 2010-07-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --min-split-size=SIZE option.  aria2 does not split less
	than 2*SIZE byte range.  For example, let's consider downloading
	20MiB file. If SIZE is 10M, aria2 can split file into 2 range
	[0-10MiB) and [10MiB-20MiB) and download it using 2 sources(if
	--split >= 2, of course).  If SIZE is 15M, since 2*15M > 20MiB,
	aria2 does not split file and download it using 1 source.
	* src/BitfieldMan.cc
	* src/BitfieldMan.h
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/BitfieldManTest.cc
	* test/SegmentManTest.cc
2010-07-15 11:39:21 +00:00
Tatsuhiro Tsujikawa 55748de726 2010-07-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
FeedbackURISelector now tries to chooses URI which is not used in
	aria2 globally. If it is possible, it may return used URI.
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
	* src/CreateRequestCommand.cc
	* src/FeedbackURISelector.cc
	* src/FeedbackURISelector.h
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/InOrderURISelector.cc
	* src/InOrderURISelector.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/URISelector.h
	* test/FeedbackURISelectorTest.cc
	* test/InOrderURISelectorTest.cc
2010-07-14 14:10:33 +00:00
Tatsuhiro Tsujikawa f8bfc9e167 2010-07-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc for options.
	* doc/aria2c.1.txt
2010-07-14 11:43:36 +00:00