Commit Graph

899 Commits (0308785bd8dc1d7ebe18d8a91fe12b16bfdd107c)

Author SHA1 Message Date
Tatsuhiro Tsujikawa 7f288acbe0 2008-10-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* Release 0.16.0
2008-10-06 13:58:54 +00:00
Tatsuhiro Tsujikawa 6640a3b303 2008-10-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated doc
	* README
2008-10-06 08:35:52 +00:00
Tatsuhiro Tsujikawa 1950e231cc 2008-10-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated French, Simplified Chinese, German, Bulgarian and 
Japanese
	translations. Thanks to all translators.
	* po/bg.po
	* po/de.po
	* po/fr.po
	* po/ja.po
	* po/zh_CN.po
2008-10-06 08:29:10 +00:00
Tatsuhiro Tsujikawa 529477ccda 2008-10-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.16.0.
	* configure.ac
2008-10-06 08:13:42 +00:00
Tatsuhiro Tsujikawa f4e27634e7 2008-10-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Casted entry->maxConnections to int32_t for std::min<T> with T =
	int32_t.
	Changed the type of count to int32_t.
	* src/Metalink2RequestGroup.cc
2008-10-05 16:52:18 +00:00
Tatsuhiro Tsujikawa bb1ee91509 2008-10-06 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added test for Time::elapsed(time_t).
	* test/TimeTest.cc
2008-10-05 15:24:17 +00:00
Tatsuhiro Tsujikawa 4305a51dd0 2008-10-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug in Time::elapsed(): Util::difftvsec() is used where
	Util::difftv() should be used instead.
	* src/TimeA2.cc
	* src/TimeA2.h
2008-10-05 14:03:08 +00:00
Tatsuhiro Tsujikawa 389f770008 2008-10-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made socket for dht connections non-blocking
	* src/DHTAbstractMessage.cc
	* src/DHTAbstractMessage.h
	* src/DHTConnection.h
	* src/DHTConnectionImpl.cc
	* src/DHTConnectionImpl.h
	* src/DHTMessage.h
	* src/DHTMessageDispatcherImpl.cc
	* src/DHTMessageDispatcherImpl.h
	* src/DHTUnknownMessage.cc
	* src/DHTUnknownMessage.h
	* src/SocketCore.cc
	* src/SocketCore.h
	* test/MockDHTMessage.h
2008-10-05 13:21:14 +00:00
Tatsuhiro Tsujikawa 04a2bd3818 2008-10-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Changed the type of offset to int.
	* src/ParameterizedStringParser.cc
2008-10-05 02:47:09 +00:00
Tatsuhiro Tsujikawa 3da45c763b 2008-10-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made getAsInt() return int32_t
	* src/Option.h
2008-10-04 14:26:35 +00:00
Tatsuhiro Tsujikawa 60b37d3367 2008-10-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Check the availability of winsock2.h and ws2tcpip.h only for 
mingw32
	build.
	* configure.ac
2008-10-04 03:19:22 +00:00
Tatsuhiro Tsujikawa a00c9ca392 2008-10-04 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use sqlite3_open if sqlite3_open_v2 is not available.
	* src/Sqlite3MozCookieParser.cc
	* src/Sqlite3MozCookieParser.h
	* m4/sqlite3.m4
	* test/Sqlite3MozCookieParserTest.cc
2008-10-04 03:02:35 +00:00
Tatsuhiro Tsujikawa 9c946467c9 2008-10-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Replaced '%zu' with '%lu' since mingw32 doesn't recognize '%zu'.
	* src/BtPieceMessage.cc
	* src/DHTPeerAnnounceStorage.cc
	* src/DefaultPieceStorage.cc
	* src/DownloadCommand.cc
	* src/DownloadEngine.cc
	* src/FtpConnection.cc
	* src/PeerConnection.cc
	* src/PeerMessageUtil.cc
	* src/RequestGroup.cc
	* src/RequestGroupMan.cc
	* src/SimpleBtMessage.cc
2008-10-01 15:16:36 +00:00
Tatsuhiro Tsujikawa 859193c50b 2008-10-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use seek() and SetEndOfFile() for mingw32 build instead of 
ftruncate(),
	because mingw32's ftruncate() cannot handle more than 2GB-size 
file.
	* src/AbstractDiskWriter.cc
2008-10-01 14:48:53 +00:00
Tatsuhiro Tsujikawa c682371a58 2008-10-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Don't set Request::supportsPersistentConnection() in 
HttpConnection
	since this code is also used in AbstractProxyResponseCommand.
	Moved those code to HttpResponse.
	* src/HttpResponse.cc
	* src/HttpResponse.h
	* src/HttpConnection.cc
	* src/HttpConnection.h
	* src/HttpResponseCommand.cc
	* test/HttpResponseTest.cc
2008-09-30 15:54:50 +00:00
Tatsuhiro Tsujikawa b513331407 2008-09-30 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed compile error with debian mingw32 cross compiler(4.2.1).
	The configuration is minimum: no torrent, no metalink, so there 
may be
	other compile error on their code.
	* src/a2netcompat.h
	* src/File.cc
	* src/File.h
	* src/SocketCore.cc
	* src/SocketCore.h
2008-09-30 15:16:37 +00:00
Tatsuhiro Tsujikawa c1dd780b95 2008-09-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made a socket of incoming peer non-blocking.
	* src/PeerListenCommand.cc
2008-09-28 11:13:20 +00:00
Tatsuhiro Tsujikawa 4f280af10b 2008-09-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that aria2 may send duplicate data to BitTorrent 
peer if
	whole message data is not sent in one send() call.
	* src/BtPieceMessage.cc
	* src/BtPieceMessage.h
	* src/PeerConnection.cc
	* src/PeerConnection.h
	* src/SimpleBtMessage.cc
	* src/SimpleBtMessage.h
2008-09-28 10:55:17 +00:00
Tatsuhiro Tsujikawa db5944b29b 2008-09-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that aria2 downloads faster than 
max-download-limit when
	downloading file using both HTTP(or FTP) and BitTorrent, because 
aria2
	evaluates speed separatly(HTTP and BiTorrent) against 
max-download-limit
	, instead of sum of them.
	* src/ActivePeerConnectionCommand.cc
	* src/DefaultBtInteractive.cc
	* src/DownloadCommand.cc
	* src/PeerInteractionCommand.cc
	* src/PeerReceiveHandshakeCommand.cc
2008-09-28 05:07:52 +00:00
Tatsuhiro Tsujikawa e9e215dc1f 2008-09-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that HTTPS download fails.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/DownloadCommand.cc
	* src/FtpConnection.cc
	* src/HttpConnection.cc
	* src/HttpRequestCommand.cc
	* src/HttpResponseCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/MSEHandshake.cc
	* src/PeerConnection.cc
	* src/SocketCore.cc
	* src/SocketCore.h

	Fixed the bug that aria2 doesn't download whole content body and 
cannot
	reuse connection if chunked transfer encoding and gzip content 
encoding
	are set.
	* src/DownloadCommand.cc
	* src/HttpSkipResponseCommand.cc
2008-09-27 16:06:34 +00:00
Tatsuhiro Tsujikawa 080fcd5fb8 2008-09-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated man page.
	* doc/aria2c.1.txt
2008-09-27 05:33:05 +00:00
Tatsuhiro Tsujikawa 16d725b96d 2008-09-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
When error occurred while aria2 was parsing an .aria2.conf file, 
print
	the usage of the option that caused error.
	* src/option_processing.cc
2008-09-27 04:54:15 +00:00
Tatsuhiro Tsujikawa e51e7207cf 2008-09-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved message of the error to OptionHandlerException.h
	* src/NameMatchOptionHandler.h
	* src/OptionHandlerException.h
2008-09-27 04:35:36 +00:00
Tatsuhiro Tsujikawa 54bb630077 2008-09-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
When error occurs while aria2 is parsing an command-line option, 
print
	the usage of the option.
	* src/Makefile.am
	* src/NameMatchOptionHandler.h
	* src/OptionHandlerException.h
	* src/option_processing.cc
2008-09-26 16:05:45 +00:00
Tatsuhiro Tsujikawa 87a5bb50c2 2008-09-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Reverted previous change.
	Insert username+'@' to URI(after ftp://) when URI is FTP scheme 
and
	username is not in URI.
	* src/HttpRequest.cc
	* src/Request.cc
	* test/HttpRequestTest.cc
	* test/RequestTest.cc
2008-09-25 16:06:29 +00:00
Tatsuhiro Tsujikawa 789e1926cb 2008-09-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Now colon is required for username and password in FTP URL, 
like:
	ftp://username:password@host.
	If colon is not there, aria2 don't parse it as a username. For 
example,
	aria2 don't retrieve username from ftp://username@host.
	This fix was made in order to login FTP server via 
non-transparent ftp
	proxy.
	* src/Request.cc
	* test/RequestTest.cc
2008-09-25 14:48:38 +00:00
Tatsuhiro Tsujikawa 92d702fa53 2008-09-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use netrc for HTTP.
	Now FTP user/password is sent in Authorization header when
	--ftp-via-http-proxy=get is given.
	* src/AuthConfigFactory.cc
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/NetrcAuthResolver.cc
	* src/NetrcAuthResolver.h
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* test/AuthConfigFactoryTest.cc
	* test/HttpRequestTest.cc
	* test/NetrcAuthResolverTest.cc
2008-09-25 14:37:28 +00:00
Tatsuhiro Tsujikawa 6bc233f414 2008-09-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Issue PWD command first and get working directory and use it as 
a prefix
	for CWD command.
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/FtpFinishDownloadCommand.cc
	* src/FtpInitiateConnectionCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* test/FtpConnectionTest.cc
2008-09-24 17:01:57 +00:00
Tatsuhiro Tsujikawa d717ffb1d0 2008-09-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed default user/pass for FTP user/pass, since it should not 
have
	precedence over netrc configuration by default.
	* src/OptionHandlerFactory.cc
2008-09-24 17:00:01 +00:00
Tatsuhiro Tsujikawa dc6ef187b6 2008-09-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added debug log for socket event.
	* src/AbstractCommand.cc
	* src/PeerAbstractCommand.cc
2008-09-23 10:50:00 +00:00
Tatsuhiro Tsujikawa 2522175ff1 2008-09-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Log microseconds.
	* src/SimpleLogger.cc (SimpleLogger::writeLog)
2008-09-23 10:44:43 +00:00
Tatsuhiro Tsujikawa 2c6d2cd562 2008-09-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Replaced HelpItem.cc with OptionHandler.cc.
	* po/POTFILES.in
	
	Updated po files with 'make update-po'
	* po/aria2c.pot
	* po/*.po
2008-09-22 10:35:53 +00:00
Tatsuhiro Tsujikawa 7cceaa9340 2008-09-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed possible values from the text.
	* src/usage_text.h (TEXT_METALINK_PREFERRED_PROTOCOL)
2008-09-22 10:31:00 +00:00
Tatsuhiro Tsujikawa 77e095300b 2008-09-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed unused preferences:
	PREF_NO_PREALLOCATION
	PREF_STDOUT_LOG
	PREF_TRACKER_MAX_TRIES
	PREF_DIRECT_DOWNLOAD_TIMEOUT
	PREF_MIN_SEGMENT_SIZE
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
2008-09-22 10:12:44 +00:00
Tatsuhiro Tsujikawa f66ed483fa 2008-09-22 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Integrated HelpItem into OptionParser to ease the workload for 
adding
	new options. Removed default value from usage text.
	* src/HelpItem.cc: Removed.
	* src/HelpItem.h: Removed.
	* src/HelpItemFactory.cc: Removed.
	* src/HelpItemFactory.h: Removed.
	* src/Makefile.am
	* src/Makefile.in
	* src/NameMatchOptionHandler.h
	* src/OptionHandler.cc
	* src/OptionHandler.h
	* src/OptionHandlerFactory.cc
	* src/OptionHandlerImpl.h
	* src/OptionParser.cc
	* src/OptionParser.h
	* src/TagContainer.cc: Removed.
	* src/TagContainer.h: Removed.
	* src/TaggedItem.cc: Removed.
	* src/TaggedItem.h: Removed.
	* src/main.cc
	* src/option_processing.cc
	* src/usage_text.h
	* src/version_usage.cc
	* test/HelpItemTest.cc: Removed.
	* test/Makefile.am
	* test/Makefile.in
	* test/OptionHandlerTest.cc
	* test/OptionParserTest.cc
	* test/TagContainerTest.cc: Removed.
2008-09-22 09:26:57 +00:00
Tatsuhiro Tsujikawa f6aaa094a8 2008-09-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved `TransferStat stat = ...' to inside the `if' clause.
	* src/RequestGroup.cc (RequestGroup::reportDownloadFinished)
2008-09-19 14:15:06 +00:00
Tatsuhiro Tsujikawa 67767e2f61 2008-09-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that a block in a piece is requested when same 
block is
	already requested to the same peer in end game mode.
	* src/BtRequestFactory.h
	* src/DefaultBtInteractive.cc
	* src/DefaultBtRequestFactory.cc
	* src/DefaultBtRequestFactory.h
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/DefaultBtRequestFactoryTest.cc
	* test/DefaultPieceStorageTest.cc
	* test/MockBtRequestFactory.h
	* test/MockPieceStorage.h
2008-09-19 14:11:41 +00:00
Tatsuhiro Tsujikawa cdaafd8c8c 2008-09-19 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed _uploadLength and _downloadLength from 
PeerSessionResource
	and use PeerStat::_sessionUploadLength and
	PeerStat::_sessionDownloadLength.
	* src/PeerSessionResource.cc
	* src/PeerSessionResource.h
2008-09-19 13:57:18 +00:00
Tatsuhiro Tsujikawa c1ba5c9745 2008-09-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that prefixLength of split bucket which doesn't 
include
	local node ID is incremented.
	* src/DHTBucket.cc
	* src/DHTBucket.h
	* test/DHTBucketTest.cc
2008-09-18 13:21:33 +00:00
Tatsuhiro Tsujikawa e7d462bb39 2008-09-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added cookies.sqlite to EXTRA_DIST
	* test/Makefile.am
2008-09-17 13:37:32 +00:00
Tatsuhiro Tsujikawa 39317e85be 2008-09-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added Turkish translation. Updated French, German, Russian and
	Simplified Chinese translations. Thanks to all translators.
	* po/LINGUAS
	* po/de.po
	* po/fr.po
	* po/ru.po
	* po/tr.po
	* po/zh_CN.po
2008-09-17 12:51:33 +00:00
Tatsuhiro Tsujikawa 5a3a16f0b0 2008-09-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added deliminating text to the beginning of the log so that one 
can find
	where the log starts easily.
	* src/main.cc
2008-09-17 10:22:28 +00:00
Tatsuhiro Tsujikawa a1bac34778 2008-09-16 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved isProxyGETRequest function outside #ifdef ENABLE_ASYNC_DNS 
clause
	to fix compile error when async DNS is not enabled by 
configuration.
	* src/AbstractCommand.cc
2008-09-16 10:57:27 +00:00
Tatsuhiro Tsujikawa c921529d68 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
If establishing conneciton to a server is failed, then mark 
error on
	its ServerStat.
	Added the cause of error to log when error event occurred.
	Moved message string to message.h for translation.
	* src/AbstractCommand.cc
	* src/AbstractCommand.h
	* src/FtpNegotiationCommand.cc
	* src/HttpRequestCommand.cc
	* src/PeerAbstractCommand.cc
	* src/message.h
2008-09-14 14:31:19 +00:00
Tatsuhiro Tsujikawa 8687877139 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the function to get error message from socket.
	* src/SocketCore.cc
	* src/SocketCore.h
2008-09-14 14:26:35 +00:00
Tatsuhiro Tsujikawa 72da43e47f 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added convenient method RequestGroupMan::getOrCreateServerStat()
	* src/RequestGroupMan.cc
	* src/RequestGroupMan.h
2008-09-14 14:25:16 +00:00
Tatsuhiro Tsujikawa 0680ac5e5e 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
If error event is received in epoll, then abort download 
immediately.
	* src/AbstractCommand.cc
	* src/Command.cc
	* src/Command.h
	* src/DownloadEngine.cc
	* src/PeerAbstractCommand.cc
2008-09-14 13:43:34 +00:00
Tatsuhiro Tsujikawa 81b2e6e108 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added usage message for --uri-selector, --server-stat-of,
	--server-stat-in, --server-stat-timeout options.
	* src/HelpItemFactory.cc
	* src/usage_text.h
2008-09-14 13:40:25 +00:00
Tatsuhiro Tsujikawa 479a16edd6 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added upper limit of FTP response buffer. The current 
implementation
	uses 4096bytes as a limit.
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* test/FtpConnectionTest.cc
2008-09-14 12:51:30 +00:00
Tatsuhiro Tsujikawa 495f02ebbc 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use non-blocking socket for TCP communication to avoid possible
	blocking due to buffer full.
	* src/AbstractProxyRequestCommand.cc
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* src/HttpConnection.cc
	* src/HttpConnection.h
	* src/HttpRequestCommand.cc
	* src/InitiatorMSEHandshakeCommand.cc
	* src/InitiatorMSEHandshakeCommand.h
	* src/MSEHandshake.cc
	* src/MSEHandshake.h
	* src/Makefile.am
	* src/PeerConnection.cc
	* src/PeerConnection.h
	* src/PeerInteractionCommand.cc
	* src/PeerListenCommand.cc
	* src/ReceiverMSEHandshakeCommand.cc
	* src/ReceiverMSEHandshakeCommand.h
	* src/SocketBuffer.cc
	* src/SocketBuffer.h
	* src/SocketCore.cc
	* src/SocketCore.h
2008-09-13 16:32:47 +00:00
Tatsuhiro Tsujikawa 281319e8cd 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Call setStatusRealtime() in constructor.
	* src/RealtimeCommand.cc
	* src/RealtimeCommand.h
2008-09-13 15:57:23 +00:00
Tatsuhiro Tsujikawa 369aff31c2 2008-09-14 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Call Download::setNoWait(true) to execute newly created command 
without
	a pause.
	* src/AbstractCommand.cc
2008-09-13 15:54:52 +00:00
Tatsuhiro Tsujikawa 3599067ec1 2008-09-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added --max-file-not-found=NUM option. If aria2 receives `file 
not
	found' error from HTTP/FTP server NUM times without getting 
single
	bytes of data, then force the download to fail.
	Basically aria2 tris all URIs available. So if long list of URIs 
are
	specified in Metalink, then aria2 will take a long time to fail
	eventually if all URIs are outdated. This option eases this 
situation
	to limit the number of servers to try.
	* src/FtpNegotiationCommand.cc
	* src/HelpItemFactory.cc
	* src/HttpResponseCommand.cc
	* src/OptionHandlerFactory.cc
	* src/PeerStat.h
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/SegmentMan.cc
	* src/SegmentMan.h
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2008-09-10 14:56:44 +00:00
Tatsuhiro Tsujikawa 1b2a76706f 2008-09-10 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that bulkReceiveResponse() reads all received data 
as a
	response even if more than one response is in it.
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* test/FtpConnectionTest.cc
2008-09-09 15:22:32 +00:00
Tatsuhiro Tsujikawa b23c3facc9 2008-09-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Merged from stable-0.15
	* m4/libcares.m4

	Use pkg-config
	* m4/sqlite3.m4
2008-09-09 12:49:11 +00:00
Tatsuhiro Tsujikawa 79597c32cc 2008-09-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed unnecessary if statement.
	* src/DefaultPieceStorage.cc (initPieceStorage)
2008-09-09 12:21:55 +00:00
Tatsuhiro Tsujikawa 4b997228ad 2008-09-09 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added --connect-timeout option to specify connect timeout in 
seconds.
	This option is in effect for HTTP/FTP/proxy server. The timeout 
for
	connecting to BitTorrent peer is not controlled by this option.
	* src/AbstractProxyRequestCommand.cc
	* src/FtpNegotiationCommand.cc
	* src/HelpItemFactory.cc
	* src/HttpRequestCommand.cc
	* src/OptionHandlerFactory.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* src/usage_text.h
2008-09-09 12:13:08 +00:00
Tatsuhiro Tsujikawa a91664cef8 2008-09-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added help message for -R option.
	* src/HelpItemFactory.cc
	* src/usage_text.h
2008-09-08 13:23:55 +00:00
Tatsuhiro Tsujikawa dc8915f599 2008-09-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added the message that the time is in local time zone.
	* src/RequestGroup.cc
2008-09-08 13:09:38 +00:00
Tatsuhiro Tsujikawa eb652b570e 2008-09-08 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented the ability to get timestamp from remote FTP server 
using
	MDTM command described in RFC3659.
	* src/FtpConnection.cc
	* src/FtpConnection.h
	* src/FtpNegotiationCommand.cc
	* src/FtpNegotiationCommand.h
	* test/FtpConnectionTest.cc
	* test/Makefile.am
2008-09-08 13:06:44 +00:00
Tatsuhiro Tsujikawa dbc8f5b737 2008-09-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented the ability to get timestamp from remote HTTP server 
and
	apply it to local file. To enable this feature, --remote-time 
option
	is added. No usage text has been written yet.
	If several servers returns difference timestamp, then aria2 uses 
latest
	one.
	* src/CopyDiskAdaptor.cc
	* src/CopyDiskAdaptor.h
	* src/DirectDiskAdaptor.cc
	* src/DirectDiskAdaptor.h
	* src/DiskAdaptor.h
	* src/File.cc
	* src/File.h
	* src/HttpHeader.cc
	* src/HttpHeader.h
	* src/HttpResponse.cc
	* src/HttpResponse.h
	* src/HttpResponseCommand.cc
	* src/HttpResponseCommand.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/OptionHandlerFactory.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
	* src/RequestGroupMan.cc
	* src/option_processing.cc
	* src/prefs.cc
	* src/prefs.h
	* test/CopyDiskAdaptorTest.cc
	* test/FileTest.cc
	* test/Makefile.am
	* test/Makefile.in
	* test/MultiDiskAdaptorTest.cc
	* test/TestUtil.cc
2008-09-07 14:38:26 +00:00
Tatsuhiro Tsujikawa 4e28efd925 2008-09-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that DiskWriterEntry is not created when its
	FileEntry.isRequested() is false and it doesn't share a piece 
with
	other FileEntries that are requested. This bug causes 
segmentation fault
	in the end.
2008-09-07 11:37:15 +00:00
Tatsuhiro Tsujikawa 390538d0b5 2008-09-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that exception is thrown when 
MultiDiskAdaptor::size() is
	called if the number of file entries are greater than max open 
files.
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/DiskAdaptor.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* test/MultiDiskAdaptorTest.cc
2008-09-07 08:29:09 +00:00
Tatsuhiro Tsujikawa 5fb94a3af0 2008-09-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added a constuctor that receives struct timeval.
	Added operator<.
	* src/TimeA2.cc
	* src/TimeA2.h
	* test/TimeTest.cc
2008-09-07 04:57:31 +00:00
Tatsuhiro Tsujikawa b624a12ed0 2008-09-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Parse `expires' of Set-Cookie using Time::parseHTTPDate()
	* src/CookieParser.cc
	* test/CookieParserTest.cc
	* test/HttpResponseTest.cc
2008-09-07 04:36:41 +00:00
Tatsuhiro Tsujikawa 69b18308d9 2008-09-07 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implmented the functions to parse date.
	* src/TimeA2.cc
	* src/TimeA2.h
	* test/TimeTest.cc
2008-09-07 04:19:11 +00:00
Tatsuhiro Tsujikawa 9fc8b15736 2008-09-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added "Firefox3 Cookie" feature to FeatureConfig
	* src/FeatureConfig.cc
	* src/FeatureConfig.h
	* test/FeatureConfigTest.cc
2008-09-05 15:34:04 +00:00
Tatsuhiro Tsujikawa 40c1d08c5a 2008-09-05 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number to 0.16.0b
	* configure.ac
2008-09-05 13:18:39 +00:00
Tatsuhiro Tsujikawa 8164c069d9 2008-09-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use pkg-config if is is available.
	* m4/openssl.m4
2008-09-03 14:44:57 +00:00
Tatsuhiro Tsujikawa 2439cad4ac 2008-09-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
DEFAULT_ANNOUNCE_INTERVAL: unsigned int -> time_t
	* src/BtAnnounce.h
2008-09-03 12:14:20 +00:00
Tatsuhiro Tsujikawa d3453a8387 2008-09-03 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
If an error occurred with a URI, remove identical URI from 
remaining
	URI list because it is likely that same error occurred in the 
end and it
	is waste of time.
	* src/AbstractCommand.cc
	* src/RequestGroup.cc
	* src/RequestGroup.h
2008-09-03 12:12:47 +00:00
Tatsuhiro Tsujikawa 09077b809f 2008-09-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed wrong comment.
	* src/DefaultPeerStorage.cc
2008-09-02 14:14:33 +00:00
Tatsuhiro Tsujikawa 7cbe5a7934 2008-09-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved implementation to SimpleRandomizer.cc from 
SimpleRandomizer.h.
	Added return value of getpid() to argument of srand() to achieve 
more
	randomized value.
	* src/SimpleRandomizer.cc
	* src/SimpleRandomizer.h
2008-09-02 14:11:59 +00:00
Tatsuhiro Tsujikawa 9f5ed15e6f Fixed typo. 2008-09-02 13:52:12 +00:00
Tatsuhiro Tsujikawa 574ca31e38 2008-09-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Contact tracker frequently when the number of connections are 0	
and
	download is not finished yet.
	* src/ActivePeerConnectionCommand.cc
	* src/BtAnnounce.h
	* src/DefaultBtAnnounce.cc
	* src/DefaultBtAnnounce.h
	* test/MockBtAnnounce.h
2008-09-02 13:51:46 +00:00
Tatsuhiro Tsujikawa c46b6055c6 2008-09-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Moved threthold values to UTPexExtensionMessage.
	* src/DefaultBtInteractive.cc
	* src/Peer.cc
	* src/Peer.h
	* src/UTPexExtensionMessage.cc
	* src/UTPexExtensionMessage.h
	* test/UTPexExtensionMessageTest.cc
2008-09-02 12:31:04 +00:00
Tatsuhiro Tsujikawa 46f0e018d4 2008-09-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added _incoming member to Peer class and made it true if the 
peer
	initiated connection. Don't add those peer to UTPex message.
	If extended handshake is received, assign _incoming to false.
	* src/DefaultBtInteractive.cc
	* src/HandshakeExtensionMessage.cc
	* src/Peer.cc
	* src/Peer.h
	* src/PeerListenCommand.cc
2008-09-02 11:22:47 +00:00
Tatsuhiro Tsujikawa d4215a82b7 2008-09-02 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made files whose name ends with ".gz", ".tgz" not inflated by 
Content
	Encoding Decoder. Removed size threshold for turning off on the 
fly
	inflation because resulting file may or may not be inflated 
depending
	on the file size and I think it is not expected by users.
	This change fixes segmentation fault when Metalink file contains 
gzipped
	file and its filesize is provided.
	* src/HttpResponseCommand.cc
	* src/HttpResponseCommand.h
2008-09-01 15:06:29 +00:00
Tatsuhiro Tsujikawa 6779c72b5d 2008-09-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Made Cookie immutable.
	* src/Cookie.cc
	* src/Cookie.h
	* src/CookieParser.cc
	* src/CookieParser.h
	* src/CookieStorage.cc
	* test/CookieParserTest.cc
	* test/CookieStorageTest.cc
	* test/NsCookieParserTest.cc
	* test/Sqlite3MozCookieParserTest.cc
2008-09-01 15:00:41 +00:00
Tatsuhiro Tsujikawa 2152b20ba4 2008-09-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed CookieBox, CookieBoxFactory.
	* src/CookieBox.cc
	* src/CookieBox.h
	* src/CookieBoxFactory.cc
	* src/CookieBoxFactory.h
	* src/Makefile.am
2008-09-01 13:57:44 +00:00
Tatsuhiro Tsujikawa e7633f2939 Added comment. 2008-09-01 13:55:59 +00:00
Tatsuhiro Tsujikawa 398d53f5f5 2008-09-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use CookieStorage class instead of CookieBox class.
	Now CookieStorage accepts cookies from numeric host such as 
192.168.1.1.
	* src/AbstractProxyRequestCommand.cc
	* src/CookieStorage.cc
	* src/DownloadEngine.cc
	* src/DownloadEngine.h
	* src/HttpConnection.cc
	* src/HttpConnection.h
	* src/HttpRequest.cc
	* src/HttpRequest.h
	* src/HttpRequestCommand.cc
	* src/HttpResponse.cc
	* src/HttpResponseCommand.cc
	* src/HttpSkipResponseCommand.cc
	* src/Makefile.am
	* src/MultiUrlRequestInfo.cc
	* src/Request.cc
	* src/Request.h
	* src/main.cc
	* test/AllTest.cc
	* test/CookieStorageTest.cc
	* test/CookieTest.cc
	* test/HttpRequestTest.cc
	* test/HttpResponseTest.cc
	* test/Makefile.am
	* test/NsCookieParserTest.cc
	* test/Sqlite3MozCookieParserTest.cc
	* test/nscookietest.txt
2008-09-01 13:46:03 +00:00
Tatsuhiro Tsujikawa f670cdbba9 2008-08-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Updated
	* test/Cookies.sqlite
	* test/nscookietest.txt
2008-08-27 16:33:09 +00:00
Tatsuhiro Tsujikawa 9ac91413dd 2008-08-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added tests for CookieStorage::load()
	* test/CookieStorageTest.cc
2008-08-27 16:31:43 +00:00
Tatsuhiro Tsujikawa 9cdcbf32ff 2008-08-28 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added CookieStorage class which is based on RFC2109 and manages 
cookies
	more strictly than CookieBox and CookieBoxFactory class.
	* src/CookieStorage.cc
	* src/CookieStorage.h
	* src/Cookie.cc
	* src/Cookie.h
	* test/CookieStorageTest.cc
	* test/CookieTest.cc
2008-08-27 16:04:36 +00:00
Tatsuhiro Tsujikawa 58ad225655 2008-08-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that commands are created more than the number of	
pieces.
	* src/RequestGroup.cc
2008-08-27 15:02:21 +00:00
Tatsuhiro Tsujikawa 01ae2bc912 2008-08-27 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed infinite loop bug in FTP when SIZE command failed.
	* src/FtpNegotiationCommand.cc
2008-08-27 15:00:00 +00:00
Tatsuhiro Tsujikawa a50048aa54 2008-08-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed DirectDiskAdaptorTest.h
	* test/Makefile.am
2008-08-26 12:53:43 +00:00
Tatsuhiro Tsujikawa 76a9ad9c84 2008-08-26 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed chunk checksum validation cannot detect trailing garbage 
data.
	BUG#2074141
	* src/AbstractSingleDiskAdaptor.cc
	* src/AbstractSingleDiskAdaptor.h
	* src/CheckIntegrityEntry.cc
	* src/CheckIntegrityEntry.h
	* src/DiskAdaptor.h
	* src/MultiDiskAdaptor.cc
	* src/MultiDiskAdaptor.h
	* src/RequestGroup.cc
	* test/DirectDiskAdaptorTest.cc
	* test/MultiDiskAdaptorTest.cc
	* test/TestUtil.cc
	* test/TestUtil.h
2008-08-26 12:39:07 +00:00
Tatsuhiro Tsujikawa 15101a89a0 2008-08-25 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number of dht.dat file to 3. In version 3 
format, time
	is stored in 64bit, network byte order.
	New build can load old format(version 2) but it saves the file 
in new
	format. It means once you used new build, your dht.dat becomes
	incompatible with older build.
	* src/DHTRoutingTableDeserializer.cc
	* src/DHTRoutingTableSerializer.cc
	* test/DHTRoutingTableSerializerTest.cc
2008-08-25 11:55:30 +00:00
Tatsuhiro Tsujikawa 335a0fb36f 2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Bump up version number of .aria2 control file to 0001.
	New aria2 can still load version 0000 file but it saves the file 
in
	version 0001 format. It means that new aria2 can resume download
	started by old aria2 but the opposite is not true.
	* src/DefaultBtProgressInfoFile.cc
	* src/DefaultBtProgressInfoFile.h
	* test/DefaultBtProgressInfoFileTest.cc
2008-08-24 09:43:45 +00:00
Tatsuhiro Tsujikawa 02dde388b8 2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added ntoh64 and hton64 as inline functions.
	* src/Util.cc
	* test/UtilTest.cc
2008-08-24 07:55:34 +00:00
Tatsuhiro Tsujikawa ed25d2e245 2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added sqlite3 depenency and Firefox3 cookie support.
	* README
2008-08-23 16:14:17 +00:00
Tatsuhiro Tsujikawa bf072626c8 2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
State that firefox3 cookie is supported explicitly in the usage.
	* src/usage_text.h
2008-08-23 16:09:43 +00:00
Tatsuhiro Tsujikawa 33ad8505cd 2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Externalized message.
	* src/RequestGroupMan.cc
	* src/message.h
2008-08-23 15:59:15 +00:00
Tatsuhiro Tsujikawa ef2478b246 2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Save temporary file first and rename to the destination on 
success.
	Added test cases.
	* src/RequestGroupMan.cc
	* test/RequestGroupManTest.cc
2008-08-23 15:42:06 +00:00
Tatsuhiro Tsujikawa a12be22ecb 2008-08-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed the bug that the number of connected peer is exceeding the 
limit
	(55 by default) in seeding mode.
	Multiplied 0.8 to _maxUploadSpeedLimit.
	* src/ActivePeerConnectionCommand.cc
2008-08-23 15:17:32 +00:00
Tatsuhiro Tsujikawa df9d042d25 2008-08-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Clear table item.
	* src/Dictionary.cc
2008-08-23 15:09:29 +00:00
Tatsuhiro Tsujikawa 8503419ae3 2008-08-23 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Fixed error handling of lseek.
	* src/AbstractDiskWriter.cc
2008-08-23 14:59:04 +00:00
Tatsuhiro Tsujikawa 7e8565f82e 2008-08-17 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Removed "(1.x/2.x)" from TEXT_LOAD_COOKIES since aria2 can load 
Firefox3
	style cookie file.
	* src/usage_text.h
2008-08-17 14:13:04 +00:00