This release fixes the bug that prevents --bt-lpd-interface from
working. If some options sent by RPC request are not acceptable for
the download type, they are now simply ignored instead of rejecting
RPC request entirely. The aria2 RPC server now returns 4XX error code
if the request is not valid in the HTTP level. To improve packaging,
--with-bashcompletiondir configure option was added. This option
overrides where the aria2c bash_completion file is going to be
installed. All manual pages are now generated by Sphinx.
Return appropriate HTTP status code on RPC failure. In this change,
we return 404 if the request path is neither /json-rpc nor /rpc. If
XML feature is not enabled and /rpc is requested, return 404. If
XML parser failed, return 400. JSON parser failure has been handled
well in the existing code.
Ignore unacceptable options in RPC request instead of throwing
error. This change allows RPC client to send same options for the
different type of downloads.
Handle sockaddr_in.sin_len and sockaddr_in6.sin6_len. Check
sockaddr_in.sin_len and sockaddr_in6.sin6_len are available and
assign values to them properly. This change fixes unit test error
and most error related to getnameinfo() on netbsd.
Removed dependency on inet_aton. Implemented inetPton as a
replacement of inet_aton. inetPton is implemented using
net::getBinAddr. This change fixes bug#3525424.
Added --with-bashcompletiondir configure option. By default,
bash_completion file named aria2c is installed to the directory
$prefix/share/doc/aria2/bash_completion. To change the install
directory of the file, use --with-bashcompletiondir option.
Converted README.asciidoc into README.rst
Use Sphinx for aria2 manual page documentation. The source files
for manual pages are placed under doc/manual-src. The manual pages
are generated under doc/manual-src/$LANG/_build. The HTML version
manual page was dropped from the distribution archive.
Fixed the bug which prevents --bt-lpd-interface from working.
This release adds JSON-RPC over WebSocket. It uses the same
request/response JSON objects with existing JSON-RPC over HTTP and
adds event notifications from server to client. See manpage for
details. TLS hostname check is rewritten based on RFC 6125 and it is
used for both GNUTLS and OpenSSL builds. The
--bt-remove-unselected-file option was added. This option removes the
unselected files when BitTorrent download is completed.
Use CreateProcessW instead of CreateProcessA in MinGW build. This
means filename is now passed as wchar string, not UTF-8 encoded char
Check with pkg-config only: c-ares, openssl, sqlite3 and zlib.
Removed --with-*-prefix configure option for c-ares, openssl,
sqlite3, zlib and expat. Use CPPFLAGS and/or PKG_CONFIG_PATH
Fixed compile error with i686-w64-mingw32 and x86_64-w64-mingw32
Get the home directory of the effective user ID using getpwuid() if
$HOME is not defined.
Don't use locale dependent toupper and tolower.
Rewritten TLS hostname check based on RFC 6125 for both GNUTLS and
Added --bt-remove-unselected-file option. Removes the unselected
files when download is completed in BitTorrent. To select files, use
--select-file option. If it is not used, all files are assumed to be
selected. Please use this option with care because it will actually
remove files from your disk. This option is default to false.
Fixed compile error on Open Solaris. Fixes bug#3497518
Added JSON-RPC over WebSocket.
Fixed assertion failure if Chunked encoding along with
Content-Length is used.
Fixed clang and gcc-4.7 warning and errors.
Fixed the bug that aria2 cannot read line longer than 4096 bytes
from the file specified by --input-file option. Fixes bug#3495336