Vinnie Falco
c9a445a937
New flat_stream example class:
...
fix #1108
The `flat_stream` is a stream wrapper designed to overcome a
performance limitation of the `boost::asio::ssl::stream`
implementation. Specifically, when writing buffer sequences having
length greater than one, the `ssl::stream` implementation does
not use scatter-gather I/O and instead performs a kernel transition
for every buffer in the sequence.
The wrapper addresses this problem by allocating memory and
presenting the buffer sequence into a single buffer, using
some logic to determine when this allocation is advantageous
versus simply passing the buffers through as-is.
See Also:
https://github.com/boostorg/asio/issues/100
https://stackoverflow.com/questions/50026167/performance-drop-on-port-from-beast-1-0-0-b66-to-boost-1-67-0-beast
2018-04-30 19:49:42 -07:00
Vinnie Falco
dcfd07f6f2
Use fully qualified namespace in BOOST_BEAST_HANDLER_INIT
2018-04-28 11:14:39 -07:00
Vinnie Falco
c592782a1b
Simplify some type trait expressions
...
fix #466
2018-04-26 17:30:46 -07:00
Vinnie Falco
22e3f014ad
Temporarily disable /permissive-:
...
This is a work-around for the currently broken Boost.Range.
2018-04-26 17:21:03 -07:00
Vinnie Falco
42ac536f9b
Refactor HTTP write_op implementation
...
fix #764
2018-04-25 14:07:19 -07:00
Vinnie Falco
c5d4f8eede
Use boost::void_t
...
fix #905
2018-04-24 15:14:37 -07:00
Vinnie Falco
14392d7f52
Use buffers_to_string in tests
...
fix #782
2018-04-24 10:55:39 -07:00
Vinnie Falco
5abac8b380
Set version to 168
2018-04-23 17:09:17 -07:00
Vinnie Falco
9d8239b8b3
Add stale.yml
2018-04-13 08:47:22 -07:00
Vinnie Falco
f1b1ee2345
Fix race in advanced server examples
...
fix #1073
2018-04-12 08:54:44 -07:00
Vinnie Falco
3c3f4fc52b
Revert "Tidy up a warning"
...
This reverts commit 90d2df3be3 .
2018-04-10 09:09:49 -07:00
Vinnie Falco
86342dd72b
Use executor_work_guard in composed operations:
...
fix #1076
As per Asio and Networking TS requirements, composed operations must
maintain an object of type executor_work_guard for the executor associated
with the I/O object, for the lifetime of the asynchronous operation.
This is in addition to the requirement for maintaining an object of type
executor_work_guard for the executor associated with the handler.
2018-04-10 08:03:04 -07:00
Vinnie Falco
b4cb4f1fd3
Set version to 167
boost-1.67.0
2018-03-22 20:14:16 -07:00
Vinnie Falco
12cc10f8bb
Revert "Tidy up calls to post()"
...
This reverts commit 5eaa2be85e .
2018-03-22 20:13:39 -07:00
Vinnie Falco
4d660a5e54
Set version to 166
2018-03-13 10:47:19 -07:00
Vinnie Falco
4b0c14fe5a
Use boost::is_convertible as a workaround
2018-03-13 10:47:07 -07:00
Vinnie Falco
a03687eaa3
Set version to 165
2018-03-11 14:31:13 -07:00
Vinnie Falco
90d2df3be3
Tidy up a warning
2018-03-11 14:22:50 -07:00
Mateusz Loskot
06ee7c7ac6
Document requirement of building Boost libraries
...
This should also clarify the CMake configuration provided
does not build any of Beast's dependencies within Boost.
Capitalize Boost name.
Closes #1064
2018-03-11 14:22:36 -07:00
Daniel James
dabc1c8ae6
Fix BOOST_NO_CXX11_ALLOCATOR check
2018-03-11 14:22:31 -07:00
Vinnie Falco
6a34afb38a
Set version to 164
2018-03-09 09:29:18 -08:00
Ivan Vilata-i-Balaguer
edd162cf3b
Add Access-Control-Expose-Headers field constant:
...
This response header is described both in [CORS](https://www.w3.org/TR/cors/ )
and [Fetch](https://fetch.spec.whatwg.org/ ) specifications.
2018-03-09 09:29:14 -08:00
Vinnie Falco
c984f6c94d
Fix masking on continuation frames
2018-03-09 07:51:33 -08:00
Vinnie Falco
6d560e3d41
Set version to 163
2018-03-04 15:13:40 -08:00
Daniela Engert
a7b78ac1bc
fix narrowing warnings
...
Signed-off-by: Daniela Engert <dani@ngrt.de >
2018-03-04 15:13:32 -08:00
Vinnie Falco
5eaa2be85e
Tidy up calls to post()
2018-03-04 13:19:17 -08:00
Vinnie Falco
2fd3e46b20
Set version to 162
2018-03-01 11:33:02 -08:00
Vinnie Falco
ebd036a300
Improve websocket::stream::control_callback javadoc
...
fix #1053
2018-03-01 11:32:58 -08:00
Vinnie Falco
726118468b
Add asio_handler_invoke overloads for stream algorithms:
...
fix #1012
This fixes a bug where asynchronous stream alogrithms do not
work correctly with the legacy `io_service::strand` implementation.
2018-03-01 08:31:57 -08:00
Vinnie Falco
2543dbe5b9
Set version to 161
2018-02-28 15:05:03 -08:00
Vinnie Falco
073b53e448
Fix handler parameter javadocs
2018-02-28 15:04:54 -08:00
Vinnie Falco
dfc5a2ff67
Add move-only handler tests
2018-02-28 15:04:54 -08:00
Christos Stratopoulos
5a53bd449a
Don't copy the handler in write_some_op
2018-02-28 13:20:56 -08:00
Vinnie Falco
3a5f2effc1
Set version to 160
2018-02-27 08:12:58 -08:00
Vinnie Falco
04ced3b954
Examples clear the HTTP message before reading
...
fix #1043
2018-02-27 08:12:54 -08:00
Vinnie Falco
d6c11a824a
Set version to 159
2018-02-26 17:09:52 -08:00
Vinnie Falco
5d5e58c5b4
Some basic_fields operations now give the strong exception guarantee
2018-02-26 17:09:47 -08:00
Vinnie Falco
9f094518bc
Safe treatment of zero-length string arguments in basic_fields:
...
This fixes a broken memcpy precondition when empty strings are
passed as arguments to basic_fields member functions.
2018-02-26 17:09:20 -08:00
Vinnie Falco
a8a5fa9f6c
Fix typo in release notes
2018-02-26 17:09:01 -08:00
Vinnie Falco
fc187257c3
Set version to 158
2018-02-21 14:59:02 -08:00
Vinnie Falco
eae74b1c89
get_lowest_layer is a type alias:
...
fix #941 , fix #1016
`get_lowest_layer` is now a type alias for the
lowest layer instead of a struct with a nested type.
Actions required:
* Replace instances of `typename get_lowest_layer<T>::type`
with `get_lowest_layer<T>`.
2018-02-21 14:49:44 -08:00
Vinnie Falco
66f0814cfd
Tidy up some documentation
...
fix #984
2018-02-21 13:58:43 -08:00
Vinnie Falco
d79950d95c
DynamicBuffer input areas are not mutable
...
fix #1014
2018-02-21 13:19:14 -08:00
Vinnie Falco
10ce0283c2
Advanced servers support clean shutdown via SIGINT or SIGTERM
...
fix #1026
2018-02-21 12:44:11 -08:00
Vinnie Falco
a4714746dc
Examples set reuse_address(true)
...
fix #1027
2018-02-21 12:35:07 -08:00
Vinnie Falco
490b9ce893
Tidy up websocket docs
...
fix #1035
2018-02-21 12:10:26 -08:00
Vinnie Falco
8dcc6162c1
Tidy up end_of_stream javadoc
...
fix #1023
2018-02-21 08:45:08 -08:00
Vinnie Falco
48a974530c
Set version to 157
2018-02-21 06:35:37 -08:00
Vinnie Falco
c505e32210
Fix big-endian websocket masking
...
fix #1030
2018-02-21 06:35:32 -08:00
Vinnie Falco
593ccb15cd
Fix teardown for TIME_WAIT
...
fix #1024 , fix #1029
2018-02-20 04:33:43 -08:00