Commit Graph

899 Commits (0308785bd8dc1d7ebe18d8a91fe12b16bfdd107c)

Author SHA1 Message Date
Tatsuhiro Tsujikawa 4e806b1bb0 Fixed typo. 2008-08-17 14:09:27 +00:00
Tatsuhiro Tsujikawa 0e6c0498a3 2008-08-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
If a cookie whose expire date is later than 2038-01-19 03:14:07 
GMT is
	sent from server, its expire date is assumed to 2038-01-19 
03:14:07 GMT.
	If Util::httpGMT is failed, then Cookie::onetime is set to true.
	* src/Util.cc
	* src/Util.h
	* src/CookieParser.cc
	* test/UtilTest.cc
	* test/CookieParserTest.cc
2008-08-17 14:09:03 +00:00
Tatsuhiro Tsujikawa adfcf57e32 2008-08-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Seprate the implementation to load old mozilla format of cookie 
to
	NsCookieParser class.
	* src/CookieBoxFactory.cc
	* src/CookieBoxFactory.h
	* src/NsCookieParser.cc
	* src/NsCookieParser.h
	* test/NsCookieParserTest.cc
2008-08-17 12:58:56 +00:00
Tatsuhiro Tsujikawa aabb6bb2d9 2008-08-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made parse() const
	* src/Sqlite3MozCookieParser.cc
	* src/Sqlite3MozCookieParser.h
2008-08-17 12:56:23 +00:00
Tatsuhiro Tsujikawa 0cac0dabde 2008-08-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added firefox3 cookie support based on the patch submitted by
	tizianomueller.
	firefox3 cookie is SQLite3 database. libsqlite3 is required to 
enable
	this functionality.
	* configure.ac
	* m4/sqlite3.m4
	* src/CookieBoxFactory.cc
	* src/CookieBoxFactory.h
	* src/Makefile.am
	* src/Makefile.in
	* src/Sqlite3MozCookieParser.cc
	* src/Sqlite3MozCookieParser.h
	* src/main.cc
	* test/CookieBoxFactoryTest.cc
	* test/Makefile.am
	* test/Makefile.in
	* test/Sqlite3MozCookieParserTest.cc
	* test/badcookies.sqlite
	* test/cookies.sqlite
2008-08-17 10:44:12 +00:00
Tatsuhiro Tsujikawa 72d21885d1 2008-08-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added Danish and Greek translations.
	Updated Spanish, Catalan, Norwegian Nynorsk translations.
	Great thanks to all translators.
	* po/LINGUAS
	* po/el.po
	* po/da.po
	* po/es.po
	* po/ca.po
	* po/nn.po
2008-08-15 15:06:24 +00:00
Tatsuhiro Tsujikawa a49523ce99 2008-08-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed man page: --follow-bittorrent should be --follow-torrent
	* doc/aria2c.1.txt
2008-08-14 14:02:18 +00:00
Tatsuhiro Tsujikawa 2283c5ee14 2008-08-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed: numCommand is less than the value specified in -C option.
	* src/RequestGroup.cc
2008-08-13 16:15:31 +00:00
Tatsuhiro Tsujikawa 326d11bc46 2008-08-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed occasional assertion failure in PieceSegment.
	Calling PieceStorage::getMissingPiece(size_t) was missing after
	canceling segments in SegmentMan::getSegment(int32_t). This 
resulted in
	creation of duplicate segments and one of the segment was 
finished then
	assertion failure was caused.
	* src/SegmentMan.cc
	* test/SegmentManTest.cc
2008-08-13 16:13:54 +00:00
Tatsuhiro Tsujikawa db46bab38b 2008-08-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added options to load/save the server's performance/status to a	
file
	and the timeout to drop their data.
	--server-stat-of=FILE specifies the file to which performance 
data
	is saved.
	--server-stat-if=FILE specifies the file to read previously 
saved
	by --server-stat-of option. Might be used with 
--uri-selector=feedback.
	--server-stat-timeout=TIMEOUT specifies timeout to invalidate 
the data.
	TIMEOUT is specified in seconds and the default value is 
24hours.
	* src/MultiUrlRequestInfo.cc
	* src/OptionHandlerFactory.cc
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/ServerStatMan.cc
	* src/ServerStatMan.h
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* test/ServerStatManTest.cc
2008-08-10 15:22:55 +00:00
Tatsuhiro Tsujikawa 6aba376430 2008-08-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented ServerStatMan::removeStaleServerStat() and its test 
case.
	* src/ServerStatMan.cc
	* src/ServerStatMan.h
	* test/ServerStatManTest.cc
2008-08-09 13:30:40 +00:00
Tatsuhiro Tsujikawa d85014b937 2008-08-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented ServerStatMan::load(...) function and its test case.
	* src/ServerStat.cc
	* src/ServerStat.h
	* src/ServerStatMan.cc
	* test/ServerStatManTest.cc
	* test/ServerStatTest.cc
2008-08-09 11:29:27 +00:00
Tatsuhiro Tsujikawa 8208e538ba 2008-08-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use time_t instead of int32_t. Use int64_t where milli second is
	expected.
	* src/TimeA2.cc
	* src/TimeA2.h
2008-08-09 10:31:29 +00:00
Tatsuhiro Tsujikawa 26690f692b 2008-08-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented ServerStatMan::save(...) function and its test case.
	* src/ServerStat.cc
	* src/ServerStat.h
	* src/ServerStatMan.cc
	* src/ServerStatMan.h
	* test/ServerStatManTest.cc
2008-08-09 09:59:56 +00:00
Tatsuhiro Tsujikawa 70b457da01 2008-08-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Now aria2 uses name attribute in Metalink as local filename in
	BitTorrent downloads. BUG#2033999
	* src/BtContext.h
	* src/BtDependency.cc
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/SingleFileDownloadContext.cc
	* src/SingleFileDownloadContext.h
	* test/BtDependencyTest.cc
	* test/DefaultBtContextTest.cc
	* test/MockBtContext.h
2008-08-08 16:44:59 +00:00
Tatsuhiro Tsujikawa 057516d1bc 2008-08-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added AC_C_BIGENDIAN
	* src/configure.ac
2008-08-07 15:33:29 +00:00
Tatsuhiro Tsujikawa a699a46858 2008-08-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Limited numCommand less than or equal to the number of piece.
	* src/RequestGroup.cc
2008-08-07 15:24:13 +00:00
Tatsuhiro Tsujikawa 4baee78941 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Eliminated randomness from the test case. Removed #ifdef 
__MINGW32
	directive.
	* test/DefaultPieceStorageTest.cc
2008-08-07 14:25:52 +00:00
Tatsuhiro Tsujikawa fcb7254bf5 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed memory leak in test code
	* test/AnnounceListTest.cc
	* test/DefaultPeerListProcessorTest.cc
	* test/DefaultPeerStorageTest.cc
	* test/MetaFileUtilTest.cc
2008-08-07 14:21:50 +00:00
Tatsuhiro Tsujikawa 817aee5dc8 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed wrong argument passing to BitfieldMan::isBitSet()
	* src/DefaultPieceStorage.cc
2008-08-07 14:19:40 +00:00
Tatsuhiro Tsujikawa 8af9c60ebf 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Initialized _directIOAllowed
	* src/MultiDiskAdaptor.cc
2008-08-07 14:16:49 +00:00
Tatsuhiro Tsujikawa f8b4d0d1bd 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed memory leak
	* src/GZipDecoder.cc
2008-08-07 14:15:39 +00:00
Tatsuhiro Tsujikawa 747e9a0b23 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed memory leak
	* src/MetalinkParserStateMachine.cc
2008-08-07 14:14:49 +00:00
Tatsuhiro Tsujikawa 4eacf0436a 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed memory leak
	* src/Dictionary.cc
2008-08-07 14:13:21 +00:00
Tatsuhiro Tsujikawa 52f4cbbc20 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed memory leak
	* src/IteratableChunkChecksumValidator.h
2008-08-07 14:12:28 +00:00
Tatsuhiro Tsujikawa ef5c01ad33 2008-08-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed unmatched malloc/free.
	* src/IteratableChunkChecksumValidator.cc
	* src/IteratableChecksumValidator.cc
2008-08-07 14:11:16 +00:00
Tatsuhiro Tsujikawa 09417a0636 Logged previous change 2008-08-07 14:10:29 +00:00
Tatsuhiro Tsujikawa d64c8e75f6 2008-08-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented download speed based URI selection algorithm.
	Introduced new option --uri-selector.
	If --uri-selector=feedback is given, aria2 uses download speed 
observed
	in the previous downloads and chooses fastest server in the URI 
list.
	Currently at most 10 URIs are considered to introduce 
randomeness for
	finding better servers. The speed is average download speed in 
the
	downloads.
	On the other hand, if --uri-selector=inorder is given, which is 
default,
	URI is tried in order in URI list.
	The usage text for the new option has not been written yet.
	* src/AbstractCommand.cc
	* src/DownloadCommand.cc
	* src/DownloadEngine.cc
	* src/DownloadEngineFactory.cc
	* src/InOrderURISelector.cc
	* src/InOrderURISelector.h
	* src/OptionHandlerFactory.cc
	* src/PeerStat.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* src/ServerStat.cc
	* src/ServerStat.h
	* src/ServerStatMan.cc
	* src/ServerStatMan.h
	* src/ServerStatURISelector.cc
	* src/ServerStatURISelector.h
	* src/URISelector.h
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* test/InOrderURISelectorTest.cc
	* test/RequestGroupManTest.cc
	* test/ServerStatManTest.cc
	* test/ServerStatURISelectorTest.cc
2008-08-04 17:06:47 +00:00
Tatsuhiro Tsujikawa 7449aba847 2008-08-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.15.1+2
2008-08-04 15:51:15 +00:00
Tatsuhiro Tsujikawa 37f9607189 2008-08-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.15.1+2
	* configure.ac
2008-08-04 15:25:54 +00:00
Tatsuhiro Tsujikawa 01238a1579 2008-08-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that configure --enable-FEATURE actually disables 
FEATURE.
	* m4/aria2_arg.m4
2008-08-04 14:34:19 +00:00
Tatsuhiro Tsujikawa 2849301b2c 2008-08-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.15.1+1
2008-08-03 14:05:02 +00:00
Tatsuhiro Tsujikawa 919f775110 2008-08-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.15.1+1
	* configure.ac
2008-08-03 13:42:09 +00:00
Tatsuhiro Tsujikawa e5730839cc 2008-08-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that causes segmentaion fault when resuming 
download
	using metalink without size tag. Reproducible only using HTTP 
URI.
	* src/HttpResponseCommand.cc
	* src/FtpNegotiationCommand.cc
2008-08-03 11:16:15 +00:00
Tatsuhiro Tsujikawa 374083fb08 2008-08-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.15.1
2008-07-31 15:55:49 +00:00
Tatsuhiro Tsujikawa bca974746a 2008-08-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated Bulgarian and French translations, thanks to all 
translators.
	* po/bg.po
	* po/fr.po
2008-07-31 15:36:46 +00:00
Tatsuhiro Tsujikawa b6538b9c7a 2008-08-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.15.1
	* configure.ac
2008-07-31 15:29:26 +00:00
Tatsuhiro Tsujikawa 6ccefc2dbc 2008-08-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Avoid repeated call of gettimeofday() when calculating speed.
	* src/SpeedCalc.cc
	* src/SpeedCalc.h
2008-07-31 15:27:39 +00:00
Tatsuhiro Tsujikawa dfe3b9bf15 2008-08-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed writable check when socket's send buffer is full in 
BitTorrent
	downloads to lower CPU usage.
	* src/PeerInteractionCommand.cc
2008-07-31 15:25:23 +00:00
Tatsuhiro Tsujikawa d3f05f44b7 2008-07-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed broken gzip inflation.
	Turn off segmented downloading if gzip content is smaller than 
or equal
	to 1MiB and inflate the data on the fly, because HTTP response 
header
	doesn't contain the length of inflated file we can't determin 
where
	the chunk of data should be written.
	On the other hand, if gzip content is larger than 1MB, then turn 
off
	on the fly inflation, because some servers returns 
"content-type: gzip"
	for *.tgz, *.gz files.
	* src/DownloadCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpResponseCommand.h
2008-07-31 12:42:28 +00:00
Tatsuhiro Tsujikawa f7e3651d91 2008-07-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied tizianomueller's patch to fix compile error.
	* test/BitfieldManTest.cc
	* test/BtRequestMessageTest.cc
	* test/DefaultBtContextTest.cc
	* test/DefaultDiskWriterTest.cc
	* test/DefaultPieceStorageTest.cc
	* test/HttpHeaderProcessorTest.cc
	* test/HttpResponseTest.cc
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkParserControllerTest.cc
	* test/MetalinkProcessorTest.cc
	* test/PeerSessionResourceTest.cc
	* test/UtilTest.cc
2008-07-31 12:28:12 +00:00
Tatsuhiro Tsujikawa 0d22ad24f1 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.15.0
2008-07-23 13:15:22 +00:00
Tatsuhiro Tsujikawa 96498070c6 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Reordered src files in POTFILES.in so that usage text appears 
first.
	* po/POTFILES.in
2008-07-23 13:14:17 +00:00
Tatsuhiro Tsujikawa 48abc5abcb 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.15.0
	* configure.ac
2008-07-23 13:08:48 +00:00
Tatsuhiro Tsujikawa 708a14bf17 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added Bulgarian translation.
	Updated Catalan, Spanish, French and Japanese translations.
	Thanks to all translators.
	* po/LINGUAS
	* po/bg.po
	* po/ca.po
	* po/es.po
	* po/fr.po
	* po/ja.po
2008-07-23 13:02:57 +00:00
Tatsuhiro Tsujikawa 32c606e925 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated feature list. Added libz for dependency section.
	Added a description about unit testing using CppUnit.
	* README
2008-07-23 12:40:22 +00:00
Tatsuhiro Tsujikawa bf1f56481d 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added a test for libz. Quoted where it is necessary.
	* build_test.sh
2008-07-22 16:10:31 +00:00
Tatsuhiro Tsujikawa 3e4b748412 2008-07-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added GZip to `Enabled Features' list.
	* src/FeatureConfig.cc
	* src/FeatureConfig.h
	* test/FeatureConfigTest.cc
2008-07-22 16:05:02 +00:00
Tatsuhiro Tsujikawa ec395b6a9c 2008-07-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Now SegmentMan::findSlowerSegmentEntry() picks up the segment 
for which
	the transfer has not yet started.
	Rewritten SegmentMan::registerPeerStat() and 
SegmentMan::getPeerStat().
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* test/SegmentManTest.cc
2008-07-20 07:55:10 +00:00
Tatsuhiro Tsujikawa 52979168f3 Added the changes for SpeedCalc class. 2008-07-20 07:45:26 +00:00
Tatsuhiro Tsujikawa f242a1ec8f 2008-07-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Cache last calculated average download/upload speed.
	PeerStat::getAvgDownloadSpeed(), PeerStat::getAvgUploadSpeed() 
return
	cached value.
	Now SpeedCalc::changeSw() is called from 
SpeedCalc::calculateSpeed()
	* src/PeerStat.h
	* src/SpeedCalc.cc
	* src/SpeedCalc.h
2008-07-20 07:41:33 +00:00
Tatsuhiro Tsujikawa 4947fa39b3 2008-07-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Call parseUrl directly.
	* src/Request.cc (resetUrl)
2008-07-18 15:25:51 +00:00
Tatsuhiro Tsujikawa 5d2651c5ed 2008-07-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Supported absolute/relative path in Location header field.
	* src/AbstractCommand.cc: Call resetUrl() when DlRetryEx is 
caught.
	* src/HttpHeader.cc
	* src/HttpHeader.h
	* src/HttpResponse.cc
	* src/HttpSkipResponseCommand.cc
	* src/Request.cc
	* test/HttpHeaderTest.cc
	* test/HttpResponseTest.cc
	* test/RequestTest.cc
2008-07-18 15:20:52 +00:00
Tatsuhiro Tsujikawa 5122ae031d 2008-07-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Changed help text for --load-cookie option.
	* doc/aria2c.1.txt
	* src/usage_text.h
2008-07-18 15:12:38 +00:00
Tatsuhiro Tsujikawa 750e40a221 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Regenerated test/Makefile.in to remove stale ChangeLog.
	* test/Makefile.in
2008-07-13 12:46:24 +00:00
Tatsuhiro Tsujikawa 0666660f3f 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated po files.
	* po/aria2c.pot
	* po/*.po
	* po/*.gmo
2008-07-13 12:22:03 +00:00
Tatsuhiro Tsujikawa 9074b79635 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.15.0b
	* configure.ac
2008-07-13 12:18:12 +00:00
Tatsuhiro Tsujikawa 05d06e6e0d 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Externalize messages.
	* src/RequestGroupMan.cc
	* src/message.h: Added MSG_SIGNATURE_SAVED, 
MSG_SIGNATURE_NOT_SAVED.
2008-07-13 12:15:56 +00:00
Tatsuhiro Tsujikawa 6fa11fd3cf Fixed typo in ChangeLog 2008-07-13 10:39:24 +00:00
Tatsuhiro Tsujikawa f34a032d2e 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use File::exists() instead of File::isFile() to allow 
non-regular file
	such as block spacial device.
	* src/AbstractDiskWriter.cc
	* src/MultiDiskWriter.cc
2008-07-13 10:38:30 +00:00
Tatsuhiro Tsujikawa b5d93cd0da 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Supplied missing EAI_SYSTEM. Thanks ggknauf for the patch.
	* src/gai_strerror.h
2008-07-13 10:35:19 +00:00
Tatsuhiro Tsujikawa 29f1645004 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error. Thanks gknauf for the patch.
	* src/asctime_r.c
2008-07-13 10:33:59 +00:00
Tatsuhiro Tsujikawa ca51ecfda1 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Included asctime_r.h from a2time.h.
	* src/a2time.h
2008-07-13 10:30:31 +00:00
Tatsuhiro Tsujikawa efe93b87aa 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added a message "aria2 doesn't verify signature" to log message 
when
	signature file is saved.
	* src/RequestGroupMan.cc
2008-07-12 15:30:08 +00:00
Tatsuhiro Tsujikawa aec1e9e7e1 2008-07-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the ability to save signature when download is completed 
if
	signature is available. The filename of signature file is the 
path to
	download file followed by ".sig". If it already exists, then 
signature
	will not be saved.
	* src/RequestGroupMan.cc
	* src/Signature.cc
	* test/SignatureTest.cc
2008-07-12 15:09:03 +00:00
Tatsuhiro Tsujikawa 525bdbc4aa 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated the descriptions for --bt-seed-unverified.
	* doc/aria2c.1
	* doc/aria2c.1.html
	* doc/aria2c.1.txt
2008-07-12 13:55:32 +00:00
Tatsuhiro Tsujikawa 7fc0de4f5b 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Renamed --bt-seed option as --bt-seed-unverified so that it 
makes clear
	that this is not going to verify files using piece hashes.
	* src/HelpItemFactory.cc
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2008-07-12 13:54:36 +00:00
Tatsuhiro Tsujikawa 5472c8033e 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the ability to retrieve signature from Metalink file.
	A retrieved signature is stored in Signature class and it is 
held by
	DownloadContext class. Note that aria2 doesn't verify signature.
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/Makefile.am
	* src/Makefile.in
	* src/Metalink2RequestGroup.cc
	* src/MetalinkEntry.cc
	* src/MetalinkEntry.h
	* src/MetalinkParserController.cc
	* src/MetalinkParserController.h
	* src/MetalinkParserStateMachine.cc
	* src/MetalinkParserStateMachine.h
	* src/Signature.cc
	* src/Signature.h
	* src/SignatureMetalinkParserState.cc
	* src/SignatureMetalinkParserState.h
	* src/VerificationMetalinkParserState.cc
	* src/VerificationMetalinkParserState.h
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkParserControllerTest.cc
	* test/MetalinkProcessorTest.cc
	* test/test.xml
2008-07-12 13:35:35 +00:00
Tatsuhiro Tsujikawa 6796e1c805 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Close DiskAdaptor after renaming file.
	* src/RequestGroup.cc
2008-07-12 07:54:06 +00:00
Tatsuhiro Tsujikawa 8da16ce38c 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Corrected indentation
	* src/DefaultBtProgressInfoFile.cc
2008-07-12 07:52:23 +00:00
Tatsuhiro Tsujikawa c3fbc48d4c 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved the calls of std::ios::exceptions() inside of try-catch 
block
	because if an error occurred in constructor of std::fstream, 
then
	exception is thrown immediately when std::ios::exceptions() is 
called
	which results unhandled exception and aria2c aborts.
	* src/DefaultBtProgressInfoFile.cc
2008-07-12 07:46:33 +00:00
Tatsuhiro Tsujikawa cefbf6407e 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the test for the previous change in DefaultBtContext.cc
	* test/DefaultBtContextTest.cc
2008-07-12 07:41:15 +00:00
Tatsuhiro Tsujikawa 8929168380 2008-07-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that causes infinite loop when the number of 
pieces are
	fewer than allowed fast set size which is 10 by default.
	* src/DefaultBtContext.cc
2008-07-12 07:25:10 +00:00
Tatsuhiro Tsujikawa 10f730cfec 2008-07-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated the descriptions for -j, -s. Added --bt-seed.
	* doc/aria2c.1
	* doc/aria2c.1.html
	* doc/aria2c.1.txt
2008-07-08 14:23:30 +00:00
Tatsuhiro Tsujikawa d8d8a4cff1 2008-07-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added --bt-seed option. If --bt-seed=true is given at the 
command-line,
	aria2 seeds previously downloaded files without validating 
piece hashs.
	* src/HelpItemFactory.cc
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2008-07-08 14:18:51 +00:00
Tatsuhiro Tsujikawa 1059b8b951 2008-07-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated DESCRIPTION of man page.
	* doc/aria2c.1
	* doc/aria2c.1.html
	* doc/aria2c.1.txt
2008-07-08 12:12:21 +00:00
Tatsuhiro Tsujikawa c45e044b22 2008-07-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the compile error on Nexenta OS(GNU/Solaris OS).
	Don't define `struct addrinfo' when __sun is defined.
	* src/getaddrinfo.h
2008-07-06 11:16:23 +00:00
Tatsuhiro Tsujikawa cfa808126b 2008-07-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Introduced a2_struct_stat. It is defined as `struct _stati64' if
	__MINGW32__ is defined, because under MinGW32, _stati64 is used 
and its
	second argument is of type `struct _stati64'. Otherwise it is 
defined as
	`struct stat'.
	* src/AbstractDiskWriter.cc
	* src/File.cc
	* src/File.h
	* src/a2io.h
2008-07-06 04:38:54 +00:00
Tatsuhiro Tsujikawa 46f081f1db 2008-07-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the compile error in hurd-i386
	See the original bug report:
	http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=488602
	* src/a2io.h
2008-07-05 15:37:02 +00:00
Tatsuhiro Tsujikawa dbb8cbc88d 2008-07-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Code cleanup.
	* src/PeerAbstractCommand.cc
	* src/PeerAbstractCommand.h
2008-07-01 13:40:48 +00:00
Tatsuhiro Tsujikawa 888d6ff4dd 2008-07-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed TransferEncoding.
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/HttpResponseCommand.cc
2008-07-01 13:30:38 +00:00
Tatsuhiro Tsujikawa caeb5da8a2 2008-07-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated po files.
	* po/aria2c.pot
	* po/*.po
	* po/*.gmo
2008-07-01 11:41:03 +00:00
Tatsuhiro Tsujikawa 92c66d24ac 2008-07-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Rewritten ChunkedEncoding class as ChunkedDecoder class.
	* src/A2STR.cc
	* src/A2STR.h
	* src/ChunkedDecoder.cc
	* src/ChunkedDecoder.h
	* src/ChunkedEncoding.cc: Removed
	* src/ChunkedEncoding.h: Removed
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/HttpDownloadCommand.cc
	* src/HttpResponse.cc
	* src/HttpResponse.h
	* src/HttpResponseCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/HttpSkipResponseCommand.h
	* src/Makefile.am
	* src/TransferEncoding.h: Removed
	* test/ChunkedDecoderTest.cc
	* test/ChunkedEncodingTest.cc: Removed
	* test/HttpResponseTest.cc
	* test/Makefile.am
2008-07-01 11:38:25 +00:00
Tatsuhiro Tsujikawa 61bb4bc02e 2008-07-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use append instead of insert.
	* src/GZipDecoder.cc
2008-07-01 11:33:06 +00:00
Tatsuhiro Tsujikawa 151624ffcb 2008-07-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated doc
	* src/Decoder.h
2008-07-01 11:32:08 +00:00
Tatsuhiro Tsujikawa a0fb5ff151 2008-06-30 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated usage text for -s option.
	* src/usage_text.h
2008-06-30 12:42:40 +00:00
Tatsuhiro Tsujikawa f36e1b34c2 2008-06-30 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that UTF-8 encoded URL is not URL-encoded 
properly.
	* src/Request.cc
2008-06-29 15:36:38 +00:00
Tatsuhiro Tsujikawa 570837b325 2008-06-30 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Cleaned up configure.ac.
	* configure.ac
2008-06-29 15:35:04 +00:00
Tatsuhiro Tsujikawa dd97f4f0a4 2008-06-29 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use ARIA2_ARG_WITH and ARIA2_ARG_ENABLE instead of AC_ARG_WITH 
and
	AC_ARG_ENABLE.
	* configure.ac
2008-06-29 14:35:32 +00:00
Tatsuhiro Tsujikawa d791807add 2008-06-29 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added gzip, deflate decoding support in HTTP using libz. If 
compiled
	with this feature, aria2 sends "Accept-Encoding: deflate, gzip" 
header
	to a HTTP server. If a server returns "Content-Encoding: gzip" 
or
	"Content-Encoding: deflate" then, aria2 decodes the response 
body on the
	fly and writes decoded data to a local disk.
	* README
	* README.html
	* configure.ac
	* m4/aria2_arg.m4: Added ARIA2_ARG_WITH and ARIA2_ARG_ENABLE, 
they are
	wrapper function for AC_ARG_WITH and AC_ARG_ENABLE respectively.
	* m4/libz.m4
	* src/Decoder.h
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/Exception.h
	* src/GZipDecoder.cc
	* src/GZipDecoder.h
	* src/HttpHeader.cc
	* src/HttpHeader.h
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpResponse.cc
	* src/HttpResponse.h
	* src/HttpResponseCommand.cc
	* src/Makefile.am
	* test/GZipDecoderTest.cc
	* test/HttpRequestTest.cc
	* test/HttpResponseTest.cc
	* test/Makefile.am
	* test/Makefile.in
	* test/gzip_decode_test.gz
2008-06-29 14:29:36 +00:00
Tatsuhiro Tsujikawa 6c4dd16c82 2008-06-29 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Clarified usage of -j option.
	* src/usage_text.h
2008-06-29 13:52:39 +00:00
Tatsuhiro Tsujikawa dc59e6a2bb 2008-06-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Disabled getting size from the response of RETR.
	If SIZE command failed, then disable resuming and segmented 
downloading.
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
2008-06-28 08:54:54 +00:00
Tatsuhiro Tsujikawa c42c8b7f9c 2008-06-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use digits to find first byte of file size, which makes the 
intention
	of the code clearer.
	* src/FtpConnection.cc

	Don't call validateTotalLength() when size is 0.
	* src/FtpNegotiationCommand.cc
2008-06-26 10:54:50 +00:00
Tatsuhiro Tsujikawa 23b6a43585 2008-06-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated po files.
	* po/aria2c.pot
	* po/*.gmo
	* po/*.po
2008-06-25 15:09:56 +00:00
Tatsuhiro Tsujikawa 95c9faef79 2008-06-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Clarified usage text for --split option.
	* src/usage_text.h
2008-06-25 15:07:30 +00:00
Tatsuhiro Tsujikawa 459f2f16a6 2008-06-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.15.0dev. "dev" means "development"
	version, which means I started the development of the next 
release! 
	* src/configure.ac
2008-06-24 14:56:23 +00:00
Tatsuhiro Tsujikawa 68b5ae7d86 2008-06-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
If FTP server returns negative response with REST raw command 
and
	requested range is not 0, throw exception. If requested range is 
0,
	continue download a file from 0 byte.
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
2008-06-24 14:43:27 +00:00
Tatsuhiro Tsujikawa 3e12ebf78f 2008-06-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Supported FTP server which don't recognize SIZE raw command.
	If SIZE raw command is failed, aria2 will try to get file size
	from the response of RETR raw command. If both attempts are 
failed,
	then resuming and segmented downloading are disabled.
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
2008-06-24 14:31:23 +00:00
Tatsuhiro Tsujikawa d0b3dafd34 2008-06-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.14.0+1
2008-06-24 11:30:13 +00:00
Tatsuhiro Tsujikawa cfcf9bfc65 2008-06-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.14.0+1
	* src/configure.ac
2008-06-24 11:17:02 +00:00
Tatsuhiro Tsujikawa 6954c11516 Made the previous ChangeLog entry more precise. 2008-06-24 11:16:03 +00:00
Tatsuhiro Tsujikawa 3389d86fac 2008-06-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the code that refers static member variable using -> 
notation.
	* src/DefaultPeerStorage.cc
2008-06-21 03:03:32 +00:00
Tatsuhiro Tsujikawa 885ca4b795 2008-06-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.14.0
2008-06-20 13:35:34 +00:00
Tatsuhiro Tsujikawa 9dda6c4b69 2008-06-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added build test script
	* build_test.sh
2008-06-20 13:34:53 +00:00
Tatsuhiro Tsujikawa a8596a8e38 2008-06-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated ja.po
	* src/ja.po
2008-06-20 13:31:38 +00:00
Tatsuhiro Tsujikawa 5f8402b40d 2008-06-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.14.0
	* src/configure.ac
2008-06-20 13:11:25 +00:00
Tatsuhiro Tsujikawa f55935bd86 2008-06-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated ja.po and fr.po. Great thanks for french translators and
	Sebastien WILLEMIJNS.
	* po/fr.po
	* po/ja.po
2008-06-20 12:19:29 +00:00
Tatsuhiro Tsujikawa 5c28bb3beb 2008-06-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added configure option to enable/disable epoll support.
	* configure.ac
2008-06-20 12:04:49 +00:00
Tatsuhiro Tsujikawa 2f99cf6b86 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated man page.
	* doc/aria2c.1.txt
	* doc/aria2c.1
	* doc/aria2c.1.html
2008-06-17 14:22:20 +00:00
Tatsuhiro Tsujikawa bb1917f8a9 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added missing default value '5' to the usage of --split option.
	* src/HelpItemFactory.cc
2008-06-17 13:43:38 +00:00
Tatsuhiro Tsujikawa dfe2f99345 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Filled up pieces based on the number of missing blocks, rather 
than
	simplay the number of piece * block length.
	* src/BtRequestFactory.h
	* src/DefaultBtInteractive.cc
	* src/DefaultBtInteractive.h
	* src/DefaultBtRequestFactory.cc
	* src/DefaultBtRequestFactory.h
	* src/Piece.cc
	* src/Piece.h
	* test/BitfieldManTest.cc
	* test/DefaultBtRequestFactoryTest.cc
	* test/MockBtRequestFactory.h
2008-06-17 11:43:29 +00:00
Tatsuhiro Tsujikawa 09502fc3db 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made _epEvents a member variable.
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
2008-06-17 09:29:43 +00:00
Tatsuhiro Tsujikawa d4b29c84fc 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Cancel download if http redirect is bounded more than 20 times.
	* src/AbstractCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/Request.cc
	* src/Request.h
	* test/RequestTest.cc
2008-06-17 09:09:31 +00:00
Tatsuhiro Tsujikawa a79e7a5fd5 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed unhandled exception(removed keyword `new').
	* src/SocketCore.cc (initEPOLL)
2008-06-17 09:06:50 +00:00
Tatsuhiro Tsujikawa f393751ec8 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed visit(const MetaEntry*)
	* src/MetaEntryVisitor.h:
	Added visit(const Data*),visit(const Dictionary*),visit(const 
List*)
	and made them virtual.
	* src/BencodeVisitor.h
	* src/BencodeVisitor.cc
2008-06-17 08:43:44 +00:00
Tatsuhiro Tsujikawa b1c79f5ce5 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated po files.
	* po/aria2c.pot
	* po/*.po
	* po/*.gmo
2008-06-16 16:19:23 +00:00
Tatsuhiro Tsujikawa 067aa16499 2008-06-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved the call setWriteCheckSocket inside the previous clause to 
reduce
	the number of socket to watch out.
	* src/PeerInteractionCommand.cc
2008-06-16 16:06:24 +00:00
Tatsuhiro Tsujikawa 1c2dd30bf7 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
When there is not enough space in disk when writing a chunk of 
data,
	aria2 now prints the message to the console to warn user and 
aborts
	its download. Not all downloads are canceled because some 
downloads
	may use another disk or partition. BUG#1640332
	* src/AbstractDiskWriter.cc
	* src/PeerAbstractCommand.cc
	* src/PeerAbstractCommand.h: Added onFailure() function for 
override.
	* src/PeerInteractionCommand.cc: In onFailure(), call 
RequestGroup::
	setHaltRequested(true) to cancel download.
	* src/PeerInteractionCommand.h
2008-06-16 15:11:41 +00:00
Tatsuhiro Tsujikawa 953d1683a3 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-5.patch, which changes the 
type of
	socket from int to sock_t as sockets are unsigned in Windows.
	For AsyncNameResolver, DownloadEngine, I did additional 
modification
	for the portion of the code changed according to epoll support.
	I defined sock_t in a2netcompat.h to use sock_t without 
including
	SocketCore.h.
	* src/AsyncNameResolver.cc
	* src/AsyncNameResolver.h
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/SocketCore.cc
	* src/SocketCore.h
	* src/a2netcompat.h
2008-06-16 14:01:45 +00:00
Tatsuhiro Tsujikawa 8989ffb6c5 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-4.patch. With this change, 
all
	changes in the patch were applied.
	* test/DHTConnectionImplTest.cc: Fixed unit test error in MinGW.
	* test/DefaultPieceStorageTest.cc: Fixed unit test error in 
MinGW.
	* test/PeerMessageUtilTest.cc: Fixed unit test error in MinGW.
2008-06-16 13:26:25 +00:00
Tatsuhiro Tsujikawa 2c02415f97 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-4.patch. In this change,
	a2io.h and common.h were modified.
	* src/a2io.h: Changed seek/stat/tell calls to use 64 bit 
versions in
	MinGW.
	* src/common.h: Changed off_t to 64 bit in MinGW.
2008-06-16 13:18:26 +00:00
Tatsuhiro Tsujikawa d9c17fd34d 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-4.patch. In this commit,
	only a2netcompat.h is modified.
	* src/a2netcompat.h: Removed unused getaddrinfo related #define
	directives.
2008-06-16 12:09:57 +00:00
Tatsuhiro Tsujikawa 4da1360727 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-4.patch. In this commit,
	only gai_strerror.h is modified.
	* src/gai_strerror.h: Fixed gai_strerror() function to report 
all
	winsock errors in MinGW.
2008-06-16 12:07:21 +00:00
Tatsuhiro Tsujikawa aaa2ecaa6f 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-4.patch. In this commit, 
only the
	follow sources are applied.
	* src/Platform.h: I removed HAVE_WINSOCK2_H directive from 
Platform.h.
	* src/Platform.cc: Moved common setup/teardown code to Platform 
class.
	I moved #endif // HAVE_WINSOCK2_H to the front of #include 
"DlAbortEx.h"
	I included locale.h from Platform.cc.
	* src/main.cc: Moved common setup/teardown code to Platform 
class.
	* test/AllTest.cc: Use Platform class.
	Set locale to C in AllTest.cc to prevent the messages to be 
localized.
2008-06-16 11:59:34 +00:00
Tatsuhiro Tsujikawa 06644332c2 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw-3.patch.
	* test/HttpHeaderTest.cc: Casted to off_t where it should.
	* test/HttpRequestTest.cc: Casted to off_t where it should.
2008-06-16 11:27:52 +00:00
Tatsuhiro Tsujikawa b559054701 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Applied Ross's aria2-0.13.2+1-mingw.patch and
	aria2-0.13.2+1-mingw-2.patch.
	* src/ConsoleStatCalc.cc: Added HAVE_TERMIOUS_H directive for 
the
	systems	which don't have termious.h. I moved the directive 
inside of
	if(isTTY) { ... clause so that line is wiped out without 
termious.h.
	I also removed HAVE_ASCTIME_R clause because asctime_r is 
provided
	anyway.
	* src/asctime_r.h
	* src/asctime_r.c: Added for the systems don't have asctime_r 
function.
	I added 2nd argument to the prototype declaration.
	* src/StringFormat.cc: Get rid of vasprintf.
	* src/getaddrinfo.h: Fixed constants.
	* configure.ac: Added the check for asctime_r function.
	* src/Makefile.am: Added conditional based on HAVE_ASCTIME_R
2008-06-16 11:19:45 +00:00
Tatsuhiro Tsujikawa e32eb83c99 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added writable test for Socket when the sending message is in 
progress.
	Usually the sending message is piece message. Without wriable 
check,
	upload latency is dropped to more than 1sec.
	* src/PeerInteractionCommand.cc
2008-06-15 16:27:12 +00:00
Tatsuhiro Tsujikawa 2f8e184fe5 2008-06-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Create only requested files and files which shares a piece with
	requested file in multi-torrent downloads. Directory structures 
are
	also created in the same rule.
	MultiDiskAdaptor::fileExists() now uses FileEntry instead of
	DiskWriterEntry as in the previous implementation.
	* src/MultiDiskWriter.cc
	* src/MultiFileAllocationIterator.cc
	* src/MultiFileAllocationIterator.h
	* test/MultiFileAllocationIteratorTest.cc
2008-06-15 16:19:06 +00:00
Tatsuhiro Tsujikawa f9988a4ef6 2008-06-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Commented out -lprofiler
	* src/Makefile.am
2008-06-13 15:47:54 +00:00
Tatsuhiro Tsujikawa 95ca33bba3 2008-06-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.14.0b.
	* src/configure.ac
2008-06-10 14:31:08 +00:00
Tatsuhiro Tsujikawa 46627da9a8 2008-06-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Actively establish connection to peers in seeding, when peer 
cache
	is not full and max upload speed limit is not reached.
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
2008-06-10 11:31:35 +00:00
Tatsuhiro Tsujikawa 7a74971caa 2008-06-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Always remove a peer from cache in 
DefaultPeerStorage::returnPeer(),
	to make room more fleshy, recently found peers.
	Peer::_badConditionStartTime is not used anymore. Consider to 
remove
	it.
	* src/DefaultPeerStorage.cc
	* test/DefaultPeerStorageTest.cc
2008-06-10 11:29:10 +00:00
Tatsuhiro Tsujikawa 811649149d 2008-06-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Returns cached data only when the previous receiveHandshake() is 
called
	with peek = true.
	* src/PeerConnection.cc (receiveHandshake)
	* src/PeerConnection.h (receiveHandshake)
2008-06-09 14:55:12 +00:00
Tatsuhiro Tsujikawa de9605815d 2008-06-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Changed default value of -s option from 1 to 5.
	Also max value of -s option is changed from 5 to 16.
	* src/HelpItemFactory.cc
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/usage_text.h
2008-06-09 13:10:24 +00:00
Tatsuhiro Tsujikawa 32edb40d7d 2008-06-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Changed -s options behavior. Now it means the number of 
connections
	made simultaneously in each http/ftp download.
	If 1 URL is specified, the behavior is the same with old 
implementation.
	If -s N is given and more than N URLs are specified, first N 
URLs are
	used and remaining URLs are used for backup. If less than N URLs 
are
	specified, some of URLs are used more than once so that totally 
N
	connections are made simultaneously.
	* src/main.cc
2008-06-09 13:08:17 +00:00
Tatsuhiro Tsujikawa b68fa9ea33 2008-06-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Included missing iosfwd or ostream header.
	* src/RequestGroupMan.cc
	* src/TaggedItem.cc
	* src/TaggedItem.h
	* src/Util.cc
2008-06-09 11:47:19 +00:00
Tatsuhiro Tsujikawa 8de7cff9f4 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/HttpHeaderProcessor.cc: Rewritten using std::string as a 
buffer.
	* src/HttpHeaderProcessor.h: Rewritten using std::string as a 
buffer.
	* src/HttpConnection.cc: Included missing sstream.
2008-06-08 13:12:24 +00:00
Tatsuhiro Tsujikawa cf71523fe2 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added --bt-max-open-files option.
	* src/DefaultPieceStorage.cc
	* src/HelpItemFactory.cc
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2008-06-08 12:34:36 +00:00
Tatsuhiro Tsujikawa b4e5ba2779 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that aria2 aborts when a path to a directory is 
given
	in command-line.
	* src/ProtocolDetector.cc
2008-06-08 12:07:17 +00:00
Tatsuhiro Tsujikawa 2ad5df249e 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Limited the number files opened in each BitTorrent download. The 
default
	value is 100. The option to change this value will be added.
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/MultiFileAllocationIterator.cc
2008-06-08 10:47:00 +00:00
Tatsuhiro Tsujikawa 23294a746e 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that HTTP downloads don't start with old 
libraries.
	* src/HttpHeaderProcessor.cc
2008-06-08 10:32:10 +00:00
Tatsuhiro Tsujikawa 49409fa7ad 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use empty() instead of size() > 0.
	* src/HttpConnection.cc
2008-06-08 10:29:13 +00:00
Tatsuhiro Tsujikawa 725f68b0c6 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Drop connection if the incoming peer ID is the same with 
localhost's
	one. The previous implementation drops connection when incoming 
peer's
	IP address is the same with localhost's one.
	* src/PeerListenCommand.cc
	* src/DefaultBtInteractive.cc
2008-06-08 10:27:57 +00:00
Tatsuhiro Tsujikawa 249194ba8d 2008-06-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Returns cached data without checking whether socket is readable
	if the cache is available.
	* src/PeerConnection.cc (receiveHandshake)
2008-06-08 10:16:38 +00:00
Tatsuhiro Tsujikawa 5cbab84b65 2008-06-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Included stdint.h
	* src/common.h
2008-06-06 14:02:33 +00:00
Tatsuhiro Tsujikawa ad045fea44 2008-06-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed duplicate HAVE_GETTIMEOFDAY
	* src/Makefile.am
	* src/Makefile.in
2008-06-06 14:01:33 +00:00
Tatsuhiro Tsujikawa faed68cc06 2008-06-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use interval as a minInterval when minInterval is not supplied.
	* src/DefaultBtAnnounce.cc
2008-06-05 15:47:23 +00:00
Tatsuhiro Tsujikawa 74d35644fb 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made DEFAULT_ANNOUNCE_INTERVAL 120, so that if first tracker 
request
	attempt is failed, then 2nd attempt get kicked out more quickly.
	And it is now static const member of DefaultBtAnnounce.
	* src/DefaultBtAnnounce.h
2008-06-05 13:21:35 +00:00
Tatsuhiro Tsujikawa d773613e93 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Renamed BtRuntime::lessThanMinPeers() and 
BtRuntime::lessThanEqMinPeers.
	Made MAX_PEERS and MIN_PEERS static const members of BtRuntime.
	* src/ActivePeerConnectionCommand.cc
	* src/BtConstants.h
	* src/BtRuntime.h
	* src/DHTGetPeersCommand.cc
	* src/DefaultBtAnnounce.cc
	* src/DefaultPeerStorage.cc: Calculate maxPeerListSize based on
	BtRuntime::MAX_PEERS.
	* src/DefaultPeerStorage.h
	* src/InitiatorMSEHandshakeCommand.cc
	* src/PeerInitiateConnectionCommand.cc
	* src/PeerInteractionCommand.cc
	* src/PeerReceiveHandshakeCommand.cc
	* src/TrackerWatcherCommand.cc
2008-06-05 13:17:46 +00:00
Tatsuhiro Tsujikawa 4a454e94b7 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Always Connect to _numNewConnection 
	* src/ActivePeerConnectionCommand.cc
2008-06-05 13:02:49 +00:00
Tatsuhiro Tsujikawa ba158dbfc1 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made `begin' unsigned int.
	* src/GrowSegment.h
	* src/Piece.cc
	* src/Piece.h
	* src/PiecedSegment.cc
	* src/PiecedSegment.h
	* src/Segment.h
2008-06-05 12:53:30 +00:00
Tatsuhiro Tsujikawa 7d63daed22 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Calculate piece hash when data is arrived if the data is arrived 
in
	order. This removes additional read operation for hash 
calculation.
	If the data is arrived in out of order, the hash is calucated 
when the
	piece is completed. This is the same behavior as the old 
implementation.
	* src/BtPieceMessage.cc
	* src/DefaultBtProgressInfoFile.cc
	* src/DefaultPieceStorage.cc
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/DownloadEngine.cc
	* src/GrowSegment.cc
	* src/GrowSegment.h
	* src/Piece.cc
	* src/Piece.h
	* src/PiecedSegment.cc
	* src/PiecedSegment.h
	* src/Segment.h
	* test/PieceTest.cc
2008-06-04 16:28:16 +00:00
Tatsuhiro Tsujikawa 20f5fcfc0f 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Try to keep the ordering of outgoing piece message.
	* src/DefaultBtMessageDispatcher.cc
	(DefaultBtMessageDispatcher::sendMessages)
2008-06-04 15:53:47 +00:00
Tatsuhiro Tsujikawa bc5319081b 2008-06-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed busy loop when error/hup epoll events occur.
	* src/AbstractCommand.cc
	* src/PeerAbstractCommand.cc
2008-06-04 15:27:58 +00:00
Tatsuhiro Tsujikawa fc0725002d 2008-06-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added --bt-request-peer-speed-limit option, which was a constant
	SLOW_SPEED_THRESHOLD.
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
	* src/BtConstants.h
	* src/HelpItemFactory.cc
	* src/OptionHandlerFactory.cc
	* src/PeerReceiveHandshakeCommand.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2008-06-04 10:14:48 +00:00
Tatsuhiro Tsujikawa 0c22b9faf0 2008-06-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed repeated call of getTopDirPath(). Instead, call it once 
and
	cache the result.
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	(mkdir, openFile, initAndOpenFile, openExistingFile)
2008-06-03 14:30:52 +00:00
Tatsuhiro Tsujikawa 1f084fc5dc 2008-06-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error on debian etch.
	The libc6 shipped with debian etch doesn't define ULLONG_MAX 
properly
	even if _GNU_SOURCE is defined. So define ULLONG_MAX in case 
when
	it is undefined.
	* src/Util.cc (ULLONG_MAX)
2008-06-01 08:23:32 +00:00
Tatsuhiro Tsujikawa 54ee6c4627 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added epoll support. Use epoll if it is available. If not, use 
select.
	When async dns is enabled in compile time, epoll support is 
enabled
	only when aria2 is built with c-ares. This condition statement 
is
	defined in a2io.h.
	Currently aria2 supports both c-ares and ares, but ares is 
maintained
	for quite a while and debian already has c-ares package, ares 
support
	will be dropped in the future version.
	* configure.ac
	* src/AbstractCommand.cc
	* src/AsyncNameResolver.cc
	* src/AsyncNameResolver.h
	* src/Command.cc
	* src/Command.h
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/PeerAbstractCommand.cc
	* src/SocketCore.cc
	* src/SocketCore.h
	* src/a2io.h
2008-05-31 10:31:07 +00:00
Tatsuhiro Tsujikawa 242267028d 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* test/MetalinkEntryTest.cc: Added missing `defined' keyword to 
#if
	directive.
2008-05-31 10:27:21 +00:00
Tatsuhiro Tsujikawa 31a01bd0a6 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Do not do write operation to /dev/null file.
	* src/LogFactory.cc
	* src/SimpleLogger.cc

	Replaced vasprintf with vsnprintf
	* src/SimpleLogger.cc (SimpleLogger::writeLog)
2008-05-31 05:56:12 +00:00
Tatsuhiro Tsujikawa 405c46277f 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/BtRequestMessage.cc
	(BtRequestMessage::onQueue): Given piece to RequestSlot. This is 
a fix
	for segmentation fault caused by previous commit.
2008-05-31 05:49:28 +00:00
Tatsuhiro Tsujikawa 1d7b5e6f4a 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Reduced the usage of gettimeofday().
	* src/DefaultBtMessageDispatcher.cc
	
(DefaultBtMessageDispatcher::checkRequestSlotAndDoNecessaryThing)
	(class FindStaleRequestSlot, class ProcessStaleRequestSlot)
	* src/RequestSlot.cc
	* src/RequestSlot.h
	(RequestSlot::isTimeout)
	
	Made RequestSlot have a reference to Piece object to avoid find
	Piece repeatedly.
	* src/DefaultBtMessageDispatcher.cc
	(class FindStaleRequestSlot, class ProcessStaleRequestSlot)
	* src/RequestSlot.cc
	* src/RequestSlot.h
	(RequestSlot::getPiece)
	* test/DefaultBtMessageDispatcherTest.cc
2008-05-31 05:46:16 +00:00
Tatsuhiro Tsujikawa f771b42e53 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/TimeA2.cc
	* src/TimeA2.h
	(Time::difference): New function.
	(Time::elapsed): Done optimization.
2008-05-31 05:36:59 +00:00
Tatsuhiro Tsujikawa 78dbc71960 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/HelpItemFactory.cc: Added missing `defined' keyword to #if
	directive.
2008-05-31 05:32:49 +00:00
Tatsuhiro Tsujikawa 82b2e5d069 2008-05-31 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/option_processing.cc: Added missing `defined' keyword to 
#if
	directive.
2008-05-31 05:32:09 +00:00
Tatsuhiro Tsujikawa 4a0c657d8b 2008-05-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.13.2+1
	* src/configure.ac
2008-05-27 15:34:45 +00:00
Tatsuhiro Tsujikawa 20cb017357 2008-05-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Refactored broken outstanding piece handling.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/Piece.cc
	* src/Piece.h
2008-05-27 15:07:39 +00:00
Tatsuhiro Tsujikawa 27102091ad 2008-05-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error on Mac OS X 10.3.9. This error was caused by 
the
	name collision of static variable and predefined macro.
	* src/BtContext.cc
	* src/BtContext.h
	* src/CookieBoxFactory.cc
	* src/CookieBoxFactory.h
	* src/CookieParser.cc
	* src/CookieParser.h
	* src/DefaultBtContext.cc
2008-05-27 14:55:20 +00:00
Tatsuhiro Tsujikawa e40ae31748 2008-05-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/RequestGroup.cc
	(RequestGroup::createInitialCommand): Use empty() instead of 
size().
2008-05-27 14:44:55 +00:00
Tatsuhiro Tsujikawa 5699567aea 2008-05-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.13.2
2008-05-25 01:46:30 +00:00
Tatsuhiro Tsujikawa 8f90b6092c 2008-05-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated fr.po(thanks to Sebastien) and ja.po. ThanksDone make 
update-po
	* po/fr.po
	* po/ja.po
	* po/aria2c.pot
	* po/*.po
	* po/*.gmo
2008-05-25 01:43:22 +00:00
Tatsuhiro Tsujikawa 19ec823a7a 2008-05-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.13.2
	* src/configure.ac
2008-05-25 01:19:00 +00:00
Tatsuhiro Tsujikawa eacb3fa04f 2008-05-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Refactord.
	* src/RequestGroupMan.cc
	(removeStoppedGroup)
	(fillRequestGroupFromReserver)
2008-05-24 12:00:51 +00:00
Tatsuhiro Tsujikawa 5d8c2c0890 2008-05-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error on Ubuntu.
	* src/BtPieceMessage.cc
	* src/MessageDigestHelper.cc
	* src/Util.cc
2008-05-24 11:56:24 +00:00
Tatsuhiro Tsujikawa 8a653fe38b 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error when configured with --disable-bittorrent
	* test/DownloadHandlerFactoryTest.cc
2008-05-21 08:43:46 +00:00
Tatsuhiro Tsujikawa bd19e00919 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Done make update-po
	* po/aria2c.pot
	* po/*.po
	* po/*.gmo
2008-05-21 07:59:14 +00:00
Tatsuhiro Tsujikawa 9cf401f45d 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.13.2rc.
	* src/configure.ac
2008-05-21 07:57:27 +00:00
Tatsuhiro Tsujikawa 9ca3763190 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made option name bold. Updated SYNOPSIS to make it more 
readable.
	* doc/aria2c.1.txt
	* doc/aria2c.1
	* doc/aria2c.1.html
	* src/version_usage.cc
2008-05-21 07:47:32 +00:00
Tatsuhiro Tsujikawa 65c7d8f26c 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Refactored. Use std::string instead of size and char*.
	* Data.cc
	* Data.h
	* test/Data.cc
2008-05-21 07:18:31 +00:00
Tatsuhiro Tsujikawa ad6ffd7f33 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added trimSelf(). Rewritten trim() to use trimSelf().
	* Util.cc
	* Util.h
2008-05-21 07:16:54 +00:00
Tatsuhiro Tsujikawa 90846bdafe 2008-05-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/ChunkChecksum.h (getChecksum): Return const reference.
2008-05-20 15:22:53 +00:00
Tatsuhiro Tsujikawa bf58b49d87 2008-05-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error when configured with --disable-metalink.
	Also moved test/DownloadHandlerFactoryTest.cc to SRC in 
Makefile.am.
	* test/FeatureConfigTest.cc
	* test/DownloadHandlerFactoryTest.cc
2008-05-20 14:27:58 +00:00
Tatsuhiro Tsujikawa a70a747c23 2008-05-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error when configured with --without-gnutls
	--without-openssl
	* src/main.cc
	* test/DefaultBtProgressInfoFileTest.cc
	* test/SegmentManTest.cc
2008-05-20 00:42:34 +00:00
Tatsuhiro Tsujikawa bbd2a995db 2008-05-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error with OpenSSL.
	* src/IteratableChunkChecksumValidator.cc
	* src/LibsslDHKeyExchange.h
	* src/MessageDigestHelper.cc
2008-05-19 15:08:18 +00:00
Tatsuhiro Tsujikawa 13be071b6a 2008-05-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Revert the default value of --max-concurrent-downloads to 5.
	Revert the default value of --metalink-servers to 5.
	Man pages was also updated.
	* src/option_processing.cc
	* doc/aria2c.1.txt
	* doc/aria2c.1.html
	* doc/aria2c.1
2008-05-19 12:36:20 +00:00
Tatsuhiro Tsujikawa ff6b5ecc9c 2008-05-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Returns const reference:
	DownloadContext::getPieceHash, DownloadContext::getName,
	DownloadContext::getPieceHashAlgo, DownloadContext::getDir,
	BtContext::getInfoHashAsString,
	* src/BtContext.h
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/DownloadContext.h
	* src/SingleFileDownloadContext.h
	* test/MockBtContext.h
2008-05-19 11:28:17 +00:00
Tatsuhiro Tsujikawa 960d4acbce 2008-05-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/RequestGroup.h (getDir): Removed.
2008-05-19 11:20:51 +00:00
Tatsuhiro Tsujikawa f4ac2c2185 2008-05-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Returns const reference. The internal urlencode function was 
optimized
	a little bit.
	* src/Request.cc
	* src/Request.h
	* src/HttpRequest.cc
	* src/HttpRequest.h
2008-05-19 11:19:18 +00:00
Tatsuhiro Tsujikawa 0189bbc6bc 2008-05-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Defined option name and possible values as std::string to reduce
	temporary string object creation in runtime.
	* src/HelpItemFactory.cc
	* src/LogFactory.cc
	* src/Option.cc
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
2008-05-19 10:25:38 +00:00
Tatsuhiro Tsujikawa e59f4f2fe3 2008-05-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Return const reference.
	* src/DownloadHandlerConstants.cc
	* src/DownloadHandlerConstants.h
	(getMetalinkExtensions)
	(getMetalinkContentTypes)
	(getBtExtensions)
	(getBtContentTypes)
2008-05-18 11:53:22 +00:00
Tatsuhiro Tsujikawa 7235f2657f 2008-05-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/HttpHeader.cc (get): Rewritten.
2008-05-18 10:40:23 +00:00
Tatsuhiro Tsujikawa e1c1c010b8 2008-05-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Make HttpHeader::getFirst(...) return const reference.
	* src/HttpHeader.cc
	* src/HttpHeader.h
2008-05-18 10:33:06 +00:00
Tatsuhiro Tsujikawa a0f8685de3 2008-05-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use Option::getAsBool(...) instead of Option::get(...) and 
compare
	it with V_TRUE.
	* src/DefaultPieceStorage.cc
	* src/DownloadCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/HttpRequest.cc
	* src/InitiateConnectionCommand.cc
	* src/RequestGroup.cc
2008-05-18 10:25:41 +00:00
Tatsuhiro Tsujikawa 0a95211100 2008-05-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made Option::get(...) return const reference of std::string.
	* src/Option.cc
	* src/Option.h
2008-05-18 10:14:53 +00:00
Tatsuhiro Tsujikawa e4b0446c61 2008-05-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Replaced std:copy with insert.
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultPieceStorage.cc
	* src/DownloadEngineFactory.cc
	* src/RequestGroup.cc
2008-05-18 10:07:42 +00:00
Tatsuhiro Tsujikawa 111edd2c56 2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Included SocketCore.h to fix compiler warning.
	* src/InitiateConnectionCommand.cc
2008-05-17 13:26:25 +00:00
Tatsuhiro Tsujikawa ef02915d82 2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Put piece selection strategy algorithm to RarestPieceSelector 
class,
	Added a switch to choose whether randomized selection so that 
unit
	tests emit same results in, possibly, win32.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/RarestPieceSelector.cc
	* src/RarestPieceSelector.h
	* test/DefaultPieceStorageTest.cc
	* test/RarestPieceSelectorTest.cc
2008-05-17 12:51:54 +00:00
Tatsuhiro Tsujikawa 77d892d7f2 2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Don't pool connection if HTTP proxy is enabled.
	* src/FtpFinishDownloadCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/HttpSkipResponseCommand.cc
2008-05-17 09:26:47 +00:00
Tatsuhiro Tsujikawa 7c6ed037e3 2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Don't add closed socket to 
DownloadEngine::addSocketForReadCheck()
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/ActivePeerConnectionCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/InitiateConnectionCommandFactory.cc
	* src/PeerAbstractCommand.cc
	* src/PeerAbstractCommand.h
	* src/PeerInitiateConnectionCommand.cc
	* src/TrackerWatcherCommand.cc
2008-05-17 09:15:14 +00:00
Tatsuhiro Tsujikawa b5f1ca6f66 2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Sort RequestSlot in ascending order and manipulate them using
	lower_bound.
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultBtMessageDispatcher.h
	(getMessageQueue): Added const qualifier.
	(getRequestSlots): Added const qualifier.
	(sendMessages): Use empty() instead of size().
	(doCancelSendingPieceAction): Use HandleEvent object.
	(doAbortOutstandingRequestAction): Rewritten.
	(doChokedAction): Rewritten.
	(checkRequestSlotAndDoNecessaryThing): Rewritten.
	(isOutstandingRequest): Rewritten.
	(getOutstandingRequest): Rewritten.
	(removeOutstandingRequest): Rewritten.
	(addOutstandingRequest): Rewritten.
	* src/RequestSlot.cc
	* src/RequestSlot.h
	(operator=): Rewritten.
	(operator!=): New function.
	(operator<): New function.
2008-05-17 07:31:32 +00:00