Commit Graph

2205 Commits (5cc28b2d8003b0838513d968cb2a9339410e2041)

Author SHA1 Message Date
Tatsuhiro Tsujikawa a7c2cafeac 2010-03-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Bump up version number to 1.9.0
	* configure.ac
2010-03-08 15:03:02 +00:00
Tatsuhiro Tsujikawa 587be5119c 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that FillRequestGroupCommand is not invoked when
	RequestGroupMan::createInitialCommand() creates no Command object.
	* src/FillRequestGroupCommand.cc
	* src/RequestGroupMan.cc
2010-03-08 15:01:45 +00:00
Tatsuhiro Tsujikawa 2c2d19d5d5 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added debug logs.
	* src/FileEntry.cc
	* src/SegmentMan.cc
2010-03-08 14:34:32 +00:00
Tatsuhiro Tsujikawa d57ba674c4 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed unit test error with mingw32 build.
	* test/LpdMessageReceiverTest.cc
2010-03-08 13:47:17 +00:00
Tatsuhiro Tsujikawa 4c1ca715f6 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Updated automake-1.11.1
2010-03-08 12:39:16 +00:00
Tatsuhiro Tsujikawa ab6644c3de 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error and unit test error without openssl and
	gnutls.
	* src/MetalinkParserController.cc
	* test/MetalinkProcessorTest.cc
2010-03-08 12:17:26 +00:00
Tatsuhiro Tsujikawa c4a35932cb 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed unitest fails if openssl doesn't support sha-256.
	* src/MetalinkParserStateV4Impl.cc
	* test/MetalinkProcessorTest.cc
2010-03-08 12:01:08 +00:00
Tatsuhiro Tsujikawa 6921e3c543 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Wait until message arrives(again)
	* test/LpdMessageReceiverTest.cc
2010-03-08 11:59:12 +00:00
Tatsuhiro Tsujikawa b6778acd5e 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added missing wallclock.h to SRCS.
	* src/Makefile.am
2010-03-08 11:19:44 +00:00
Tatsuhiro Tsujikawa 5f376f3c60 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed compile error with --disable-bittorrent
	* test/Metalink2RequestGroupTest.cc
	* test/MetalinkParserControllerTest.cc
2010-03-07 15:37:18 +00:00
Tatsuhiro Tsujikawa 49169c93ba 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added --reuse-uri option. This option has existed quite long, but
	been hidden.
	* doc/aria2c.1.txt
	* src/OptionHandlerFactory.cc
	* src/usage_text.h
2010-03-07 15:26:58 +00:00
Tatsuhiro Tsujikawa 3ecf6e4b6f 2010-03-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Ignore filename parameter if it contains directory traversal
	directives.
	* src/util.cc
	* test/UtilTest.cc
2010-03-07 15:06:48 +00:00
Tatsuhiro Tsujikawa 41b7b9428f 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
urldecode -> percentDecode
	* src/FtpConnection.cc
	* src/FtpNegotiationCommand.cc
	* src/HttpResponse.cc
	* src/Request.cc
	* src/magnet.cc
	* src/util.cc
	* src/util.h
	* test/UtilTest.cc
2010-03-07 14:29:40 +00:00
Tatsuhiro Tsujikawa 10b52bd9ac 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
urlencode -> percentEncode,
	torrentUrlencode -> torrentPercentEncode
	* src/BtHandshakeMessage.cc
	* src/BtHandshakeMessageValidator.h
	* src/DHTMessageFactoryImpl.cc
	* src/DefaultBtAnnounce.cc
	* src/HandshakeExtensionMessage.cc
	* src/HttpRequest.cc
	* src/XmlRpcMethodImpl.cc
	* src/bittorrent_helper.cc
	* src/util.cc
	* src/util.h
	* test/DHTAnnouncePeerMessageTest.cc
	* test/DHTGetPeersMessageTest.cc
	* test/DHTGetPeersReplyMessageTest.cc
	* test/UTPexExtensionMessageTest.cc
	* test/UtilTest.cc
2010-03-07 14:24:21 +00:00
Tatsuhiro Tsujikawa 4785b7190c 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that filename is percent encoded where it must be
	percent decoded in sendMdtm().
	* src/FtpConnection.cc
	* test/FtpConnectionTest.cc
2010-03-07 14:17:53 +00:00
Tatsuhiro Tsujikawa b0f180c99c 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
url -> uri in Request class.
	* src/AbstractCommand.cc
	* src/AdaptiveURISelector.cc
	* src/DefaultBtAnnounce.cc
	* src/FeedbackURISelector.cc
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/HttpRequest.h
	* src/HttpResponse.cc
	* src/InitiateConnectionCommandFactory.cc
	* src/Metalink2RequestGroup.cc
	* src/OptionHandlerImpl.h
	* src/ProtocolDetector.cc
	* src/Request.cc
	* src/Request.h
	* src/XmlRpcMethodImpl.cc
	* test/AuthConfigFactoryTest.cc
	* test/FtpConnectionTest.cc
	* test/HttpRequestTest.cc
	* test/HttpResponseTest.cc
	* test/RequestTest.cc
2010-03-07 10:36:42 +00:00
Tatsuhiro Tsujikawa 6ce44b001d 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added getServers XML-RPC method.
	* doc/aria2c.1.txt
	* src/FileEntry.h
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2010-03-07 08:30:19 +00:00
Tatsuhiro Tsujikawa 5fb7197a08 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Pool request when download finished.
	* src/DownloadCommand.cc
2010-03-07 08:06:52 +00:00
Tatsuhiro Tsujikawa 2cb0c8e69d 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made 'fileIndex' parameter in aria2.changeUri XML-RPC method
	1-based.
	* doc/aria2c.1.txt
	* src/XmlRpcMethodImpl.cc
	* test/XmlRpcMethodTest.cc
2010-03-07 07:24:19 +00:00
Tatsuhiro Tsujikawa e5e561afba 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Call RequestGroupMan::requestQueueCheck() when
	max-concurrent-downloads option is changed or new downloads are
	added/inserted into reserved list.
	* src/RequestGroupMan.cc
	* src/XmlRpcMethodImpl.cc
2010-03-07 06:46:33 +00:00
Tatsuhiro Tsujikawa 41e203bf84 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added aria2.forceRemove XML-RPC method.
	* doc/aria2c.1.txt
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
2010-03-07 06:04:15 +00:00
Tatsuhiro Tsujikawa 7f593c3ff8 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added debug log.
	* src/AbstractCommand.cc
2010-03-07 03:11:14 +00:00
Tatsuhiro Tsujikawa f3973e5a12 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Create CreateRequestCommand to the number of -s/-C when URIs are
	added by XML-RPC.
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/XmlRpcMethodImpl.cc
2010-03-07 03:10:19 +00:00
Tatsuhiro Tsujikawa 7923125382 2010-03-07 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added 'status' key to the response of getUri XML-RPC method.
	* doc/aria2c.1.txt
	* src/XmlRpcMethodImpl.cc
2010-03-06 15:09:11 +00:00
Tatsuhiro Tsujikawa e3b5d60893 2010-03-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Replaced Time::reset() call with assigning of global::wallclock.
	* src/BtLeecherStateChoke.cc
	* src/BtSeederStateChoke.cc
	* src/PeerSessionResource.cc
	* src/RequestSlot.cc
	* src/ServerStat.cc
	* src/SpeedCalc.cc
2010-03-06 14:30:05 +00:00
Tatsuhiro Tsujikawa b1713e6373 2010-03-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added changeUri XML-RPC method.  This method removes/adds URIs
	dynamically.
	* doc/aria2c.1.txt
	* src/AbstractCommand.cc
	* src/DownloadContext.cc
	* src/DownloadContext.h
	* src/FileEntry.cc
	* src/FileEntry.h
	* src/Request.cc
	* src/Request.h
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
	* src/XmlRpcMethodFactory.cc
	* src/XmlRpcMethodImpl.cc
	* src/XmlRpcMethodImpl.h
	* test/FileEntryTest.cc
	* test/XmlRpcMethodTest.cc
2010-03-06 14:21:43 +00:00
Tatsuhiro Tsujikawa 61b2b88c29 2010-03-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten copy ctor of RequestSlot to use initialization list.
	* src/RequestSlot.h
2010-03-06 08:45:12 +00:00
Tatsuhiro Tsujikawa 8d09b069e2 2010-03-06 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added Time global::wallclock to cache "current time" to reduce the
	call gettimeofday(). Global variables are now in namespace global.
	* src/AbstractCommand.cc
	* src/ActivePeerConnectionCommand.cc
	* src/AdaptiveURISelector.cc
	* src/BtLeecherStateChoke.cc
	* src/BtLeecherStateChoke.h
	* src/BtSeederStateChoke.cc
	* src/BtSeederStateChoke.h
	* src/BtStopDownloadCommand.cc
	* src/ConsoleStatCalc.cc
	* src/DHTBucket.cc
	* src/DHTGetPeersCommand.cc
	* src/DHTMessageTrackerEntry.cc
	* src/DHTNode.cc
	* src/DHTPeerAnnounceEntry.cc
	* src/DHTPeerAnnounceStorage.cc
	* src/DHTSetup.cc
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtInteractive.cc
	* src/DefaultBtMessageDispatcher.cc
	* src/DefaultPeerStorage.cc
	* src/DefaultPieceStorage.cc
	* src/DownloadCommand.cc
	* src/DownloadEngine.cc
	* src/FileEntry.cc
	* src/HttpServerBodyCommand.cc
	* src/HttpServerCommand.cc
	* src/HttpServerResponseCommand.cc
	* src/LpdMessageDispatcher.cc
	* src/MultiUrlRequestInfo.cc
	* src/Peer.cc
	* src/Peer.h
	* src/PeerAbstractCommand.cc
	* src/PeerStat.h
	* src/RequestSlot.cc
	* src/RequestSlot.h
	* src/SegmentMan.cc
	* src/ServerStatMan.cc
	* src/SleepCommand.cc
	* src/SpeedCalc.cc
	* src/SpeedCalc.h
	* src/TimeA2.cc
	* src/TimeA2.h
	* src/TimeBasedCommand.cc
	* src/TimeSeedCriteria.h
	* src/UTMetadataRequestTracker.h
	* src/UTPexExtensionMessage.cc
	* src/wallclock.h
2010-03-06 08:29:53 +00:00
Tatsuhiro Tsujikawa 7637fd76a2 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed the bug that util::itos(INT64_MIN) fails.
	* src/util.cc
	* src/util.h
	* test/UtilTest.cc
2010-03-05 14:38:49 +00:00
Tatsuhiro Tsujikawa f0938cf1d6 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed memory leak in SocketBuffer when _bufq is not empty when
	SocketBuffer is deleted. Added BufEntry constructor and deleted
	static factory functions.
	* src/SocketBuffer.cc
	* src/SocketBuffer.h
2010-03-05 14:11:00 +00:00
Tatsuhiro Tsujikawa fe8fea56ca 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Only execute RequestGroupMan::fillRequestGroupFromReserver() when
	queue maintenance is requested by RequestGroup to avoid to call
	the function unnecessarily.
	* src/FillRequestGroupCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
2010-03-05 14:02:23 +00:00
Tatsuhiro Tsujikawa db4ed87f7a 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Don't use hash for Peer::id. Simple concatenation of ip address
	and port is enough.
	* src/Peer.cc
	* test/PeerTest.cc
2010-03-05 12:54:20 +00:00
Tatsuhiro Tsujikawa b55f2de8e6 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Enclosed log of DHTMessage::toString() with Logger::info().
	* src/DHTMessageDispatcherImpl.cc
	* src/DHTMessageReceiver.cc
2010-03-04 17:07:07 +00:00
Tatsuhiro Tsujikawa ca54ff894e 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten util::toHex().
	* src/util.cc
2010-03-04 17:01:29 +00:00
Tatsuhiro Tsujikawa 65b9af6e09 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed SocketBuffer::feedAndSend(). Renamed
	SocketBuffer::feedSendBuffer() as SocketBuffer::pushStr().
	* src/FtpConnection.cc
	* src/HttpConnection.cc
	* src/HttpServer.cc
	* src/MSEHandshake.cc
	* src/PeerConnection.cc
	* src/SocketBuffer.cc
	* src/SocketBuffer.h
2010-03-04 16:36:03 +00:00
Tatsuhiro Tsujikawa 74cf8aa980 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused PeerConnection::sendMessage(). Updated doc.
	* src/PeerConnection.cc
	* src/PeerConnection.h
2010-03-04 16:27:42 +00:00
Tatsuhiro Tsujikawa 8b73c2843f 2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reduced copying/std::string instantiation in sending/receiving
	BitTorrent messages.
	* src/BtBitfieldMessage.cc
	* src/BtBitfieldMessage.h
	* src/BtExtendedMessage.cc
	* src/BtExtendedMessage.h
	* src/BtHandshakeMessage.cc
	* src/BtHandshakeMessage.h
	* src/BtKeepAliveMessage.cc
	* src/BtKeepAliveMessage.h
	* src/BtPieceMessage.cc
	* src/BtPieceMessage.h
	* src/BtPortMessage.cc
	* src/BtPortMessage.h
	* src/BtUnchokeMessage.h
	* src/DefaultBtMessageReceiver.cc
	* src/IndexBtMessage.cc
	* src/IndexBtMessage.h
	* src/PeerConnection.cc
	* src/PeerConnection.h
	* src/RangeBtMessage.cc
	* src/RangeBtMessage.h
	* src/SimpleBtMessage.cc
	* src/SimpleBtMessage.h
	* src/SocketBuffer.cc
	* src/SocketBuffer.h
	* src/ZeroBtMessage.cc
	* src/ZeroBtMessage.h
	* test/BtAllowedFastMessageTest.cc
	* test/BtBitfieldMessageTest.cc
	* test/BtCancelMessageTest.cc
	* test/BtChokeMessageTest.cc
	* test/BtExtendedMessageTest.cc
	* test/BtHandshakeMessageTest.cc
	* test/BtHaveAllMessageTest.cc
	* test/BtHaveMessageTest.cc
	* test/BtHaveNoneMessageTest.cc
	* test/BtInterestedMessageTest.cc
	* test/BtKeepAliveMessageTest.cc
	* test/BtNotInterestedMessageTest.cc
	* test/BtPieceMessageTest.cc
	* test/BtPortMessageTest.cc
	* test/BtRejectMessageTest.cc
	* test/BtRequestMessageTest.cc
	* test/BtSuggestPieceMessageTest.cc
	* test/BtUnchokeMessageTest.cc
2010-03-04 16:24:03 +00:00
Tatsuhiro Tsujikawa 5d05ef0e75 2010-03-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten SocketBuffer. Old implementation uses single std::string
	to store data and erase sent data, which is costly. New
	implementation uses deque to hold each data to avoid to mutate
	string.
	* src/SocketBuffer.cc
	* src/SocketBuffer.h
2010-03-03 14:29:40 +00:00
Tatsuhiro Tsujikawa 48c809d441 2010-03-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Removed unused FileEntry::extracted
	* src/FileEntry.cc
	* src/FileEntry.h
2010-03-02 16:09:03 +00:00
Tatsuhiro Tsujikawa c929e95ff0 2010-03-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Wait until data arrives.
	* test/LpdMessageReceiverTest.cc
2010-03-02 15:34:10 +00:00
Tatsuhiro Tsujikawa 3bb7855a56 2010-03-03 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In Metalink4, if size element contains invalid size, discard whole
	document. Added strict hash value check for metalink3/4.
	* src/MetalinkParserController.cc
	* src/MetalinkParserStateMachine.cc
	* src/MetalinkParserStateMachine.h
	* src/MetalinkParserStateV3Impl.cc
	* src/MetalinkParserStateV4Impl.cc
	* src/util.cc
	* src/util.h
	* test/MetalinkParserControllerTest.cc
	* test/MetalinkProcessorTest.cc
	* test/metalink4.xml
2010-03-02 15:14:39 +00:00
Tatsuhiro Tsujikawa ba78b6f167 2010-03-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added strict attribute validation for metalink4. When
	specification violation is found, discard the whole document.
	* src/ExpatMetalinkProcessor.cc
	* src/MetalinkParserStateMachine.cc
	* src/MetalinkParserStateMachine.h
	* src/MetalinkParserStateV4Impl.cc
	* src/XML2SAXMetalinkProcessor.cc
	* test/Makefile.am
	* test/MetalinkProcessorTest.cc
	* test/metalink4-attrs.xml: Removed
	* test/metalink4-dirtraversal.xml: Removed
2010-03-02 14:07:30 +00:00
Tatsuhiro Tsujikawa eb32f56479 2010-03-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added test for Metaurl transaction.
	* src/MetalinkParserController.cc
	* test/MetalinkParserControllerTest.cc
2010-03-01 17:20:41 +00:00
Tatsuhiro Tsujikawa 94e306cec4 2010-03-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid costly BtMessage::toString() if info level log is not
	required.
	* src/DefaultBtInteractive.cc
	* src/Logger.h
	* src/SimpleBtMessage.cc
2010-03-01 17:03:24 +00:00
Tatsuhiro Tsujikawa 18ea756a74 2010-03-02 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Reserved vector elements based on profiler results.
	* src/DefaultBtInteractive.cc
	* src/DefaultBtProgressInfoFile.cc
2010-03-01 16:13:42 +00:00
Tatsuhiro Tsujikawa 72e475dfde 2010-03-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid to calculate end() iterator in each loop. std::deque is
	particularly slow. Make sure that recalculate end iterator if
	element is erased during loop.
2010-02-28 16:04:52 +00:00
Tatsuhiro Tsujikawa c342bde962 2010-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Use vector instead of deque for containers which is used for
	mostly read-only purpose.
2010-02-28 12:30:11 +00:00
Tatsuhiro Tsujikawa 135f0a2a8c 2010-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Fixed typo
	* test/Makefile.am
2010-02-27 15:30:48 +00:00
Tatsuhiro Tsujikawa 24158f5d25 2010-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added metalink4-groupbymetaurl.xml to EXTRA_DIST
	* test/Makefile.am
2010-02-27 15:27:30 +00:00
Tatsuhiro Tsujikawa 96761a2572 2010-02-28 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Small optimization: In updateTransferStatFor(), don't search peer
	ID twice.
	* src/DefaultPeerStorage.cc
2010-02-27 15:21:29 +00:00