Tatsuhiro Tsujikawa
f56743b083
Parse WebSocket RPC request on the fly without buffering
2012-07-15 00:24:59 +09:00
Tatsuhiro Tsujikawa
7100b1b9ca
Parse HTTP RPC request on the fly without buffering
2012-07-14 18:59:56 +09:00
Tatsuhiro Tsujikawa
5352d76d4f
Added reset() API to ParserStateMachine
...
Not unittested
2012-07-13 00:53:56 +09:00
Tatsuhiro Tsujikawa
70685bd233
Rewritten Xml2XmlParser
...
Now it is push parser + utility function for file parsing.
2012-07-11 23:20:48 +09:00
Tatsuhiro Tsujikawa
cd67e27ca4
Check structure depth when parsing JSON
2012-07-11 23:20:20 +09:00
Tatsuhiro Tsujikawa
57b46d5123
Added streaming parser for structured data format.
...
Added JSON streaming parser. Note that currently JSON parser ignores
frac and exp parts of number construct.
2012-07-10 01:42:42 +09:00
Tatsuhiro Tsujikawa
e3b8c92434
Added TLS SNI support
2012-07-06 23:07:10 +09:00
Tatsuhiro Tsujikawa
b00ed1aa30
More http header parser tests
2012-07-06 00:57:18 +09:00
Tatsuhiro Tsujikawa
f04090199f
Rewritten timegm replacement function
...
The algorithm is based on Python 2.7 calendar.timegm.
2012-07-06 00:34:37 +09:00
Tatsuhiro Tsujikawa
4046f27ea9
Use system-wide certificates for SSL
...
Use system-wide certificates for SSL. For GnuTLS it requires the
latest version, 3.0.20. OpenSSL had it for longer. This means that if
SSL library is properly configured to locate system-wide certificates
store, the user don't have to use --ca-certificate option. Also
packagers don't have to use --with-ca-bundle configure option.
Patch from Cristian Morales Vega
2012-07-05 23:22:34 +09:00
Tatsuhiro Tsujikawa
b25d8a9923
Code cleanup
2012-07-04 22:59:15 +09:00
Tatsuhiro Tsujikawa
995c07c184
Fixed base64::decode() return "" if input ends with garbase and no padding
2012-07-04 22:51:41 +09:00
Tatsuhiro Tsujikawa
aa944f4ef6
Guarded include of stdint.h and inttypes.h
2012-07-04 00:00:24 +09:00
Tatsuhiro Tsujikawa
98e1c6c580
Code cleanup
2012-07-03 21:56:26 +09:00
Sergey Zolotarev
1c39b9474e
Fixed ssize_t error on MinGW
2012-07-03 17:44:48 +06:00
Tatsuhiro Tsujikawa
5d3b6801b1
Changed default Peer ID prefix
...
The new Peer ID prefix is "A2-$MAJOR-$MINOR-$MICRO-", where $MAJOR,
$MINOR and $MICRO are the major version, the minor version and the
micro version respectively. For instance, 1.15.2 release of aria2 will
use "A2-1-15-2-".
2012-06-29 23:38:12 +09:00
Tatsuhiro Tsujikawa
0c8ec9c325
Merged Android build scripts
2012-06-29 00:51:13 +09:00
Tatsuhiro Tsujikawa
f1017d5def
Don't percent-decode filename value in Content-Disposition.
...
We only percent-decode filename* value in Content-Disposition because
the encoding is fully specified. But since filename value is not, so
we just accept it as is.
2012-06-28 23:18:50 +09:00
Tatsuhiro Tsujikawa
c30ea8adeb
Don't sum in-flight piece which does not intersect filtered ranges
...
When calculating completed length, don't sum the completed length of
piece which does not intersect filtered ranges.
2012-06-27 23:28:57 +09:00
Tatsuhiro Tsujikawa
68f225de0b
Use stack allocation+reference instead of pointer for BufferedFile
2012-06-27 01:38:27 +09:00
Tatsuhiro Tsujikawa
a6775db3ca
Fixed segmentation fault when logger failed to open log file
2012-06-27 01:38:18 +09:00
Tatsuhiro Tsujikawa
16d395779a
Removed static_cast<int64>()s where they are unnecessary
2012-06-25 23:44:52 +09:00
Tatsuhiro Tsujikawa
1b874268a0
Use int64_t instead of off_t
...
Some classes such as DiskAdaptor, DiskWriter, FileAllocationIterator
and ChecksumValidator are left unchanged.
2012-06-25 23:35:24 +09:00
Tatsuhiro Tsujikawa
4b03634f36
Use PRId64 for int64_t format specifier
2012-06-25 22:43:33 +09:00
Tatsuhiro Tsujikawa
3620d271af
Process as many messages as possible in recv buffer
2012-06-25 21:37:55 +09:00
Tatsuhiro Tsujikawa
e816c5eee4
Rewritten PeerConnection::receiveMessage()
...
The old implementation calls at least 2 read(2) (4bytes length and
payload) to receive the message. This change will read as many bytes
as possible in one read(2) call. BtPieceMessage::data_ is now just a
const pointer to the internal buffer of PeerConnection.
2012-06-25 21:35:52 +09:00
Tatsuhiro Tsujikawa
73b75186c7
Handle the case when MINGW32 vsnprintf returns -1
...
MINGW32 vsnprintf returns -1 if output is truncated. Increased buffer
for vsnprintf in WinConsoleFile and fmt.
2012-06-24 16:56:34 +09:00
Tatsuhiro Tsujikawa
96720b297d
Added --enable-mmap option.
...
If this option is used, map files into memory using mmap(2). This
option is experimental.
2012-06-24 16:28:04 +09:00
Tatsuhiro Tsujikawa
38426d744b
Code cleanup
2012-06-23 17:50:27 +09:00
Tatsuhiro Tsujikawa
5fc1b1ad29
Rewritten HTTP header parser
2012-06-23 17:34:20 +09:00
Tatsuhiro Tsujikawa
5a0a62c5f4
Added CORS preflight request support.
...
This change is based on the patch from binux.
2012-06-23 16:26:17 +09:00
Tatsuhiro Tsujikawa
9ba65aea1d
Rewritten ChunkedDecodingStreamFilter
2012-06-18 23:42:46 +09:00
Tatsuhiro Tsujikawa
afcd95dec7
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.
2012-05-19 18:36:57 +09:00
Tatsuhiro Tsujikawa
68eb1b6737
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.
2012-05-17 22:52:39 +09:00
Tatsuhiro Tsujikawa
92c518a2ba
Moved parseAsyncDNSServers() to AsyncNameResolver.cc and refactored.
...
The parseAsyncDNSServers() now uses net::getBinAddr() internally,
which makes the function simpler. Also added unit test.
2012-05-16 23:05:09 +09:00
Tatsuhiro Tsujikawa
36051cca5e
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.
2012-05-16 22:43:25 +09:00
Tatsuhiro Tsujikawa
ca60020fa4
Removed dependency on inet_aton
...
Implemented inetPton as a replacement of inet_aton. inetPton is
implemented using net::getBinAddr.
This change fixes bug#3525424.
2012-05-14 01:17:50 +09:00
Tatsuhiro Tsujikawa
19798f09ae
Fixed typo
2012-05-12 19:33:33 +09:00
Tatsuhiro Tsujikawa
a998e32f95
Call ERR_clear_error() before OpenSSL I/O functions.
...
Use ERR_get_error() with ERR_error_string().
2012-05-08 01:02:18 +09:00
Tatsuhiro Tsujikawa
d16071d108
Fixed the bug which prevents --bt-lpd-interface from working.
...
Fixes bug#3520125
2012-04-22 18:35:43 +09:00
Tatsuhiro Tsujikawa
f5d3cd1bb0
Updated copyright year
2012-04-08 21:43:00 +09:00
Tatsuhiro Tsujikawa
aee28c8b0d
Fixed compile warning with clang
2012-04-08 19:22:23 +09:00
Tatsuhiro Tsujikawa
1e0068e4d4
WebSocket: Check keyword string in comma separeted values in HTTP
...
header field.
2012-04-08 19:00:07 +09:00
Tatsuhiro Tsujikawa
c648ca0c5c
Include common.h from a2algo.h and a2functional.h
2012-04-08 18:59:06 +09:00
Tatsuhiro Tsujikawa
52826433d9
Fixed typo
2012-04-08 17:51:01 +09:00
Tatsuhiro Tsujikawa
9e8676af2c
Disable IPv6 by default only if MinGW 32bit build.
2012-04-08 17:45:33 +09:00
Tatsuhiro Tsujikawa
d9bb24a2e0
Fixed gcc-4.7 warnings
2012-04-08 03:12:29 +09:00
Tatsuhiro Tsujikawa
fcbdecfd1e
Conditional compile for WebSocket.
...
WebSocket support depends on Message Digest support.
2012-04-08 00:50:25 +09:00
Tatsuhiro Tsujikawa
7bc2a14d9f
Fixed compile error without BitTorrent support
2012-04-08 00:05:42 +09:00
Tatsuhiro Tsujikawa
ef86d760cc
Use CreateProcessW instead of CreateProcessA
2012-04-07 23:57:49 +09:00