Christopher Kohlhoff
ac89cf0ba2
Enable newer language features for recent MSVC versions.
2017-07-15 19:43:35 +10:00
Christopher Kohlhoff
64ae9bcaee
Add alias templates for associators.
2017-07-15 19:10:30 +10:00
Christopher Kohlhoff
e502a6b364
Use shorter enum name resolver_errc::try_again.
2017-07-15 18:46:59 +10:00
Christopher Kohlhoff
b3ebdd8f6d
Use ADL for calls to buffer_size.
2017-07-15 18:30:29 +10:00
Iwa13
c516cd591d
Fix non-dereferencing pointer overflow in basic_streambuf::commit.
2017-07-15 16:31:11 +10:00
Christopher Kohlhoff
b8a34a1dc0
Fix work counting issue in asynchronous resolver implementation.
2017-07-15 16:27:46 +10:00
Arun M
48e7ef864f
is_continuation misplaced in reactive socket service
2017-07-15 16:09:28 +10:00
Christopher Kohlhoff
5adce6e267
Use poll.h rather than sys/poll.h if possible.
2017-07-15 16:08:08 +10:00
Bence SZIGETI
ddef4994f4
Avoid exception throwing from make_network_v{4,6}(str, ec)
2017-07-15 16:01:53 +10:00
Christopher Kohlhoff
0442bc922f
Disable Boost.Chrono's dependency on Boost.System.
2017-07-15 15:41:40 +10:00
Christopher Kohlhoff
6c5b04eff1
Conditionally enable iostream move constructor and assignment.
2017-07-15 15:17:45 +10:00
Christopher Kohlhoff
a3bba3394d
Fix version check for string_view.
2017-07-15 13:43:14 +10:00
Christopher Kohlhoff
246f387e74
Fix compile error on gcc 4.8.
2017-07-15 13:33:24 +10:00
Christopher Kohlhoff
fd024792c1
Add -lrt when linking on linux.
2017-07-15 13:33:24 +10:00
Christopher Kohlhoff
0921ab3db6
Simplify automatic detection of boost source distributions.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
6b34f88a5d
Make SSL/TLS version handling more consistent across OpenSSL versions.
...
This adds new enums context_base::tls, context_base::tls_client and
context_base::tls_server. These allow connections to use any supported
TLS version. (N.B. the deprecated version SSLv3 is explicitly disabled
if you use these values.)
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
1517bd1a1d
Add travis and appveyor configuration.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
70249b7969
Use GetModuleHandleA rather than GetModuleHandle.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
582ed12f7c
Update copyright notices.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
b6ac42dde0
Remove unused error code variable.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
d52f28a097
Add missing rvalue cast in use_future implementation.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
b33b3ae011
Unlocked reactor I/O implies a concurrency hint of 1.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
cf351c44a4
Don't use non-portable sockaddr_storage member ss_len.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
bbe092b3d7
Simplify and improve performance of executor operations.
2017-07-15 13:33:23 +10:00
Christopher Kohlhoff
e5acea17d7
Add shallow-constness to strands.
2017-03-31 07:25:12 +11:00
Christopher Kohlhoff
00a85845ec
Eliminate redundant copy as executors are now shallow-const.
2017-03-31 07:25:12 +11:00
Christopher Kohlhoff
524288cb4f
Use separate concurrency locking hint for reactor I/O vs registration.
2017-03-13 08:36:45 +11:00
Christopher Kohlhoff
ca6aa0cd38
Android API level 21 or later is required for pthread_condattr_setclock.
2017-03-13 07:38:37 +11:00
Christopher Kohlhoff
ba2c3e140e
Ensure winsock2.h is included before windows.h.
2017-03-05 22:15:42 +11:00
Christopher Kohlhoff
1a259ece1a
LibreSSL doesn't provide SSL_CTX_clear_chain_certs.
2017-03-05 22:07:25 +11:00
Christopher Kohlhoff
3d5367da14
Cast the result of GetProcAddress.
2017-03-05 21:58:10 +11:00
Ryan Pavlik
13aff85067
Fix configure.ac to support mingw64
2017-03-05 21:51:52 +11:00
ala
b4149d5aa7
Replace commas by semicolons
...
clang 3.9.0 has a new warning:
possible misuse of comma operator here [-Wcomma]
2017-03-05 21:46:43 +11:00
Christopher Kohlhoff
ced6124d2c
Fix mutex initialisation for Windows 8.1 store apps.
2017-03-05 20:10:34 +11:00
Christopher Kohlhoff
1ea732c562
Make sure asio/ssl/error.hpp is self-contained.
2017-03-05 19:46:10 +11:00
Christopher Kohlhoff
cc1bd58f9e
Avoid double construction in converting move-constructors.
2017-02-28 07:31:15 +11:00
Christopher Kohlhoff
2cd93bd194
Macro-protect use of 'max'.
2017-02-27 23:25:33 +11:00
Christopher Kohlhoff
d3ca90a05c
Add ability to release ownership of the underlying native socket.
...
This commit adds release() member functions to basic_socket and
basic_socket_acceptor.
Note: When using I/O completion ports on Windows, these functions fail
with error::operation_not_supported for versions of Windows prior to
Windows 8.1.
2017-02-24 21:53:29 +11:00
Christopher Kohlhoff
d28ec54750
A short read does not always mean the socket is exhausted, as an EOF could follow.
2017-01-25 08:39:26 +11:00
Marcel Raad
dc2b5b9ac0
Fix compilation with OpenSSL 1.1 API
...
With OPENSSL_API_COMPAT=0x10100000L, SSL_library_init, SSL_load_error_strings, and OpenSSL_add_all_algorithms are removed.
With OPENSSL_API_COMPAT=0x10000000L, these are function-style macros mapping to OPENSSL_init_ssl, which is called automatically anyway.
References:
https://www.openssl.org/docs/man1.1.0/ssl/OPENSSL_init_ssl.html
https://www.openssl.org/docs/man1.1.0/crypto/OPENSSL_init_crypto.html
2017-01-19 08:03:16 +11:00
Christopher Kohlhoff
76fe1c8aba
Suppress some spurious unused variable warnings.
2017-01-18 08:32:59 +11:00
Christopher Kohlhoff
f3f324cbe9
Include socket_types.hpp before OpenSSL headers.
2017-01-18 08:00:22 +11:00
Christopher Kohlhoff
647d2dc956
In c++11 or later, use allocator_traits to rebind allocators.
2017-01-17 09:47:12 +11:00
Christopher Kohlhoff
22924d3a0f
Fix up some comments on #endif preprocessor directives.
2017-01-17 08:07:54 +11:00
Nicholas Fish
bc87d093d1
Re-enable building against LibreSSL
2017-01-16 10:33:42 +11:00
Christopher Kohlhoff
ffc9dd443f
Implement fenced_block using std::atomic_thread_fence, when available.
2017-01-16 10:33:42 +11:00
Christopher Kohlhoff
595ff85c33
Add workaround for broken getaddrinfo in Apple's NAT64 environment.
2017-01-14 12:28:00 +11:00
Christopher Kohlhoff
bc6e494d2d
Fix composed read/write operations when multiple buffers are supplied.
2017-01-13 09:42:23 +11:00
Christopher Kohlhoff
14db6371b3
Regenerate documentation.
2016-09-24 10:43:48 +10:00
Christopher Kohlhoff
b9d2d3ef0d
Fix some long lines.
2016-09-24 10:43:48 +10:00