Christopher Kohlhoff
5aa758b54a
Ignore new macro when generating documentation.
2017-03-08 07:10:48 +11:00
Christopher Kohlhoff
3a73a43f62
Version bump.
2017-03-08 06:49:35 +11:00
Christopher Kohlhoff
9bfe806fc1
Ensure winsock2.h is included before windows.h.
2017-03-05 23:00:10 +11:00
Christopher Kohlhoff
991f613b95
Eliminate new clang comma warning.
2017-03-05 22:59:39 +11:00
Christopher Kohlhoff
2b6230aef8
Make sure asio/ssl/error.hpp is self-contained.
2017-03-05 22:58:18 +11:00
Christopher Kohlhoff
fba6c4ccbd
Add limited support for regular file descriptors.
...
The epoll_reactor now supports the use of regular file descriptors with
posix::stream_descriptor, provided the I/O operations on them never fail
with EAGAIN or EWOULDBLOCK. If the descriptor cannot be added to the
epoll set using epoll_ctl, and errno is EPERM (indicating an unsupported
descriptor type), then no error condition is raised. Instead, any
operation which would require a trip through the reactor will fail.
2017-03-05 22:56:48 +11:00
Christopher Kohlhoff
49aa5e1e6c
In c++11 or later, use allocator_traits to rebind allocators.
2017-03-05 22:55:54 +11:00
Christopher Kohlhoff
8e835cccd1
Fix error when OpenSSL compression is disabled at compile time.
2017-03-05 22:54:28 +11:00
Christopher Kohlhoff
16e880c667
Update mingw mutex initialisation to match non-mingw version.
2017-03-05 22:53:59 +11:00
Christopher Kohlhoff
d76c1f0533
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-03-05 22:53:05 +11:00
Christopher Kohlhoff
9feee12ac2
Avoid double construction in converting move-constructors.
2017-03-05 22:52:07 +11:00
Christopher Kohlhoff
4645a7c351
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
(from Marcel Raad)
2017-03-05 22:50:36 +11:00
Christopher Kohlhoff
fdec9d1d8f
Suppress some spurious unused variable warnings.
2017-03-05 22:49:54 +11:00
Christopher Kohlhoff
6c19ff7482
Include socket_types.hpp before OpenSSL headers.
2017-03-05 22:48:48 +11:00
Christopher Kohlhoff
4808f72a1f
Re-enable building against LibreSSL.
2017-03-05 22:47:57 +11:00
Christopher Kohlhoff
a8cea6a722
Implement fenced_block using std::atomic_thread_fence, when available.
2017-03-05 22:46:59 +11:00
Christopher Kohlhoff
dd18e955fa
Add workaround for broken getaddrinfo in Apple's NAT64 environment.
2017-03-05 22:45:50 +11:00
Christopher Kohlhoff
0a852879f5
Fix exception safety issue in hash_map.
2017-03-05 22:45:09 +11:00
Christopher Kohlhoff
f7fa336c91
Update copyright notices.
2017-03-05 22:43:47 +11:00
Rene Rivera
d6d2c452f5
Switch to standalone docs for release.
...
This hopefully addresses formatting issues.
2017-01-21 08:05:38 -06:00
Rene Rivera
6ef8c1566c
Add, and update, documentation build targets.
2016-10-07 23:03:40 -05:00
Christopher Kohlhoff
a1fb7b0c10
Version bump.
2016-09-19 07:37:14 +10:00
Christopher Kohlhoff
350f94e722
Revision history.
2016-09-19 07:33:03 +10:00
Christopher Kohlhoff
3ed131266c
Regenerate documentation.
2016-09-16 08:27:01 +10:00
Christopher Kohlhoff
c1acb8a57b
Add workaround for move-detection issue on MSVC 2015 Update 2.
2016-09-16 08:26:04 +10:00
Christopher Kohlhoff
603ebfb5e1
Call SSL_COMP_free_compression_methods() on ssl cleanup.
...
This call is needed for OpenSSL >=1.0.2 and <1.1.0.
2016-09-16 08:20:51 +10:00
Christopher Kohlhoff
42e7869f41
Fix allocator usage to compile with g++ 6.
2016-09-11 12:12:39 +10:00
Christopher Kohlhoff
3d71bdaf23
Use new TLS methods on OpenSSL 1.1.0.
2016-09-11 12:12:39 +10:00
Christopher Kohlhoff
8ea3165df9
Backward compatibility for code using OpenSSL < 1.1.0.
...
Some application code using asio::ssl::stream<> explicitly tests for the
SSL_R_SHORT_READ error. For compatibility, when using older versions of
OpenSSL we will define the ssl::error::stream_truncated to use this
value.
2016-09-11 12:12:39 +10:00
Christopher Kohlhoff
864ca38b6d
Terminate loop if connect condition returns an end iterator.
2016-09-11 12:12:39 +10:00
Christopher Kohlhoff
54c9424b5a
Enable getaddrinfo by default on Apple platforms.
...
The getaddrinfo function is now used by default unless Mac OS X 10.4 or
earlier is detected. Its use may also be explicitly disabled by defining
ASIO_DISABLE_GETADDRINFO.
2016-09-11 12:12:39 +10:00
Christopher Kohlhoff
370363b33f
Fix errors when OPENSSL_NO_DEPRECATED is defined.
2016-09-11 12:01:12 +10:00
Christopher Kohlhoff
a50a350310
Only apply firewall workaround when getsockname outputs INADDR_ANY.
2016-09-11 11:59:19 +10:00
Christopher Kohlhoff
812cfa7a5c
Add compatibility with OpenSSL 1.1
...
- SSLv2 has been completely removed from OpenSSL, even without OPENSSL_NO_SSL2
- there is a new threading API without locking callbacks
- struct SSL_CTX has been made opaque and must be used via accessor functions
- some cleanup functions have been removed
(from Marcel Raad <raad@teamviewer.com >)
2016-09-11 11:57:28 +10:00
Christopher Kohlhoff
424ad6b736
BoringSSL does not provide CONF_modules_unload.
2016-09-11 11:37:29 +10:00
Christopher Kohlhoff
84e840390b
Add new error category and constant for ssl::error::stream_truncated.
...
This error replaces uses of SSL_R_SHORT_READ, and indicates that the
SSL stream has been shut down abruptly. (I.e. the underlying socket
has been closed without performing an SSL-layer shutdown.)
2016-09-11 11:36:53 +10:00
Christopher Kohlhoff
36eef63a9c
Update copyright notices.
2016-09-11 11:35:40 +10:00
Christopher Kohlhoff
0f0f94a9d7
Remove old header file that was accidentally left behind.
2016-09-11 11:30:19 +10:00
Daniel James
f687d86902
Merge pull request #38 from danieljames/feature/fix-doc-build
...
Fix the build location for asio.
2016-07-09 12:56:36 +01:00
Daniel
629875892b
Fix the build location for asio.
...
Boost build has changed so that documentation is built relative to the
Jamfile, rather than the current working directory. This broke the ASIO
documentation build, to fix it specify the location using the 'name'
parameter - which is a bit wonky, but it's what boost build looks for.
2016-05-29 13:04:16 +01:00
Christopher Kohlhoff
8fe7f5d24e
Version bump.
2015-12-14 12:01:39 +11:00
Christopher Kohlhoff
c0d667f36a
Revision history.
2015-12-14 12:01:10 +11:00
Christopher Kohlhoff
763d513043
Xcode/clang and plain clang use different version numbering.
2015-12-12 11:13:36 +11:00
Christopher Kohlhoff
fb4befe985
LibreSSL doesn't provide SSL_CTX_clear_chain_certs.
2015-12-12 11:12:47 +11:00
Christopher Kohlhoff
e249488285
Regenerate certificates for SSL example.
2015-12-10 22:51:53 +11:00
Christopher Kohlhoff
345ac9aa13
Use CreateEventW rather than CreateEvent.
2015-12-10 22:51:53 +11:00
Christopher Kohlhoff
e1c67f0377
Pass correct output buffer size to strncat.
2015-12-10 22:51:53 +11:00
Christopher Kohlhoff
6582b6966a
Fix typo in comment.
2015-12-10 22:51:53 +11:00
Christopher Kohlhoff
bae401b1eb
Support for building with OpenSSL when OPENSSL_NO_SSL3 is defined.
2015-12-10 22:45:24 +11:00
Christopher Kohlhoff
073b2943cc
Suppress unused typedef warning when using clang.
2015-12-10 22:45:24 +11:00