Tatsuhiro Tsujikawa
111edd2c56
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Included SocketCore.h to fix compiler warning.
* src/InitiateConnectionCommand.cc
2008-05-17 13:26:25 +00:00
Tatsuhiro Tsujikawa
ef02915d82
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Put piece selection strategy algorithm to RarestPieceSelector
class,
Added a switch to choose whether randomized selection so that
unit
tests emit same results in, possibly, win32.
* src/DefaultPieceStorage.cc
* src/DefaultPieceStorage.h
* src/RarestPieceSelector.cc
* src/RarestPieceSelector.h
* test/DefaultPieceStorageTest.cc
* test/RarestPieceSelectorTest.cc
2008-05-17 12:51:54 +00:00
Tatsuhiro Tsujikawa
77d892d7f2
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Don't pool connection if HTTP proxy is enabled.
* src/FtpFinishDownloadCommand.cc
* src/FtpNegotiationCommand.cc
* src/HttpSkipResponseCommand.cc
2008-05-17 09:26:47 +00:00
Tatsuhiro Tsujikawa
7c6ed037e3
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Don't add closed socket to
DownloadEngine::addSocketForReadCheck()
* src/AbstractCommand.cc
* src/AbstractCommand.h
* src/ActivePeerConnectionCommand.cc
* src/FtpInitiateConnectionCommand.cc
* src/HttpInitiateConnectionCommand.cc
* src/InitiateConnectionCommandFactory.cc
* src/PeerAbstractCommand.cc
* src/PeerAbstractCommand.h
* src/PeerInitiateConnectionCommand.cc
* src/TrackerWatcherCommand.cc
2008-05-17 09:15:14 +00:00
Tatsuhiro Tsujikawa
b5f1ca6f66
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Sort RequestSlot in ascending order and manipulate them using
lower_bound.
* src/DefaultBtMessageDispatcher.cc
* src/DefaultBtMessageDispatcher.h
(getMessageQueue): Added const qualifier.
(getRequestSlots): Added const qualifier.
(sendMessages): Use empty() instead of size().
(doCancelSendingPieceAction): Use HandleEvent object.
(doAbortOutstandingRequestAction): Rewritten.
(doChokedAction): Rewritten.
(checkRequestSlotAndDoNecessaryThing): Rewritten.
(isOutstandingRequest): Rewritten.
(getOutstandingRequest): Rewritten.
(removeOutstandingRequest): Rewritten.
(addOutstandingRequest): Rewritten.
* src/RequestSlot.cc
* src/RequestSlot.h
(operator=): Rewritten.
(operator!=): New function.
(operator<): New function.
2008-05-17 07:31:32 +00:00
Tatsuhiro Tsujikawa
e67e998c18
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
* src/DefaultBtRequestFactory.cc
(doChokedAction): Rewritten.
(removeCompletedPiece): Rewritten.
(removeTargetPiece): Rewritten.
(createRequestMessages): Added the debug log.
(createRequestMessagesOnEndGame: Added the debug log.
2008-05-17 07:17:07 +00:00
Tatsuhiro Tsujikawa
9787a7a5b0
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added the debug log message.
* src/BtPieceMessage.cc (doReceivedAction)
2008-05-17 07:06:17 +00:00
Tatsuhiro Tsujikawa
4b3e582542
2008-05-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Sorted DHTPeerAnnounceEntry in a ascending order of info hash
and
used lower_bound to process them rather than linear search.
* src/DHTPeerAnnounceStorage.cc
2008-05-17 06:10:52 +00:00
Tatsuhiro Tsujikawa
7bbd9cec3b
2008-05-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Call subtractPieceStats from ~PeerInteractionCommand only when
the
peer has at least one completed piece.
* src/Peer.cc
* src/Peer.h
* src/PeerInteractionCommand.cc
* src/PeerSessionResource.cc
* src/PeerSessionResource.h
2008-05-17 05:12:14 +00:00
Tatsuhiro Tsujikawa
d4d608eeb0
2008-05-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed unnecessary sorting
* src/DefaultPieceStorage (DefaultPieceStorage)
2008-05-17 05:09:10 +00:00
Tatsuhiro Tsujikawa
99f07b515f
2008-05-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten the portion of the code that mangaes allowed fast
indexes.
* src/PeerSessionResource.cc
* src/PeerSessionResource.h
2008-05-16 14:51:14 +00:00
Tatsuhiro Tsujikawa
d76e423884
2008-05-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added --log-level option to specify log level. Log messages under
the specified level are not output. Default value is `debug'.
* src/HelpItemFactory.cc
* src/LogFactory.cc
* src/LogFactory.h
* src/Logger.h
* src/OptionHandlerFactory.cc
* src/SimpleLogger.cc
* src/SimpleLogger.h
* src/main.cc
* src/option_processing.cc
* src/prefs.h
* src/usage_text.h
2008-05-15 15:48:41 +00:00
Tatsuhiro Tsujikawa
2e8e926c10
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Print download progress summary of all parallel downloads in specified
interval, default 60 secs. While aria2 could download several files
in parallel (see -j option), it displayed just first download progress,
and the other downloads are hidden from the users. This new feature
prints all downloads currently in-progress to the console so that you
can check the status of all downloads. The interval can be adjusted
by --summary-interval option.
The progress readout is now cut so that all fits in the one line of
console.
* src/ConsoleStatCalc.cc
* src/ConsoleStatCalc.h
* src/HelpItemFactory.cc
* src/OptionHandlerFactory.cc
* src/RequestGroupMan.cc
* src/RequestGroupMan.h
* src/main.cc
* src/option_processing.cc
* src/prefs.h
* src/usage_text.h
2008-05-15 14:37:02 +00:00
Tatsuhiro Tsujikawa
d8e64c764d
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Call updateFdSet() to initialize rfdset, wfdset fdmax.
* src/DownloadEngine.cc (DownloadEngine)
2008-05-14 16:01:30 +00:00
Tatsuhiro Tsujikawa
148b1baf38
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use free() to deallocate memory for _buffer if
HAVE_POSIX_MEMALIGN is
defined.
* src/SingleFileAllocationIterator.cc
(~SingleFileAllocationIterator)
2008-05-14 15:51:35 +00:00
Tatsuhiro Tsujikawa
46636201c1
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use erase+lower_bound+insert instead of sort.
* src/DefaultPieceStorage.cc (addPieceStats)
2008-05-14 15:43:38 +00:00
Tatsuhiro Tsujikawa
f2588a882b
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use A2STR::SHARP_C and A2STR::EQUAL_C.
* src/A2STR.cc
* src/A2STR.h
* src/OptionParser.cc (parse)
2008-05-14 15:33:42 +00:00
Tatsuhiro Tsujikawa
35b219ddc8
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined fake filename `[tracker.announce]' as static const
std::string.
* src/TrackerWatcherCommand.cc (createRequestGroup)
2008-05-14 15:22:52 +00:00
Tatsuhiro Tsujikawa
237ec10329
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined default filename `index.html' as static const
std::string
* src/SingleFileDownloadContext.cc
* src/SingleFileDownloadContext.h
2008-05-14 15:19:26 +00:00
Tatsuhiro Tsujikawa
f26d64ce49
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined "[MEMORY]" as static const std::string.
* src/MemoryBufferPreDownloadHandler.cc (execute)
2008-05-14 15:15:04 +00:00
Tatsuhiro Tsujikawa
013bf02662
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined control file's version number as static const
std::string.
* src/DefaultBtProgressInfoFile.cc
* src/DefaultBtProgressInfoFile.h
2008-05-14 15:12:17 +00:00
Tatsuhiro Tsujikawa
6d0aff618d
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use Request::METHOD_GET
* src/RequestGroup.cc (createNextCommandWithAdj)
2008-05-14 15:05:46 +00:00
Tatsuhiro Tsujikawa
630cee3cb7
2008-05-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined "OK", "ERR", "INPR" as static const std::string
* src/RequestGroupMan.cc (showDownloadResults)
2008-05-14 15:03:09 +00:00
Tatsuhiro Tsujikawa
919c6934a8
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined default client used in extended handshake as static
const
std::string
* src/DefaultBtInteractive.cc
(addHandshakeExtendedMessageToQueue)
2008-05-14 14:57:22 +00:00
Tatsuhiro Tsujikawa
5143a7fed0
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined AUTH_HEADER, PROXY_AUTH_HEADER as static const
std::string
* src/HttpConnection.cc (eraseConfidentialInfo)
2008-05-14 14:51:31 +00:00
Tatsuhiro Tsujikawa
cded0f5811
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined default ftp user and password as static const
std::string
* src/AuthConfigFactory.cc
* src/AuthConfigFactory.h
2008-05-14 14:40:38 +00:00
Tatsuhiro Tsujikawa
12b880a724
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined strings used in netrc as static const std::string
* src/Netrc.cc
* src/Netrc.h
2008-05-14 14:35:52 +00:00
Tatsuhiro Tsujikawa
158563d16a
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined HTTP status as static const std::string
* src/AbstractProxyResponseCommand.cc
* src/HttpHeader.cc
* src/HttpHeader.h
* src/HttpResponse.cc
* src/HttpResponseCommand.cc
* src/HttpSkipResponseCommand.cc
2008-05-14 14:02:18 +00:00
Tatsuhiro Tsujikawa
9a98c71972
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined "\r\n", "A", "I" as static const std::string
* src/A2STR.cc
* src/A2STR.h
* src/FtpConnection.cc
* src/FtpConnection.h
2008-05-14 13:52:47 +00:00
Tatsuhiro Tsujikawa
30a378aa57
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added COLON_C(".") and used it in Request::parseUrl()
* src/A2STR.cc
* src/A2STR.h
* src/Request.cc (parseUrl)
2008-05-14 13:25:42 +00:00
Tatsuhiro Tsujikawa
309ad8c5ef
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed the type of padName from `const std::string&' to `const
char*'.
* src/MSEHandshake.cc (verifyPadLength)
2008-05-14 13:14:04 +00:00
Tatsuhiro Tsujikawa
0eb5ca187f
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined "sha1" as static const std::string.
* src/MetalinkParserController.cc
* src/MetalinkParserController.h
2008-05-14 13:07:04 +00:00
Tatsuhiro Tsujikawa
9bd1fc10af
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined message digest algorithm name as static const
std::string
* src/DHTTokenTracker.cc
* src/DHTUtil.cc
* src/DefaultBtContext.cc
* src/MSEHandshake.cc
* src/MessageDigestHelper.cc
* src/Peer.cc
* src/messageDigest.cc
* src/messageDigest.h
2008-05-14 13:02:43 +00:00
Tatsuhiro Tsujikawa
48c96ac441
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string literals used in SAX parser static const
std::string.
* src/FileMetalinkParserState.cc
* src/FileMetalinkParserState.h
* src/FilesMetalinkParserState.cc
* src/FilesMetalinkParserState.h
* src/InitialMetalinkParserState.cc
* src/InitialMetalinkParserState.h
* src/MetalinkMetalinkParserState.cc
* src/MetalinkMetalinkParserState.h
* src/PiecesMetalinkParserState.cc
* src/PiecesMetalinkParserState.h
* src/ResourcesMetalinkParserState.cc
* src/ResourcesMetalinkParserState.h
* src/VerificationMetalinkParserState.cc
* src/VerificationMetalinkParserState.h
2008-05-14 12:51:05 +00:00
Tatsuhiro Tsujikawa
1b874503cf
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use A2STR::SLASH_C, A2STR::DOT_C instead of "/", "."
respectively.
* src/A2STR.cc
* src/A2STR.h
* src/File.cc
2008-05-14 12:28:46 +00:00
Tatsuhiro Tsujikawa
1aeefb5c4b
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Defined static const std::string IP("ip"), PORT("port") and use
them
instead of string literals.
* src/DefaultPeerListProcessor.cc
* src/DefaultPeerListProcessor.h
2008-05-14 12:15:39 +00:00
Tatsuhiro Tsujikawa
9d24736208
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string literals for torrent file processing static const
std::string.
* src/BtContext.cc
* src/BtContext.h
* src/DefaultBtContext.cc
* src/DefaultBtContext.h
2008-05-14 12:11:04 +00:00
Tatsuhiro Tsujikawa
cb795bc989
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string literal for tracker response static const
std::string
* src/BtAnnounce.cc
* src/BtAnnounce.h
* src/DefaultBtAnnounce.cc
2008-05-14 11:47:15 +00:00
Tatsuhiro Tsujikawa
412429dfe6
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use DHTMessage::T instead of "t".
* src/DHTMessageTracker.cc (messageArrived)
2008-05-14 11:31:53 +00:00
Tatsuhiro Tsujikawa
87984328c5
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made keyName static const. Made trimmed charset static const
std::string.
* src/Util.cc (getContentDispositionFilename)
2008-05-13 17:05:02 +00:00
Tatsuhiro Tsujikawa
29d5651cd5
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made USER_AGENT const. Made "/" static const std::string.
* src/A2STR.cc
* src/A2STR.h
* src/HttpRequest.cc
* src/HttpRequest.h
2008-05-13 16:58:40 +00:00
Tatsuhiro Tsujikawa
0c821d0ad7
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string listeral to static const std::string:
"Content-Range", "Content-Length"
* src/HttpHeader.cc
* src/HttpHeader.h
2008-05-13 16:44:21 +00:00
Tatsuhiro Tsujikawa
00f385c3b3
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string listeral to static const std::string.
* src/HttpConnection.cc
* src/HttpHeader.cc
* src/HttpHeader.h
* src/HttpResponse.cc
2008-05-13 16:40:34 +00:00
Tatsuhiro Tsujikawa
a37af74369
2008-05-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string listeral to static const std::string.
* src/A2STR.cc
* src/A2STR.h
* src/SimpleLogger.cc
* src/SimpleLogger.h
2008-05-13 16:28:31 +00:00
Tatsuhiro Tsujikawa
1942b8d7b3
2008-05-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string literal to static const std::string.
Rewritten CookieParser::setField.
* src/A2STR.cc
* src/A2STR.h
* src/CookieBoxFactory.cc
* src/CookieBoxFactory.h
* src/CookieParser.cc
* src/CookieParser.h
2008-05-13 16:13:55 +00:00
Tatsuhiro Tsujikawa
898b807ba2
2008-05-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string literal to static const std::string
* src/DHTAbstractMessage.cc
* 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/DHTMessage.cc
* src/DHTMessage.h
* src/DHTMessageFactoryImpl.cc
* src/DHTMessageReceiver.cc
* 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/DHTUnknownMessage.cc
* src/DHTUnknownMessage.h
2008-05-13 15:55:05 +00:00
Tatsuhiro Tsujikawa
5c8db1cc20
2008-05-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Made string literal to static const std::string
* src/BtChokeMessage.cc (toString)
* src/BtHaveAllMessage.cc (toString)
* src/BtHaveNoneMessage.cc (toString)
* src/BtInterestedMessage.cc (toString)
* src/BtNotInterestedMessage.cc (toString)
* src/BtUnchokeMessage.cc (toString)
2008-05-13 14:25:27 +00:00
Tatsuhiro Tsujikawa
386d19693b
2008-05-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Replaced "" with static const variable A2STR::NIL.
Replaced string comparison against "" with std::string::empty().
Added PROTO_* to Request class and use them as a protocol string
constant.
Made "started", "stopped", "completed" static const variable in
AnnounceList class.
2008-05-13 14:15:23 +00:00
Tatsuhiro Tsujikawa
3c8918cfe0
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed const ref
* src/MetalinkEntry.cc (AddProtocolPreference)
* src/RequestGroup.cc (FindServerHostByHostname)
2008-05-12 14:10:14 +00:00
Tatsuhiro Tsujikawa
7ea0e831d4
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten Accept-Features handling.
* src/HttpRequestCommand.cc (createHttpRequest)
* src/a2functional.h
2008-05-12 14:08:43 +00:00
Tatsuhiro Tsujikawa
fac64b9e07
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten Accept-Features handling.
* src/HttpRequestCommand.cc (createHttpRequest)
2008-05-12 14:07:54 +00:00
Tatsuhiro Tsujikawa
c1ba19efe2
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
DHTAbstractNodeLookupTask::toEntries
* src/DHTAbstractNodeLookupTask.cc
* src/DHTAbstractNodeLookupTask.h
2008-05-12 12:26:45 +00:00
Tatsuhiro Tsujikawa
41b6003cbd
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
BtContext::computeFastSet, DefaultBtContext::extractUrlList
* src/BtContext.h
* src/DefaultBtContext.cc
* src/DefaultBtContext.h
* src/DefaultBtInteractive.cc
* test/DefaultBtContextTest.cc
* test/MockBtContext.h
2008-05-12 12:18:21 +00:00
Tatsuhiro Tsujikawa
6ae07106d3
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
MultiFileAllocationIterator::makeDiskWriterEntries
* src/MultiFileAllocationIterator.cc
* src/MultiFileAllocationIterator.h
2008-05-12 11:51:09 +00:00
Tatsuhiro Tsujikawa
3da60af41e
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method sinature:
MetalinkEntry::toFileEntry,
MetalinkHelper::query, MetalinkHelper::parseAndQuery,
Metalinker::queryEntry
* src/Metalink2RequestGroup.cc
* src/MetalinkEntry.cc
* src/MetalinkEntry.h
* src/MetalinkHelper.cc
* src/MetalinkHelper.h
* src/Metalinker.cc
* src/Metalinker.h
* src/main.cc
* test/MetalinkHelperTest.cc
* test/MetalinkerTest.cc
2008-05-12 11:39:34 +00:00
Tatsuhiro Tsujikawa
f84eac327f
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method sinature:
RequestGroup::getURIs
* src/RequestGroup.cc
* src/RequestGroup.h
* test/Metalink2RequestGroupTest.cc
2008-05-12 11:15:17 +00:00
Tatsuhiro Tsujikawa
5f8e8e371e
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
PeerListProcessor::extractPeer
* src/CompactPeerListProcessor.cc
* src/CompactPeerListProcessor.h
* src/DefaultBtAnnounce.cc
* src/DefaultPeerListProcessor.cc
* src/DefaultPeerListProcessor.h
* src/DelegatingPeerListProcessor.cc
* src/DelegatingPeerListProcessor.h
* src/PeerListProcessor.h
* src/UTPexExtensionMessage.cc
* test/DefaultPeerListProcessorTest.cc
2008-05-12 11:05:21 +00:00
Tatsuhiro Tsujikawa
ddd1206b42
2008-05-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
BtRequestFactory::createRequestMessages,
BtRequestFactory::createRequestMessagesOnEndGame
* src/BtRequestFactory.h
* src/DefaultBtInteractive.cc
* src/DefaultBtRequestFactory.cc
* src/DefaultBtRequestFactory.h
* test/DefaultBtRequestFactoryTest.cc
* test/MockBtRequestFactory.h
2008-05-12 10:54:36 +00:00
Tatsuhiro Tsujikawa
d2110dc697
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
PieceStorage::getInFlightPieces
* src/DefaultBtProgressInfoFile.cc
* src/DefaultPieceStorage.cc
* src/DefaultPieceStorage.h
* src/PieceStorage.h
* src/UnknownLengthPieceStorage.cc
* src/UnknownLengthPieceStorage.h
* test/DefaultBtProgressInfoFileTest.cc
* test/MockPieceStorage.h
2008-05-11 14:42:34 +00:00
Tatsuhiro Tsujikawa
b96eb7fd79
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
PostDownloadHandler::getNextRequestGroups
Metalink2RequestGroup::generate
RequestGroup::postDownloadProcessing
* src/BtPostDownloadHandler.cc
* src/BtPostDownloadHandler.h
* src/Metalink2RequestGroup.cc
* src/Metalink2RequestGroup.h
* src/MetalinkPostDownloadHandler.cc
* src/MetalinkPostDownloadHandler.h
* src/PostDownloadHandler.h
* src/RequestGroup.cc
* src/RequestGroup.h
* src/RequestGroupMan.cc
* src/main.cc
* test/BtPostDownloadHandlerTest.cc
* test/Metalink2RequestGroupTest.cc
* test/MetalinkPostDownloadHandlerTest.cc
2008-05-11 13:59:27 +00:00
Tatsuhiro Tsujikawa
3884d710d3
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten AccRequestGroup
* src/main.cc
2008-05-11 13:31:30 +00:00
Tatsuhiro Tsujikawa
b22e86a6eb
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten.
* src/TaggedItem.cc (toTagString)
2008-05-11 13:19:20 +00:00
Tatsuhiro Tsujikawa
4e3c08d50c
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten Accept-Features handling.
* src/HttpRequestCommand.cc (createHttpRequest)
2008-05-11 13:14:41 +00:00
Tatsuhiro Tsujikawa
1f931b33bd
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten accept types handling.
* HttpRequest.cc (createRequest)
2008-05-11 13:07:26 +00:00
Tatsuhiro Tsujikawa
9fd38f12b7
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten
* src/FeatureConfig.cc (featureSummary)
2008-05-11 13:03:24 +00:00
Tatsuhiro Tsujikawa
05f0646112
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
PeerStorage::getActivePeers
* src/DHTPeerAnnounceEntry.cc
* src/DefaultPeerStorage.cc
* src/DefaultPeerStorage.h
* src/PeerStorage.h
* test/DefaultPeerStorageTest.cc
* test/MockPeerStorage.h
2008-05-11 12:58:48 +00:00
Tatsuhiro Tsujikawa
33e916547a
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
DHTPeerAnnounceStorage::getPeers,
DHTPeerAnnounceEntry::getPeers
* src/DHTGetPeersMessage.cc
* src/DHTPeerAnnounceEntry.cc
* src/DHTPeerAnnounceEntry.h
* src/DHTPeerAnnounceStorage.cc
* src/DHTPeerAnnounceStorage.h
* test/DHTAnnouncePeerMessageTest.cc
* test/DHTPeerAnnounceEntryTest.cc
* test/DHTPeerAnnounceStorageTest.cc
2008-05-11 12:14:14 +00:00
Tatsuhiro Tsujikawa
5e99846776
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
NameResolver::resolve
* src/DHTEntryPointNameResolveCommand.cc
* src/InitiateConnectionCommand.cc
* src/NameResolver.cc
* src/NameResolver.h
2008-05-11 11:59:56 +00:00
Tatsuhiro Tsujikawa
7ec7b7ea60
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
PieceStorage::getAdvertisedPieceIndexes
* src/DefaultBtInteractive.cc
* src/DefaultPieceStorage.cc
* src/DefaultPieceStorage.h
* src/PieceStorage.h
* src/UnknownLengthPieceStorage.h
* test/MockPieceStorage.h
2008-05-11 10:57:18 +00:00
Tatsuhiro Tsujikawa
82e0092b19
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
SegmentMan::getInFlightSegment
* src/AbstractCommand.cc
* src/SegmentMan.cc
* src/SegmentMan.h
* test/SegmentManTest.cc
2008-05-11 10:46:52 +00:00
Tatsuhiro Tsujikawa
83731bab5c
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
DHTAbstractNodeLookupTask::getNodesFromMessage
* src/DHTAbstractNodeLookupTask.cc
* src/DHTAbstractNodeLookupTask.h
* src/DHTNodeLookupTask.cc
* src/DHTNodeLookupTask.h
* src/DHTPeerLookupTask.cc
* src/DHTPeerLookupTask.h
2008-05-11 09:53:11 +00:00
Tatsuhiro Tsujikawa
825cfe7715
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Pass std::deque<Command*> by reference to avoid unnecessary coping.
* src/AbstractCommand.cc
* src/BtCheckIntegrityEntry.cc
* src/BtCheckIntegrityEntry.h
* src/BtFileAllocationEntry.cc
* src/BtFileAllocationEntry.h
* src/BtSetup.cc
* src/BtSetup.h
* src/CheckIntegrityCommand.cc
* src/CheckIntegrityEntry.h
* src/ChecksumCheckIntegrityEntry.cc
* src/ChecksumCheckIntegrityEntry.h
* src/DHTSetup.cc
* src/DHTSetup.h
* src/DownloadEngine.cc
* src/FileAllocationCommand.cc
* src/FileAllocationEntry.h
* src/RequestGroup.cc
* src/RequestGroup.h
* src/RequestGroupMan.cc
* src/RequestGroupMan.h
* src/StreamCheckIntegrityEntry.cc
* src/StreamCheckIntegrityEntry.h
* src/StreamFileAllocationEntry.cc
* src/StreamFileAllocationEntry.h
* src/TrackerWatcherCommand.cc
* src/a2functional.h
2008-05-11 09:36:39 +00:00
Tatsuhiro Tsujikawa
6d78a7656d
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed method signature:
BNode::findClosestKNodes, BNode:: enumerateBucket,
DHTBucket::getGoodNodes,
DHTRoutingTable::getClosestKNodes, DHTRoutingTable::getBuckets
* src/BNode.cc
* src/BNode.h
* src/DHTAbstractNodeLookupTask.cc
* src/DHTAutoSaveCommand.cc
* src/DHTBucket.cc
* src/DHTBucket.h
* src/DHTBucketRefreshTask.cc
* src/DHTFindNodeMessage.cc
* src/DHTGetPeersMessage.cc
* src/DHTRoutingTable.cc
* src/DHTRoutingTable.h
* test/BNodeTest.cc
* test/DHTBucketTest.cc
* test/DHTRoutingTableTest.cc
2008-05-11 08:07:57 +00:00
Tatsuhiro Tsujikawa
bf5a8c3f78
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
In piece selection functions, Pass std::deque<...> by reference
rather
than returning it.
* src/BitfieldMan.cc
* src/BitfieldMan.h
* src/DefaultBtRequestFactory.cc
* src/DefaultPieceStorage.cc
* src/Piece.cc
* src/Piece.h
* test/BitfieldManTest.cc
2008-05-11 07:37:46 +00:00
Tatsuhiro Tsujikawa
a702d60666
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Implemented rarest piece first piece selection strategy.
* src/AbstractBtMessage.cc
* src/AbstractBtMessage.h
* src/BitfieldMan.cc
* src/BitfieldMan.h
* src/BtBitfieldMessage.cc
* src/BtHaveAllMessage.cc
* src/BtHaveMessage.cc
* src/DefaultPieceStorage.cc
* src/DefaultPieceStorage.h
* src/PeerInteractionCommand.cc
* src/PieceStorage.h
* src/UnknownLengthPieceStorage.h
2008-05-11 01:22:32 +00:00
Tatsuhiro Tsujikawa
f69625775c
2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten readData and writeData.
* src/MultiDiskAdaptor.cc
* src/MultiDiskAdaptor.h
2008-05-11 01:13:22 +00:00
Tatsuhiro Tsujikawa
ebf0fbc591
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Move \n out of the message "Usage: ...".
* src/version_usage.cc
2008-05-10 07:14:26 +00:00
Tatsuhiro Tsujikawa
a780fcacc4
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added const qualifier to argument Exception& e.
* src/Logger.h
* src/SimpleLogger.cc
* src/SimpleLogger.h
2008-05-10 05:16:16 +00:00
Tatsuhiro Tsujikawa
e71b09a9dc
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Pool connection when CWD, SIZE command fails.
* src/FtpNegotiationCommand.cc
* src/FtpNegotiationCommand.h
2008-05-10 05:14:35 +00:00
Tatsuhiro Tsujikawa
10b1ddd2c0
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Renamed HttpNullDownloadCommand as HttpSkipResponseCommand
* src/HttpResponseCommand.cc
* src/HttpSkipResponseCommand.cc
* src/HttpSkipResponseCommand.h
2008-05-10 04:57:33 +00:00
Tatsuhiro Tsujikawa
03db925988
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Pool connection when a server returns 4xx, 5xx responses.
* src/HttpNullDownloadCommand.cc
* src/HttpNullDownloadCommand.h
* src/HttpResponse.cc
* src/HttpResponse.h
* src/HttpResponseCommand.cc
* src/HttpResponseCommand.h
* test/HttpResponseTest.cc
2008-05-10 04:50:49 +00:00
Tatsuhiro Tsujikawa
d13b198ddd
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Print usage when no URL is specifed or bad command-line option is
specified.
* src/HelpItemFactory.cc
* src/help_tags.h
* src/option_processing.cc
2008-05-10 02:35:42 +00:00
Tatsuhiro Tsujikawa
02b1062607
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed duplicate log message.
* src/AbstractCommand.cc (asyncResolveHostname)
2008-05-10 02:33:15 +00:00
Tatsuhiro Tsujikawa
7956dab9c3
2008-05-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Updated command-line usage text, so that it tells users that
they
can specify any number of torrent files and metalink files in
command-line.
* src/version_usage.cc
2008-05-09 15:30:09 +00:00
Tatsuhiro Tsujikawa
5bed29e79a
2008-05-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed the default value of -j option to 1.
* src/HelpItemFactory.cc
* src/option_processing.cc
* src/usage_text.h
2008-05-09 14:52:25 +00:00
Tatsuhiro Tsujikawa
f25436725e
2008-05-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added the ability to reuse connection in FTP and it is enabled
by
default. It can be disabled by --ftp-reuse-connection=false
option.
* src/Command.cc
* src/DownloadCommand.cc
* src/FtpDownloadCommand.cc
* src/FtpDownloadCommand.h
* src/FtpFinishDownloadCommand.cc
* src/FtpFinishDownloadCommand.h
* src/FtpInitiateConnectionCommand.cc
* src/FtpNegotiationCommand.cc
* src/FtpNegotiationCommand.h
* src/HelpItemFactory.cc
* src/Makefile.am
* src/Makefile.in
* src/OptionHandlerFactory.cc
* src/option_processing.cc
* src/prefs.h
* src/usage_text.h
2008-05-09 14:44:28 +00:00
Tatsuhiro Tsujikawa
0b5e827ead
2008-05-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Call Command::transitStatus() before calling Command::execute(),
so that the status change made in execute() is not cleared.
* src/DownloadEngine.cc
2008-05-09 14:36:06 +00:00
Tatsuhiro Tsujikawa
95e0fbfd7b
2008-05-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed forward declaration of SocketCore class.
* src/HttpDownloadCommand.h
2008-05-09 14:34:27 +00:00
Tatsuhiro Tsujikawa
c3c05e9ab1
2008-05-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Set Request::setKeepAliveHint() and Request::setPipeliningHint()
in InitiateConnectionCommandFactory. They should be set only
when
the protocol is HTTP or HTTPS.
* src/InitiateConnectionCommandFactory.cc
* src/RequestGroup.cc
2008-05-09 14:28:46 +00:00
Tatsuhiro Tsujikawa
b1d51f2442
2008-05-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed infinite loop in checksum checking.
* src/IteratableChecksumValidator.cc
2008-05-09 14:25:32 +00:00
Tatsuhiro Tsujikawa
5ea933fed1
2008-05-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Set _supportsPersistentConnection to true by default.
* src/Request.cc
* src/RequestGroup.cc
* test/HttpRequestTest.cc
* test/RequestTest.cc
2008-05-08 13:20:15 +00:00
Tatsuhiro Tsujikawa
2c54667beb
2008-05-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added timeout to socket pool. The default timeout is 15 seconds,
which is the same value Apache uses.
* src/DownloadEngine.cc
* src/DownloadEngine.h
2008-05-08 13:18:25 +00:00
Tatsuhiro Tsujikawa
8fab8859b1
2008-05-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed misuse of multimap::find()
* src/HttpHeader.cc
* test/HttpHeaderTest.cc
2008-05-08 11:39:37 +00:00
Tatsuhiro Tsujikawa
d52bce74d3
2008-05-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten name resolver. Now async DNS can be disabled by
--async-dns
option.
The asynchronous DNS is not capable of IPv6 yet.
By disabling asynchronous DNS, aria2 is IPv6 enabled
application, at
least for HTTP download.
* src/AbstractCommand.cc
* src/AbstractCommand.h
* src/AsyncNameResolver.cc
* src/AsyncNameResolver.h
* src/DHTEntryPointNameResolveCommand.cc
* src/DHTEntryPointNameResolveCommand.h
* src/DownloadEngine.cc
* src/DownloadEngine.h
* src/FtpInitiateConnectionCommand.cc
* src/FtpInitiateConnectionCommand.h
* src/HelpItemFactory.cc
* src/HttpInitiateConnectionCommand.cc
* src/HttpInitiateConnectionCommand.h
* src/InitiateConnectionCommand.cc
* src/InitiateConnectionCommand.h
* src/Makefile.am
* src/Makefile.in
* src/NameResolver.cc
* src/NameResolver.h
* src/OptionHandlerFactory.cc
* src/SocketCore.cc
* src/SocketCore.h
* src/Util.cc
* src/Util.h
* src/option_processing.cc
* src/prefs.h
* src/usage_text.h
2008-05-08 11:18:36 +00:00
Tatsuhiro Tsujikawa
ac1b573e59
2008-05-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Enable HTTP keep-alive by default.
* src/HelpItemFactory.cc
* src/option_processing.cc
* src/usage_text.h
2008-05-06 15:26:43 +00:00
Tatsuhiro Tsujikawa
ec2d237df4
Updated Makefile.am for HttpNullDownloadCommand class.
2008-05-06 15:24:07 +00:00
Tatsuhiro Tsujikawa
e88eedc8f5
2008-05-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Disable http keep-alive if the remote server is not HTTP/1.1.
* src/HttpConnection.cc
2008-05-06 15:22:46 +00:00
Tatsuhiro Tsujikawa
4f150057ca
2008-05-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Receive content body of 302 response so that the connection can
be
reused later when http keep-alive is enabled.
* src/HttpNullDownloadCommand.cc
* src/HttpNullDownloadCommand.h
* src/HttpResponseCommand.cc
* src/HttpResponseCommand.h
2008-05-06 15:20:59 +00:00
Tatsuhiro Tsujikawa
53464fd0fc
2008-05-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
const SharedHandle<Request> -> const SharedHandle<Request>&
* src/FtpDowndloadCommand.cc
* src/FtpDowndloadCommand.h
* src/HttpDownloadCommand.cc
* src/HttpDownloadCommand.h
2008-05-06 15:14:14 +00:00
Tatsuhiro Tsujikawa
874714609f
2008-05-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that the control file(.aria2 file) is not renamed
according to tryAutoFileRenaming().
tryAutoFileRenaming() was rewritten so that if both renamed file
and
its control file exist, use them and continue download.
The old implementation didn't take into account of control
file's
existence, so basically you couldn't continue download of
renamed file.
* src/BtProgressInfoFile.h
* src/DefaultBtProgressInfoFile.cc
* src/DefaultBtProgressInfoFile.h
* src/NullProgressInfoFile.h
* src/RequestGroup.cc
* test/DefaultBtProgressInfoFileTest.cc
* test/MockBtProgressInfoFile.h
2008-05-05 10:10:15 +00:00
Tatsuhiro Tsujikawa
6952eef7b6
2008-05-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Change the default value of --metalink-servers option from `5'
to `1'.
* src/HelpItemFactory.cc
* src/option_processing.cc
* src/usage_text.h
2008-05-05 08:32:40 +00:00
Tatsuhiro Tsujikawa
f596de9eec
2008-05-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Reimplemented transparent metalink using Accept request header.
* src/HttpRequest.cc
* src/HttpRequest.h
* src/HttpRequestCommand.cc
* src/Metalink2RequestGroup.cc
* src/RequestGroup.cc
* src/RequestGroup.h
* test/HttpRequestTest.cc
2008-05-05 08:25:41 +00:00
Tatsuhiro Tsujikawa
0f64c20da8
2008-04-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error without gcrypt/openssl.
* src/DownloadCommand.cc
* src/DownloadCommand.h
2008-04-27 06:01:34 +00:00
Tatsuhiro Tsujikawa
b74e27ff92
2008-04-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Reorganized version information so that it can be displayed in a
standard terminal screen without scrolling.
Removed http, ftp from Configuration section, because they are
always
enabled.
* src/FeatureConfig.cc
* src/FeatureConfig.h
* src/main.cc
* src/messageDigest.cc
* src/messageDigest.h
* src/version_usage.cc
* test/FeatureConfigTest.cc
2008-04-27 05:55:02 +00:00
Tatsuhiro Tsujikawa
3938307391
2008-04-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Masked user ID in log.
* src/FtpConnection.cc (sendUser)
2008-04-27 04:12:00 +00:00
Tatsuhiro Tsujikawa
4663902500
2008-04-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed query part from filename in HTTP download. The query part means
the substring after "?" in URL. Firefox seems do the same thing.
A query part is sometimes very long and not suitable to filename,
so I think it is better to remove it from filename.
* src/HttpRequest.cc
* src/HttpRequest.h
* src/Request.cc
* src/Request.h
* test/HttpRequestTest.cc
* test/RequestTest.cc
2008-04-27 04:09:08 +00:00
Tatsuhiro Tsujikawa
1ef99931e1
2008-04-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten Exception class. Throw exception object, not its pointer and
catch by reference, so that remove problematic delete operator for
catched exception.
* src/Exception.cc
* src/Exception.h
* test/ExceptionTest.cc
* src/*: All files throwing/catching exception.
* test/*: All files throwing/catching exception.
2008-04-27 02:22:14 +00:00
Tatsuhiro Tsujikawa
a7952cce05
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Now auto protocol detection is enabled without -Z option.
But there is a important difference between with/without -Z optoin.
For example, if you type:
aria2c http://host/file file1.torrent file2.metalink http://mirror/file
then, aria2 interprets there are 3 request groups:
(1) http://host/file , http://mirror/file <-- multi-source download
(2) file1.torrent
(3) file2.metalink
On the other hand, if you invoke above command with -Z option, it is
interpreted as 4 request groups:
(1) http://host/file
(2) file1.torrent
(3) file2.metalink
(4) http://mirror/file
I think usually user don't mix multi-source URLs and torrent files, so
there is no big problem here.
* src/main.cc
2008-04-26 08:12:46 +00:00
Tatsuhiro Tsujikawa
8678e1f380
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that causes segmentaion fault when reading XML
containing
unescapsed character like '&'.
Also a modification was made which avoids adding unnecessary
characters stack and appending unused string.
* src/ExpatMetalinkProcessor.cc
* src/FileMetalinkParserState.h
* src/FilesMetalinkParserState.h
* src/FinMetalinkParserState.h
* src/HashMetalinkParserState.h
* src/InitialMetalinkParserState.h
* src/LanguageMetalinkParserState.h
* src/MetalinkMetalinkParserState.h
* src/MetalinkParserState.h
* src/MetalinkParserStateMachine.cc
* src/MetalinkParserStateMachine.h
* src/OSMetalinkParserState.h
* src/PieceHashMetalinkParserState.h
* src/PiecesMetalinkParserState.h
* src/ResourcesMetalinkParserState.h
* src/SizeMetalinkParserState.h
* src/SkipTagMetalinkParserState.h
* src/URLMetalinkParserState.h
* src/VerificationMetalinkParserState.h
* src/VersionMetalinkParserState.h
* src/XML2SAXMetalinkProcessor.cc
2008-04-26 07:43:01 +00:00
Tatsuhiro Tsujikawa
90d5b5c0a2
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added StringFormat class, which internally calls vasprintf.
operator<< is defined for this class, so it can be used with iostream
classes nicely. SimpleLogger and following functions are rewritten
using StringFormat class.
Besides, now Logger class's methods are non-const, many classes
that has a const Logger* as a member variable are modified to remove
const qualifier from the variable declaration.
* src/HelpItemFactory.cc
* src/Request.cc
* src/SimpleLogger.cc
* src/StringFormat.cc
* src/StringFormat.h
* src/Util.cc
* src/option_processing.cc
* src/version_usage.cc
* test/StringFormatTest.cc
* src/*.h: The classes that has const Logger* as a member variable.
2008-04-26 05:58:49 +00:00
Tatsuhiro Tsujikawa
0f92203ffe
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Log error in AccRequestGroup when reading BitTorrent/Metalink
file is
failed. Also fixed memory link when exception is thrown there.
* src/main.cc (AccRequestGroup)
2008-04-26 01:09:56 +00:00
Tatsuhiro Tsujikawa
2a81fd466d
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added build-in "Accept-Feature" support. For now only "metalink" is
used in this header field.
This "metalink" value is removed from the list when connecting URLs
fed by metalink file to avoid loop in "transparent" metlaink.
* src/HttpRequest.cc
* src/HttpRequest.h: Renamed _userHeaders as _headers. Accept-Feature
header is also held in this variable. Also renamed setUserHeaders as
addHeader and it was rewritten to add header not just to clear the old
value.
* src/HttpRequestCommand.cc
* src/Metalink2RequestGroup.cc: Added the code to remove "metalink"
from "Accept-Feature" list.
* src/RequestGroup.cc: Added "metalink" to "Accept-Feature" by default.
* src/RequestGroup.h
* src/TaggedItem.cc: Moved Concat class to a2functional.h.
* src/a2functional.h: Included <string> because Concat class depends on
it.
* test/HttpRequestTest.cc
2008-04-25 17:44:03 +00:00
Tatsuhiro Tsujikawa
8ea2f386cb
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added comment
* src/RequestGroup.cc (createNextCommand)
2008-04-25 16:26:40 +00:00
Tatsuhiro Tsujikawa
c3151ba188
2008-04-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Capitalized METHOD_GET and METHOD_HEAD
* src/Request.cc
2008-04-25 16:24:34 +00:00
Tatsuhiro Tsujikawa
e0877ec26b
2008-04-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added getDownloadResults() method
* src/RequestGroupMan.cc
* src/RequestGroupMan.h
2008-04-23 10:28:56 +00:00
Tatsuhiro Tsujikawa
4f6df4be39
2008-04-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that aria2 exits when commands is empty() but
_routineCommands are not.
* src/DownloadEngine.cc
2008-04-23 10:03:52 +00:00
Tatsuhiro Tsujikawa
da615e4e7a
2008-04-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use the default value pulled from Option object in
HelpItemFactory.
except options whose defualt value is embedded in a usage text.
* src/HelpItemFactory.cc
* src/HelpItemFactory.h
* src/option_processing.cc
* src/version_usage.cc
2008-04-22 11:26:50 +00:00
Tatsuhiro Tsujikawa
c87fe0022d
2008-04-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added --quiet option to make aria2 quiet (no console output).
--quiet option is tagged with ADVANCED.
* src/HelpItemFactory.cc
* src/LogFactory.cc
* src/LogFactory.h
* src/MultiUrlRequestInfo.cc
* src/MultiUrlRequestInfo.h
* src/NullStatCalc.h: New class. This class prints nothing.
* src/OptionHandlerFactory.cc
* src/main.cc
* src/option_processing.cc
* src/prefs.h
* src/usage_text.h
2008-04-22 10:29:48 +00:00
Tatsuhiro Tsujikawa
9c6904f8d4
2008-04-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Add HTTP tag to --header option. Removed ADVANCED tag instead.
* src/HelpItemFactory.cc (createHelpItems):
2008-04-22 10:20:11 +00:00
Tatsuhiro Tsujikawa
7f0754c505
2008-04-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error in ExpatMetalinkProcessor.cc
* src/ExpatMetalinkProcessor.cc
2008-04-22 09:12:59 +00:00
Tatsuhiro Tsujikawa
5f55bc197f
2008-04-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Reuse socket if the origin server supports HTTP keep-alive and
--enable-http-keep-alive or --enable-http-pipelining is given.
The current implementation doesn't reuse the connections
established
against proxy server.
* src/AbstractCommand.cc
* src/DownloadEngine.cc
* src/DownloadEngine.h
* src/HttpDownloadCommand.cc
* src/HttpInitiateConnectionCommand.cc
* src/HttpResponseCommand.cc
2008-04-22 08:52:47 +00:00
Tatsuhiro Tsujikawa
1c7c6f9898
2008-04-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten HTTP keep-alive and pipelining routine.
* src/AbstractCommand.cc
* src/HttpConnection.cc
* src/HttpDownloadCommand.cc
* src/HttpRequest.cc
* src/HttpRequestCommand.cc
* src/HttpResponseCommand.cc
* src/Request.cc
* src/Request.h
* src/RequestGroup.cc
* test/HttpRequestTest.cc
* test/HttpResponseTest.cc
* test/RequestTest.cc
2008-04-22 07:15:35 +00:00
Tatsuhiro Tsujikawa
f1816a1d4b
2008-04-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added missing setUserHeaders call
* src/HttpRequestCommand.cc
2008-04-21 13:19:01 +00:00
Tatsuhiro Tsujikawa
cfe373cbbf
2008-04-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Call FileAllocationMan::nextFileAllocationEntryExists() first.
Calling FileAllocationMan::isFileAllocationBeingExecuted() is
somwhat
waste of time because it is more likey false.
* src/FileAllocationDispatcherCommand.cc (execute)
2008-04-21 12:31:10 +00:00
Tatsuhiro Tsujikawa
e1fa62e6c7
2008-04-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Now HTTP status and version are a member variable of HttpHeader.
HTTP status is processed as a string, not integer.
* src/AbstractProxyResponseCommand.cc
* src/HttpConnection.cc
* src/HttpHeader.cc
* src/HttpHeader.h
* src/HttpHeaderProcessor.cc
* src/HttpHeaderProcessor.h
* src/HttpResponse.cc
* src/HttpResponse.h
* test/HttpHeaderProcessorTest.cc
* test/HttpResponseTest.cc
2008-04-21 10:48:11 +00:00
Tatsuhiro Tsujikawa
3eb74629cb
2008-04-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added --header option. You can specify any number of additional
HTTP headers
like:
aria2 --header="X-A: 300" --header="X-B: 900" http://host/file
Unlike other commad-line option, you can use --header option
multiple times.
* src/HelpItemFactory.cc
* src/HttpRequest.{cc, h}
* src/HttpRequestCommand.cc
* src/OptionHandlerFactory.cc
* src/OptionHandlerImpl.h
* src/option_processing.cc
* src/prefs.h
* src/usage_text.h
* test/HttpRequestTest.cc (testUserHeaders)
2008-04-20 06:30:44 +00:00
Tatsuhiro Tsujikawa
c1c5e7369f
2008-04-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Eliminates the time lag between sequential downloads and
commands in
the same RequestGroup.
In old implementation, aria2 occasionally waits 1 seconds before
executing next command or RequestGroup.
This is really a waste of time, and new implementation
eliminates
this unnecessary time lag.
* src/AbstractCommand.cc
* src/AutoSaveCommand.cc
* src/CheckIntegrityCommand.cc
* src/Command.{cc, h}
* src/DownloadEngine.{cc, h}
* src/DownloadEngineFactory.cc
* src/FileAllocationCommand.cc
* src/FileAllocationDispatcherCommand.cc
* src/FillRequestGroupCommand.cc
* src/FtpInitiateConnectionCommand.cc
* src/HaveEraseCommand.cc
* src/HttpInitiateConnectionCommand.cc
* src/HttpResponseCommand.cc
* src/RealtimeCommand.cc
* src/RequestGroup.cc
* src/RequestGroupMan.cc
* src/StreamFileAllocationEntry.cc
* src/TimeBasedCommand.{cc, h}
* src/TimedHaltCommand.cc
2008-04-20 05:42:15 +00:00
Tatsuhiro Tsujikawa
3505201f33
2008-04-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten SharedHandle. Now copy constructor taking raw pointer
has
keyword explicit and SharedHandle's default constructor
initializes
its internal obj to null, old implementation initializes it
using
obj's default constructor.
To assign null, write SharedHandle<T> x(...); x.reset();
TODO: test/SharedHandleTest.cc needs more tests.
* src/SharedHandle.h
2008-04-20 00:50:22 +00:00
Tatsuhiro Tsujikawa
ebed4b6df7
2008-04-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Merged Ross's 0.13.1+1 Cygwin compile fix patch.
* src/SimpleLogger.{cc, h}
2008-04-13 13:38:25 +00:00
Tatsuhiro Tsujikawa
846e7c70f5
2008-04-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Implemented auto protocol detection.
Now you can do:
aria2c -Z http://host/file file1.torrent file2.metalink
(Note: -Z option is required for auto protcol detection.)
Then aria2c downloads 3 files simultaneously:
1. http://host/file
2. file1.torrent <-- read local torrent file
3. file2.metalink <-- read local Metalink file.
Same thing goes with -i option. Assume your uris.txt contans:
http://host/file
file1.torrent
file2.metalink
Then you can do: aria2c -i uris.txt
(Note: -Z option is not needed if -i option is given.)
* src/main.cc
* src/ProtocolDetector.{cc, h}
* test/ProtocolDetectorTest.cc
2008-04-13 13:30:12 +00:00
Tatsuhiro Tsujikawa
0516a07fa6
2008-04-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compile error without gnutls/libgcrypt/libgpg-error and
openSSL
installed
* src/ARC4Encryptor.h
* src/ARC4Decryptor.h
2008-04-13 01:33:48 +00:00
Tatsuhiro Tsujikawa
5f56e52498
2008-04-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Renamed argument from 'errno' to 'err', since errno is confused
with
errno defined in errno.h.
* src/LibgcryptARC4Decryptor.h
* src/LibgcryptARC4Context.h
* src/LibgcryptDHKeyExchange.h
* src/LibgcryptARC4Encryptor.h
2008-04-13 01:31:53 +00:00
Tatsuhiro Tsujikawa
d13c416a94
2008-04-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten choking algorithm.
* src/PeerChokeCommand.{cc, h}
* src/BtInterestedMessage.cc
* src/PeerSessionResource.{cc, h}
* src/DefaultPeerStorage.{cc, h}
* src/BtNotInterestedMessage.cc
* src/DefaultBtMessageDispatcher.{cc, h}
* src/BtMessageDispatcher.h
* src/Peer.{cc, h}
* src/BtLeecherStateChoke.{cc, h}
* src/BtSetup.cc
* src/BtSeederStateChoke.{cc, h}
* src/PeerStorage.h
* test/MockPeerStorage.h
* test/MockBtMessageDispatcher.h
2008-04-13 01:25:36 +00:00
Tatsuhiro Tsujikawa
8b91d22ca4
2008-04-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error on x84-64 platform.
* src/AuthConfig.cc: Included ostream.
2008-04-09 13:32:51 +00:00
Tatsuhiro Tsujikawa
d034c4d773
2008-03-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten getBasename() and getDirname(), without standard
library
basename(), dirname().
* src/File.cc
* test/FileTest.cc
2008-03-16 09:04:21 +00:00
Tatsuhiro Tsujikawa
42fa16b780
2008-03-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Suppress content-range error when 'Content-Range' response header
doesn't contains bytes-unit specifier 'bytes'
* src/HttpHeader.cc (getRange)
* test/HttpHeaderTest.cc
2008-03-15 04:25:55 +00:00
Tatsuhiro Tsujikawa
538a8fcfe7
2008-03-15 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error with g++-4.3
2008-03-15 04:19:46 +00:00
Tatsuhiro Tsujikawa
34df2cc416
2008-03-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Now download line is printed nicely with no garbage at the end
of
line. I use ioctl to get the columns of terminal.
If stdout is redirected to another device, instead of carriage
return,
end of line '\n' character is used. This is feature
request#1909659
* src/ConsoleStatCalc.cc (calculateStat)
2008-03-11 16:18:33 +00:00
Tatsuhiro Tsujikawa
102ce611d1
2008-03-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Included a2time.h
* src/DHTMessageDispatcher.h
* src/DHTMessageEntry.h
* src/DHTReplaceNodeTask.h
* src/DHTMessageTracker.h
* src/Util.h
* src/CookieBox.h
* src/SocketCore.h
* src/DefaultBtMessageDispatcher.h
* src/SocketCore.cc
* src/Util.cc
* src/DHTPingTask.h
2008-03-11 14:47:08 +00:00
Tatsuhiro Tsujikawa
852315bf11
2008-03-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed high memory footprint when DHT is enabled.
This is not a memory leak, but DHTReplaceNodeTask is more frequently
queued than it is processed and the queue is getting longer. As a
consequence, momory usage is increased.
As for a fix, instead of issuing DHTReplaceNodeTask, I've implemented
replacement cache in DHTBucket which is described in Kademlia paper.
* src/DHTRoutingTable.cc (addNode): Removed the issuing of
DHTReplaceNodeTask.
* src/DHTBucket.{h, cc}
(cacheNode): New function.
(getCachedNodes): New function.
(dropNode): Push back cached node to _nodes.
* test/DHTBucketTest.cc
(testCacheNode): New test
(testDropNode): New test
2008-03-11 14:19:10 +00:00
Tatsuhiro Tsujikawa
ddb00a9445
2008-03-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Allocate memory for peekBuf in initiateSecureConnection() to
avoid
the unused 4KB memory when ssl is not used.
* src/SocketCore.cc
2008-03-11 12:33:20 +00:00
Tatsuhiro Tsujikawa
ce5c17f1b3
2008-03-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added summary log for peer announce storage.
* src/DHTPeerAnnounceStorage.cc (handleTimeout)
Removed cast
* src/DefaultPeerStorage.cc (addPeer)
Log exception message
* src/DHTMessageTracker.cc (handleTimeout)
Fixed casting
* test/HttpRequestTest.cc
* test/MetalinkProcessorTest.cc
* test/PieceTest.cc
* test/MetalinkEntryTest.cc
* test/SequenceTest.cc
2008-03-11 12:31:14 +00:00
Tatsuhiro Tsujikawa
3349c7625c
2008-03-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
* src/ParameterizedStringParser.cc (createLoop):
Removed unused variable sstep.
* src/AlphaNumberDecorator.h (decode): Rewritten.
2008-03-09 15:19:35 +00:00
Tatsuhiro Tsujikawa
68b84574ae
2008-03-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
* src/Util.{h, cc}
(parseUInt): New function.
(alphaToNum): Now returns unsigned int and 0 when overflow
detected.
The actual range is uint32_t.
* test/UtilTest.cc
* src/ParameterizedStringParser.cc:
Use Util::parseUInt() for loop variables.
* test/ParameterizedStringParserTest.cc
* src/PStringNumLoop.h: Make _startValue and _endValue unsigned
int.
2008-03-09 15:03:47 +00:00
Tatsuhiro Tsujikawa
7f40794931
2008-03-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten the functions for binding port.
* src/DHTConnectionImpl.{h, cc}
* src/PeerListenCommand.{h, cc}
* src/DHTSetup.cc
* src/BtSetup.cc
* test/DHTConnectionImplTest.cc
2008-03-09 14:09:17 +00:00
Tatsuhiro Tsujikawa
032c7c2808
2008-03-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
type cleanup for allmost all remaining files.
2008-03-09 12:24:01 +00:00
Tatsuhiro Tsujikawa
ca3f6e57f3
2008-03-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Type clarification
* src/PeerSessionResource.{h, cc}
* src/DefaultPieceStorage.{h, cc}
* src/Peer.{h, cc}
* test/PeerSessionResourceTest.cc
Use div function
* src/BtPieceMessage.cc (erasePieceOnDisk)
2008-03-08 11:10:37 +00:00
Tatsuhiro Tsujikawa
2555098ecd
2008-03-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Type clarification
* src/DefaultPeerStorage.{h, cc}
* test/DefaultPeerStorageTest.cc
2008-03-08 10:44:25 +00:00
Tatsuhiro Tsujikawa
c64a191061
2008-03-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Type clarification: size_t for length or size, uint64_t for file
length, off_t for file offset.
* src/DefaultBtProgressInfoFile.cc
* src/DefaultBtContext.{h, cc}
* src/DefaultBtInteractive.cc
* src/DownloadCommand.{h, cc}
* src/IteratableChunkChecksumValidator.{h, cc}
* src/SegmentMan.{h, cc}
* src/SingleFileDownloadContext.{h, cc}
* src/IteratableChecksumValidator.{h, cc}
* src/BtContext.h
* src/IteratableValidator.h
* src/DownloadContext.h
* test/SingleFileDownloadContextTest.cc
* test/DefaultBtContextTest.cc
* test/MockBtContext.h
* test/Metalink2RequestGroupTest.cc
2008-03-08 10:33:56 +00:00
Tatsuhiro Tsujikawa
518a200d57
2008-03-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Type clarification: size_t for length or size, uint64_t for file
length, off_t for file offset.
* src/PiecedSegment.cc
* src/GrowSegment.h
* src/DefaultBtRequestFactory.h
* src/DefaultBtProgressInfoFile.cc
* src/UnknownLengthPieceStorage.h
* src/DefaultPieceStorage.cc
* src/UnknownLengthPieceStorage.cc
* src/DefaultBtInteractive.cc
* src/GrowSegment.cc
* src/BitfieldMan.h
* src/DownloadCommand.cc
* src/BtRequestFactory.h
* src/PiecedSegment.h
* src/DefaultPieceStorage.h
* src/Piece.cc
* src/DefaultBtRequestFactory.cc
* src/PieceStorage.h
* src/Segment.h
* src/Piece.h
* src/BitfieldMan.cc
* src/Util.cc
* test/DefaultBtProgressInfoFileTest.cc
* test/DefaultPieceStorageTest.cc
* test/MockPieceStorage.h
* test/BtRequestMessageTest.cc
* test/DefaultBtMessageDispatcherTest.cc
* test/BitfieldManTest.cc
* test/GrowSegmentTest.cc
* test/PieceTest.cc
* test/SegmentTest.cc
* test/SegmentManTest.cc
* test/DefaultBtRequestFactoryTest.cc
* test/MockBtRequestFactory.h
2008-03-08 08:04:28 +00:00
Tatsuhiro Tsujikawa
aa669e8646
2008-03-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error with --disable-nls
It seems that defining gettext(Msgid) to ((const char *)
(Msgid))
in gettext.h causes the problem.
* src/common.h
2008-03-08 07:53:16 +00:00
Tatsuhiro Tsujikawa
e57a070a3f
2008-03-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed subPiece related functions.
* src/Piece.{h, cc} : Also rewritten getCompletedLength().
* src/DefaultPieceStorage.{h, cc}
* test/PieceTest.cc
* test/DefaultPieceStorageTest.cc
2008-03-07 12:44:20 +00:00
Tatsuhiro Tsujikawa
fc0fa4203a
2008-03-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use unsigned char for data store.
2008-03-07 12:05:50 +00:00
Tatsuhiro Tsujikawa
74b82c44e8
2008-03-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Changed inactive connection timeout to 120.
To accept more mulually interested peers, disconnect peer when
there
is no interest between us after certain time passed.
* src/DefaultBtInteractive.cc (checkActiveInteraction)
2008-03-05 15:31:09 +00:00
Tatsuhiro Tsujikawa
37a5b99f33
2008-03-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that aria2 only uses first dns server in
resolv.conf
when compiled with async DNS support.
* src/DownloadEngine.cc
* src/option_processing.cc: Lengthened DNS timeout to 30. I
think old
value '10' will be a little bit short when some DNS servers are
offline and several DNS servers are tried. It should be
configured
by command-line option.
2008-03-05 10:35:39 +00:00
Tatsuhiro Tsujikawa
62e1cbd0c0
2008-03-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Merged Ross's mingw patch.
* src/DHTRoutingTableDeserializer.cc
* src/DHTRoutingTableSerializer.cc
* src/Platform.{h, cc}
* src/timegm.h
* src/gettimeofday.h
* src/getaddrinfo.h
* src/SocketCore.h
* src/common.h
* src/inet_aton.h
* src/DownloadEngine.h
* src/gai_strerror.h
* src/a2netcompat.h
* configure.ac
* configure
* aclocal.m4
2008-03-03 15:41:58 +00:00
Tatsuhiro Tsujikawa
6b07846b58
2008-03-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Reorganized includes.
* src/NameResolver.cc
2008-03-03 10:47:16 +00:00
Tatsuhiro Tsujikawa
4771fcf53c
2008-03-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error without ares/c-ares
* src/NameResolver.h:
2008-03-01 09:31:54 +00:00
Tatsuhiro Tsujikawa
067ef72e5e
2008-03-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that file size is ignored if size > INT32_MAX
* src/SizeMetalinkParserState.cc (endElement):
2008-03-01 05:40:11 +00:00
Tatsuhiro Tsujikawa
b1aeb277aa
2008-03-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Updated Makfefile.am to make 'make dist' work.
Now packaged filename is aria2c-VERSION.tar.bz2.
Added README, README.html, and aria2c.1.html to dist_doc_DATA.
Added LICENSE.OpenSSL to dist_noinst_DATA.
Large file support is now configured by configure script.
* configure.ac
Removed unsused source files
* src/
* test/
Removed PeerDecl.h and BtContextDecl.h. typedefs are removed to
Peer.h and BtContext.h respectively.
* src/Peer.h
* src/BtContext.h
Updated translations.
Added Polish, Thai, Indonesian, Norwegian Nynorsk, Hungarian
translations. Great thanks to all translators!;)
* po/*.{po, gmo}
2008-03-01 04:42:53 +00:00
Tatsuhiro Tsujikawa
3698b46805
2008-02-29 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Create MessageDigestHelper::staticSHA1DigestInit() which uses
statically declared sha1 MessageDigestContext.
* src/BtPieceMessage.cc: Use staticSHA1DigestInit() to avoid
initialization of short-lived MessageDigestContext.
* src/MessageDigestHelper.{h, cc}
* src/main.cc
Now DownloadCommand has a reference to MessageDigestContext to avoid
the initialization of MessageDigestContext every time in validating
chunk checksum.
* src/DownloadCommand.{h, cc}
2008-02-28 17:40:47 +00:00
Tatsuhiro Tsujikawa
a1458a1642
2008-02-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Add a file descriptor which connected to fast peer(latency<1500)
to
select(). This change reduced CPU load.
* src/PeerInteractionCommand.cc
* src/DefaultBtInteractive.{h, cc}
* src/BtInteractive.h
2008-02-28 14:27:00 +00:00
Tatsuhiro Tsujikawa
c766d945ef
2008-02-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the previous insufficient fix for possible busy loop.
* src/MSEHandshake.cc (identifyHandshakeType)
Removed unused functions.
* src/MSEHandshake.{h, cc} (readDataAndDecrypt)
2008-02-28 14:18:12 +00:00
Tatsuhiro Tsujikawa
50bb9bd36d
2008-02-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed possible busy loop if first 20 bytes are not received for
a few
minutes.
* src/MSEHandshake.{h, cc} (identifyHandshakeType)
* src/ReceiverMSEHandshakeCommand.cc
2008-02-27 16:43:52 +00:00
Tatsuhiro Tsujikawa
c1fd47809d
2008-02-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compilation error
* src/ExpatMetalinkProcessor.cc
2008-02-27 15:04:42 +00:00
Tatsuhiro Tsujikawa
f9afa5eeac
2008-02-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed compile error on Mac OS X, on 64Bit OS maybe.
* src/DHTBucket.cc
Removed unnecessary cast.
* src/HandshakeExtensionMessage.cc
2008-02-27 13:16:04 +00:00
Tatsuhiro Tsujikawa
eb9f9ac59d
2008-02-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that option handler for
PREF_METALINK_ENABLE_UNIQUE_PROTOCOL.
is missing.
* src/OptionHandlerFactory.cc
2008-02-27 12:56:52 +00:00
Tatsuhiro Tsujikawa
897ab7321f
2008-02-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that HAVE message is not sent for a piece they are
downloaded fom http/ftp server before any BitTorrent handshake
is done
with peers.
* src/DefaultBtInteractive.cc
2008-02-27 12:55:30 +00:00
Tatsuhiro Tsujikawa
deff272435
2008-02-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed RequestInfo.h and FileAllocator.h since they have been
removed.
* src/Makefile.am
* src/Makefile.in
2008-02-27 10:59:32 +00:00
Tatsuhiro Tsujikawa
1d32c516d9
2008-02-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed offset calculation.
* src/LibgcryptDHKeyExchange.h (computeSecret)
2008-02-24 13:56:03 +00:00
Tatsuhiro Tsujikawa
5a4d691aed
2008-02-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Rewritten itos and uitos using template. llitos and ullitos are
replaced with itos and uitos respectively.
* src/Util.{h, cc}
* test/UtilTest.cc
2008-02-24 09:43:31 +00:00
Tatsuhiro Tsujikawa
27ab4b1579
2008-02-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that DH key exchange sometimes fails due to bad
handling
of the number of bytes required for storing public key and
shared
secret.
* src/LibgcryptDHKeyExchange.h
* src/LibsslDHKeyExchange.h: Also added function name to
handleError.
* src/MSEHandshake.cc
* test/DHKeyExchangeTest.cc
2008-02-24 07:52:12 +00:00
Tatsuhiro Tsujikawa
ac5332c5eb
2008-02-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Removed since they are not used.
* src/Xml2MetalinkProcessor.{h, cc}
* src/Socket.cc
* src/SegmentSplitter.{h, cc}
* test/Xml2MetalinkProcessorTest.cc
2008-02-24 07:41:16 +00:00
Tatsuhiro Tsujikawa
a1f0d44c9f
2008-02-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that prevents aria2 from stopping other than by
pressing
Ctrl-C in BitTorrent download. It is reproducible using
--seed-time
option. aria2 doesn't stop even after --seed-time is satisfied
and
continues to output blank lines in the console.
* src/ReceiverMSEHandshakeCommand.cc
* src/PeerReceiveHandshakeCommand.cc
* src/PeerListenCommand.cc
2008-02-23 15:37:47 +00:00
Tatsuhiro Tsujikawa
6148b08d34
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Updated man page and some usage text.
* doc/aria2c.1.txt
* src/usage_text.h
* po/*.{po, gmo}
2008-02-21 14:23:36 +00:00
Tatsuhiro Tsujikawa
7e6d037c97
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Log more detailed information about each message.
* src/DHTQueryMessage.{h, cc}
* src/DHTGetPeersMessage.{h, cc}
* src/DHTFindNodeReplyMessage.{h, cc}
* src/DHTGetPeersReplyMessage.{h, cc}
* src/DHTAnnouncePeerMessage.{h, cc}
* src/DHTResponseMessage.{h, cc}
* src/DHTFindNodeMessage.{h, cc}
2008-02-21 12:25:26 +00:00
Tatsuhiro Tsujikawa
a8eeb81883
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use constants defined in prefs.h
* src/option_processing.cc
2008-02-21 12:24:06 +00:00
Tatsuhiro Tsujikawa
0d130b77f4
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Make room for future enchancements for IPv6 addresses.
Bump up version number of dht.dat file format to 2.
Not compatible with previous version.
* src/DHTRoutingTableSerializer.cc
* src/DHTRoutingTableDeserializer.cc
* test/DHTRoutingTableSerializerTest.cc
2008-02-21 02:19:55 +00:00
Tatsuhiro Tsujikawa
24b91983e1
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added handling for the return values from
PeerMessageUtil::createcompact().
* src/DefaultBtContext.cc (computeFastSet):
2008-02-21 00:56:14 +00:00
Tatsuhiro Tsujikawa
3274b6acc7
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed abort when peer's ip address is IPv4-mapped address.
* src/DefaultBtContext.cc (computeFastSet)
Removed number-and-dots criteria, since
Util::isNumberAndDotsNotation()
cannot handle IPv4-mapped addresses.
* src/DefaultBtInteractive.cc (addPeerExchangeMessage)
2008-02-20 17:45:22 +00:00
Tatsuhiro Tsujikawa
cfd0a40fdb
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Proper return value handling for OpenSSL functions.
* src/LibsslDHKeyExchange.h
2008-02-20 17:00:44 +00:00
Tatsuhiro Tsujikawa
dd8f18956a
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Random bytes generation using libgcrypt and OpenSSL.
* src/DHTUtil.{h, cc}
* test/DHTUtilTest.cc
2008-02-20 16:57:47 +00:00
Tatsuhiro Tsujikawa
1ea9033363
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed segmentation fault when a DHT message which doesn't have
'y' key
received.
* src/DHTMessageReceiver.cc (receiveMessage)
2008-02-20 16:52:09 +00:00
Tatsuhiro Tsujikawa
c4aaea3ca2
2008-02-21 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed the bug that a return code is always 0. BUG#1897704
If error occurred during the download or there exist unfinished
downloads, aria2 returns with code 1.
* src/RequestGroupMan.{h, cc}
* src/MultiUrlRequestInfo.{h, cc}
* src/main.cc
2008-02-20 16:46:56 +00:00
Tatsuhiro Tsujikawa
2cc471ebf6
2008-02-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
IPv6 support for SocketCore class.
TODO: In SocketCore::establishConnection(), this is insufficient
to
determin the failure of connect() here because the socket is
non-blocking state. The next addresses should be tried after
select().
TODO: NameResolver still uses c-ares(<= 1.4)
ares_gethostbyname().
If c-ares 1.5 or newer is installed, ares_getaddrinfo() should
be used
instead which address family independent.
TODO: DHTRoutingTable{Deserializer,Serializer} currently saves
peer
information in a compact peer format which is for IPv4 only.
Some BitTorrent functions in PeerMessageUtil still depends on
IPv4 but
this is a spec of BitTorrent protocol.
* src/SocketCore.{h, cc}
* src/PeerMessageUtil.cc
* test/SocketCoreTest.cc
* test/PeerMessageUtilTest.cc
* test/DHTConnectionImplTest.cc
Handle IPv4-mapped addresses.
* src/DHTNode.cc: Now identity is determined by node id.
* src/DHTMessageTrackerEntry.cc
Because now PeerMessageUtil::unpackcompact() could fail, the
caller
should handle it.
* src/DHTRoutingTableDeserializer.cc
* src/DHTMessageFactoryImpl.cc
2008-02-20 13:02:48 +00:00
Tatsuhiro Tsujikawa
4708809094
2008-02-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Change the unit of --stop option from a minute to a second.
* src/usage_text.h
* src/DownloadEngineFactory.cc
* src/OptionHandlerFactory.cc
* src/message.h
* src/TimedHaltCommand.cc
2008-02-20 12:33:16 +00:00
Tatsuhiro Tsujikawa
80bc9a8a21
2008-02-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Make listening socket non-block mode.
* src/FtpConnection.cc
* src/FtpNegotiationCommand.{h, cc}
* src/PeerListenCommand.cc
Fixed the bug that cause slow ftp negotiation.
* src/FtpNegotiationCommand.{h, cc}
2008-02-19 13:36:39 +00:00
Tatsuhiro Tsujikawa
766e092af3
2008-02-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added basic tag to --enable-dht, --dht-listen-port option.
* src/HelpItemFactory.cc (createHelpItems)
2008-02-19 12:05:21 +00:00
Tatsuhiro Tsujikawa
c87b6b2984
2008-02-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Updated text.
* src/usage_text.h
2008-02-18 17:37:54 +00:00
Tatsuhiro Tsujikawa
1d0175a29e
2008-02-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
* src/MSEHandshake.cc (encryptAndSendData): Use std::min().
2008-02-18 17:13:20 +00:00
Tatsuhiro Tsujikawa
3c41ea24bf
2008-02-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Determin _threadtholdSpeed in each constructor for
ActivePeerConnectionCommand and PeerReceiveHandshakeCommand.
* src/ActivePeerConnectionCommand.{h, cc}
* src/PeerReceiveHandshakeCommand.{h, cc}
* src/BtSetup.cc
* src/BtConstants.h
2008-02-18 17:11:44 +00:00
Tatsuhiro Tsujikawa
20cd2e5246
2008-02-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added --bt-min-crypto-level and --bt-require-crypto options.
* src/OptionHandlerFactory.cc
* src/MSEHandshake.cc
* src/HelpItemFactory.cc
* src/option_processing.cc
* src/ReceiverMSEHandshakeCommand.cc
* src/prefs.h
* src/DefaultBtAnnounce.cc
* src/InitiatorMSEHandshakeCommand.cc
* src/usage_text.h
* test/MSEHandshakeTest.cc
2008-02-18 13:41:58 +00:00
Tatsuhiro Tsujikawa
b7e841e885
2008-02-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Updated doc.
* src/MessageDigestHelper.h:
2008-02-17 16:12:47 +00:00
Tatsuhiro Tsujikawa
ebd524b6a2
2008-02-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Use raw message digest as a token instead of its hexadecimal
representation.
* src/DHTTokenTracker.cc (generateToken)
2008-02-17 16:10:10 +00:00
Tatsuhiro Tsujikawa
c0d2223c77
2008-02-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added Message Stream Encryption(MSE) support.
Currently, aria2 accepts incoming connections with Obfuscation Header
and legacy BitTorrent Header and establishes connections with
Obfuscation Header first and if failed then retry with legacy
BitTorrent header. If plain text and ARC4 is provided, aria2 always
choose ARC4. The new option to change the default behavior is planned.
For tracker extension, "supportcrypto=1" is added statically.
* src/PeerInitiateConnectionCommand.{h, cc}
* src/PeerConnection.{h, cc}
* src/HandleRegistry.h
* src/SocketCore.h
* src/PeerReceiveHandshakeCommand.{h, cc}
* src/BtRegistry.{h, cc}
* src/PeerListenCommand.cc
* src/InitiatorMSEHandshakeCommand.{h, cc}
* src/ReceiverMSEHandshakeCommand.{h, cc}
* src/MSEHandshake.{h, cc}
* src/ARC4Encryptor.h
* src/ARC4Decryptor.h
* src/LibgcryptARC4Encryptor.h
* src/LibgcryptARC4Decryptor.h
* src/LibgcryptARC4Context.h
* src/LibsslARC4Encryptor.h
* src/LibsslARC4Decryptor.h
* src/LibsslARC4Context.h
* src/DHKeyExchange.h
* src/LibgcryptDHKeyExchange.h
* src/LibsslDHKeyExchange.h
* src/DefaultBtAnnounce.cc: Just added "supportcrypto=1" parameter.
* test/DefaultBtAnnounceTest.cc
* test/ARC4Test.cc
* test/DHKeyExchangeTest.cc
Removed prepareForRetry() because it is not used.
* src/PeerAbstractCommand.{h, cc}
* src/PeerInteractionCommand.{h, cc}
* src/PeerInitiateConnectionCommand.{h, cc}
2008-02-17 15:56:47 +00:00
Tatsuhiro Tsujikawa
1302123368
2008-02-13 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added the ability to load nodes from torrent file. These nodes are
added to the routing table when downloading that torrent.
* src/BtContext.h
* src/DefaultBtContext.{h, cc}
* src/DHTSetup.cc
* src/DHTEntryPointNameResolveCommand.{h, cc}: Now accepts list of
hostname and port pair, and resolves all of them.
* src/NameResolver.{h, cc}: Added reset().
* src/RequestGroup.cc
* test/DefaultBtContextTest.cc
* test/MockBtContext.h
Removed assert() from DefaultBtContext and throw exception instead.
* src/DefaultBtContext.cc
2008-02-13 15:17:08 +00:00
Tatsuhiro Tsujikawa
bfcc300670
2008-02-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed segmentation fault bug when exiting if dht is disabled.
* src/RequestGroup.cc
2008-02-12 13:49:39 +00:00
Tatsuhiro Tsujikawa
bc1f1bdf35
2008-02-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Fixed typo in log message and define the message in message.h
* src/TimedHaltCommand.cc
* src/message.h
2008-02-12 13:45:54 +00:00
Tatsuhiro Tsujikawa
e9f980afc7
2008-02-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Added DHTMessageDispatcherImpl. Now DHTMessageDispatcher is pure
virtual.
* src/DHTMessageDispatcher.h
* src/DHTMessageDispatcherImpl.{h, cc}
* src/DHTSetup.cc
2008-02-11 07:50:35 +00:00
Tatsuhiro Tsujikawa
413cbe192b
2008-02-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
...
Adding handling of DHT error message. Just log error message and
throw exception.
* src/DHTMessageFactoryImpl.cc
* test/DHTMessageFactoryImplTest.cc
2008-02-11 06:23:01 +00:00