Commit Graph

1766 Commits (9f5ad4dc001a21ac7ccc7225f2a74f218e85eea5)

Author SHA1 Message Date
Tatsuhiro Tsujikawa 63735eab8e 2009-07-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Refactored BitfieldMan::getSparseMissingUnusedIndex()
	* src/BitfieldMan.cc
2009-07-02 16:44:31 +00:00
Tatsuhiro Tsujikawa ffaeb271f9 2009-07-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten PeerStats handling in SegmentMan.cc.  Now we have 2 list
	of PeerStat in SegmentMan.  peerStats is used for calculating
	download speed. Therefore all active PeerStats should be in
	there. Another one is _fastestPeerStats and it only contains
	fastest PeerStat for each hostname/protocol pair. They are used
	for updating ServerStat.
	* src/DownloadCommand.cc
	* src/Request.h
	* src/RequestGroupMan.cc
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* test/SegmentManTest.cc
2009-07-02 16:26:04 +00:00
Tatsuhiro Tsujikawa 01fdb2aaeb 2009-07-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Try all available addresses returned by DNS until it gets
	connected in HTTP(S)/FTP download
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/AbstractProxyRequestCommand.cc
	* src/AbstractProxyRequestCommand.h
	* src/DNSCache.h
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpInitiateConnectionCommand.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpInitiateConnectionCommand.h
	* src/HttpRequestCommand.cc
	* src/HttpRequestCommand.h
	* src/InitiateConnectionCommand.cc
	* src/InitiateConnectionCommand.h
	* test/DNSCacheTest.cc
	* test/Makefile.am
	* test/SimpleDNSCacheTest.cc
2009-07-02 15:18:13 +00:00
Tatsuhiro Tsujikawa 8796993c71 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc
	* src/download_helper.cc
2009-07-01 14:54:42 +00:00
Tatsuhiro Tsujikawa cf294a4162 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Refactored fieldMan ctor.
	* src/BitfieldMan.cc
	* src/BitfieldMan.h
2009-07-01 14:52:02 +00:00
Tatsuhiro Tsujikawa ebf8ff90d5 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't print "No files to download." message if -S is given.
	* src/main.cc
2009-07-01 14:40:42 +00:00
Tatsuhiro Tsujikawa 47309df04d 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set referer and method to newly created Request object.
	* src/CreateRequestCommand.cc
	* src/FileEntry.cc
	* src/FileEntry.h
2009-07-01 14:11:04 +00:00
Tatsuhiro Tsujikawa 1812142da5 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed ctor of AbstractCommand which doesn't take FileEntry.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/CreateRequestCommand.cc
2009-07-01 13:48:10 +00:00
Tatsuhiro Tsujikawa e6a7c952d1 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Get proxy download working
	* src/AbstractProxyRequestCommand.cc
	* src/AbstractProxyRequestCommand.h
	* src/AbstractProxyResponseCommand.cc
	* src/AbstractProxyResponseCommand.h
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpTunnelRequestCommand.cc
	* src/FtpTunnelRequestCommand.h
	* src/FtpTunnelResponseCommand.cc
	* src/FtpTunnelResponseCommand.h
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpProxyRequestCommand.cc
	* src/HttpProxyRequestCommand.h
	* src/HttpProxyResponseCommand.cc
	* src/HttpProxyResponseCommand.h
2009-07-01 13:45:28 +00:00
Tatsuhiro Tsujikawa c3934add2e 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use SegmentMan::getSegment(cuid) for single file download.
	* src/AbstractCommand.cc
2009-07-01 13:26:58 +00:00
Tatsuhiro Tsujikawa 5562636c99 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed bufSize calculation
	* src/DownloadCommand.cc
2009-07-01 13:23:22 +00:00
Tatsuhiro Tsujikawa 30b65f79e7 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't append "/" if base URI ends with "/".
	* src/bittorrent_helper.cc
	* test/url-list-multiFile.torrent
2009-06-30 17:20:34 +00:00
Tatsuhiro Tsujikawa cf19dce855 2009-07-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
HTTP pipelining is now working. Fixed Segmention fault in
	BitfieldMan's copy ctor.	
	* src/AbstractCommand.cc
	* src/BitfieldMan.cc
	* src/BitfieldMan.h
	* src/DownloadCommand.cc
	* src/HttpDownloadCommand.cc
	* src/HttpRequest.cc
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* test/BitfieldManTest.cc
	* test/SegmentManTest.cc
2009-06-30 17:03:57 +00:00
Tatsuhiro Tsujikawa cece2bc896 2009-06-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed ServerHost. Same functionality is implemented using
	FileEntry's in-flight Request objects.
	* src/AbstractCommand.cc
	* src/BtDependency.cc
	* src/CreateRequestCommand.cc
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/Makefile.am
	* src/Metalink2RequestGroup.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/ServerHost.cc: Removed
	* src/ServerHost.h: Removed
	* test/BtDependencyTest.cc
	* test/FileEntryTest.cc
	* test/RequestGroupTest.cc
2009-06-29 16:43:41 +00:00
Tatsuhiro Tsujikawa c4d79d7160 2009-06-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten PeerStat handling. In the previous implementation,
	faster command tries to find slower command. In this new
	implementation, slower command tries to find faster command.
	PeerStat is now created in each HTTP/FTP request to get download
	rate correctly. If the download range is small, the download rate
	tends to small and this will occur at the later stage of download.
	* src/AbstractCommand.cc
	* src/DownloadCommand.cc
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/Request.cc
	* src/Request.h
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* test/SegmentManTest.cc
2009-06-29 15:18:21 +00:00
Tatsuhiro Tsujikawa e82f870fdc 2009-06-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed _uris from RequestGroup. All functions that refer to _uris
	were moved to FileEntry. Exit status code are now defined in
	DownloadResultCode.h.
	* src/AbstractCommand.cc
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
	* src/AutoSaveCommand.cc
	* src/BtPostDownloadHandler.cc
	* src/CheckIntegrityDispatcherCommand.cc
	* src/CookieStorage.cc
	* src/DHTAutoSaveCommand.cc
	* src/DHTBucketRefreshCommand.cc
	* src/DHTEntryPointNameResolveCommand.cc
	* src/DHTInteractionCommand.cc
	* src/DHTPeerAnnounceCommand.cc
	* src/DHTTokenUpdateCommand.cc
	* src/DlAbortEx.h
	* src/DlRetryEx.h
	* src/DownloadCommand.cc
	* src/DownloadContext.h
	* src/DownloadFailureException.h
	* src/DownloadResult.h
	* src/DownloadResultCode.h
	* src/FeedbackURISelector.cc
	* src/FeedbackURISelector.h
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/FtpNegotiationCommand.cc
	* src/HttpListenCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpServerResponseCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/InOrderURISelector.cc
	* src/InOrderURISelector.h
	* src/Makefile.am
	* src/Makefile.in
	* src/Metalink2RequestGroup.cc
	* src/MultiUrlRequestInfo.cc
	* src/MultiUrlRequestInfo.h
	* src/OptionHandlerFactory.cc
	* src/PeerListenCommand.cc
	* src/RecoverableException.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/TimedHaltCommand.cc
	* src/TrackerWatcherCommand.cc
	* src/URIResult.cc
	* src/URIResult.h
	* src/URISelector.h
	* src/XmlRpcMethodImpl.cc
	* src/bittorrent_helper.cc
	* src/bittorrent_helper.h
	* src/download_helper.cc
	* src/main.cc
	* src/option_processing.cc
	* test/BtDependencyTest.cc
	* test/BtPostDownloadHandlerTest.cc
	* test/CookieStorageTest.cc
	* test/DefaultBtMessageDispatcherTest.cc
	* test/DownloadHandlerFactoryTest.cc
	* test/DownloadHelperTest.cc
	* test/FeedbackURISelectorTest.cc
	* test/FileEntryTest.cc
	* test/InOrderURISelectorTest.cc
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkPostDownloadHandlerTest.cc
	* test/RequestGroupManTest.cc
	* test/RequestGroupTest.cc
	* test/XmlRpcMethodTest.cc
2009-06-29 08:42:58 +00:00
Tatsuhiro Tsujikawa 8122399ca7 2009-06-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed MockBtContext.h
	* test/Makefile.am
2009-06-28 10:50:45 +00:00
Tatsuhiro Tsujikawa d2afc0ca8e 2009-06-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed _currentRequest from StreamCheckIntegrityEntry and
	StreamFileAllocationEntry.
	* src/AbstractCommand.cc
	* src/HttpResponseCommand.cc
	* src/RequestGroup.cc
	* src/StreamCheckIntegrityEntry.cc
	* src/StreamCheckIntegrityEntry.h
	* src/StreamFileAllocationEntry.cc
	* src/StreamFileAllocationEntry.h
2009-06-28 10:48:26 +00:00
Tatsuhiro Tsujikawa 5699b67526 2009-06-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten DownloadContext and removed SingleFileDownloadContext
	and BtContext and its derived classes. BitTorrent specific
	attributes are now set by DownloadContext::setAttribute() with key
	bittorrent::BITTORRENT.
	* src/AbstractBtMessage.cc
	* src/AbstractBtMessage.h
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/AbstractProxyRequestCommand.cc
	* src/AbstractProxyResponseCommand.cc
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
	* src/AnnounceList.cc
	* src/BtCheckIntegrityEntry.cc
	* src/BtConstants.h
	* src/BtContext.h: Removed
	* src/BtDependency.cc
	* src/BtExtendedMessage.cc
	* src/BtPieceMessage.cc
	* src/BtPieceMessage.h
	* src/BtPostDownloadHandler.cc
	* src/BtRegistry.cc
	* src/BtRegistry.h
	* src/BtSetup.cc
	* src/CheckIntegrityCommand.cc
	* src/CheckIntegrityEntry.cc
	* src/ChecksumCheckIntegrityEntry.cc
	* src/ConsoleStatCalc.cc
	* src/ContentTypeRequestGroupCriteria.cc
	* src/DHTGetPeersCommand.cc
	* src/DHTGetPeersCommand.h
	* src/DHTPeerLookupTask.cc
	* src/DHTPeerLookupTask.h
	* src/DHTTaskFactory.h
	* src/DHTTaskFactoryImpl.cc
	* src/DHTTaskFactoryImpl.h
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtAnnounce.h
	* src/DefaultBtContext.cc: Removed
	* src/DefaultBtContext.h: Removed
	* src/DefaultBtInteractive.cc
	* src/DefaultBtInteractive.h
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultBtMessageDispatcher.h
	* src/DefaultBtMessageFactory.cc
	* src/DefaultBtMessageFactory.h
	* src/DefaultBtMessageReceiver.cc
	* src/DefaultBtMessageReceiver.h
	* src/DefaultBtProgressInfoFile.cc
	* src/DefaultBtRequestFactory.cc
	* src/DefaultBtRequestFactory.h
	* src/DefaultExtensionMessageFactory.cc
	* src/DefaultExtensionMessageFactory.h
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/DefaultPieceStorage.cc
	* src/DefaultSegmentManFactory.cc
	* src/DiskAdaptor.cc
	* src/DiskAdaptor.h
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/DownloadEngine.cc
	* src/DownloadEngineFactory.cc
	* src/DownloadHandler.cc
	* src/DownloadResult.h
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FileAllocationEntry.cc
	* src/FileEntry.h
	* src/FillRequestGroupCommand.cc
	* src/FtpDownloadCommand.cc
	* src/FtpFinishDownloadCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/FtpTunnelRequestCommand.cc
	* src/FtpTunnelResponseCommand.cc
	* src/HandshakeExtensionMessage.cc
	* src/HandshakeExtensionMessage.h
	* src/HaveEraseCommand.cc
	* src/HttpDownloadCommand.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpProxyRequestCommand.cc
	* src/HttpProxyResponseCommand.cc
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpRequestCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpServerBodyCommand.cc
	* src/HttpServerCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/InitiateConnectionCommandFactory.cc
	* src/InitiatorMSEHandshakeCommand.cc
	* src/InitiatorMSEHandshakeCommand.h
	* src/IteratableChecksumValidator.cc
	* src/IteratableChecksumValidator.h
	* src/IteratableChunkChecksumValidator.cc
	* src/MSEHandshake.cc
	* src/MSEHandshake.h
	* src/Makefile.am
	* src/Makefile.in
	* src/Metalink2RequestGroup.cc
	* src/MetalinkPostDownloadHandler.cc
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/MultiFileAllocationIterator.cc
	* src/MultiUrlRequestInfo.cc
	* src/PeerChokeCommand.cc
	* src/PeerChokeCommand.h
	* src/PeerInitiateConnectionCommand.cc
	* src/PeerInitiateConnectionCommand.h
	* src/PeerInteractionCommand.cc
	* src/PeerInteractionCommand.h
	* src/PeerReceiveHandshakeCommand.cc
	* src/PieceHashCheckIntegrityEntry.cc
	* src/RealtimeCommand.cc
	* src/ReceiverMSEHandshakeCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupEntry.cc
	* src/RequestGroupMan.cc
	* src/SeedCheckCommand.cc
	* src/SeedCheckCommand.h
	* src/SegmentMan.cc
	* src/ShareRatioSeedCriteria.h
	* src/SingleFileDownloadContext.cc: Removed
	* src/SingleFileDownloadContext.h: Removed
	* src/SleepCommand.cc
	* src/StreamCheckIntegrityEntry.cc
	* src/TrackerWatcherCommand.cc
	* src/TrackerWatcherCommand.h
	* src/UnknownLengthPieceStorage.cc
	* src/Util.cc
	* src/Util.h
	* src/XmlRpcMethodImpl.cc
	* src/bittorrent_helper.cc
	* src/bittorrent_helper.h
	* src/download_helper.cc
	* src/main.cc
	* src/option_processing.cc
	* test/BitfieldManTest.cc
	* test/BittorrentHelperTest.cc
	* test/BtCancelMessageTest.cc
	* test/BtChokeMessageTest.cc
	* test/BtDependencyTest.cc
	* test/BtPieceMessageTest.cc
	* test/BtPostDownloadHandlerTest.cc
	* test/BtRegistryTest.cc
	* test/BtRejectMessageTest.cc
	* test/BtRequestMessageTest.cc
	* test/DHTPeerAnnounceStorageTest.cc
	* test/DefaultBtAnnounceTest.cc
	* test/DefaultBtContextTest.cc: Removed
	* test/DefaultBtMessageDispatcherTest.cc
	* test/DefaultBtMessageFactoryTest.cc
	* test/DefaultBtProgressInfoFileTest.cc
	* test/DefaultBtRequestFactoryTest.cc
	* test/DefaultExtensionMessageFactoryTest.cc
	* test/DefaultPeerStorageTest.cc
	* test/DefaultPieceStorageTest.cc
	* test/DirectDiskAdaptorTest.cc
	* test/DownloadContextTest.cc
	* test/DownloadHandlerFactoryTest.cc
	* test/DownloadHelperTest.cc
	* test/HandshakeExtensionMessageTest.cc
	* test/HttpRequestTest.cc
	* test/HttpResponseTest.cc
	* test/IteratableChecksumValidatorTest.cc
	* test/IteratableChunkChecksumValidatorTest.cc
	* test/MSEHandshakeTest.cc
	* test/Makefile.am
	* test/Makefile.in
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkPostDownloadHandlerTest.cc
	* test/MockBtContext.h: Removed
	* test/MockDHTTaskFactory.h
	* test/MockDownloadContext.h: Removed
	* test/MockPieceStorage.h
	* test/MultiDiskAdaptorTest.cc
	* test/MultiFileAllocationIteratorTest.cc
	* test/RequestGroupManTest.cc
	* test/RequestGroupTest.cc
	* test/SegmentManTest.cc
	* test/ShareRatioSeedCriteriaTest.cc
	* test/SingleFileDownloadContextTest.cc: Removed
	* test/UtilTest.cc
	* test/XmlRpcMethodTest.cc
2009-06-28 10:37:15 +00:00
Tatsuhiro Tsujikawa 90471d6805 2009-06-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added experimental support of WEB-Seeding for multi-file torrent.
	Due to fundamental changes in file handling in HTTP/FTP code, many
	functions are not working: PeerStat, ServerHost, proxy..etc
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/BitfieldMan.cc
	* src/BitfieldMan.h
	* src/CreateRequestCommand.cc
	* src/CreateRequestCommand.h
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/FtpDownloadCommand.cc
	* src/FtpDownloadCommand.h
	* src/FtpFinishDownloadCommand.cc
	* src/FtpFinishDownloadCommand.h
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpInitiateConnectionCommand.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* src/FtpTunnelResponseCommand.cc
	* src/HttpDownloadCommand.cc
	* src/HttpDownloadCommand.h
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpInitiateConnectionCommand.h
	* src/HttpProxyResponseCommand.cc
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpRequestCommand.cc
	* src/HttpRequestCommand.h
	* src/HttpResponseCommand.cc
	* src/HttpResponseCommand.h
	* src/HttpSkipResponseCommand.cc
	* src/HttpSkipResponseCommand.h
	* src/InitiateConnectionCommand.cc
	* src/InitiateConnectionCommand.h
	* src/InitiateConnectionCommandFactory.cc
	* src/InitiateConnectionCommandFactory.h
	* src/Makefile.am
	* src/PieceStorage.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* src/SingleFileDownloadContext.h
	* src/StreamFileAllocationEntry.cc
	* src/TrackerWatcherCommand.cc
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* src/array_fun.h
	* src/bitfield.h
	* src/download_helper.cc
	* test/DownloadContextTest.cc
	* test/Makefile.am
	* test/MockDownloadContext.h
2009-06-23 15:35:45 +00:00
Tatsuhiro Tsujikawa 6b2ab3ffc0 2009-06-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tellWaiting XML-RPC method.
	* src/SingleFileDownloadContext.cc
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* test/XmlRpcMethodTest.cc
2009-06-23 15:14:24 +00:00
Tatsuhiro Tsujikawa 100ed86b5c 2009-06-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated CookieStorageTest
	* test/CookieStorageTest.cc
2009-06-23 15:12:08 +00:00
Tatsuhiro Tsujikawa 4cfe156aa7 2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In TLSContext::addClientKeyFile() and addTrustedCACertFile(),
	handle excepion inside these functions.
	* src/LibgnutlsTLSContext.cc
	* src/LibgnutlsTLSContext.h
	* src/LibsslTLSContext.cc
	* src/LibsslTLSContext.h
	* src/MultiUrlRequestInfo.cc
2009-06-21 10:41:50 +00:00
Tatsuhiro Tsujikawa a60ba71f1e 2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added comment
	* src/RequestGroup.cc
2009-06-21 10:36:59 +00:00
Tatsuhiro Tsujikawa f3c79ebf05 2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In CookieStorage::load() and saveNsFormat(), handle exception
	inside the functions. When saving Cookies, first write temporary
	file and after successful writes, then renames it to final
	destination.
	* src/CookieStorage.cc
	* src/CookieStorage.h
	* src/MultiUrlRequestInfo.cc
2009-06-21 10:26:14 +00:00
Tatsuhiro Tsujikawa 8d4f29d302 2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
The default value of --dir option is the absolute path to the
	current directory. If getcwd() is failed, then it is ".", which is
	the same value with old implementation. This change is necessary
	because after daemon() call, the current working directory is
	changed to /.
	* src/File.cc
	* src/File.h
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
2009-06-20 16:47:54 +00:00
Tatsuhiro Tsujikawa 3636345a25 2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call daemon() with arguments(0,0), which means daemon() changes
	current working directory to / and redirects stdin, stdout and
	stderr to /dev/null.
	* src/option_processing.cc
2009-06-20 16:17:00 +00:00
Tatsuhiro Tsujikawa 3177b0aa1c 2009-06-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Small performance optimizations.
	* src/RequestGroupMan.cc
2009-06-20 16:09:04 +00:00
Tatsuhiro Tsujikawa 0b9c5a9165 2009-06-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added _xmlRpc member variable to RequestGroupMan to reduce the
	number of call Option::getAsBool(PREF_ENABLE_XML_RPC)	
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
2009-06-20 03:19:23 +00:00
Tatsuhiro Tsujikawa 572f10af72 2009-06-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call setStatus(STATUS_ONESHOT_REALTIME) from constructor.  Call
	setNoWiat(true) if newly created command calls
	setStatus(STATUS_ONESHOT_REALTIME) from its constructor.
	* src/HttpListenCommand.cc
	* src/HttpServerBodyCommand.cc
	* src/HttpServerCommand.cc
	* src/HttpServerResponseCommand.cc
	* src/InitiateConnectionCommand.cc
	* src/RequestGroup.cc
	* src/StreamFileAllocationEntry.cc
2009-06-20 02:33:42 +00:00
Tatsuhiro Tsujikawa 34b3d88795 2009-06-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed include vector
	* src/BtRegistry.h
2009-06-17 12:04:03 +00:00
Tatsuhiro Tsujikawa eaf5217de7 2009-06-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten BtRegistry
	* src/BtRegistry.cc
	* src/BtRegistry.h
	* src/BtSetup.cc
	* src/ConsoleStatCalc.cc
	* src/PeerInteractionCommand.cc
	* src/PeerReceiveHandshakeCommand.cc
	* src/ReceiverMSEHandshakeCommand.cc
	* src/RequestGroup.cc
	* src/XmlRpcMethodImpl.cc
	* test/BtRegistryTest.cc
2009-06-17 11:51:44 +00:00
Tatsuhiro Tsujikawa 5e835ae885 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Used array_ptr for savedInfoHash, savedBitfield and pieceBitfield.
	* src/DefaultBtProgressInfoFile.cc
2009-06-14 12:19:52 +00:00
Tatsuhiro Tsujikawa a28f19befb 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Throw an exception if position is less than 0.
	* src/XmlRpcMethodImpl.cc
	* test/XmlRpcMethodTest.cc
2009-06-14 11:29:46 +00:00
Tatsuhiro Tsujikawa daf0c5ee73 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use writeFilePath() in ConsoleStatCalc.cc
	* src/ConsoleStatCalc.cc
2009-06-14 11:22:51 +00:00
Tatsuhiro Tsujikawa 85db426de5 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Receive the return value as const reference from
	DownloadContext::getFileEntries().
	* src/DefaultPieceStorage.cc
	* src/RequestGroupMan.cc
	* src/XmlRpcMethodImpl.cc
2009-06-14 11:17:20 +00:00
Tatsuhiro Tsujikawa 39472a64eb 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
DownloadContext now has _fileEntries so that
	DownloadContext::getFileEntries() can returns its const reference.
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/SingleFileDownloadContext.cc
	* src/SingleFileDownloadContext.h
2009-06-14 11:12:20 +00:00
Tatsuhiro Tsujikawa 9120e79ff1 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved getFirstRequestedFileEntry(), countRequestedFileEntry() and
	writeFilePath() function template from RequestGroupMan.cc to
	FileEntry.h
	* src/FileEntry.h
	* src/RequestGroupMan.cc
2009-06-14 09:45:44 +00:00
Tatsuhiro Tsujikawa 1c070ed66e 2009-06-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented 'position' parameter is starting from 0 in man page.
	* doc/aria2c.1.txt
2009-06-14 07:22:16 +00:00
Tatsuhiro Tsujikawa d98e740dac 2009-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc.
	* src/MSEHandshake.cc
2009-06-12 14:40:21 +00:00
Tatsuhiro Tsujikawa 3300aec6ff 2009-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed _acceptFeatures and its accessor functions from
	RequestGroup since they are not used practically.
	* src/HttpRequestCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
2009-06-12 14:20:37 +00:00
Tatsuhiro Tsujikawa 5fe5c37897 2009-06-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed member _maxTries from RequestGroup class to avoid
	duplicate option value. Those classes who refer this variable
	should use option value of PREF_MAX_TRIES directly.
	* src/AbstractCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/TrackerWatcherCommand.cc
2009-06-12 14:12:54 +00:00
Tatsuhiro Tsujikawa 06311b0baa 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.4.1
2009-06-07 13:03:01 +00:00
Tatsuhiro Tsujikawa 8adb77dc29 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compiler warnings on netbsd
	* src/DHTConnectionImpl.cc
	* src/PeerListenCommand.cc
	* src/PeerSessionResource.cc
	* src/SegmentMan.cc
2009-06-07 12:36:27 +00:00
Tatsuhiro Tsujikawa 1ef8ea3263 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Ukrainian translation. Thanks to all translators.
	* po/uk.po
2009-06-07 08:23:30 +00:00
Tatsuhiro Tsujikawa 1f35ea536a 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.4.1.
	* configure.ac
2009-06-07 07:52:40 +00:00
Tatsuhiro Tsujikawa b345f76607 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added unit tests for strjoin, strconcat and strappend.
	* test/a2functionalTest.cc
2009-06-07 07:50:50 +00:00
Tatsuhiro Tsujikawa 9be97eebb5 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten strconcat and strappend using operator+ instead of
	append().
	* src/a2functional.h
2009-06-07 07:49:39 +00:00
Tatsuhiro Tsujikawa c42cea4bcd 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Compile bencode.cc and BencodeTest.cc only if BitTorrent support
	is enabled.
	* src/Makefile.am
	* test/Makefile.am
2009-06-07 05:36:44 +00:00
Tatsuhiro Tsujikawa b922020985 2009-06-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added countSeeder() function which counts seeder in the given
	iterator range. Use it in ConsoleStatCalc and XmlRpcMethodImpl.
	* src/ConsoleStatCalc.cc
	* src/Peer.h
	* src/XmlRpcMethodImpl.cc
	* test/PeerTest.cc
2009-06-07 05:34:10 +00:00
Tatsuhiro Tsujikawa 4dc9217bb6 2009-06-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented missing seeder in getPeers xml-rpc method.
	Documented uploadLength and numSeeders.
	* doc/aria2c.1.txt
2009-06-06 14:42:24 +00:00
Tatsuhiro Tsujikawa 9d910c47c2 2009-06-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added uploadLength and numSeeders to the response of tellStatus
	xml-rpc method. Assert that PeerStorage instance is not null
	instead of checking if statement. It should be non-null in this
	context.
	* src/XmlRpcMethodImpl.cc
2009-06-06 14:40:32 +00:00
Tatsuhiro Tsujikawa f36ef2d26d 2009-06-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use htmlEscape instead of xmlEscape. Removed static function xmlEscape.
	* src/XmlRpcResponse.cc
2009-06-06 13:39:36 +00:00
Tatsuhiro Tsujikawa c7275bd978 2009-06-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid intermediate object during string concatenation.
	* src/HttpRequest.cc
2009-06-06 13:34:48 +00:00
Tatsuhiro Tsujikawa a8c278d026 2009-06-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added strjoin function template. Use it in pathJoin()
	* src/Util.h
	* src/a2functional.h
2009-06-06 12:48:05 +00:00
Tatsuhiro Tsujikawa 3bb2e3b07e 2009-06-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid intermediate object during string concatenation.  Replaced
	post-increment unary operator with pre-increment one in for loop.	
	* src/AdaptiveURISelector.cc
	* src/AnnounceList.cc
	* src/AuthConfig.h
	* src/BtBitfieldMessage.cc
	* src/BtExtendedMessage.cc
	* src/BtHandshakeMessage.cc
	* src/BtPieceMessage.cc
	* src/BtPortMessage.cc
	* src/Cookie.cc
	* src/DHTAnnouncePeerMessage.cc
	* src/DHTAutoSaveCommand.cc
	* src/DHTGetPeersReplyMessage.cc
	* src/DHTNode.cc
	* src/DHTQueryMessage.cc
	* src/DHTResponseMessage.cc
	* src/DHTUnknownMessage.cc
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtContext.cc
	* src/DefaultBtInteractive.cc
	* src/DefaultBtProgressInfoFile.cc
	* src/DefaultPeerStorage.cc
	* src/DownloadEngine.cc
	* src/FeatureConfig.cc
	* src/File.cc
	* src/FtpConnection.cc
	* src/FtpNegotiationCommand.cc
	* src/HandshakeExtensionMessage.cc
	* src/HttpConnection.cc
	* src/HttpRequest.cc
	* src/HttpResponseCommand.cc
	* src/HttpServer.cc
	* src/IndexBtMessage.cc
	* src/Metalink2RequestGroup.cc
	* src/OptionHandlerImpl.h
	* src/PStringBuildVisitor.cc
	* src/Peer.cc
	* src/PeerListenCommand.cc
	* src/Piece.cc
	* src/RangeBtMessage.cc
	* src/Request.cc
	* src/Request.h
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
	* src/ServerStat.cc
	* src/ServerStatMan.cc
	* src/UTPexExtensionMessage.cc
	* src/Util.cc
	* src/a2functional.h
	* src/download_helper.cc
	* src/messageDigest.cc
2009-06-06 12:33:07 +00:00
Tatsuhiro Tsujikawa 997f96d864 2009-06-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Unchoke a peer randomly at first and second choke round in seed
	state.
	* src/BtSeederStateChoke.cc
2009-06-04 12:07:27 +00:00
Ross Smith II c2f20e1e3a Added (sock_t) to quiet compiler warnings in MinGW
* src/SocketCore.cc
	* src/SocketCore.h
2009-06-02 03:27:52 +00:00
Tatsuhiro Tsujikawa 3455fca9ca 2009-06-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing #ifdef ENABLE_ASYNC_DNS guard.
	* src/EpollEventPoll.h
2009-06-01 15:49:29 +00:00
Ross Smith II e69889803a Added fork() emulation using CreateProcess() in MinGW 2009-06-01 02:30:28 +00:00
Tatsuhiro Tsujikawa 740a5aa51b 2009-06-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.4.0
2009-05-31 15:21:53 +00:00
Tatsuhiro Tsujikawa ff75691da6 2009-06-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added utf8.torrent to EXTRA_DIST
	* test/Makefile.am
2009-05-31 15:15:35 +00:00
Tatsuhiro Tsujikawa 5e23c3b6a2 2009-05-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed docs of aria2.addMetalink xml-rpc method.
	* doc/aria2c.1.txt
2009-05-31 14:10:55 +00:00
Tatsuhiro Tsujikawa c50acf0cc4 2009-05-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added Slovak translation. Updated Ukrainian and Brazilian
	Portuguese translation. Thanks to all translators.
	* po/sk.po
	* po/uk.po
	* po/pt_BR.po
	* po/LINGUAS
2009-05-31 13:16:57 +00:00
Tatsuhiro Tsujikawa 0373ae325e 2009-05-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added test case for XmlRpcProcessor to fail to parse malformed
	document.
	* test/XmlRpcRequestProcessorTest.cc
2009-05-31 08:02:42 +00:00
Tatsuhiro Tsujikawa a4346f0620 2009-05-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed *.gmo files in po because they are generated on 'make
	dist'
	* po/*.gmo
2009-05-30 14:56:46 +00:00
Tatsuhiro Tsujikawa abdb6249bf 2009-05-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented max-concurrent-downloads of changeGlobalOption method
	in man page.
	* doc/aria2c.1.txt
2009-05-30 14:29:54 +00:00
Tatsuhiro Tsujikawa a9189ee7d9 2009-05-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added max-concurrent-downloads option to changeGlobalOption
	xml-rpc method.  Rewritten loop conditional in
	RequestGroupMan::fillRequestGroupFromReserver().
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethodImpl.cc
2009-05-30 14:28:18 +00:00
Tatsuhiro Tsujikawa f7b774223f Fixed date 2009-05-30 14:12:42 +00:00
Tatsuhiro Tsujikawa c1549cbc65 2009-05-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented position parameter in man page.
	* doc/aria2c.1.txt
2009-05-30 14:00:12 +00:00
Tatsuhiro Tsujikawa 960bab86c7 2009-05-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added 'position' parameter to addUri, addTorrent and addMetalink
	xml-rpc method.
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/XmlRpcMethodImpl.cc
	* test/XmlRpcMethodTest.cc
2009-05-30 13:55:14 +00:00
Tatsuhiro Tsujikawa 918c6bf38d 2009-05-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed Peer.cc from compile source list when --disable-bittorrent
	is specified.  Added #ifdef ENABLE_BITTORRENT guard to methods that
	takes Peer.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/Makefile.am
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
2009-05-29 12:32:17 +00:00
Tatsuhiro Tsujikawa 8b6da1ee36 2009-05-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Implemented getter methods in header files to give them more
	chance of optimization.
	Return const reference for SharadHandle if possible.
	* src/AbstractAuthResolver.cc
	* src/AbstractAuthResolver.h
	* src/AbstractBtMessage.cc
	* src/AbstractBtMessage.h
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/AsyncNameResolver.cc
	* src/AsyncNameResolver.h
	* src/BNode.cc
	* src/BNode.h
	* src/BitfieldMan.cc
	* src/BitfieldMan.h
	* src/BtAbortOutstandingRequestEvent.h
	* src/BtExtendedMessage.cc
	* src/BtExtendedMessage.h
	* src/BtSeederStateChoke.cc
	* src/BtSeederStateChoke.h
	* src/Cookie.cc
	* src/Cookie.h
	* src/DHTBucket.cc
	* src/DHTBucket.h
	* src/DHTConnectionImpl.cc
	* src/DHTConnectionImpl.h
	* src/DHTFindNodeReplyMessage.cc
	* src/DHTFindNodeReplyMessage.h
	* src/DHTGetPeersReplyMessage.cc
	* src/DHTGetPeersReplyMessage.h
	* src/DHTInteractionCommand.cc
	* src/DHTMessage.cc
	* src/DHTMessage.h
	* src/DHTMessageDispatcherImpl.cc
	* src/DHTMessageEntry.cc
	* src/DHTMessageReceiver.cc
	* src/DHTMessageReceiver.h
	* src/DHTMessageTrackerEntry.cc
	* src/DHTMessageTrackerEntry.h
	* src/DHTPeerAnnounceEntry.cc
	* src/DHTPeerAnnounceEntry.h
	* src/DHTPeerLookupTask.cc
	* src/DHTPeerLookupTask.h
	* src/DHTRoutingTableDeserializer.cc
	* src/DHTRoutingTableDeserializer.h
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtAnnounce.h
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultBtMessageDispatcher.h
	* src/DefaultBtRequestFactory.cc
	* src/DefaultBtRequestFactory.h
	* src/DiskAdaptor.cc
	* src/DiskAdaptor.h
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/EpollEventPoll.cc
	* src/EpollEventPoll.h
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/HttpConnection.cc
	* src/HttpConnection.h
	* src/HttpHeader.cc
	* src/HttpHeader.h
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpResponse.cc
	* src/HttpResponse.h
	* src/LibsslTLSContext.cc
	* src/LibsslTLSContext.h
	* src/MSEHandshake.cc
	* src/MSEHandshake.h
	* src/MetalinkEntry.cc
	* src/MetalinkEntry.h
	* src/MetalinkParserController.cc
	* src/MetalinkParserController.h
	* src/MetalinkParserStateMachine.cc
	* src/MetalinkParserStateMachine.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/NetrcAuthResolver.cc
	* src/NetrcAuthResolver.h
	* src/Peer.cc
	* src/Peer.h
	* src/PeerSessionResource.cc
	* src/PeerSessionResource.h
	* src/Piece.cc
	* src/Piece.h
	* src/PieceStatMan.cc
	* src/PieceStatMan.h
	* src/Request.cc
	* src/Request.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/RequestSlot.cc
	* src/RequestSlot.h
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* src/SelectEventPoll.cc
	* src/SelectEventPoll.h
	* src/ServerStat.cc
	* src/ServerStat.h
	* src/Signature.cc
	* src/Signature.h
	* src/URIResult.cc
	* src/URIResult.h
	* src/UTPexExtensionMessage.cc
	* src/UTPexExtensionMessage.h
2009-05-29 12:12:22 +00:00
Tatsuhiro Tsujikawa 30f362319e 2009-05-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error without BitTorrent and Metalink support.
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* test/XmlRpcMethodTest.cc
2009-05-27 17:27:05 +00:00
Tatsuhiro Tsujikawa 7a8e2fdadb 2009-05-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten the help message for --allow-overwrite option.
	* doc/aria2c.1.txt
	* src/usage_text.h
2009-05-27 12:58:33 +00:00
Tatsuhiro Tsujikawa afe1d551e8 2009-05-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed typo
	* doc/aria2c.1.txt
	* src/usage_text.h
2009-05-27 12:51:12 +00:00
Tatsuhiro Tsujikawa 861ada066f 2009-05-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated README for 1.4.0 release. Use new table syntax of
	asciidoc.
	* README
2009-05-26 15:53:39 +00:00
Tatsuhiro Tsujikawa 1c1ec3bd6d 2009-05-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --xml-rpc-max-request-size option in man page.
	* doc/aria2c.1.txt
2009-05-26 15:45:34 +00:00
Tatsuhiro Tsujikawa fcf183cc84 2009-05-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved C_* constants from BtContext to DefaultBtContext.
	* src/BtContext.cc: Removed.
	* src/BtContext.h
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/Makefile.am
2009-05-26 15:36:57 +00:00
Tatsuhiro Tsujikawa 41df4b5e28 2009-05-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use name.utf-8 and path.utf-8 key in higher priority than name and
	path key respectively when persing .torrent file.
	* src/BtContext.cc
	* src/BtContext.h
	* src/DefaultBtContext.cc
	* test/DefaultBtContextTest.cc
	* test/utf8.torrent
2009-05-26 15:28:48 +00:00
Tatsuhiro Tsujikawa 544732b124 2009-05-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --xml-rpc-max-request-size option to limit the size of
	XML-RPC request.
2009-05-26 14:38:11 +00:00
Tatsuhiro Tsujikawa 4c1ed46094 2009-05-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented XML-RPC API in man page.
	* doc/aria2c.1.txt
2009-05-26 14:16:01 +00:00
Tatsuhiro Tsujikawa a933438401 2009-05-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed g++-4.4 compiler warning: dereferencing type-punned pointer
	will break strict-aliasing rules
	* src/PeerConnection.cc
	* test/DHTRoutingTableSerializerTest.cc
2009-05-23 15:48:20 +00:00
Tatsuhiro Tsujikawa 50060985c3 2009-05-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed PKG_CONFIG variable in sqlite3.m4, which conflicts the
	variable in pkg.m4. Use PKG_CHECK_MODULES instead of hand-crafted
	scripts. Renamed SQLITE3_CPPFLAGS as SQLITE3_CFLAGS since
	PKG_CHECK_MODULES macro uses latter name.	
	* m4/sqlite3.m4
	* src/Makefile.am
	* test/Makefile.am
2009-05-23 06:20:29 +00:00
Tatsuhiro Tsujikawa b60f5d7338 2009-05-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed typo
	* configure.ac
2009-05-23 05:22:05 +00:00
Tatsuhiro Tsujikawa aafbe6f74b 2009-05-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Since upcoming libgnutls 2.8 doesn't have libgnutls-config, Check
	presence of libgnutls using pkg-config first. If it fails, fall
	back to old macro libgnutls.m4.
	* configure.ac
2009-05-23 05:20:21 +00:00
Tatsuhiro Tsujikawa d99ca899ef 2009-05-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use s itself instead of !s.bad()
	* src/CookieStorage.cc
2009-05-22 16:09:37 +00:00
Tatsuhiro Tsujikawa 7567ff8188 2009-05-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --on-download-* option and --save-cookies option in man
	page.	
	* doc/aria2c.1.txt
2009-05-22 15:03:45 +00:00
Tatsuhiro Tsujikawa e1775040b6 2009-05-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set possible values for --load-cookie option to "/path/to/file".
	* src/OptionHandlerFactory.cc
2009-05-22 15:02:16 +00:00
Tatsuhiro Tsujikawa 383b12d7f1 2009-05-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --save-cookies option.
	* src/Cookie.cc
	* src/Cookie.h
	* src/CookieStorage.cc
	* src/CookieStorage.h
	* src/MultiUrlRequestInfo.cc
	* src/OptionHandlerFactory.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/CookieStorageTest.cc
	* test/CookieTest.cc
2009-05-22 14:51:57 +00:00
Tatsuhiro Tsujikawa 5bad3a1c91 2009-05-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed tellAll XML-RPC command because its reponse tends to be
	big if stopped/waiting downloads pile up.
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-22 13:48:52 +00:00
Tatsuhiro Tsujikawa 48a7e5868f 2009-05-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added the ability to execute command when download starts and
	stops. You can also specify command for particular cases such as
	complete/error download.  Added --on-download-start,
	--on-download-stop, --on-download-complete and --on-download-error
	option.
	* src/OptionHandlerFactory.cc
	* src/RequestGroupMan.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2009-05-22 13:43:07 +00:00
Tatsuhiro Tsujikawa fbb2613379 2009-05-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added unit tests.
	* test/XmlRpcMethodTest.cc
2009-05-22 12:28:32 +00:00
Tatsuhiro Tsujikawa 4259514395 2009-05-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made exception message more verbose.
	* src/bencode.cc
2009-05-22 12:27:17 +00:00
Tatsuhiro Tsujikawa a839b42747 2009-05-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Abbreviated KiB/s to KiBs and its precision decreased to 1 to save
	space in console readout. Also they are now shown in MiB/s if
	speed > 1024KiB/s.
	* src/ConsoleStatCalc.cc
2009-05-19 12:08:13 +00:00
Tatsuhiro Tsujikawa 579457eae0 2009-05-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added SEED to console output, which represents the number of
	seeders currently the client is connecting to.	
	* src/ConsoleStatCalc.cc
	* src/ConsoleStatCalc.h
	* src/DownloadEngine.cc
	* src/NullStatCalc.h
	* src/StatCalc.h
2009-05-19 11:29:23 +00:00
Tatsuhiro Tsujikawa 20e215047c 2009-05-18 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added source filename(__FILE__) and line number(__LINE__) to
	exception message.	
	* src/AbstractCommand.cc
	* src/AbstractDiskWriter.cc
	* src/AbstractProxyResponseCommand.cc
	* src/BDE.h
	* src/BtAllowedFastMessage.cc
	* src/BtHandshakeMessageValidator.h
	* src/BtHaveAllMessage.cc
	* src/BtHaveNoneMessage.cc
	* src/BtPieceMessage.cc
	* src/BtRejectMessage.cc
	* src/ChunkedDecoder.cc
	* src/CookieStorage.cc
	* src/DHTAnnouncePeerMessage.cc
	* src/DHTEntryPointNameResolveCommand.cc
	* src/DHTMessageFactoryImpl.cc
	* src/DHTMessageTracker.cc
	* src/DHTRoutingTableDeserializer.cc
	* src/DHTRoutingTableSerializer.cc
	* src/DHTSetup.cc
	* src/DHTTokenTracker.cc
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtContext.cc
	* src/DefaultBtInteractive.cc
	* src/DefaultBtMessageFactory.cc
	* src/DefaultBtProgressInfoFile.cc
	* src/DefaultExtensionMessageFactory.cc
	* src/DlAbortEx.h
	* src/DlRetryEx.h
	* src/DownloadCommand.cc
	* src/DownloadEngineFactory.cc
	* src/DownloadFailureException.h
	* src/Exception.cc
	* src/Exception.h
	* src/ExpatMetalinkProcessor.cc
	* src/ExpatXmlRpcRequestProcessor.cc
	* src/FallocFileAllocationIterator.cc
	* src/FatalException.h
	* src/FtpConnection.cc
	* src/FtpFinishDownloadCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/GZipDecoder.cc
	* src/HandshakeExtensionMessage.cc
	* src/HttpConnection.cc
	* src/HttpHeaderProcessor.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpResponse.cc
	* src/HttpResponseCommand.cc
	* src/HttpServer.cc
	* src/HttpSkipResponseCommand.cc
	* src/InitiateConnectionCommandFactory.cc
	* src/IteratableChunkChecksumValidator.cc
	* src/LibgcryptARC4Context.h
	* src/LibgcryptARC4Decryptor.h
	* src/LibgcryptARC4Encryptor.h
	* src/LibgcryptDHKeyExchange.h
	* src/LibgnutlsTLSContext.cc
	* src/LibsslARC4Context.h
	* src/LibsslARC4Decryptor.h
	* src/LibsslARC4Encryptor.h
	* src/LibsslDHKeyExchange.h
	* src/LibsslTLSContext.cc
	* src/MSEHandshake.cc
	* src/MessageDigestHelper.cc
	* src/MetalinkHelper.cc
	* src/MultiDiskAdaptor.cc
	* src/NameMatchOptionHandler.h
	* src/NameResolver.cc
	* src/Netrc.cc
	* src/NsCookieParser.cc
	* src/OptionHandlerException.cc
	* src/OptionHandlerException.h
	* src/OptionHandlerImpl.h
	* src/OptionParser.cc
	* src/ParameterizedStringParser.cc
	* src/PeerAbstractCommand.cc
	* src/PeerConnection.cc
	* src/PeerMessageUtil.cc
	* src/PeerReceiveHandshakeCommand.cc
	* src/Platform.cc
	* src/ReceiverMSEHandshakeCommand.cc
	* src/RecoverableException.h
	* src/RequestGroup.cc
	* src/SimpleLogger.cc
	* src/SocketCore.cc
	* src/Sqlite3MozCookieParser.cc
	* src/UTPexExtensionMessage.cc
	* src/Util.cc
	* src/XML2SAXMetalinkProcessor.cc
	* src/Xml2XmlRpcRequestProcessor.cc
	* src/XmlRpcMethodImpl.cc
	* src/bencode.cc
	* src/download_helper.cc
	* src/messageDigest.h
	* test/ExceptionTest.cc
	* test/TestUtil.cc
2009-05-18 15:07:15 +00:00
Tatsuhiro Tsujikawa 770d84cec4 2009-05-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.4.0
	* configure.ac
2009-05-16 07:58:43 +00:00
Tatsuhiro Tsujikawa 2b6e87b42e 2009-05-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added 2files.metalink to EXTRA_DIST
	* test/Makefile.am
2009-05-16 07:45:04 +00:00
Tatsuhiro Tsujikawa bead3edccb 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing 2files.metalink
	* test/2files.metalink
2009-05-15 10:15:52 +00:00
Tatsuhiro Tsujikawa 86f27fed57 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Show "[MEMORY]" prefix before filename in download summary if it
	is downloaded into memory.
	* src/DownloadResult.h
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
2009-05-15 09:15:07 +00:00
Tatsuhiro Tsujikawa ee75995198 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Defined MSG_CANNOT_PARSE_XML_RPC_REQUEST
	* src/ExpatXmlRpcRequestProcessor.cc
	* src/Xml2XmlRpcRequestProcessor.cc
	* src/message.h
2009-05-15 08:56:34 +00:00
Tatsuhiro Tsujikawa 389866621f 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Defined const BDEs to avoid duplicate instantiation.
	Defined MSG_GID_NOT_PROVIDED.
	* src/XmlRpcMethodImpl.cc
	* src/message.h
2009-05-15 08:53:05 +00:00
Tatsuhiro Tsujikawa 409aa477ee 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/Xml2XmlRpcRequestProcessor.cc
	* src/Xml2XmlRpcRequestProcessor.h
2009-05-15 08:39:28 +00:00
Tatsuhiro Tsujikawa 0666b1ea98 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Defined ENABLE_XML_RPC
	* configure.ac
	* configure
	* config.h.in
2009-05-15 08:24:56 +00:00
Tatsuhiro Tsujikawa 549864bc1c 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added ExpatXmlRpcRequestProcessor
	* src/ExpatXmlRpcRequestProcessor.cc
	* src/ExpatXmlRpcRequestProcessor.h
	* src/Makefile.am
2009-05-15 08:21:55 +00:00
Tatsuhiro Tsujikawa 672b70f6c9 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tests for addTorrent and addMetalink command.
	* test/TestUtil.cc
	* test/TestUtil.h
	* test/XmlRpcMethodTest.cc
2009-05-15 05:20:11 +00:00
Tatsuhiro Tsujikawa 59c1a80888 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Corrected the description of --file-allocation option.
	* doc/aria2c.1.txt
2009-05-14 16:06:34 +00:00
Tatsuhiro Tsujikawa ddb5d4a8cb 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tellAll command.
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-14 16:00:55 +00:00
Tatsuhiro Tsujikawa 1312c535be 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use gatherProgress() in TellActiveXmlRpcMethod::process().
	* src/XmlRpcMethodImpl.cc
2009-05-14 15:49:46 +00:00
Tatsuhiro Tsujikawa 3e2ccbf359 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added changeGlobalOption command. Currently,
	max-overall-download-limit and max-overall-upload-limit option are
	available.
	* src/RequestGroupMan.h
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethod.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* test/XmlRpcMethodTest.cc
2009-05-14 15:44:59 +00:00
Tatsuhiro Tsujikawa 850458f7b1 2009-05-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added changeOption command. Currently, max-download-limit,
	max-upload-limit option are available in this command.
	* src/RequestGroup.h
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethod.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* test/XmlRpcMethodTest.cc
2009-05-14 15:23:50 +00:00
Tatsuhiro Tsujikawa 692c4eaf3e 2009-05-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added purgeDownloadResult command.
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-14 13:48:26 +00:00
Tatsuhiro Tsujikawa e332ef3e1c 2009-05-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Refactored.
	* src/XmlRpcMethod.cc
2009-05-14 13:29:17 +00:00
Tatsuhiro Tsujikawa 92b3f57ac9 2009-05-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added XmlRpcResponse class. XmlRpcMethod::execute() now returns
	XmlRpcResponse.
	* src/HttpServerBodyCommand.cc
	* src/Makefile.am
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethod.h
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcResponse.cc
	* src/XmlRpcResponse.h
	* test/XmlRpcMethodTest.cc
2009-05-14 12:59:52 +00:00
Tatsuhiro Tsujikawa dd6d098ccb 2009-05-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In XML-RPC option struct, header and index-out option can take
	array as value.
	* src/XmlRpcMethod.cc
2009-05-13 15:23:01 +00:00
Tatsuhiro Tsujikawa cdd65e8cca 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused option member from PeerConnection.
	* src/InitiatorMSEHandshakeCommand.cc
	* src/PeerConnection.cc
	* src/PeerConnection.h
	* src/PeerInteractionCommand.cc
	* src/PeerReceiveHandshakeCommand.cc
	* src/ReceiverMSEHandshakeCommand.cc
2009-05-13 14:50:48 +00:00
Tatsuhiro Tsujikawa d9fe4fb845 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added "seeder" key to getPeers response.
	* src/XmlRpcMethodImpl.cc
2009-05-13 14:49:15 +00:00
Tatsuhiro Tsujikawa cbaf0619d9 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added addMetalink XML-RPC command.
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* src/download_helper.cc
	* src/download_helper.h
2009-05-13 14:13:36 +00:00
Tatsuhiro Tsujikawa eb0cb42c72 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that POU peers are never choked in seeding.
	* src/BtSeederStateChoke.cc
	* src/BtSeederStateChoke.h
2009-05-13 14:10:20 +00:00
Tatsuhiro Tsujikawa 9b9295ce4a 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added web-seeding URI handling in addTorrent command.
	* src/XmlRpcMethodImpl.cc
2009-05-13 12:42:34 +00:00
Tatsuhiro Tsujikawa 98666d33b9 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added "length" key to getFiles response.
	* src/XmlRpcMethodImpl.cc
2009-05-13 12:31:43 +00:00
Tatsuhiro Tsujikawa bab4b09a36 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved --no-netrc option from ftp option section to http/ftp option
	section.
	* doc/aria2c.1.txt
	* src/OptionHandlerFactory.cc
2009-05-13 12:30:38 +00:00
Tatsuhiro Tsujikawa 842dd43aac 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed garbage "\" character before '
	* doc/aria2c.1.txt
2009-05-12 16:42:40 +00:00
Tatsuhiro Tsujikawa 5586d88266 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed garbage "\" character before http.
	* doc/aria2c.1.txt
2009-05-12 16:38:44 +00:00
Tatsuhiro Tsujikawa dc5cd20036 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented additional options that can be specified in -i list.
	Documented --enable-xml-rpc, --xml-rpc-listen-port, --xml-rpc-user
	and --xml-rpc-passwd. Removed --enable-http-server and
	--http-server-listen-port.
	* doc/aria2c.1.txt
2009-05-12 16:30:27 +00:00
Tatsuhiro Tsujikawa 5983e3e9d9 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added "downloadSpeed" and uploadSpeed" key in getPeers response.	
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/PeerStorage.h
	* src/XmlRpcMethodImpl.cc
	* test/MockPeerStorage.h
2009-05-12 16:16:13 +00:00
Tatsuhiro Tsujikawa 64945c1f03 2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Put a call to Socket::isReadable() in try block.
	* src/HttpServerBodyCommand.cc
	* src/HttpServerCommand.cc
2009-05-12 16:08:23 +00:00
Tatsuhiro Tsujikawa 55c5cccf09 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed segmentation fault error. SocketBuffer::sendResponse() may throw
	exception , so it is now in try block.
	* src/HttpServerResponseCommand.cc
2009-05-12 16:06:14 +00:00
Tatsuhiro Tsujikawa 626fa15c5e 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added "amChoking" and "peerChoking" key in getPeers response.
	* src/XmlRpcMethodImpl.cc
2009-05-12 15:29:51 +00:00
Tatsuhiro Tsujikawa c43e26c2a9 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added test case for zero-length filter.
	* test/BitfieldManTest.cc
2009-05-12 15:19:27 +00:00
Tatsuhiro Tsujikawa d3ae337ace 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
getFiles command now returns file data for finished/stopped
	downloads.	
	* src/XmlRpcMethodImpl.cc
2009-05-12 15:17:18 +00:00
Tatsuhiro Tsujikawa 8bbbc9c33b 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
DownloadResult now has the list of FileEntry.  The download
	summary displays the path of first selected file and the number of
	remaining files for multi-file torrent.
	* src/DownloadResult.h
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
	* test/RequestGroupTest.cc
2009-05-12 15:16:11 +00:00
Tatsuhiro Tsujikawa d38b21acb0 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed segmentation fault error when no file is selected in
	multi-file torrent.	
	* src/BitfieldMan.cc
2009-05-12 15:12:45 +00:00
Tatsuhiro Tsujikawa bf65ccc802 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Escaped <,>,& character in XML-RPC response.
	* src/XmlRpcMethod.cc
2009-05-12 14:06:11 +00:00
Tatsuhiro Tsujikawa 62165b9ed1 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Throw DlAbortEx instead of FatalException during parsing options
	because we don't want for aria2 to quit when bad option is passed
	via XML-RPC.
	* src/OptionHandlerException.cc
	* src/OptionHandlerException.h
	* src/OptionHandlerImpl.h
	* src/OptionParser.cc
	* src/OptionParser.h
	* src/PStringSegment.cc
	* src/ParameterizedStringParser.cc
	* src/download_helper.cc
	* test/ParameterizedStringParserTest.cc
2009-05-12 13:51:12 +00:00
Tatsuhiro Tsujikawa 2758562eb0 2009-05-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Selecting files are now done in
	DefaultBtContext::setFileFileter().
	PieceStorage::setFileFilter(), DiskAdaptor::addDownloadEntry()
	functions are removed because they are no longer used.  Creating
	filter in BitfieldMan is done in new funtion
	PieceStorage::setupFileFilter()	
	* src/BtContext.cc
	* src/BtContext.h
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/DiskAdaptor.cc
	* src/DiskAdaptor.h
	* src/PieceStorage.h
	* src/RequestGroup.cc
	* src/UnknownLengthPieceStorage.h
	* src/XmlRpcMethodImpl.cc
	* test/DefaultBtContextTest.cc
	* test/MockBtContext.h
	* test/MockPieceStorage.h
2009-05-12 13:31:04 +00:00
Tatsuhiro Tsujikawa c3129fd4a4 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error on Mac OS X
	* src/HttpServer.cc
	* src/XmlRpcMethod.h
	* src/XmlRpcMethodImpl.cc
2009-05-10 16:37:34 +00:00
Tatsuhiro Tsujikawa 52312c7a31 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use std::binary_search instead of std::find
	* src/DefaultPieceStorage.cc
2009-05-10 15:09:49 +00:00
Tatsuhiro Tsujikawa 1d2cfd93d7 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unnecessary BDE() call; leave them to implicit conversion.
	* src/XmlRpcMethodImpl.cc
2009-05-10 15:03:39 +00:00
Tatsuhiro Tsujikawa 7c24aa3b97 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Return connections and gid in string
	* src/XmlRpcMethodImpl.cc
2009-05-10 14:59:21 +00:00
Tatsuhiro Tsujikawa 81b19074f8 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed addURI as addUri
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h	
	* test/XmlRpcMethodTest.cc
2009-05-10 14:51:20 +00:00
Tatsuhiro Tsujikawa dac269f658 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed addTorrentFile as addTorrent
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-10 14:44:45 +00:00
Tatsuhiro Tsujikawa bb56bd5bd1 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
The information for files, URIs, peers are removed from the
	reponse of TellaActive, TellStatus command because they tend to be
	large. Instead they can be retrieved by the dedicated commands:
	getFiles, getUris and getPeers respectively.
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-10 14:35:51 +00:00
Tatsuhiro Tsujikawa efe294320e 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed --max-overall-upload-limit and
	--max-overall-download-limit option from listRequestOptions.
	* src/download_helper.cc
2009-05-09 17:10:34 +00:00
Tatsuhiro Tsujikawa 02de210544 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Log incoming host in HttpListenCommand.
	* src/HttpListenCommand.cc
2009-05-09 15:55:52 +00:00
Tatsuhiro Tsujikawa 7aefbb7338 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added BASIC authentication for XML-RPC. Added --xml-rpc-user and
	--xml-rpc-passwd option.
	* src/HttpServer.cc
	* src/HttpServer.h
	* src/HttpServerCommand.cc
	* src/OptionHandlerFactory.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2009-05-09 15:38:23 +00:00
Tatsuhiro Tsujikawa d237c5e442 2009-05-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that SocketCore::isReadable() prevents aria2 from
	processing 0 length request.	
	* src/HttpServerBodyCommand.cc
2009-05-09 15:36:15 +00:00
Tatsuhiro Tsujikawa 9f0a602ce3 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed --enable-http-server and --http-server-listen-port
	options.  Added --enable-xml-rpc and --xml-rpc-listen-port
	instead.  The original feature for --enable-http-server that
	reports download progress in HTML was officially removed.  Persist
	XML-RPC connection if client supports keep-alive.	
	* src/DownloadEngineFactory.cc
	* src/HttpServerCommand.cc
	* src/HttpServerResponseCommand.cc
	* src/Makefile.am
	* src/Makefile.in
	* src/OptionHandlerFactory.cc
	* src/RequestGroupMan.cc
	* src/main.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2009-05-09 14:01:35 +00:00
Tatsuhiro Tsujikawa 45249392fd 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added "uris" key to the response of tellStatus command.  Added
	"connections" key to the response of tellStatus and tellActive
	command.
	* src/XmlRpcMethodImpl.cc
2009-05-09 13:00:47 +00:00
Tatsuhiro Tsujikawa b2605588b7 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed TellActiveStatusXmlRpcMethod as TellActiveXmlRpcMethod.
	Added TellStatusXmlRpcMethod.  Remove command can now remove
	waiting RequestGroup.	
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-09 12:41:37 +00:00
Tatsuhiro Tsujikawa e8c53abe6c 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Initialized _peerId
	* src/Peer.cc
2009-05-09 07:50:08 +00:00
Tatsuhiro Tsujikawa 4e18c92371 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Return fault structure for error. FailXmlRpcMethod is renamed as
	NoSuchMethodXmlRpcMethod. pieceLength and numPieces are returned
	in non-torrent download. Return single param value.
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* test/XmlRpcMethodTest.cc
2009-05-09 04:55:53 +00:00
Tatsuhiro Tsujikawa 7e7f809339 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set DownloadResult::IN_PROGRESS for downloads removed by xml-rpc
	command.
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/XmlRpcMethodImpl.cc
	* test/RequestGroupTest.cc
2009-05-09 04:11:31 +00:00
Tatsuhiro Tsujikawa 933866e315 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added more options that can be specified in -i list and xml-rpc
	add* command.	
	* src/download_helper.h
2009-05-09 03:43:38 +00:00
Tatsuhiro Tsujikawa b7664e8d6e 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
The available options in -i list should be listed in
	listRequestOptions().
	* src/download_helper.cc
2009-05-08 16:58:44 +00:00
Tatsuhiro Tsujikawa 606c11810b 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added infoHash, pieceLength, numPieces value for tellActiveStatus
	command.
	* src/XmlRpcMethodImpl.cc
2009-05-08 16:49:20 +00:00
Tatsuhiro Tsujikawa 4cb5468662 2009-05-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Now RequestGroup has its own copy of Option object. This will help
	to give custom option for each RequestGroup.
	addTorrentFile command now takes options.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/AbstractProxyRequestCommand.cc
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
	* src/AdaptiveURISelector.cc
	* src/BtCheckIntegrityEntry.cc
	* src/BtDependency.cc
	* src/BtDependency.h
	* src/BtFileAllocationEntry.cc
	* src/BtPostDownloadHandler.cc
	* src/CheckIntegrityEntry.cc
	* src/DownloadCommand.cc
	* src/FtpDownloadCommand.cc
	* src/FtpFinishDownloadCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpRequestCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/InitiateConnectionCommand.cc
	* src/InitiateConnectionCommandFactory.cc
	* src/InitiatorMSEHandshakeCommand.cc
	* src/InitiatorMSEHandshakeCommand.h
	* src/Metalink2RequestGroup.cc
	* src/Metalink2RequestGroup.h
	* src/MetalinkPostDownloadHandler.cc
	* src/MultiUrlRequestInfo.cc
	* src/MultiUrlRequestInfo.h
	* src/PeerAbstractCommand.cc
	* src/PeerInteractionCommand.cc
	* src/PeerInteractionCommand.h
	* src/PeerReceiveHandshakeCommand.cc
	* src/PeerReceiveHandshakeCommand.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/TrackerWatcherCommand.cc
	* src/TrackerWatcherCommand.h
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethod.h
	* src/XmlRpcMethodImpl.cc
	* src/download_helper.cc
	* src/download_helper.h
	* src/main.cc
	* test/BtDependencyTest.cc
	* test/BtPostDownloadHandlerTest.cc
	* test/DefaultBtMessageDispatcherTest.cc
	* test/DownloadHandlerFactoryTest.cc
	* test/DownloadHelperTest.cc
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkPostDownloadHandlerTest.cc
	* test/RequestGroupManTest.cc
	* test/RequestGroupTest.cc
2009-05-08 16:41:21 +00:00
Tatsuhiro Tsujikawa 08856691b3 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tellActiveStatus xml-rpc command which reports download
	status of active downloads.
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-08 13:47:33 +00:00
Tatsuhiro Tsujikawa c45ff588d1 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added addTorrentFile xml-rpc command which receives uploaded
	torrent file and add download for it.
	* src/RequestGroupMan.cc
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* src/download_helper.cc
	* src/download_helper.h
2009-05-08 12:23:04 +00:00
Tatsuhiro Tsujikawa c659b07b86 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added remove xml-rpc command which removes specified download.
	There is a known issue: the removed unfinished downloads are
	reported ERR when aria2 exits. They should be reported as INPR.
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2009-05-08 08:36:52 +00:00
Tatsuhiro Tsujikawa 7f7ea34a4a 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
If --enable-http-server is enabled, don't stop aria2 when all
	download finished and don't quit when no files to download at
	start up.
	* src/RequestGroupMan.cc
	* src/main.cc
	* src/option_processing.cc
2009-05-08 08:18:23 +00:00
Tatsuhiro Tsujikawa 3e4c549c01 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing AM_CONDITIONAL
	* configure.ac
2009-05-08 08:03:36 +00:00
Tatsuhiro Tsujikawa b57b75f98d 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added xml-rpc functionality. Currently only addURI commad is
	supported. To enable xml-rpc, run aria2 with
	--enable-http-server. This option name is temporal and will be
	changed. The feature that reports download progress in html format
	is temporarily disabled.
	* src/HttpServer.cc
	* src/HttpServer.h
	* src/HttpServerBodyCommand.cc
	* src/HttpServerBodyCommand.h
	* src/HttpServerCommand.cc
	* src/HttpServerResponseCommand.cc
	* src/Makefile.am
	* src/OptionParser.cc
	* src/OptionParser.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/XmlRpcMethod.cc
	* src/XmlRpcMethod.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodFactory.h
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* src/download_helper.cc
	* src/download_helper.h
	* test/Makefile.am
	* test/XmlRpcMethodTest.cc
2009-05-08 07:58:50 +00:00
Tatsuhiro Tsujikawa 3a81b3c3d7 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added xml-rpc request parser. The supported value types are:
	i4/int, string, double, struct, array, base64.  Currently only
	libxml2 version is provided.
	* src/Xml2XmlRpcRequestProcessor.cc
	* src/Xml2XmlRpcRequestProcessor.h
	* src/XmlRpcElements.cc
	* src/XmlRpcElements.h
	* src/XmlRpcRequest.h
	* src/XmlRpcRequestParserController.cc
	* src/XmlRpcRequestParserController.h
	* src/XmlRpcRequestParserState.h
	* src/XmlRpcRequestParserStateImpl.cc
	* src/XmlRpcRequestParserStateImpl.h
	* src/XmlRpcRequestParserStateMachine.cc
	* src/XmlRpcRequestParserStateMachine.h
	* src/XmlRpcRequestProcessor.h
	* test/XmlRpcRequestParserControllerTest.cc
	* test/XmlRpcRequestProcessorTest.cc
2009-05-08 03:24:24 +00:00
Tatsuhiro Tsujikawa 540d26fc1b 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.3.3
2009-05-08 02:16:58 +00:00
Tatsuhiro Tsujikawa ff298b3cbc 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error since r1202.
	* src/ExpatMetalinkProcessor.cc
2009-05-08 02:06:24 +00:00
Tatsuhiro Tsujikawa 25aee44b43 Reverted previous change 2009-05-08 01:57:39 +00:00
Tatsuhiro Tsujikawa eb8fb14fad 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.3.3
2009-05-08 01:52:41 +00:00
Tatsuhiro Tsujikawa 42c4d782de 2009-05-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Ukrainian, Russian and Simplified Chinese
	translations. Thanks to all translators.
	* po/ru.po
	* po/uk.po
	* po/zh_CN.po
2009-05-07 16:18:07 +00:00
Tatsuhiro Tsujikawa ce9c79a2f3 2009-05-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Pass reference of Option object instead of pointer.
	* src/download_helper.cc
	* src/download_helper.h
	* src/main.cc
	* test/DownloadHelperTest.cc
2009-05-07 08:52:38 +00:00
Tatsuhiro Tsujikawa 40d5c1e763 2009-05-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't retrieve PREF_MAX_DOWNLOAD_LIMIT and PREF_MAX_UPLOAD_LIMIT
	from option directly. Instead, get them from RequestGroup.
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
	* src/PeerReceiveHandshakeCommand.cc
	* src/RequestGroup.h
2009-05-07 08:40:45 +00:00
Tatsuhiro Tsujikawa 22ab845df5 2009-05-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused uploadLimitCheck and uploadLimit from
	PeerAbstractCommand. Removed unused maxDownloadLimit from
	PeerInteractionCommand.
	* src/PeerAbstractCommand.cc
	* src/PeerAbstractCommand.h
	* src/PeerInteractionCommand.cc
	* src/PeerInteractionCommand.h
2009-05-07 08:38:31 +00:00
Tatsuhiro Tsujikawa 030bc08287 2009-05-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed broken file renaming feature since r1202.
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* src/HttpResponseCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
2009-05-07 03:49:27 +00:00
Tatsuhiro Tsujikawa 4432b68d24 2009-05-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused debug log
	* src/SocketCore.cc
2009-05-06 08:09:26 +00:00
Tatsuhiro Tsujikawa aba7efb95c 2009-05-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Generated configure and Makefile.in using autoconf 2.63 and
	automake 1.10.2.  Removed AC_GNU_SOURCE from configure.ac because
	it is subset of AC_USE_SYSTEM_EXTENSIONS and we use latter.
	* configure.ac
2009-05-06 08:00:57 +00:00
Tatsuhiro Tsujikawa 4da631bef6 2009-05-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved piece statistics stuff to new PieceStatMan class.
	Refactored PieceSelector interface.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/LongestSequencePieceSelector.cc
	* src/LongestSequencePieceSelector.h
	* src/Makefile.am
	* src/PieceSelector.h
	* src/PieceStatMan.cc
	* src/PieceStatMan.h
	* src/RarestPieceSelector.cc
	* src/RarestPieceSelector.h
	* src/RequestGroup.cc
	* test/DefaultPieceStorageTest.cc
	* test/InOrderPieceSelector.h
	* test/Makefile.am
	* test/PieceStatManTest.cc
	* test/RarestPieceSelectorTest.cc
2009-05-06 07:49:22 +00:00
Tatsuhiro Tsujikawa d05d8bbddc 2009-05-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added static member _protocolFamily to SocketCore.  By default,
	SocketCore uses AF_UNSPEC for getaddrinfo hints to resolve
	address. Sometime SocketCore::bind() and
	SocketCore::establishConnection() use difference protocl family
	and latter cannot connect to former. To avoid this situation, we
	limit protocol family to AF_INET for unit tests.
	* src/SocketCore.cc
	* src/SocketCore.h
	* test/AllTest.cc
2009-05-06 07:42:59 +00:00
Tatsuhiro Tsujikawa 47b08786eb 2009-05-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid std::bad_alloc for negative bencode string length.
	* src/bencode.cc
2009-05-06 07:38:08 +00:00
Tatsuhiro Tsujikawa 3c877a9df4 2009-05-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Supported segmented downloading with chunked transfer encoding and
	content-length.	
	* src/DownloadCommand.cc
	* src/HttpResponseCommand.cc
2009-05-05 15:19:02 +00:00
Tatsuhiro Tsujikawa 7893340cb3 2009-05-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.3.3
	* configure.ac
2009-05-05 03:32:13 +00:00
Tatsuhiro Tsujikawa 3511aad188 2009-05-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Applied Pascal Bleser's patch: increases MAX_RECV_BUFFER for ftp
	from 4096 to 65536 (for insanely large ftp login banners)
	* src/FtpConnection.h
	* test/FtpConnectionTest.cc
2009-05-05 03:27:45 +00:00
Tatsuhiro Tsujikawa 8fe80169b3 2009-05-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In DefaultBtContext::getActualBasePath(), return first
	FileEntry::getPath() for single file torrent.	
	* src/DefaultBtContext.cc
	* test/DefaultBtContextTest.cc
2009-05-05 03:20:56 +00:00
Tatsuhiro Tsujikawa e1f32b6b66 2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed directIOAllowed() from BinaryStream, DiskWriter,
	DiskAdaptor.  setDirectIOAllowed() was renamed as
	allowDirectIO().
	Removed _directIOAllowed member from DiskWriter.
	* src/AbstractDiskWriter.cc
	* src/AbstractDiskWriter.h
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/BinaryStream.h
	* src/ByteArrayDiskWriter.h
	* src/DefaultPieceStorage.cc
	* src/DiskWriter.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
2009-05-04 08:11:40 +00:00
Tatsuhiro Tsujikawa c1aef8e2d1 2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Now the constructor of AbstractDiskWriter takes filename as an
	argument and filename argument is removed from openFile(),
	initAndOpenFile(), openExistingFile() interface.  storeDir
	member and its accessor functions are removed from DiskAdaptor
	because it is not used anymore.  size() member function of
	DefaultDiskWriter, DirectDiskAdaptor and MultiDiskAdaptor now
	can be called without opening file.
	* src/AbstractDiskWriter.cc
	* src/AbstractDiskWriter.h
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/ByteArrayDiskWriter.cc
	* src/ByteArrayDiskWriter.h
	* src/ByteArrayDiskWriterFactory.cc
	* src/ByteArrayDiskWriterFactory.h
	* src/DefaultDiskWriter.cc
	* src/DefaultDiskWriter.h
	* src/DefaultDiskWriterFactory.cc
	* src/DefaultDiskWriterFactory.h
	* src/DefaultPieceStorage.cc
	* src/DirectDiskAdaptor.cc
	* src/DirectDiskAdaptor.h
	* src/DiskAdaptor.h
	* src/DiskWriter.h
	* src/DiskWriterFactory.h
	* src/MessageDigestHelper.cc
	* src/MultiDiskAdaptor.cc
	* src/RequestGroup.cc
	* src/UnknownLengthPieceStorage.cc
	* src/Util.cc
	* test/DefaultDiskWriterTest.cc
	* test/DirectDiskAdaptorTest.cc
	* test/FallocFileAllocationIteratorTest.cc
	* test/MessageDigestHelperTest.cc
	* test/MetalinkProcessorTest.cc
	* test/MultiDiskAdaptorTest.cc
	* test/MultiFileAllocationIteratorTest.cc
	* test/SingleFileAllocationIteratorTest.cc
	* test/UtilTest.cc
2009-05-04 07:50:38 +00:00
Tatsuhiro Tsujikawa 5c8f48dc77 2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that aria2 aborts when --select-file is used.
	This bug was introduced in r1199.
	* src/MultiDiskAdaptor.cc
2009-05-03 16:03:21 +00:00
Tatsuhiro Tsujikawa 717fa2a855 2009-05-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* test/MockPieceStorage.cc
2009-05-03 11:01:52 +00:00
Tatsuhiro Tsujikawa eeece05063 2009-05-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that read-only file with wrong file size will
	cause error because it cannot be truncated to the correct size.
	Now if file size is different than the expected one, re-open
	file in writable mode.
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/BtCheckIntegrityEntry.cc
	* src/DiskAdaptor.h
	* src/MultiDiskAdaptor.h
	* src/RequestGroup.cc
2009-05-03 11:00:39 +00:00
Tatsuhiro Tsujikawa ee229c6f00 2009-05-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that with --check-integrity option aria2 reports
	downloaded file size is 0 even if some parts of file is
	correctly downloaded.  This bug is reproducible for the download
	that a file includes last piece is missing. This bug doesn't
	reveal for single-torrent with file allocation on.
	* src/IteratableChecksumValidator.cc
	* test/IteratableChecksumValidatorTest.cc
2009-05-03 06:26:44 +00:00
Tatsuhiro Tsujikawa d0b485cba0 2009-05-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid circular reference between RequestGroup and
	AdaptiveURISelector
	* src/RequestGroupMan.cc
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
2009-05-01 14:01:32 +00:00
Tatsuhiro Tsujikawa a8b05c3c1a 2009-04-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.3.2
2009-04-28 14:14:00 +00:00
Tatsuhiro Tsujikawa 1c58e397d6 2009-04-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated README
	* README
2009-04-28 13:22:50 +00:00
Tatsuhiro Tsujikawa 109656c415 2009-04-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Ukrainian translations. Thanks to Alexander10.
	* po/uk.po
2009-04-28 13:15:05 +00:00
Tatsuhiro Tsujikawa eaca0b7a08 2009-04-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/MetalinkParserStateMachine.cc
	* src/MetalinkParserStateMachine.h
2009-04-28 12:18:08 +00:00
Tatsuhiro Tsujikawa 16f5ebcfcd 2009-04-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed MetalinkProcessorFactory. Since we don't use both
	libxml2 and expat simultaneously, MetalinkProcessor is now not
	base class and it is directly implemented in
	XML2SAXMetalinkProcessor and ExpatMetalinkProcessor.	
	* src/ExpatMetalinkProcessor.cc
	* src/ExpatMetalinkProcessor.h
	* src/Makefile.am
	* src/MetalinkHelper.cc
	* src/MetalinkProcessor.h
	* src/MetalinkProcessorFactory.cc: Removed.
	* src/MetalinkProcessorFactory.h: Removed
	* src/XML2SAXMetalinkProcessor.cc
	* src/XML2SAXMetalinkProcessor.h
	* test/MetalinkProcessorTest.cc
2009-04-28 09:22:43 +00:00
Tatsuhiro Tsujikawa f80abe91d2 2009-04-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.3.2
	* configure.ac
2009-04-27 12:33:21 +00:00
Tatsuhiro Tsujikawa d229909bf8 2009-04-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing file.
	* test/Makefile.am
	* test/url-list-singleFileEndsWithSlash.torrent
2009-04-27 12:00:41 +00:00
Tatsuhiro Tsujikawa 49b4cfbfcd 2009-04-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Put BDE in aria2 namespace. BDE will also be used to store
	xml-rpc request.
	* src/AnnounceList.cc
	* src/AnnounceList.h
	* src/BDE.cc: Added
	* src/BDE.h: Added
	* src/DHTAbstractMessage.cc
	* src/DHTAbstractMessage.h
	* src/DHTAnnouncePeerMessage.cc
	* src/DHTAnnouncePeerMessage.h
	* src/DHTAnnouncePeerReplyMessage.cc
	* src/DHTAnnouncePeerReplyMessage.h
	* src/DHTFindNodeMessage.cc
	* src/DHTFindNodeMessage.h
	* src/DHTFindNodeReplyMessage.cc
	* src/DHTFindNodeReplyMessage.h
	* src/DHTGetPeersMessage.cc
	* src/DHTGetPeersMessage.h
	* src/DHTGetPeersReplyMessage.cc
	* src/DHTGetPeersReplyMessage.h
	* src/DHTMessageFactory.h
	* src/DHTMessageFactoryImpl.cc
	* src/DHTMessageFactoryImpl.h
	* src/DHTMessageReceiver.cc
	* src/DHTMessageTracker.cc
	* src/DHTMessageTracker.h
	* src/DHTPingMessage.cc
	* src/DHTPingMessage.h
	* src/DHTPingReplyMessage.cc
	* src/DHTPingReplyMessage.h
	* src/DHTQueryMessage.cc
	* src/DHTQueryMessage.h
	* src/DHTResponseMessage.cc
	* src/DHTResponseMessage.h
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/HandshakeExtensionMessage.cc
	* src/Makefile.am
	* src/PeerListProcessor.h
	* src/UTPexExtensionMessage.cc
	* src/bencode.cc
	* src/bencode.h
	* test/AnnounceListTest.cc
	* test/BDETest.cc: Added
	* test/BencodeTest.cc
	* test/DHTAnnouncePeerMessageTest.cc
	* test/DHTAnnouncePeerReplyMessageTest.cc
	* test/DHTFindNodeMessageTest.cc
	* test/DHTFindNodeReplyMessageTest.cc
	* test/DHTGetPeersMessageTest.cc
	* test/DHTGetPeersReplyMessageTest.cc
	* test/DHTMessageFactoryImplTest.cc
	* test/DHTMessageTrackerTest.cc
	* test/DHTPingMessageTest.cc
	* test/DHTPingReplyMessageTest.cc
	* test/Makefile.am
	* test/MockDHTMessageFactory.h
	* test/PeerListProcessorTest.cc
2009-04-27 11:45:22 +00:00
Tatsuhiro Tsujikawa d58742ad21 2009-04-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use url-list (web-seeding) only for single-file torrent.  This
	is basically the same behavior with Metalink file with torrent
	and URIs.
	* src/RequestGroup.cc
	* src/DefaultBtContext.cc
	* test/DefaultBtContextTest.cc
2009-04-27 06:55:10 +00:00
Tatsuhiro Tsujikawa 1ea7fca02b 2009-04-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten expr
	* src/array_fun.h
	* test/array_funTest.cc
2009-04-25 17:04:32 +00:00
Tatsuhiro Tsujikawa 8a1d530336 2009-04-26 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added forEachMemFunSH(). Use it in BitTorrent event dispatch.
	* src/DefaultBtMessageDispatcher.cc
	* src/a2algo.h
2009-04-25 17:01:29 +00:00
Tatsuhiro Tsujikawa e385c68f52 2009-04-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed ExtendedMessagingAware. Instead of using inheritance,
	added ExtensionMessageRegistry and it is passed to
	DefaultExtensionMessageFactory.
	* src/DefaultBtInteractive.cc
	* src/DefaultBtInteractive.h
	* src/DefaultExtensionMessageFactory.cc
	* src/DefaultExtensionMessageFactory.h
	* src/ExtendedMessagingAware.h: Removed.
	* src/ExtensionMessageFactory.h
	* src/ExtensionMessageRegistry.h: Added.
	* src/Makefile.am
	* src/PeerInteractionCommand.cc
	* test/DefaultExtensionMessageFactoryTest.cc
2009-04-25 10:48:00 +00:00
Tatsuhiro Tsujikawa 3908d86213 2009-04-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed typo in log messages
	* src/MSEHandshake.cc
2009-04-25 10:32:03 +00:00
Tatsuhiro Tsujikawa 35763a2ae0 2009-04-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that prevents torrent download from finishing.
	The bug doesn't reveal for all torrents. The torrents affected
	this bug satisfies ((N+7)/8)%4 == 0 and N%32 != 0 where N is the
	number of pieces.	
	* src/bitfield.h
	* test/bitfieldTest.cc
2009-04-25 10:30:25 +00:00
Tatsuhiro Tsujikawa ea8668d80f 2009-04-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/PeerListProcessor.h
2009-04-23 16:10:54 +00:00
Tatsuhiro Tsujikawa 3955054837 2009-04-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed RequestGroupAware
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/ActivePeerConnectionCommand.cc
	* src/ActivePeerConnectionCommand.h
	* src/DHTGetPeersCommand.cc
	* src/DHTGetPeersCommand.h
	* src/InitiatorMSEHandshakeCommand.cc
	* src/InitiatorMSEHandshakeCommand.h
	* src/Makefile.am
	* src/PeerInitiateConnectionCommand.cc
	* src/PeerInitiateConnectionCommand.h
	* src/PeerInteractionCommand.cc
	* src/PeerInteractionCommand.h
	* src/RealtimeCommand.cc
	* src/RealtimeCommand.h
	* src/RequestGroupAware.cc: Removed
	* src/RequestGroupAware.h: Removed
	* src/SeedCheckCommand.cc
	* src/SeedCheckCommand.h
	* src/SleepCommand.cc
	* src/TrackerWatcherCommand.cc
	* src/TrackerWatcherCommand.h
2009-04-23 15:00:09 +00:00
Tatsuhiro Tsujikawa 6703097652 2009-04-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten PeerListProcessor
	* src/PeerListProcessor.h
	* src/CompactPeerListProcessor.h: Removed
	* src/CompactPeerListProcessor.cc: Removed
	* src/DelegatingPeerListProcessor.cc: Removed.
	* src/DefaultBtAnnounce.cc
	* src/Makefile.am
	* src/UTPexExtensionMessage.cc
	* src/DefaultPeerListProcessor.h: Removed.
	* src/DefaultPeerListProcessor.cc: Removed.
	* src/DelegatingPeerListProcessor.h: Removed.
	* test/Makefile.am
	* test/PeerListProcessorTest.cc
	* test/DefaultPeerListProcessorTest.cc: Removed.
2009-04-23 13:39:53 +00:00
Tatsuhiro Tsujikawa 82a38a7e3c 2009-04-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten RequestGroupMan::calculateStat()
	* src/RequestGroupMan.cc
2009-04-23 12:06:26 +00:00
Tatsuhiro Tsujikawa 23415927e9 2009-04-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unnecessary virtual destructor for Request class.
	* src/Request.cc
	* src/Request.h
2009-04-23 12:00:53 +00:00
Tatsuhiro Tsujikawa 51a0dba30c Updated ChangeLog for previous change 2009-04-21 17:15:06 +00:00
Tatsuhiro Tsujikawa afdd61f9d1 2009-04-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten event dispatch in BtMessage. Removed BtEventListener,
	BtEvent.	
	* src/AbstractBtEventListener.h: Removed.
	* src/AbstractBtMessage.cc
	* src/AbstractBtMessage.h
	* src/BtAbortOutstandingRequestEvent.h
	* src/BtCancelSendingPieceEvent.h
	* src/BtChokedEvent.h: Removed.
	* src/BtChokingEvent.h
	* src/BtEvent.h: Removed
	* src/BtEventListener.h: Removed.
	* src/BtMessage.h
	* src/BtPieceMessage.cc
	* src/BtPieceMessage.h
	* src/BtRequestMessage.cc
	* src/BtRequestMessage.h
	* src/DefaultBtMessageDispatcher.cc
	* src/Makefile.am
	* src/a2functional.h
	* test/BtPieceMessageTest.cc
	* test/BtRequestMessageTest.cc
	* test/DefaultBtMessageDispatcherTest.cc
	* test/MockBtMessage.h
2009-04-21 14:52:04 +00:00
Tatsuhiro Tsujikawa 82b0d66505 2009-04-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/RequestGroupMan.cc
2009-04-17 14:56:13 +00:00
Tatsuhiro Tsujikawa a883a4aecc 2009-04-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/DownloadCommand.cc
2009-04-17 14:55:18 +00:00
Tatsuhiro Tsujikawa 65a358c68b 2009-04-17 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed segmentation fault when GZipDecoder::decode() returns 0
	byte.
	* src/DownloadCommand.cc
	* src/bitfield.h
	* test/bitfieldTest.cc

	Fixed the bug that causes infinite loop if broken web server
	returns chunked response without last "0" chunk-size marker and
	closes connection.
	* src/DownloadCommand.cc

	Instantiate properly configured HttpDownloadCommand for
	non-resumable downlaods.
	* src/HttpResponseCommand.cc
2009-04-17 13:19:17 +00:00
Tatsuhiro Tsujikawa d2d4f67bbe 2009-04-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten array operation functions.
	* src/BitfieldMan.cc
	* src/array_fun.h
	* test/array_funTest.cc
2009-04-16 13:43:23 +00:00
Tatsuhiro Tsujikawa e19447a54b 2009-04-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused variable 'query'
	* src/Request.cc
2009-04-14 12:38:45 +00:00
Tatsuhiro Tsujikawa 933cdd6949 2009-04-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set conditional HAVE_GETADDRINFO true for mingw32. It was
	accidentally set to false in r1162.	
	* configure.ac
2009-04-14 12:23:31 +00:00
Tatsuhiro Tsujikawa decd3b883b 2009-04-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Code cleanup
	* src/BNode.cc
2009-04-13 12:49:18 +00:00
Tatsuhiro Tsujikawa 0e70ba46a9 2009-04-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Increase prefixLength for the bucket which doesn't own local
	node ID when splitting bucket.
	* src/DHTBucket.cc
	* test/DHTBucketTest.cc
2009-04-13 12:47:50 +00:00
Tatsuhiro Tsujikawa a0527905ff 2009-04-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.3.1
2009-04-12 15:46:33 +00:00
Tatsuhiro Tsujikawa 72b43d378e 2009-04-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.3.1
	* configure.ac
2009-04-12 15:40:23 +00:00
Tatsuhiro Tsujikawa 4c7122ebeb 2009-04-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused variable checkPoint. Also removed include
	directive for TimeA2.h.	
	* src/SeedCheckCommand.h
2009-04-07 15:55:21 +00:00
Tatsuhiro Tsujikawa bf94abba7b 2009-04-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that upload limit exceeds the value specified in
	--seed-ratio option depending on the timing of the execution of
	SeedCheckCommand.	
	* src/SeedCheckCommand.cc
2009-04-07 14:24:44 +00:00
Tatsuhiro Tsujikawa becd34bcb9 2009-04-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that removed peer's session upload/download length
	are counted twice in _cachedTransferStat before it is
	re-calculated.  This affected the calculation of shara ratio,
	resulting aria2 wrongly determines that specified share ratio is
	reached. Also fixed the typo in calculateStatFor function name.
	* src/BtSetup.cc
	* src/DefaultPeerStorage.cc
	* src/ShareRatioSeedCriteria.h
	* test/ShareRatioSeedCriteriaTest.cc
2009-04-05 10:38:15 +00:00
Tatsuhiro Tsujikawa 8436278cee 2009-04-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.3.0
2009-04-01 13:59:45 +00:00
Tatsuhiro Tsujikawa d63ad702b0 2009-04-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Russian, Japanese, Spanish, Ukrainian and Norwegian
	Nynorsk translations. Thanks to all translators.	
	* po/es.po
	* po/ja.po
	* po/nn.po
	* po/ru.po
	* po/uk.po
2009-04-01 12:49:53 +00:00
Tatsuhiro Tsujikawa 5541477dce 2009-04-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten isInRange()
	* src/DHTBucket.cc
	* test/DHTBucketTest.cc
2009-04-01 12:28:39 +00:00
Tatsuhiro Tsujikawa 752fb34bbb 2009-03-30 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed typo
	* doc/aria2c.1.txt
2009-03-30 14:13:18 +00:00
Tatsuhiro Tsujikawa 4c950934a0 2009-03-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed AC_FUNC_MALLOC and AC_FUNC_REALLOC because 0-byte
	malloc/realloc is not used.
	* src/configure.ac
2009-03-28 16:33:45 +00:00
Tatsuhiro Tsujikawa a6b02840fa 2009-03-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
BitfieldMan::getMissingIndexes family functions now takes
	unsigned char* bitfield instead of stl container for efficiency.
	PieceSelector::select now takes this
	bitfield. RarestPieceSelector::select now also performs
	efficiently for this change.  bitfield namespace is introduced
	and it has several helper functions to handle basic bitfield
	operations such as test, count set bits, etc.
	* src/BitfieldMan.cc
	* src/BitfieldMan.h
	* src/DefaultBtRequestFactory.cc
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/LongestSequencePieceSelector.cc
	* src/LongestSequencePieceSelector.h
	* src/Makefile.am
	* src/Piece.cc
	* src/Piece.h
	* src/PieceSelector.h
	* src/RarestPieceSelector.cc
	* src/RarestPieceSelector.h
	* src/Util.cc
	* src/Util.h
	* src/bitfield.h
	* test/BitfieldManTest.cc
	* test/LongestSequencePieceSelectorTest.cc
	* test/Makefile.am
	* test/RarestPieceSelectorTest.cc
	* test/UtilTest.cc
	* test/bitfieldTest.cc
2009-03-28 13:29:38 +00:00
Tatsuhiro Tsujikawa 3531d57d37 2009-03-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made accepted socket non-block.
	* src/FtpNegotiationCommand.cc
	* src/HttpListenCommand.cc
2009-03-28 13:19:47 +00:00
Tatsuhiro Tsujikawa 6cbb6d2850 2009-03-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Guarded #ifdef HAVE_POSIX_FALLOCATE
	* src/AbstractSingleDiskAdaptor.cc
	* src/DefaultPieceStorage.cc
	* src/DiskAdaptor.h
	* src/DiskAdaptor.h
	* src/MultiFileAllocationIterator.cc
2009-03-28 12:46:13 +00:00
Tatsuhiro Tsujikawa a69f499ccf 2009-03-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Run DefaultBtMessageDispatcher::
	checkRequestSlotAndDoNecessaryThing()
	in every 1 sec. The timeout of RequestSlot is 60s by default and
	it doesn't need to be called every time when
	DefaultBtInteractive::doInteractionProcessing() is called.	
	* src/DefaultBtInteractive.cc
	* src/DefaultBtInteractive.h
2009-03-27 16:12:09 +00:00
Tatsuhiro Tsujikawa ce1231280a 2009-03-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented 'falloc' in man page.
	* doc/aria2c.1.txt
2009-03-25 06:07:11 +00:00
Tatsuhiro Tsujikawa bfd7950b82 2009-03-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc
	* src/usage_text.h
2009-03-25 06:05:59 +00:00
Tatsuhiro Tsujikawa 29c5ef9215 2009-03-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added 'falloc' parameter for --file-allocation option.  'falloc'
	allocation mode uses posix_fallocate() system call to allocate
	file on disk.  If you are using newer file systems such as ext4
        (with extents support), btrfs or xfs, 'falloc' is your best
	choice. It allocates large(few GiB) files almost instantly.
	Don't use 'falloc' with legacy file systems such as ext3 because
	it takes almost same time as 'prealloc' and it blocks aria2
	entirely until allocation finishes. 'falloc' may not be
	available if your system doesn't have posix_fallocate() system
	call.
	* configure.ac
	* src/AbstractDiskWriter.cc
	* src/AbstractDiskWriter.h
	* src/AbstractSingleDiskAdaptor.cc
	* src/BinaryStream.h
	* src/BtCheckIntegrityEntry.cc
	* src/ByteArrayDiskWriter.h
	* src/CheckIntegrityEntry.cc
	* src/CheckIntegrityEntry.h
	* src/DefaultPieceStorage.cc
	* src/DiskAdaptor.cc
	* src/DiskAdaptor.h
	* src/DiskWriter.h
	* src/FallocFileAllocationIterator.cc
	* src/FallocFileAllocationIterator.h
	* src/FileAllocationEntry.cc
	* src/FileAllocationEntry.h
	* src/Makefile.am
	* src/MultiFileAllocationIterator.cc
	* src/MultiFileAllocationIterator.h
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/StreamCheckIntegrityEntry.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/FallocFileAllocationIteratorTest.cc
	* test/Makefile.am
2009-03-25 05:43:07 +00:00
Tatsuhiro Tsujikawa fe614395d6 2009-03-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed duplicate enableDirectIO() call.
	* src/MultiFileAllocationIterator.cc
2009-03-24 15:31:46 +00:00
Tatsuhiro Tsujikawa 289ae1b635 2009-03-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Replaced std::vector<SharedHandle<PieceStats> _sortedPieceStats
	with std::vector<size_t> _sortedPieceStatIndexes to reduce the
	cost of std::rotate().
	* src/RarestPieceSelector.cc
	* src/RarestPieceSelector.h
	* test/RarestPieceSelectorTest.cc
2009-03-24 15:24:30 +00:00
Tatsuhiro Tsujikawa f227c19076 2009-03-22 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --bt-tracker-interval option in man page.
	* doc/aria2c.1.txt
2009-03-21 15:14:46 +00:00
Tatsuhiro Tsujikawa 2170a850a8 2009-03-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added an option to specify the interval between tracker
	requests.
	If non-zero value is specified, aria2 uses it and ignores the
	interval value in the response of tracker. If zero is specified,
	aria2 determines the inteval value based on the tarcker response
	and download progress.
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtAnnounce.h
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2009-03-20 13:44:03 +00:00
Tatsuhiro Tsujikawa 948b13ad52 2009-03-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added operator+=, operator-=, operator-
	* src/TransferStat.cc
	* src/TransferStat.h
2009-03-20 13:39:08 +00:00
Tatsuhiro Tsujikawa 662a90ce9b 2009-03-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Refactored RarestPieceSelector to reduce CPU load, especially
	for addPieceStats.	
	* src/RarestPieceSelector.cc
	* src/RarestPieceSelector.h
2009-03-20 13:37:53 +00:00
Tatsuhiro Tsujikawa 3644682511 2009-03-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Refactored getMissingIndexRandomly, getFirstMissingIndex,
	getAllMissingBlockIndexes to reduce a call to
	array_function_base::operator[].
	* src/BitfieldMan.cc
2009-03-20 13:35:40 +00:00
Tatsuhiro Tsujikawa ef927009b7 2009-03-20 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Cached TransferStat/download speed to avoid to sum them up in
	each call.	
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/SegmentMan.cc
	* src/SegmentMan.h
2009-03-20 13:29:33 +00:00
Tatsuhiro Tsujikawa 9233a6258f 2009-03-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Typedefed cuid_t as int32_t in Command.h
	* src/CUIDCounter.h
	* src/Command.cc
	* src/Command.h
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/PeerStat.h
	* src/SegmentMan.cc
	* src/SegmentMan.h
2009-03-19 13:54:09 +00:00
Tatsuhiro Tsujikawa e3ed6adf91 2009-03-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reduced the number of calls to PeerStorage::calculateStat() and
	SegmentMan::calculateDownloadSpeed() to lower CPU usage on
	higher transfer rate.	
	* src/DefaultBtInteractive.cc
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/DownloadCommand.cc
	* src/DownloadEngine.cc
	* src/PeerStorage.h
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* test/MockPeerStorage.h
2009-03-19 13:42:10 +00:00
Tatsuhiro Tsujikawa 75a525b031 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Prepended _dir+"/" after joining path elements in torrent file.
	* src/DefaultBtContext.cc
	* test/DefaultBtContextTest.cc
2009-03-13 16:10:28 +00:00
Tatsuhiro Tsujikawa 49fea7585b 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing IndexBtMessageValidator.h
	* src/Makefile.am
2009-03-13 14:40:10 +00:00
Tatsuhiro Tsujikawa a64432fe35 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Indonesian, Russian, Italian, Ukrainian and Simplified
	Chinese translations. Thank you for contributing our project.
	* po/id.po
	* po/it.po
	* po/ru.po
	* po/uk.po
	* po/zh_CN.po
2009-03-13 14:28:11 +00:00
Tatsuhiro Tsujikawa 29d7425b2e 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated README
	* README
2009-03-13 14:01:20 +00:00
Tatsuhiro Tsujikawa baeee19593 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.3.0
	* configure.ac
2009-03-13 13:46:48 +00:00
Tatsuhiro Tsujikawa e3fc396450 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc
	* src/DefaultBtContext.h
2009-03-13 13:44:30 +00:00
Tatsuhiro Tsujikawa c211a2aa4c 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Slice/joinPath for name of single torrent.
	* src/DefaultBtContext.cc
	* test/DefaultBtContextTest.cc
2009-03-13 13:42:19 +00:00
Tatsuhiro Tsujikawa b721f2e192 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated man page: Documented --dry-run and --index-out
	options. Changed the default value of --uri-selector and
	--http-auth-challenge options. Removed --direct-file-mapping
	option. Added example for --index-out
	* doc/aria2c.1.txt
2009-03-13 13:35:30 +00:00
Tatsuhiro Tsujikawa 570df02268 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated TEXT_DRY_RUN
	* src/usage_text.h
2009-03-13 13:29:13 +00:00
Tatsuhiro Tsujikawa 2586ca52ad 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Changed the default value of --uri-selector option from
	'inorder' to 'feedback'
	* src/OptionHandlerFactory.cc
2009-03-13 13:01:12 +00:00
Tatsuhiro Tsujikawa a499e1b7bd 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Included current URI in exception message.
	* src/AbstractCommand.cc
2009-03-13 12:58:58 +00:00
Tatsuhiro Tsujikawa 87f4fda22f 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed ServerStatURISelector as FeedbackURISelector.
	* src/FeedbackURISelector.cc
	* src/FeedbackURISelector.h
	* src/Makefile.am
	* src/RequestGroupMan.cc
	* src/ServerStatURISelector.cc
	* src/ServerStatURISelector.h
	* test/FeedbackURISelectorTest.cc
	* test/Makefile.am
	* test/ServerStatURISelectorTest.cc
2009-03-13 12:44:58 +00:00
Tatsuhiro Tsujikawa 5c63e74e80 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that AdaptiveURISelector doesn't select any URI
	when all URIs are tested and their timeout is not reached.
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
2009-03-13 12:36:18 +00:00
Tatsuhiro Tsujikawa ff20576d01 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Changed the default value of --http-auth-challenge option to
	false.
	* src/OptionHandlerFactory.cc
2009-03-13 12:31:22 +00:00
Tatsuhiro Tsujikawa d8678a8dd0 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reuse URIs when all unused URIs run out.
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/prefs.cc
	* src/prefs.h
2009-03-13 12:27:40 +00:00
Tatsuhiro Tsujikawa 15582ed8cd 2009-03-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Refactored BtMessage subclasses. BtCancelMessage,
	BtRequestMessage and BtRejectMessage are derived from
	RangeBtMessage class.
	BtAllowedFastMessage, BtHaveMessage and BtSuggestPieceMessage
	are derived from IndexBtMessage class. BtChokeMessage,
	BtHaveAllMessage, BtHaveNoneMessage, BtInterestedMessage,
	BtNotInterestedMessage and BtUnchokeMessage are derived from
	ZeroBtMessage class.
	* src/AbstractBtMessage.cc
	* src/AbstractBtMessage.h
	* src/BtAllowedFastMessage.cc
	* src/BtAllowedFastMessage.h
	* src/BtAllowedFastMessageValidator.h: Removed
	* src/BtBitfieldMessage.cc
	* src/BtBitfieldMessage.h
	* src/BtCancelMessage.cc
	* src/BtCancelMessage.h
	* src/BtCancelMessageValidator.h: Removed
	* src/BtChokeMessage.cc
	* src/BtChokeMessage.h
	* src/BtExtendedMessage.cc
	* src/BtExtendedMessage.h
	* src/BtHandshakeMessage.cc
	* src/BtHandshakeMessage.h
	* src/BtHaveAllMessage.cc
	* src/BtHaveAllMessage.h
	* src/BtHaveMessage.cc
	* src/BtHaveMessage.h
	* src/BtHaveMessageValidator.h: Removed
	* src/BtHaveNoneMessage.cc
	* src/BtHaveNoneMessage.h
	* src/BtInterestedMessage.cc
	* src/BtInterestedMessage.h
	* src/BtKeepAliveMessage.cc
	* src/BtKeepAliveMessage.h
	* src/BtNotInterestedMessage.cc
	* src/BtNotInterestedMessage.h
	* src/BtPieceMessage.cc
	* src/BtPieceMessage.h
	* src/BtPortMessage.cc
	* src/BtPortMessage.h
	* src/BtRejectMessage.cc
	* src/BtRejectMessage.h
	* src/BtRejectMessageValidator.h: Removed
	* src/BtRequestMessage.cc
	* src/BtRequestMessage.h
	* src/BtRequestMessageValidator.h: Removed
	* src/BtSuggestPieceMessage.cc
	* src/BtSuggestPieceMessage.h
	* src/BtSuggestPieceMessageValidator.h: Removed
	* src/BtUnchokeMessage.cc
	* src/BtUnchokeMessage.h
	* src/DefaultBtMessageFactory.cc
	* src/IndexBtMessage.cc
	* src/IndexBtMessage.h
	* src/IndexBtMessageValidator.h
	* src/Makefile.am
	* src/PeerMessageUtil.cc
	* src/PeerMessageUtil.h
	* src/RangeBtMessage.cc
	* src/RangeBtMessage.h
	* src/RangeBtMessageValidator.h
	* src/SimpleBtMessage.cc
	* src/SimpleBtMessage.h
	* src/ZeroBtMessage.cc
	* src/ZeroBtMessage.h
	* test/BtRequestMessageTest.cc
2009-03-12 15:54:43 +00:00
Tatsuhiro Tsujikawa 371ef954d5 2009-03-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reverted usage_text.h to r1093 to avoid to lose translated
	messages.
	* src/usage_text.h
2009-03-11 15:49:31 +00:00
Tatsuhiro Tsujikawa 4e0c03500c 2009-03-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
BtMessage now holds _id attribute.  MESSAGE_LENGTH that is
	declared as non-const previously is now const and defined in
	class definition.
	* src/AbstractBtMessage.cc
	* src/AbstractBtMessage.h
	* src/BtAllowedFastMessage.cc
	* src/BtAllowedFastMessage.h
	* src/BtBitfieldMessage.h
	* src/BtCancelMessage.cc
	* src/BtCancelMessage.h
	* src/BtChokeMessage.cc
	* src/BtChokeMessage.h
	* src/BtExtendedMessage.cc
	* src/BtExtendedMessage.h
	* src/BtHandshakeMessage.cc
	* src/BtHandshakeMessage.h
	* src/BtHaveAllMessage.cc
	* src/BtHaveAllMessage.h
	* src/BtHaveMessage.cc
	* src/BtHaveMessage.h
	* src/BtHaveNoneMessage.cc
	* src/BtHaveNoneMessage.h
	* src/BtInterestedMessage.cc
	* src/BtInterestedMessage.h
	* src/BtKeepAliveMessage.cc
	* src/BtKeepAliveMessage.h
	* src/BtMessage.h
	* src/BtNotInterestedMessage.cc
	* src/BtNotInterestedMessage.h
	* src/BtPieceMessage.h
	* src/BtPortMessage.cc
	* src/BtPortMessage.h
	* src/BtRejectMessage.cc
	* src/BtRejectMessage.h
	* src/BtRequestMessage.cc
	* src/BtRequestMessage.h
	* src/BtSuggestPieceMessage.cc
	* src/BtSuggestPieceMessage.h
	* src/BtUnchokeMessage.cc
	* src/BtUnchokeMessage.h
	* src/SimpleBtMessage.cc
	* src/SimpleBtMessage.h
	* test/MockBtMessage.h
2009-03-11 15:44:04 +00:00
Tatsuhiro Tsujikawa aecd8bbfeb 2009-03-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use FileEntry::exists()
	* src/MultiDiskAdaptor.cc
2009-03-11 15:38:25 +00:00
Tatsuhiro Tsujikawa 3a814ddf5b 2009-03-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added exists()
	* src/FileEntry.cc
	* src/FileEntry.h
2009-03-11 15:37:40 +00:00
Tatsuhiro Tsujikawa 90ca1be5fe 2009-03-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing prefix dir.
	* src/download_helper.cc
2009-03-10 13:15:14 +00:00
Tatsuhiro Tsujikawa 176c9d2002 2009-03-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed --direct-file-mapping option and CopyDiskAdaptor.
	* src/CopyDiskAdaptor.cc: Removed
	* src/CopyDiskAdaptor.h: Removed
	* src/DefaultPieceStorage.cc
	* src/Makefile.am
	* src/OptionHandlerFactory.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/CopyDiskAdaptorTest.cc: Removed
	* test/Makefile.am
2009-03-10 13:08:07 +00:00
Tatsuhiro Tsujikawa 173a86febc 2009-03-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten isSameFileBeingDownloaded()
	* src/RequestGroupMan.cc
2009-03-10 12:58:38 +00:00
Tatsuhiro Tsujikawa 849a533d61 2009-03-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed getName() from DownloadContext. getName() is declared in
	BtContext.
	* src/BtContext.h
	* src/DownloadContext.h
	* src/SingleFileDownloadContext.cc
	* src/SingleFileDownloadContext.h
		
	Removed getFilePath() from DiskAdaptor. getFilePath() is
	declared in AbstractSingleDiskAdaptor.
	* src/AbstractSingleDiskAdaptor.h
	* src/DiskAdaptor.h
	* src/MultiDiskAdaptor.h
	* src/RequestGroup.cc
	
	Removed setTopDir() and getTopDir() and getTopDirPath() from
	MultiDiskAdaptor.
	* src/DefaultPieceStorage.cc
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* test/MultiDiskAdaptorTest.cc
2009-03-10 12:24:29 +00:00
Tatsuhiro Tsujikawa e2704bd823 2009-03-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
FileEntry::getPath() contains store(top level) directory to
	simplify path handling operation.  In the previous
	implementation, store directory is concatenated to
	FileEntry::getPath() in DownloadContext.
	* src/BtDependency.cc
	* src/BtPostDownloadHandler.cc
	* src/CopyDiskAdaptor.cc
	* src/DefaultBtContext.cc
	* src/DirectDiskAdaptor.cc
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/FtpNegotiationCommand.cc
	* src/HttpResponse.cc
	* src/HttpResponseCommand.cc
	* src/Metalink2RequestGroup.cc
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/MultiFileAllocationIterator.cc
	* src/RequestGroup.cc
	* src/SingleFileDownloadContext.cc
	* src/SingleFileDownloadContext.h
	* src/download_helper.cc
	* test/BtDependencyTest.cc
	* test/CopyDiskAdaptorTest.cc
	* test/DefaultBtContextTest.cc
	* test/DefaultBtProgressInfoFileTest.cc
	* test/DirectDiskAdaptorTest.cc
	* test/DownloadHelperTest.cc
	* test/FileEntryTest.cc
	* test/MultiDiskAdaptorTest.cc
	* test/MultiFileAllocationIteratorTest.cc
	* test/RequestGroupTest.cc
	* test/SingleFileDownloadContextTest.cc
2009-03-09 15:10:26 +00:00
Tatsuhiro Tsujikawa ed6851636f 2009-03-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compiler warning
	* src/download_helper.cc
2009-03-09 11:33:03 +00:00
Tatsuhiro Tsujikawa bb3a55d080 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Throw exception if same infohash torrent is now downloading.
	* src/RequestGroup.cc
2009-03-08 12:47:33 +00:00
Tatsuhiro Tsujikawa 6187d6e506 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --dry-run option.  In this mode, aria2 just checks whether
	the remote file is available and doesn't download data. This
	option has effect on HTTP/FTP downloads and BitTorrent downloads
	are canceled in this mode.
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpResponseCommand.h
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2009-03-08 10:20:42 +00:00
Tatsuhiro Tsujikawa c63ceff5dd 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compiler waring
	* test/UriListParserTest.cc
2009-03-08 10:17:34 +00:00
Tatsuhiro Tsujikawa f4da71fc6d 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Parse options in -i list using OptionParser.
	* src/UriListParser.cc
	* src/UriListParser.h
2009-03-08 08:49:17 +00:00
Tatsuhiro Tsujikawa c2447e3094 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't reset URI in retry to avoid additional round trips because
	of redirects.	
	* src/AbstractCommand.cc
	* src/OptionHandlerFactory.cc
	* src/prefs.cc
	* src/prefs.h
2009-03-08 08:22:00 +00:00
Tatsuhiro Tsujikawa 1c4e7d39d4 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Declared hide() in OptionHandler.
	* src/NameMatchOptionHandler.h
	* src/OptionHandler.h
	* src/OptionHandlerImpl.h
2009-03-08 08:19:50 +00:00
Tatsuhiro Tsujikawa 75a9884fd6 2009-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc
	* src/Peer.h
2009-03-08 08:02:58 +00:00
Tatsuhiro Tsujikawa 93b7ffc4f7 2009-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added log message in setStatusInternal()
	* src/ServerStat.cc
2009-03-07 14:25:38 +00:00
Tatsuhiro Tsujikawa 91f15c4213 2009-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call ServerStat::setError() in AbstractCommand::onAbort() to
	effectively exclude failed server.
	* src/AbstractCommand.cc
2009-03-07 14:24:50 +00:00
Tatsuhiro Tsujikawa f44554a634 2009-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --index-out option to specify each file path for torrent.
	Here index shown in --show-files option is used to specify which
	file path should be altered. For example, to change the file
	path with index=2, use --index-out=2=aria2.tar.bz2. You can use
	this option multiple times: --index-out=1=aria2.tar.bz2
	--index-out=2=aria2-opt.tar.bz2. The short hand form -O is also
	available. This option can be specified in -i list.	
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/MultiFileAllocationIterator.cc
	* src/OptionHandlerFactory.cc
	* src/OptionHandlerImpl.h
	* src/Util.cc
	* src/Util.h
	* src/download_helper.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/DefaultBtContextTest.cc
	* test/MultiDiskAdaptorTest.cc
	* test/MultiFileAllocationIteratorTest.cc
	* test/UtilTest.cc
2009-03-07 03:10:53 +00:00
Tatsuhiro Tsujikawa 4aae48c9b2 2009-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use Util::pathJoin()
	* src/MetalinkParserController.cc
	* test/test.xml
2009-03-04 15:56:56 +00:00
Tatsuhiro Tsujikawa 27ff58c06e 2009-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use Util::pathJoin()
	* src/DefaultBtContext.cc
2009-03-04 15:55:16 +00:00
Tatsuhiro Tsujikawa 70a8403575 2009-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added Util::pathJoin()
	* src/Util.h
	* test/UtilTest.cc
2009-03-04 15:53:56 +00:00
Tatsuhiro Tsujikawa 6f0bd778ee 2009-03-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Applied basename function to remove directory element in
	content-disposition value.
	Return empty string if content-disposition value is ".." or ".".
	* src/Util.cc
	* test/UtilTest.cc
2009-03-04 14:49:10 +00:00
Tatsuhiro Tsujikawa b6effe2435 2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --max-overall-download-limit in man page.
	Updated --max-overall-upload-limit, --max-download-limit
	option's doc.
	* doc/aria2c.1.txt
2009-02-28 11:50:17 +00:00
Tatsuhiro Tsujikawa 0b29a6e2cf 2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --max-overall-download-limit option.  Now
	--max-upload-limit option is not ignored when
	--max-overall-upload-limit option has non-zero value. aria2
	checks download(upload) speed in the order:
	first checks overall speed limit and if it is not exceeded, then
	checks speed limit per download.  Thus you can specify both
	value. For example, set --max-overall-download-limit=1M and
	--max-download-limit=500K to prevent from one download from
	eating all overall speed limit.
	* src/DefaultBtInteractive.cc
	* src/DefaultBtInteractive.h
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultBtMessageDispatcher.h
	* src/DownloadCommand.cc
	* src/DownloadCommand.h
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/OptionHandlerFactory.cc
	* src/PeerInteractionCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/DefaultBtMessageDispatcherTest.cc
2009-02-28 11:48:26 +00:00
Tatsuhiro Tsujikawa 362cd20bf1 2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented select-file option in Input File section.
	Documented --http-auth-challenge option.
	* doc/aria2c.1.txt
2009-02-28 09:53:59 +00:00
Tatsuhiro Tsujikawa dbc8d549c7 2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Now select-file can be specified in the uri list(-i list).
	* src/BtContext.cc
	* src/BtContext.h
	* src/RequestGroup.cc
	* src/Sequence.h
	* src/download_helper.cc
2009-02-28 09:52:09 +00:00
Tatsuhiro Tsujikawa cffb6be91a 2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made the upper value of --max-concurrent-downloads options
	unlimited.
	* src/OptionHandlerFactory.cc
2009-02-28 09:36:48 +00:00
Tatsuhiro Tsujikawa 1c15b5373c 2009-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that disk writer is not created even if it shares
	same piece with the preceding file if the length of previous
	file is 0.
	* src/MultiDiskAdaptor.cc
	* test/MultiDiskAdaptorTest.cc
2009-02-27 15:33:07 +00:00
Tatsuhiro Tsujikawa 2dfee3dc49 2009-02-23 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In BitTorrent, Open files in read-only mode for hash check.
	After that, re-open file in read/write mode only when the
	download is not finished.	
	* src/AbstractDiskWriter.cc
	* src/AbstractDiskWriter.h
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/BtCheckIntegrityEntry.cc
	* src/DiskAdaptor.h
	* src/DiskWriter.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/RequestGroup.cc
2009-02-23 13:27:08 +00:00
Tatsuhiro Tsujikawa 120e2de096 2009-02-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --http-auth-challenge option.  If it is set to true(by
	default), aria2 sends HTTP authorization header only when it is
	requested by the server. If false is set, then authorization
	header is always sent to the server. This is useful for servers
	that don't respond 401 code when authentication is required.
	There is an exception: if username and password are embedded in
	URI, authorization header is always sent to the server
	regardless of this option.
	* src/AuthConfigFactory.cc
	* src/HttpSkipResponseCommand.cc
	* src/OptionHandlerFactory.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/AuthConfigFactoryTest.cc
	* test/HttpRequestTest.cc
2009-02-19 12:02:22 +00:00
Tatsuhiro Tsujikawa deb0625edb 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
* Release 1.2.0
2009-02-15 14:53:27 +00:00
Tatsuhiro Tsujikawa 2259dea9a7 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Spanish, Ukrainian, Russian and Japanese translations.
	Thanks to all translators.
	* po/es.po
	* po/ja.po
	* po/ru.po
	* po/uk.po
2009-02-15 14:48:25 +00:00
Tatsuhiro Tsujikawa 55c3fb1ca0 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call deleteSocketForReadCheck() before socket is closed.
	* src/HttpListenCommand.cc
2009-02-15 14:09:01 +00:00
Tatsuhiro Tsujikawa a82897bbaf 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Defined virtual destructor for BObject.
	* src/bencode.h
2009-02-15 13:00:05 +00:00
Tatsuhiro Tsujikawa 3ae7633f32 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten BDE to make it efficient.
	* src/bencode.cc
	* src/bencode.h
2009-02-15 12:57:47 +00:00
Tatsuhiro Tsujikawa eafb1bc615 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed function throw list.
	* src/bencode.cc
	* src/bencode.h
	* test/BencodeTest.cc
2009-02-15 11:20:21 +00:00
Tatsuhiro Tsujikawa 604cbccd0a 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Enclosed all URLs in double quotes in command-line examples.
	* doc/aria2c.1.txt
2009-02-15 03:36:55 +00:00
Tatsuhiro Tsujikawa f362463e15 2009-02-15 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated reference/see also section.
	* README
	* doc/aria2c.1.txt
2009-02-15 03:22:00 +00:00
Tatsuhiro Tsujikawa 0c1e09e64f 2009-02-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reorganized man page based on man man-pages.
	* doc/aria2c.1.txt
2009-02-14 10:17:40 +00:00
Tatsuhiro Tsujikawa 8cac61a25f 2009-02-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed SERVER PERFORMANCE PROFILE and Configuration file
	section because same documents are available in man page.  Added
	References section.
	* README
2009-02-14 09:47:34 +00:00
Tatsuhiro Tsujikawa 9b9c527d21 2009-02-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented sc_avg_speed, mc_avg_speed and counter in SERVER
	PERFORMANCE PROFILE section.
	* doc/aria2c.1.txt
2009-02-14 09:43:55 +00:00
Tatsuhiro Tsujikawa b642ee92cd 2009-02-14 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten the section for configuration file.
	* README
	* doc/aria2c.1.txt
2009-02-14 09:27:32 +00:00
Tatsuhiro Tsujikawa 7007a7386f 2009-02-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the segmentation fault during execution of choking
	algorithm in leecher state because of broken compare operator
	implementation.
	* src/BtLeecherStateChoke.cc
	* src/BtLeecherStateChoke.h
2009-02-13 14:10:55 +00:00
Tatsuhiro Tsujikawa 34d7cd7a70 2009-02-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Open file in binary mode.
	* src/CookieStorage.cc
	* src/DHTSetup.cc
	* src/DHTUtil.cc
	* src/Netrc.cc
	* src/NsCookieParser.cc
	* src/ProtocolDetector.cc
	* src/RequestGroupMan.cc
	* src/Signature.cc
	* src/bencode.cc
	* src/download_helper.cc
	* src/option_processing.cc
	* test/CookieParserTest.cc
	* test/DefaultBtProgressInfoFileTest.cc
	* test/FileTest.cc
	* test/GZipDecoderTest.cc
	* test/RequestGroupManTest.cc
	* test/SignatureTest.cc
	* test/SingleFileAllocationIteratorTest.cc
	* test/UriListParserTest.cc
2009-02-13 11:28:42 +00:00
Tatsuhiro Tsujikawa 9d27eb53f5 2009-02-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed operator[] because it is ambiguous with built-in []
	operator.
	* src/array_fun.h
2009-02-12 15:42:10 +00:00
Tatsuhiro Tsujikawa fff02b6012 2009-02-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error
	* src/OptionParser.cc
2009-02-12 15:40:33 +00:00
Tatsuhiro Tsujikawa 9ce0e78780 2009-02-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing call to arrayWrapperConst
	* test/array_funTest.cc
2009-02-12 15:39:07 +00:00
Tatsuhiro Tsujikawa 83caf2903b 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use array_wrapper instead of array_ptr.
	* src/DHTRoutingTableDeserializer.cc
2009-02-12 14:17:13 +00:00
Tatsuhiro Tsujikawa b521bd5752 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed template<typename S> array_ptr(const array_ptr<S>& s)
	* src/array_fun.h
2009-02-12 13:45:46 +00:00
Tatsuhiro Tsujikawa b8b6b5c568 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added array_wrapper template.
	* src/array_fun.h
	* test/array_funTest.cc
2009-02-12 13:44:34 +00:00
Tatsuhiro Tsujikawa a73ef15904 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use operator T* of array_ptr.
	* src/OptionParser.cc
2009-02-12 13:12:54 +00:00
Tatsuhiro Tsujikawa 2e9edd316a 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use localhost instead of 127.0.0.1
	* test/FtpConnectionTest.cc
	* test/MSEHandshakeTest.cc
2009-02-12 13:11:51 +00:00
Tatsuhiro Tsujikawa 1c46a26ae6 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added operator T*
	* src/array_fun.h
	* test/array_funTest.cc
2009-02-12 13:10:38 +00:00
Tatsuhiro Tsujikawa 5547b3a5ed 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use dynamically allocated char array to detect memory access
	violation.
	* src/DHTRoutingTableDeserializer.cc
2009-02-11 16:33:45 +00:00
Tatsuhiro Tsujikawa 509c13c173 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Set struct sockaddr_in.sin_len if HAVE_SOCKADDR_IN_SIN_LEN is
	defined.
	* src/PeerMessageUtil.cc
2009-02-11 16:15:30 +00:00
Tatsuhiro Tsujikawa 44e574e2fe 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Renamed HAVE_SOCKADDR_SIN_LEN as HAVE_SOCKADDR_IN_SIN_LEN
	* configure.ac
2009-02-11 16:14:22 +00:00
Tatsuhiro Tsujikawa c0f13f9e69 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added a check to see struct sockaddr_in has sin_len member.
	* configure.ac
2009-02-11 16:12:07 +00:00
Tatsuhiro Tsujikawa 8f596468eb 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed buffer overrun.
	* src/DHTRoutingTableDeserializer.cc
2009-02-11 16:09:20 +00:00
Tatsuhiro Tsujikawa c7cf936956 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added LL for long long int constant.
	* test/FtpConnectionTest.cc
2009-02-11 16:08:14 +00:00
Tatsuhiro Tsujikawa 1982ebaf1f 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Casted to unsigned int to suppress compiler warning on netbsd.
	* src/BtRuntime.h
2009-02-11 16:07:00 +00:00
Tatsuhiro Tsujikawa 43796accda 2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Assign the value of tv.tv_sec to time_t timesec instead of
	giving tv.tv_sec to localtime_r directly because tv.tv_sec may
	not be  of type time_t.
	* src/SimpleLogger.cc
2009-02-11 16:05:33 +00:00
Tatsuhiro Tsujikawa 0a5f6751d1 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added test for FtpConnection::receiveSizeResponse().
	* test/FtpConnectionTest.cc
2009-02-11 10:41:56 +00:00
Tatsuhiro Tsujikawa cf20e207d4 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fix epoll error on the old kernel 2.6.8 or ealier.
	* src/EpollEventPoll.cc
2009-02-11 10:34:43 +00:00
Tatsuhiro Tsujikawa 56366759fc 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use Util::parseLLInt instead of sscanf for portability. The
	conversion "%Lu" fails in Mac OSX which requires "%llu" instead.	
	* src/FtpConnection.cc
2009-02-11 10:32:10 +00:00
Tatsuhiro Tsujikawa 0fc900c0ac 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that adding 0 length filter to BitfieldMan filters
	1 block. It should not filter anything.
	* src/BitfieldMan.cc
	* src/ConsoleStatCalc.cc
	* test/BitfieldManTest.cc
2009-02-11 07:54:03 +00:00
Tatsuhiro Tsujikawa a8376a5c4b 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that the boolean options that don't take arguments
	don't work.
	* src/OptionHandlerImpl.h
2009-02-11 07:46:15 +00:00
Tatsuhiro Tsujikawa a2c3c54386 s/MultiDiskWriter/MultiDiskAdaptor/ in the previous log message. 2009-02-11 07:43:10 +00:00
Tatsuhiro Tsujikawa b5af788a00 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed broken selected file BitTorrent download.
	* src/MultiDiskWriter.cc
	* test/MultiDiskWriterTest.cc
	* test/MultiFileAllocationIteratorTest.cc
2009-02-11 07:41:15 +00:00
Tatsuhiro Tsujikawa 4570a4242e 2009-02-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed #define guard for EpollEventPoll
	* src/EpollEventPoll.h
2009-02-10 17:00:43 +00:00
Tatsuhiro Tsujikawa d63308afc5 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Wait 2 seconds. 1 second is sometimes not enough.
	* test/TimeSeedCriteriaTest.cc
2009-02-10 14:53:32 +00:00
Tatsuhiro Tsujikawa 900d102bbf 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use localhost instead of 127.0.0.1.
	* test/DHTConnectionImplTest.cc
2009-02-10 14:52:20 +00:00
Tatsuhiro Tsujikawa fb8848d415 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Suppressed compiler warning.
	* src/AdaptiveURISelector.cc
	* src/DefaultPieceStorage.cc
2009-02-10 14:50:54 +00:00
Tatsuhiro Tsujikawa 145799abc5 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Defined virtual destructor.
	* src/MetalinkParserState.h
2009-02-10 14:49:35 +00:00
Tatsuhiro Tsujikawa 15b2d2f53b 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Give NULL for second argument of getaddrinfo instead of "0".
	* src/NameResolver.cc
2009-02-10 14:48:36 +00:00
Tatsuhiro Tsujikawa fe267b43d5 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't use Time::parse(buf, "%Y%m%d%H%M%S") because Mac OS X and
	included strptime doesn't parse data for this format.
	* src/FtpConnection.cc
	* test/FtpConnectionTest.cc
2009-02-10 14:47:07 +00:00
Tatsuhiro Tsujikawa a57e0b1273 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed tests giving -1 for unsigned argument.
	* test/SingleFileDownloadContextTest.cc
2009-02-10 14:45:21 +00:00
Tatsuhiro Tsujikawa 52b17520de 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't use sha256 in tests because it might not be supported by
	the SSL library.
	* test/MetalinkProcessorTest.cc
2009-02-10 14:44:33 +00:00
Tatsuhiro Tsujikawa ab06444ba7 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed tests giving -1 for unsigned argument.
	* test/AlphaNumberDecoratorTest
	* test/BitfieldManTest.cc
	* test/DefaultBtContextTest.cc
2009-02-10 14:42:49 +00:00
Tatsuhiro Tsujikawa 01b3968f92 2009-02-10 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error without libcares when epoll is available.
	* src/EpollEventPoll.cc
2009-02-10 14:26:11 +00:00
Tatsuhiro Tsujikawa abae62908f 2009-02-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Included fstream instead of iostream.
	* test/SignatureTest.cc
2009-02-09 12:45:07 +00:00
Tatsuhiro Tsujikawa 28d9af6d04 2009-02-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed #include <algorithm>
	* test/RequestGroupTest.cc
2009-02-08 14:21:20 +00:00
Tatsuhiro Tsujikawa 9bb57720cf 2009-02-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten AdaptiveURISelector::mayRetryWithIncreasedTimeout()
	using RequestGroup::extractURIResult().
	* src/AdaptiveURISelector.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* test/RequestGroupTest.cc
2009-02-08 14:17:55 +00:00
Tatsuhiro Tsujikawa b8d177dd5d 2009-02-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tests for array_ptr.
	* test/array_funTest.cc
2009-02-08 11:27:22 +00:00
Tatsuhiro Tsujikawa 9a7eee5cfa 2009-02-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't send ip parameter to a tracker if ip parameter is empty
	string.	
	* src/DefaultBtAnnounce.cc
2009-02-07 15:02:32 +00:00
Tatsuhiro Tsujikawa 064754396e 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Adjusted line feed.
	* src/version_usage.cc
2009-02-07 14:24:56 +00:00
Tatsuhiro Tsujikawa 9dd04b7aaa 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Print tags, possible values when OptionHandlerException is
	caught.
	* src/option_processing.cc
2009-02-07 14:24:11 +00:00
Tatsuhiro Tsujikawa d71f434f61 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Changed the message for FatalException.
	* src/OptionParser.cc
2009-02-07 14:22:17 +00:00
Tatsuhiro Tsujikawa 366e5f40d5 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --bt-external-ip option in man page.  Updated man
	pages for --proxy-method option.
	* doc/aria2c.1.txt
2009-02-07 14:01:38 +00:00
Tatsuhiro Tsujikawa 0fcdb7eee3 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use GET method for FTP via HTTP proxy.
	* src/FtpInitiateConnectionCommand.cc
2009-02-07 13:52:41 +00:00
Tatsuhiro Tsujikawa 997a0c29d1 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Changed the default value of --proxy-method option from 'tunnel'
	to 'get'. Use 'tunnel' for HTTPS regardless of --proxy-method
	option.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/FtpInitiateConnectionCommand.cc
	* src/HttpDownloadCommand.cc
	* src/HttpInitiateConnectionCommand.cc
	* src/HttpInitiateConnectionCommand.h
	* src/OptionHandlerFactory.cc
2009-02-07 13:46:08 +00:00
Tatsuhiro Tsujikawa 1b854afe44 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Initialized _logger
	* src/SelectEventPoll.cc
2009-02-07 13:38:13 +00:00
Tatsuhiro Tsujikawa 0185a9d5a5 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Defined a copy constructor for the same type.
	* src/SharedHandle.h
2009-02-07 11:02:21 +00:00
Tatsuhiro Tsujikawa 2881dbe025 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added OptionParser::parseArg() which internally uses getopt_long
	to parse command-line options. All command-line options are now
	configured by OptionHandler. No manual editing of struct option*
	is required any more.
	* src/NameMatchOptionHandler.h
	* src/OptionHandler.h
	* src/OptionHandlerFactory.cc
	* src/OptionHandlerImpl.h
	* src/OptionParser.cc
	* src/OptionParser.h
	* src/array_fun.h
	* src/main.cc
	* src/option_processing.cc
	* test/OptionHandlerTest.cc
	* test/OptionParserTest.cc
2009-02-07 11:00:34 +00:00
Tatsuhiro Tsujikawa bbb3589293 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed configure error with --disable-epoll
	* configure.ac
2009-02-06 16:51:00 +00:00
Tatsuhiro Tsujikawa 5f0f8e68b2 2009-02-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error when HAVE_EPOLL is not defined.
	Fixed linker error on bigendian systems.
	* src/SocketCore.cc
	* src/SocketCore.h
	* test/DefaultBtProgressInfoFileTest.cc
2009-02-06 16:49:24 +00:00
Tatsuhiro Tsujikawa 0640ea6254 2009-02-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --bt-external-ip option. You can specify the external IP
	address to report to a BitTorrent tracker. Although this
	function is named 'external', it can accept any kind of IP
	addresses.
	* src/DefaultBtAnnounce.cc
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/DefaultBtAnnounceTest.cc
2009-02-04 14:11:30 +00:00
Tatsuhiro Tsujikawa 23a6eff88e 2009-02-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Extracted the algorithm to find the longest incremental sequence
	as max_sequence template.
	* src/LongestSequencePieceSelector.cc
	* src/a2algo.h
	* test/Makefile.am
	* test/a2algoTest.cc
2009-02-03 14:46:33 +00:00
Tatsuhiro Tsujikawa c41fec3a22 2009-02-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed TEXT_HTTP_SERVER_LISTEN_PORT from translation texts.
	* src/usage_text.h
2009-02-02 15:25:45 +00:00
Tatsuhiro Tsujikawa d4704a9d47 2009-02-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc for --uri-selector, --http-server-listen-port and
	--enable-http-server option. Documented --event-poll option.	
	* doc/aria2c.1.txt
2009-02-02 14:30:29 +00:00
Tatsuhiro Tsujikawa 746c00d400 2009-02-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated doc for --enable-http-server.
	* src/usage_text.h
2009-02-02 14:20:41 +00:00
Tatsuhiro Tsujikawa a2fcc3f037 2009-02-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented --http-server-listen-port and --enable-http-server in
	man page.
	* doc/aria2c.1.txt
2009-02-02 14:18:02 +00:00
Tatsuhiro Tsujikawa 14d3ef79ed 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated Spanish, Indonesian, Russian, Ukrainian and Italian
	translations. Thanks to all translators.
	* po/es.po
	* po/id.po
	* po/it.po
	* po/ru.po
	* po/uk.po
2009-02-01 04:09:44 +00:00
Tatsuhiro Tsujikawa 970b887fbc 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.2.0
	* configure.ac
2009-02-01 03:56:40 +00:00
Tatsuhiro Tsujikawa 388b64df04 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
BtContext::getAnnounceTiers() now returns const reference.
	* src/BtContext.h
	* src/DefaultBtContext.cc
	* src/DefaultBtContext.h
	* test/MockBtContext.h
2009-02-01 03:29:04 +00:00
Tatsuhiro Tsujikawa 746c187ae8 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Change the number of retries for tracker request based on the
	number of available tracker in a torrent file.
	* src/TrackerWatcherCommand.cc
2009-02-01 03:24:02 +00:00
Tatsuhiro Tsujikawa 1b26827851 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added _maxTries property to RequestGroup and assign the option
	value of PREF_MAX_TRIES to it. AbstractCommand now looks up
	RequestGroup::getMaxTries() instead of
	Option::getAsInt(PREF_MAX_TRIES).
	* src/AbstractCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
2009-02-01 03:03:17 +00:00
Tatsuhiro Tsujikawa f16fb1c890 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Applied AdaptiveURISelector-timeout patch from Pascal Rigaux at
	Mandriva. I modified the patch: make RequestGroup have the
	timeout value and AdaptiveURISelector directly modifies that
	value.
	* src/AbstractCommand.cc
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
	* src/FtpNegotiationCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
2009-02-01 02:55:44 +00:00
Tatsuhiro Tsujikawa 30e183ef54 2009-02-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compiler warning
	* test/IteratableChecksumValidatorTest.cc
2009-02-01 02:50:38 +00:00
Tatsuhiro Tsujikawa 660c480cca 2009-01-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use LongestSequencePieceSelector for HTTP/FTP/BitTorrent
	integrated downloads. This PieceSelector subclass finds the
	longest continuous sequence in the available missing pieces and
	selects the last index of such sequence. This makes HTTP/FTP
	connections less interrupted by the pieces obtained by
	BitTorrent peers.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/LongestSequencePieceSelector.cc
	* src/LongestSequencePieceSelector.h
	* src/Makefile.am
	* src/PieceSelector.h
	* src/RarestPieceSelector.h
	* src/RequestGroup.cc
	* test/BtDependencyTest.cc
	* test/DefaultPieceStorageTest.cc
	* test/IteratableChecksumValidatorTest.cc
	* test/LongestSequencePieceSelectorTest.cc
	* test/Makefile.am
	* test/SegmentManTest.cc
2009-01-31 14:34:29 +00:00
Tatsuhiro Tsujikawa 84f02e7dd0 2009-01-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that the average speed is wrong in
	http/ftp/BitTorrent integrated download. Only the download bytes
	in BitTorrent were considered.
	* src/RequestGroup.cc
2009-01-31 13:01:25 +00:00
Tatsuhiro Tsujikawa dbc8f687c1 2009-01-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Choose port for BitTorrent/DHT randomly from the specified
	range.
	* src/DHTConnectionImpl.cc
	* src/PeerListenCommand.cc
2009-01-30 16:24:35 +00:00
Tatsuhiro Tsujikawa e5c4b24454 2009-01-31 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Send HTTP Authorization header only if it is requested by the
	server(response 401). There are some exceptions. The
	authorization header for proxy is always sent if it is available	
	without request	by the server.  If username/password is specified
	 in the URI, it is immediately sent to the server without
	request by the server.
	
	AbstractAuthResolver::_defaultAuthConfig is now initialized as
	SharedHandle<AuthConfig>().
	NetrcAuthResolver::resolveAuthConfig() returns
	SharedHandle<AuthConfig>() if no AuthConfig is available.
	* src/AbstractAuthResolver.cc
	* src/AbstractProxyRequestCommand.cc
	* src/AuthConfigFactory.cc
	* src/AuthConfigFactory.h
	* src/HttpConnection.cc
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpResponse.cc
	* src/HttpResponseCommand.cc
	* src/HttpSkipResponseCommand.cc
	* test/AuthConfigFactoryTest.cc
	* test/HttpRequestTest.cc
	* test/HttpResponseTest.cc
2009-01-30 16:12:41 +00:00
Tatsuhiro Tsujikawa 120ea4c609 2009-01-27 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Remove leading "--" from help keyword and a substring after "="
	from help keyword, so that one can query options by '-h--max-'
	or '-hmax-peers=10'.	
	* src/option_processing.cc
2009-01-27 12:40:44 +00:00
Tatsuhiro Tsujikawa 873231fe1e 2009-01-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten PStringVisitor and its implementation.
	* src/PStringBuildVisitor.cc
	* src/PStringBuildVisitor.h
	* src/PStringDatum.h
	* src/PStringNumLoop.h
	* src/PStringSegment.cc
	* src/PStringSegment.h
	* src/PStringSelect.h
	* src/PStringVisitor.h
	* src/download_helper.cc
	* test/PStringBuildVisitorTest.cc
	* test/ParameterizedStringParserTest.cc
2009-01-25 14:19:27 +00:00
Tatsuhiro Tsujikawa 5def96906f 2009-01-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Persist connection between the built-in HTTP server and a client
	if a client supports keep-alive. Fixed the bug that aria2 exits
	when the HTTP server receives EOF from a client.	
	* src/HttpServer.cc
	* src/HttpServer.h
	* src/HttpServerCommand.cc
	* src/HttpServerCommand.h
	* src/HttpServerResponseCommand.cc
2009-01-25 10:55:27 +00:00
Tatsuhiro Tsujikawa 0742e3921f 2009-01-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added experimental built-in HTTP server. Currently, when a
	client accesses to the server, it responds with the current
	download progress. By default, it is disabled. To enable the
	server, give --enable-http-server option.  To change the default
	port number for the server to listen to, use
	--http-server-listen-port option.
	The response HTML is very simple and refreshes it self each 1
	second.  Because of this refresh, you see flicker in normal web
	browser such as Firefox.  I recommend to use console-based
	browser such as elinks, w3m.  To connect to the server, run
	'elinks http://localhost:6800/' while running aria2. Please
	replace port number '6800'(which is default) with your
	preference.	
	* src/DownloadEngineFactory.cc
	* src/HttpHeader.cc
	* src/HttpHeader.h
	* src/HttpHeaderProcessor.cc
	* src/HttpHeaderProcessor.h
	* src/HttpListenCommand.cc
	* src/HttpListenCommand.h
	* src/HttpServer.cc
	* src/HttpServer.h
	* src/HttpServerCommand.cc
	* src/HttpServerCommand.h
	* src/HttpServerResponseCommand.cc
	* src/HttpServerResponseCommand.h
	* src/Makefile.am
	* src/OptionHandlerFactory.cc
	* src/Util.cc
	* src/Util.h
	* src/help_tags.h
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/HttpHeaderProcessorTest.cc
	* test/UtilTest.cc
2009-01-25 09:58:40 +00:00
Tatsuhiro Tsujikawa 9505df51ef 2009-01-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed.
	* src/CheckIntegrityMan.cc
	* src/FileAllocationMan.cc
2009-01-24 10:54:52 +00:00
Tatsuhiro Tsujikawa adf91f656b 2009-01-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made (piece) hash check sequential for each RequestGroup because
	simultaneous hash check is slower than sequential execution.	
	* src/CheckIntegrityCommand.cc
	* src/CheckIntegrityDispatcherCommand.cc
	* src/CheckIntegrityDispatcherCommand.h
	* src/CheckIntegrityMan.h
	* src/ConsoleStatCalc.cc
	* src/DownloadCommand.cc
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/DownloadEngineFactory.cc
	* src/Makefile.am
	* src/Makefile.in
	* src/RequestGroup.cc
	* src/StatCalc.h
2009-01-24 10:40:42 +00:00
Tatsuhiro Tsujikawa 5da58fe01d 2009-01-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Moved setStatusRealtime() from FileAllocationDispatcherCommand
	to SequentialDispatcherCommand.
	* src/FileAllocationDispatcherCommand.cc
	* src/SequentialDispatcherCommand.h
2009-01-24 10:29:36 +00:00
Tatsuhiro Tsujikawa a20aa3c7e5 2009-01-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten FileAllocationDispatcherCommand using brand new
	SequentialDispatcherCommand.
	* src/DownloadEngineFactory.cc
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FileAllocationDispatcherCommand.h
	* src/Makefile.am
	* src/SequentialDispatcherCommand.h
2009-01-24 09:49:37 +00:00
Tatsuhiro Tsujikawa 8ca9db9f3e 2009-01-24 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Replaced FileAllocationMan with
	SequentialPicker<FileAllocationEntry>.
	* src/BtCheckIntegrityEntry.cc
	* src/ConsoleStatCalc.cc
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/DownloadEngineFactory.cc
	* src/FileAllocationCommand.cc
	* src/FileAllocationDispatcherCommand.cc
	* src/FileAllocationMan.h
	* src/Makefile.am
	* src/SequentialPicker.h
	* src/StatCalc.h
	* src/StreamCheckIntegrityEntry.cc
	* test/Makefile.am
	* test/SequentialPickerTest.cc
2009-01-24 09:00:36 +00:00
Tatsuhiro Tsujikawa ea370b864e 2009-01-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added doc for adaptive URI selector.
	* doc/aria2c.1.txt
2009-01-19 14:14:26 +00:00
Tatsuhiro Tsujikawa ddd050f65f 2009-01-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added doc for adaptive URI selector.
	* src/usage_text.h
2009-01-19 14:11:04 +00:00
Tatsuhiro Tsujikawa 526e1677d9 2009-01-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added doc for --bt-max-peers option.
	* doc/aria2c.1.txt
2009-01-19 13:59:29 +00:00
Tatsuhiro Tsujikawa 8bd9ca287d 2009-01-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added doc for --bt-hash-check-seed option.
	* doc/aria2c.1.txt
2009-01-19 13:56:19 +00:00
Tatsuhiro Tsujikawa c38a2491a6 2009-01-19 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Documented exit codes.
	* doc/aria2c.1.txt
2009-01-19 13:46:39 +00:00
Tatsuhiro Tsujikawa ca2567f2a2 2009-01-18 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --bt-max-peers option to specify the maximum number of
	peers per torrent. 0 means unlimited number of peers.
	* src/ActivePeerConnectionCommand.cc
	* src/BtRuntime.h
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
	* test/DefaultPeerStorageTest.cc
2009-01-18 10:11:08 +00:00
Tatsuhiro Tsujikawa 809a28fbae 2009-01-18 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --bt-hash-check-seed option.  If true is given to this
	option, after hash check using --check-integrity option and file
	is complete, continue to seed file. If you want to check file
	and download it only when it is damaged or incomplete, set this
	option to false.  This option has effect only on BitTorrent
	download. The default value is true(This is the same behavior
	with the previous release).
	* src/BtCheckIntegrityEntry.cc
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2009-01-18 09:04:46 +00:00
Tatsuhiro Tsujikawa b7feed9ba7 2009-01-18 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated copyright year.
	* src/version_usage.cc
2009-01-18 05:34:02 +00:00
Tatsuhiro Tsujikawa b9d4caeee9 2009-01-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten the usage text for --bt-request-peer-speed-limit
	option.
	* doc/aria2c.1.txt
	* src/usage_text.h
2009-01-15 15:57:48 +00:00
Tatsuhiro Tsujikawa 55df3c78a3 2009-01-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made the max value of split option unlimited.
	* doc/aria2c.1.txt
	* src/OptionHandlerFactory.cc
2009-01-15 15:41:15 +00:00
Tatsuhiro Tsujikawa c34ac25683 2009-01-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile warning/error.
	* src/DownloadResult.h
	* src/HttpDownloadCommand.cc
	* src/ServerStat.cc
	* test/RequestGroupTest.cc
2009-01-15 15:39:05 +00:00
Tatsuhiro Tsujikawa 1ab8ade5d1 2009-01-16 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --event-poll option to select the method for polling
	events.
	The available methods are "select" and "epoll". "epoll" is
	available on Linux only. The earlier release has the compile
	option to choose from these methods.
	* configure.ac
	* src/RequestGroupMan.cc
	* src/OptionHandlerFactory.cc
	* src/EpollEventPoll.h
	* src/StreamFileAllocationEntry.cc
	* src/a2io.h
	* src/SelectEventPoll.h
	* src/option_processing.cc
	* src/prefs.h
	* src/EpollEventPoll.cc
	* src/EventPoll.h
	* src/SocketCore.h
	* src/Makefile.am
	* src/main.cc
	* src/DownloadEngine.h
	* src/SelectEventPoll.cc
	* src/DownloadEngine.cc
	* src/SocketCore.cc
	* src/DownloadEngineFactory.cc
	* src/Makefile.in
	* src/prefs.cc
	* src/usage_text.h
2009-01-15 15:23:16 +00:00
Tatsuhiro Tsujikawa 5fbd997784 2009-01-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Included RecoverableException.h from main.cc
	* src/main.cc
2009-01-12 12:29:41 +00:00
Tatsuhiro Tsujikawa 8a9d921465 2009-01-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Applied exit-status patch from Pascal Rigaux at Mandriva.  aria2
	now returns last error encountered in the HTTP/FTP downloads as
	a exit status value.  If all downloads finished successfully, 
	aria2 returns 0.  The error code is defined in
	src/DownloadResult.h.
	The error occurred in the download currently in progress is not
	reported as a last error.  If no error has encountered but there
	are in progress or waiting downloads, aria2 returns 7.
	
	* src/AbstractCommand.cc
	* src/DlAbortEx.h
	* src/DlRetryEx.h
	* src/DownloadCommand.cc
	* src/DownloadFailureException.h
	* src/DownloadResult.h
	* src/FtpNegotiationCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/Makefile.am
	* src/MultiUrlRequestInfo.cc
	* src/MultiUrlRequestInfo.h
	* src/RecoverableException.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
	* src/URIResult.cc
	* src/URIResult.h
	* src/main.cc
	* src/option_processing.cc
	* test/RequestGroupTest.cc
2009-01-12 12:27:34 +00:00
Tatsuhiro Tsujikawa 0a4f43d0ed 2009-01-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Applied AdaptiveURISelector patch from Aurelien Lefebvre.  This
	patch adds AdaptiveURISelector, which selects one of the bests
	mirrors for first and reserved connections. For supplementary
	ones, it returns mirrors which has not been tested yet, and if
	each of them already tested, returns mirrors which has to be
	tested again. Otherwise, it doesn't return anymore mirrors.
	* src/AdaptiveURISelector.cc
	* src/AdaptiveURISelector.h
	* src/FtpNegotiationCommand.cc
	* src/HttpResponseCommand.cc
	* src/Makefile.am
	* src/Makefile.in
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/ServerStat.cc
	* src/ServerStat.h
	* src/ServerStatMan.cc
	* src/SpeedCalc.cc
	* src/URISelector.h
	* src/prefs.cc
	* src/prefs.h
	* test/RequestGroupManTest.cc
	* test/ServerStatManTest.cc
	* test/ServerStatTest.cc
2009-01-06 13:13:42 +00:00