Nils Maier
3590077d5c
More auto-converts by cpp11-migrate
2013-09-20 23:06:49 +02:00
Nils Maier
cf6f58ceec
More code cleanups
2013-08-21 07:32:01 +02:00
Nils Maier
8526ceeb45
Convert to autos and ranged loops
2013-08-21 05:56:17 +02:00
Nils Maier
d8f44ef4f6
Convert most 0/NULL pointers to nullptr
...
Courtesy of llvm cpp11-migrate 3.3
2013-08-20 21:28:24 +02:00
Tatsuhiro Tsujikawa
05d85e2965
Remove auto_delete in favor of std::unique_ptr
2013-06-22 18:51:29 +09:00
Tatsuhiro Tsujikawa
07d270c87e
Require -std=c++11 and use std::shared_ptr instead of SharedHandle
2013-06-22 01:10:38 +09:00
Tatsuhiro Tsujikawa
db2e22132d
Merge branch 'libuv-eventpoll' of https://github.com/nmaier/aria2 into nmaier-libuv-eventpoll
2013-04-30 14:53:42 +09:00
Tatsuhiro Tsujikawa
5e245c3397
Fix compile error without SSL/TLS lib
2013-04-14 18:43:16 +09:00
Nils Maier
9acd3df3cb
LibUV: Implement LibuvEventPoll
...
LibUV event will use the best available polling method on a system, kind
of like aria2 does already with the different *EventPoll
implementations.
However, libuv may support different/newer polling mechanisms; for
example on Windows it will use IO Completion Ports which are superior to
select() ;)
2013-04-10 08:47:20 +02:00
Nils Maier
0bcbd947b4
AppleTLS: Implement AppleTLS and Apple Message Digest
2013-04-05 23:10:47 +02:00
Tatsuhiro Tsujikawa
8580c98bce
Abstract TLS session implementation
...
Now TLS session object is abstracted as TLSSession class. Currently,
we have GNUTLS and OpenSSL implementations.
2013-04-03 02:24:41 +09:00
Tatsuhiro Tsujikawa
d671d8bf36
mingw: Ignore tunnel interface and address in 169.254.*
2013-03-31 18:02:46 +09:00
Tatsuhiro Tsujikawa
b9fb15f884
Use GetAdaptersAddresses for Mingw
2013-03-31 18:02:46 +09:00
Tatsuhiro Tsujikawa
f4a0987544
Check non-loopback (and non-linklocak for IPv6) address is configured
...
Issue A record query only when non-loopback IPv4 address is
configured. Likewise, issue AAA record query only when non-loopback
and non-linklocak IPv6 address is configured.
2013-03-31 18:02:45 +09:00
Tatsuhiro Tsujikawa
98e7018599
Fix failure to set TCP_NODELAY on Windows
...
On Windows setting TCP_NODELAY after non-blocking connect fails
at least on Windows 7.
2013-02-03 19:09:06 +09:00
Tatsuhiro Tsujikawa
bf4ea63a66
Disable TCP_NODELAY for BitTorrent
...
To make Request messages more often packed into 1 packet.
2013-01-15 23:17:21 +09:00
Tatsuhiro Tsujikawa
357e4b1a77
Made SocketCore::readData() and readDataFrom() take void*
2013-01-11 17:03:59 +09:00
Tatsuhiro Tsujikawa
8ba0d58ee1
Vectorized write for SocketBuffer to avoid small packet
2013-01-11 16:50:04 +09:00
Tatsuhiro Tsujikawa
f019eae5df
mingw32: Use LANG_ENGLISH for error message
2012-12-27 00:53:22 +09:00
Tatsuhiro Tsujikawa
8ac433a8e9
Fixed compile error without SSL/TLS lib
2012-12-01 23:37:57 +09:00
Tatsuhiro Tsujikawa
16e25ef4e1
Enabled TCP_NODELAY in SocketCore::establishConnection and acceptConnection
2012-11-28 00:20:43 +09:00
Tatsuhiro Tsujikawa
e781e6eac1
Made socket non-blocking mode in SocketCore::beginListen()
2012-11-28 00:15:03 +09:00
Tatsuhiro Tsujikawa
438f95abae
Made socket non-blocking mode in SocketCore::acceptConnection()
2012-11-28 00:10:32 +09:00
Tatsuhiro Tsujikawa
6b2f5ab1f5
SocketCore::bind now accepts const char* host instead of std::string
2012-11-15 21:09:10 +09:00
Tatsuhiro Tsujikawa
d6f73292fa
gnutls: Added more status checking when verifying peer
2012-10-27 17:46:53 +09:00
Tatsuhiro Tsujikawa
8b0c701266
Removed trailing spaces
2012-10-01 23:52:22 +09:00
Tatsuhiro Tsujikawa
90515dfa50
RPC over SSL/TLS transport
...
To enable RPC over SSL/TLS, specify server certificate and private key
using --rpc-certificate and --rpc-private-key options and enable
--rpc-secure option. After the encryption is enabled, use https and
wss scheme to access RPC server.
2012-09-30 00:50:14 +09:00
Tatsuhiro Tsujikawa
0030025bb6
Don't set SNI hostname if it does not include "." for GNUTLS
2012-09-15 01:14:21 +09:00
Tatsuhiro Tsujikawa
e3b8c92434
Added TLS SNI support
2012-07-06 23:07:10 +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
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
b9471d7452
Compare IPAddress in commonName as string.
...
Added test for net::verifyHostname().
2012-04-01 16:42:38 +09:00
Tatsuhiro Tsujikawa
b68e0a5527
Use net::verifyHostname() with gnutls.
...
We now don't use gnutls_x509_crt_check_hostname() any more.
2012-03-31 21:21:18 +09:00
Tatsuhiro Tsujikawa
0a9abd89c6
Rewritten TLS hostname check based on RFC 6125.
2012-03-30 23:49:14 +09:00
Tatsuhiro Tsujikawa
25ef6677e9
Added hostname check described in RFC 2818 with OpenSSL.
2012-03-28 23:28:22 +09:00
Tatsuhiro Tsujikawa
332bda83b4
Enable TCP_NODELAY for WebSocket connection.
2012-03-21 02:08:18 +09:00
Tatsuhiro Tsujikawa
663cfec9f6
Fixed the bug that aria2 does not listen on address given in --interface.
2012-02-22 22:45:01 +09:00
Tatsuhiro Tsujikawa
b340c25164
Code cleanup
2012-01-11 01:23:24 +09:00
Tatsuhiro Tsujikawa
52155b1860
No retry for close() with EINTR. Also reverted changes in d5ffa253.
2011-12-25 23:38:36 +09:00
Tatsuhiro Tsujikawa
27dda3c65c
Support IPv6 address for FTP via HTTP tunneling.
...
We use control connection address as data connection address, so we
don't need to store both address and port. We just store port in
PASV/EPSV response and use SocketCore::getPeerInfo() to get peer's
address when needed.
2011-11-14 23:19:37 +09:00
Tatsuhiro Tsujikawa
1d56c17225
Code cleanup. Avoid std::string temporaries.
2011-11-05 01:11:04 +09:00
Tatsuhiro Tsujikawa
20e781c2df
Code cleanup
2011-10-20 00:11:41 +09:00
Tatsuhiro Tsujikawa
9b4855a5f0
Use sockaddr_union instead of sockaddr_storage.
2011-10-20 00:06:44 +09:00
Tatsuhiro Tsujikawa
74e5aa0ace
Rewritten util::inSameCidrBlock() to support IPv6 address.
...
We also introduced union sockaddr_union in a2netcompat.h.
2011-10-19 23:14:13 +09:00
Tatsuhiro Tsujikawa
3c73b6e767
Eliminated inet_ntoa and inet_ntop. Use getnameinfo() instead.
2011-08-20 21:53:48 +09:00
Tatsuhiro Tsujikawa
5703835784
Use GNUTLS_SHUT_WR instead of GNUTLS_SHUT_RDWR
...
We don't read the response from peer about this.
2011-07-06 22:52:15 +09:00
Tatsuhiro Tsujikawa
6f602e2809
Call shutdown() with SHUT_WR before close to avoid TCP RST.
2011-07-06 22:51:20 +09:00
Tatsuhiro Tsujikawa
395212f47f
Replaced HAVE_LIBSSL with HAVE_OPENSSL
2011-02-18 22:43:50 +09:00
Tatsuhiro Tsujikawa
e60181d1ad
Removed SocketCore::peekData()
2011-01-16 17:41:17 +09:00