2006-02-17 13:35:04 +00:00
* Add HTTP POST support
* Add expires handling for Cookie
2006-02-17 18:51:12 +00:00
* Add SSL server cert verification
2006-02-18 05:13:21 +00:00
* Add SSL client cert support
2006-02-18 05:21:43 +00:00
* Better HTTP status handling
2006-03-21 14:12:51 +00:00
* Add the feature which adds or removes URLs on-the-fly.
* Add port range command-line option
Added new class SendMessageQueue that includes PendingMessages
and
RequestSlotMan.
* src/SendMessageQueue.h: New class.
* src/SendMessageQueue.cc: New class.
* src/PendingMessage.h: Added new member variable blockIndex and
its
accessors.
(createRequestMessage): Updated.
* src/PendingMessage.cc (createRequestMessage): Updated.
* src/PeerInteractionCommand.cc (executeInternal): Updated with
SendMessageQueue.
(checkLongTimePeerChoking): Updated with SendMessageQueue.
(receiveMessage): Updated with SendMessageQueue.
(deletePendingPieceMessage): Removed.
(getNewPieceAndSendInterest): Updated with SendMessageQueue.
(sendInterest): Updated with SendMessageQueue.
(createRequestPendingMessage): Updated with SendMessageQueue.
(sendMessages): Updated with SendMessageQueue.
(onAbort): Updated with SendMessageQueue.
(keepAlive): Updated with SendMessageQueue.
(beforeSocketCheck): Updated SendMessageQueue.
* src/PeerInteractionCommand (sendMessages): Shuffle
missingBLockIndexes before using it.
Added its own timeout for peer connection.
* src/PeerAbstractCommand.h: Added member variable timeout and
its
setter.
* src/prefs.h: Added PREF_PEER_CONNECTION_TIMEOUT.
* src/PeerInteractionCommand.cc (PeerInteractionCommand):
Added setTimeout() call.
(executeInternal): Added setTimeout() call.
* src/PeerAbstractCommand.cc (PeerAbstractCommand):
Added timeout.
(isTimeoutDetected): Updated.
* src/main.cc (main): Added PREF_PEER_CONNECTION_TIMEOUT entry
to
option.
Added *simple* message flooding checker.
* src/PeerInteractionCommand.cc (executeInternal):
Added detectMessageFlooding() call.
(detectMessageFlooding): New function.
(receiveMessage): Count up CHOKE, UNCHOKE, HAVE message.
(beforeSocketCheck): Added detectMessageFlooding() call.
* src/PeerInteractionCommand.h: Added sendMessageQueue,
chokeUnchokeCount, haveCount, detectMessageFlooding().
Removed deletePendingPieceMessage(), getRequestSlot(),
deleteRequestSlot(), deleteAllRequestSlot().
* src/PeerInteractionCommand.cc (beforeSocketCheck):
Added checkLongTimePeerChoking() call.
* src/RequestSlotMan.h: Renamed deleteTimeoutRequestSlot().
* src/TorrentMan.cc (addPeer): Delete at most MAX_PEER_LIST_SIZE
peers
if duplicate == false.
The parameter "uploaded" and "downloaded" in the tracker request
are
the size since the client sent the "started" event to the
tracker.
* src/TorrentMan.cc (setup): Assigned saved downloaded Size and
uploaded size to preDownloadedSize, preUploadedSize
respectively.
* src/TorrentMan.h: Added preDownloadedSize, preUploadedSize,
getSessionDownloadedSize(), getSessionUploadedSize().
* src/TrackerInitCommand.cc (execute): Use
getSessionDownloadedSize(),
getSessionUploadedSize() instead of getDownloadedSize(),
getUploadedSize().
* src/PendingMessage.cc (processMessage): Do not send request
message
if the peer is choking the client.
* src/TrackerUpdateCommand.cc (execute): Check wtheher
minInterval is
less than interval.
2006-03-28 15:23:51 +00:00
* Add max peers command-line option
2006-05-18 17:08:29 +00:00
* Refacturing HttpConnection and FtpConnection
2006-07-03 14:19:23 +00:00
* Query resource by location
2006-07-20 15:48:12 +00:00
* List available os, version, etc for metalink
2006-08-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/Option.h
(getAsBool): New function.
* src/Option.cc
(prefs.h): Included.
(defined): 0-length value is now recognized as undefined.
(getAsInt): Rewritten.
(getAsLLInt): Rewritten.
(getAsBool): New function.
* src/FeatureConfig.h: Rewritten.
* src/FeatureConfig.cc: Rewritten.
* src/prefs.h
(PREF_STDOUT_LOG): New definition.
(PREF_LOG): New definition.
(PREF_DIR): New definition.
(PREF_OUT): New definition.
(PREF_SPLIT): New definition.
(PREF_DAEMON): New definition.
(PREF_REFERER): New definition.
(PREF_TORRENT_FILE): New definition.
(PREF_LISTEN_PORT): New definition.
(PREF_METALINK_FILE): New definition.
(PREF_METALINK_VERSION): New definition.
(PREF_METALINK_LANGUAGE): New definition.
(PREF_METALINK_OS): New definition.
(PREF_METALINK_SERVERS): New definition.
* src/main.cc
(main): Following command-line parameters are now put into
Option
class: stdoutLog, logfile, dir, ufilename, split, daemonMode,
referer, torrentFile, metalinkFile, listenPort, metalinkVersion,
metalinkLanguage, metalinkOs, metalinkServers
To fix the bug that aria2 can not handle http response header
properly.
* src/HttpHeader.cc
(put): Made name lowercased.
(defined): Made name lowercased.
(getFirst): Made name lowercased.
(get): Made name lowercased.
(getFirstAsInt): Rewritten.
(getFirstAsLLInt): Rewritten.
2006-08-03 12:36:02 +00:00
* ipv6(RFC2428 for ftp)
2006-08-27 12:49:17 +00:00
* Add silent mode.
2006-08-28 12:40:41 +00:00
* Save URLs and command-line arguments to .aria2 file.
2006-09-19 14:52:59 +00:00
* Add a control port for GUI frontend
2006-10-18 14:57:00 +00:00
* Use SharedHandle where it is useful.
* Rewrite Util::countBit
2006-11-09 14:04:46 +00:00
* Add --bt-timeout command line option.
2006-12-24 06:25:21 +00:00
* remove blockIndex
2007-03-26 12:16:57 +00:00
* Add seed mode.
2007-05-31 15:56:20 +00:00
* consider life cycle of requestGroup and segmentMan
2007-05-20 13:51:52 +00:00
* exit status: all downloads have been successful-> EXIT_SUCCESS,
some of downloads have been failed -> EXIT_FAILURE
2007-07-21 08:56:16 +00:00
* Fix log and stdout message in Metalink related class.
* Fix Cookie header's value. ';' is not necessary at the end of it.
* Time::getTimeInMillis() returns int64_t.
* Util::secfmt, What happens if sec is less than 0?
* Rewrite ChunkedEncoding
2007-07-23 13:04:48 +00:00
* typedef int32_t CUID in common.h or a2types.h
* io related headers and compatible macros and definition -> a2io.h
* net related headers and compatible macros and definition -> a2netcompat.h
2007-07-31 16:45:16 +00:00
* time related headers and compatible macros and definition -> a2time.h
2007-07-23 13:04:48 +00:00
* used globally -> common.h
2007-08-08 15:26:19 +00:00
2007-08-24 10:11:45 +00:00
* Add pgp verification support. I have to use libgpgme??
2007-09-03 10:32:19 +00:00
* Rewrite following classes using TimeBasedCommand
src/ActivePeerConnectionCommand.h
src/FillRequestGroupCommand.h
src/HaveEraseCommand.h
src/PeerChokeCommand.h
src/TorrentAutoSaveCommand.h
2007-08-28 11:51:20 +00:00
* Rewrite MetaFileUtil
2007-10-11 16:58:24 +00:00
* Reconsider the use of RecoverableException and FatalException
* Limit the number of opening file to,say,100 in MultiDiskAdaptor.
2007-10-23 16:29:37 +00:00
* Implement the feature to treat http/ftp as auxuality download method for BitTorrent
2007-10-29 12:43:45 +00:00
* http-seeding(single and multi-file torrent)
2007-10-11 16:58:24 +00:00
2007-10-23 16:29:37 +00:00
-- remaining features to be implemented for 0.12.0 release
* Reimplement ChecksumCommand(validation using 1 checksum for 1 file)
2007-10-11 16:58:24 +00:00
* Implement duplicate download checking in Bt
2007-10-16 11:46:39 +00:00
* Add PeerListenCommand to DownloadEngine only when it is really necessary.
2007-10-23 16:29:37 +00:00
* ftp://USER:PASSWD@Servername automatic parsing
* improve --metalink-location field
2007-10-17 16:26:51 +00:00
* Use content-type for PostDownloadHandler
2007-10-23 16:29:37 +00:00
* Torrent information
2007-10-29 12:43:45 +00:00
* Fix SleepCommand to catch halt signal
* set prealloc default for --file-allocaiton option.
* Add allDownloadFinished to RequestGroup to erase .aria2 file after download finished. RequestGroup::downloadFinished() can not be used here because it doesn't work properly when selective download
* Call Segment::updateSubPiece to reflect partial download information to subpiece.