Fixed the bug that bad URI is sent to the tracker when the
announe URI in torrent file includes query.
* src/DefaultBtAnnounce.cc
* test/DefaultBtAnnounceTest.cc
Added Option::blank().
Use !Option::blank(name) instead of Option::defined(name) for
the options that take filename.
* src/MultiUrlRequestInfo.cc
* src/Option.cc
* src/Option.h
* src/main.cc
* src/option_processing.cc
* test/OptionTest.cc
Enabled --check-certificate by default. Added compile
time(configure) option --with-ca-bundle to specify CA bundle.
Warn if --check-certificate=true and --ca-certificate is not
specified or loading CA certificate is failed.
* configure.ac
* src/MultiUrlRequestInfo.cc
* src/OptionHandlerFactory.cc
* src/message.h
Added `https' tag to help option category. Added https tag to
--ca-certificate, --certificate, --check-certificate and
--private-key option.
* src/OptionHandlerFactory.cc
* src/help_tags.h
* src/option_processing.cc
Changed the package name from `aria2c' to `aria2' in order to
fix the packaging issue in Debian and Fedora. The name of the
executable is not changed.
* configure.ac
Applied aria2-1.0.1-mingw.patch.
Use SOCKET_ERRNO instead of errno if the code is used both linux
and mingw.
Collected 4th and 5th argument types for getsockopt and
setsockopt.
* src/SocketCore.cc
* src/a2netcompat.h
* test/SocketCoreTest.cc
Closed files after the test cases in MultiDiskWriterTest::
testResetDiskWriterEntries(). This will fix the unit test error
in mingw32 build.
* test/MultiDiskWriterTest.cc
Use HEAD method to get file size from HTTP server for segmented
downloading.
The request to the BitTorrent Tracker always uses GET method
because the response of the tracker is small and it doesn't need
segmented download.
* src/FtpNegotiationCommand.cc
* src/HttpRequest.cc
* src/HttpResponseCommand.cc
* src/HttpSkipResponseCommand.cc
* src/RequestGroup.cc
* src/RequestGroup.h
* src/TrackerWatcherCommand.cc
* test/HttpRequestTest.cc
Do not urlencode Request::url in setUrl() because we want
unmodified URL using Request::getUrl()
* src/Request.cc
* src/Request.h
* test/RequestTest.cc
Excluded testLoad_compat() and testLoad_nonBt_compat() when
compiled on big endian systems because test .aria2 files are
made for little endian systems.
* test/DefaultBtProgressInfoFileTest.cc
Fixed the bug that causes segmentation fault/bus error during
executing choking algorithm while seeding. This is caused by
improper implementation of compare function which returns
inconsistent results depending on the timing of last unchoke.
* src/BtSeederStateChoke.cc
* src/BtSeederStateChoke.h
* src/DefaultPeerStorage.cc
Added -V for the short form of --check-integrity option.
Now the argument of --check-integrity option is optional:
if it is omitted, it is evaluated as true.
* doc/aria2c.1.txt
* src/option_processing.cc
* src/usage_text.h
Made the default value of --ftp-pasv option set to true and it
can take true/false values.
* src/OptionHandlerFactory.cc
* src/option_processing.cc
* src/usage_text.h
* doc/aria2c.1.txt
Erase peer before executing onReturningPeer and onErasingPeer
because choking algorithm called from onReturningPeer doesn't
like erasing peer in the active peer list.
* src/DefaultPeerStorage.cc
Instead of creating special filename in createDownloadResult()
if inMemoryDownload() is true, now it is done in getFilePath().
* src/RequestGroup.cc
* test/RequestGroupTest.cc
Print "[MEMORY]" and filename if a file is not saved in disk and
just processed in memory. This is the fix for previous comment
out.
* src/MemoryBufferPreDownloadHandler.cc
* src/RequestGroup.cc
* src/RequestGroup.h
Commented out the code which sets virtual directory path
"[MEMORY]" propagate directory to store to following
RequestGroup.
* src/MemoryBufferPreDownloadHandler.cc