Vinnie Falco
83403570bd
Rename to serializer::keep_alive (API Change):
...
The serializer member is renamed to keep_alive()
Actions Required:
* Use serializer::keep_alive instead of serializer::close and
take the logical NOT of the return value.
2017-07-20 08:15:30 -07:00
Vinnie Falco
a369f7d9ff
Add serializer::chunked
2017-07-20 08:15:30 -07:00
Vinnie Falco
c52ddea11d
Add serializer::get
2017-07-20 08:15:30 -07:00
Vinnie Falco
db59a92011
BodyReader may construct from a non-const message
...
fix #619
2017-07-20 08:15:30 -07:00
Vinnie Falco
0324dc371f
Use Boost.Config
2017-07-20 08:15:30 -07:00
Vinnie Falco
f65a611b85
Always go through write_some:
...
HTTP stream serialization algorithms always go
through write_some or async_write some.
2017-07-20 08:15:30 -07:00
Vinnie Falco
ae7270463d
Set version to 75
2017-07-20 08:15:30 -07:00
Vinnie Falco
5ed1c98037
Doc tidying
2017-07-20 08:15:30 -07:00
octopus-prime
288f363fa6
Using SSE4.2 intrinsics in basic_parser if available
...
fix #622
2017-07-20 08:15:30 -07:00
Vinnie Falco
731164bec2
Add serializer::limit
2017-07-20 08:15:30 -07:00
Vinnie Falco
d750364d6f
Shrink serializer buffers using buffers_ref
2017-07-20 08:15:30 -07:00
Vinnie Falco
bb0e86ac01
Tidy up BEAST_NO_BIG_VARIANTS
2017-07-20 08:15:30 -07:00
Vinnie Falco
8ee911f632
Construct buffer_prefix_view in-place
2017-07-20 08:15:30 -07:00
Vinnie Falco
783c52b025
Set version to 74
2017-07-20 08:15:30 -07:00
Vinnie Falco
eec5f1d8b6
Add file_posix
2017-07-20 08:15:30 -07:00
Vinnie Falco
8bf46ffa05
Add file_body
2017-07-20 08:15:30 -07:00
Vinnie Falco
7254cc8976
Add file_win32
2017-07-20 08:15:30 -07:00
Vinnie Falco
ddc3099281
Add file_stdio and File concept
2017-07-20 08:15:30 -07:00
Vinnie Falco
aff5f392e2
Set version to 73
2017-07-20 08:15:30 -07:00
Vinnie Falco
abdd89fde8
Initialize local variable in basic_parser
2017-07-20 08:15:30 -07:00
Vinnie Falco
8e6fb759dd
Documentation tidy
2017-07-20 08:15:29 -07:00
Vinnie Falco
f5ae60613f
serializer::next replaces serializer::get (API Change):
...
Actions Required:
* Use serializer::next instead of serializer::get at call sites
2017-07-20 08:15:29 -07:00
Vinnie Falco
b0e52dd246
Refactor header and message constructors:
...
fix #581
* request and response headers now have convenience
constructors so important fields like method, target,
result, and version may be set upon construction.
Actions Required:
* Evaluate each message constructor call site and
adjust the constructor argument list as needed.
2017-07-20 08:15:29 -07:00
Vinnie Falco
e608acb791
basic_parser optimizations:
...
fix #185 , fix #489
* SSE4.2 is detected
* basic_parser uses SSE4.2 if available
* basic_parser tries to parse on the initial buffer and if
it does not find the end of header it shifts to a new
strategy of waiting for the end of header to defeat
slow loris attacks. This coincidentally is also faster
than the previous algorithm.
2017-07-20 08:15:29 -07:00
Vinnie Falco
c94821384d
Set version to 72
2017-07-20 08:15:29 -07:00
Vinnie Falco
56948edd27
Newly constructed responses have a 200 OK result
2017-07-20 08:15:29 -07:00
Vinnie Falco
b518c487ed
Set version to 71
2017-07-20 08:15:29 -07:00
Vinnie Falco
fcc83e6a19
Concept check in basic_dynamic_body
...
fix #750
2017-07-20 08:15:29 -07:00
octopus-prime
ebfc3f4537
Fix buffer overflow handling for string_body and mutable_body
...
fix #553 , fix #558
2017-07-20 08:15:29 -07:00
Vinnie Falco
c149321013
Return std::size_t from Body::writer::put (API Change)
...
`put` returns the number of bytes actually transferred
from the input buffers.
Actions Required:
* Return the number of bytes actually transferred from the
input buffers in user defined `Body::writer::put` functions.
2017-07-20 08:15:29 -07:00
Vinnie Falco
120c38948e
Fix spurious on_chunk invocation
2017-07-20 08:15:29 -07:00
Vinnie Falco
6496aa89ee
Allow close, ping, and write to happen concurrently
2017-07-20 08:15:29 -07:00
Vinnie Falco
4ff3b524c6
Refactor websocket composed ops
2017-07-20 08:15:29 -07:00
Vinnie Falco
4c41db9ca8
Fine tune websocket asserts
2017-07-20 08:15:29 -07:00
Vinnie Falco
2843a497a0
Documentation revision
...
fix #567 , fix #572
2017-07-20 08:15:29 -07:00
Vinnie Falco
8b5b8335e6
Fix extra ; warning
2017-07-20 08:15:29 -07:00
Vinnie Falco
431cfe8288
Set version to 70
2017-07-20 08:15:29 -07:00
octopus-prime
0ab9975751
Fix BEAST_FALLTHROUGH in config
2017-07-20 08:15:29 -07:00
Vinnie Falco
7753d6eda2
Add parser::on_header to set a callback
2017-07-20 08:15:29 -07:00
Vinnie Falco
788550e833
Add basic_parser header and body limits:
...
fix #550
* default body limits are now 1MB/8MB
* default header limit is 8KB
Actions Required:
* Call body_limit and/or header_limit as needed to adjust the
limits to suitable values if the defaults are insufficient.
2017-07-20 08:15:29 -07:00
Vinnie Falco
3c4ae2a098
Rename to message::base (API Change):
...
Actions Required:
* Change calls to message::header_part() with message::base()
2017-07-20 08:15:29 -07:00
Vinnie Falco
7abe6f6e09
Serialize in one step when possible
...
fix #546
2017-07-20 08:15:29 -07:00
Vinnie Falco
d45682cfcd
Set version to 69
2017-07-20 08:15:29 -07:00
Vinnie Falco
58d42cc803
Use BEAST_FALLTHROUGH to silence warnings
...
fix #545
2017-07-20 08:15:29 -07:00
Vinnie Falco
f3eaa409d1
basic_parser optimizations
2017-07-20 08:15:29 -07:00
Vinnie Falco
b9597e21a4
Set version to 68
2017-07-20 08:15:29 -07:00
Vinnie Falco
2d6859831c
Optimize field lookups
2017-07-20 08:15:29 -07:00
Vinnie Falco
64ff766b23
Use string_ref in older Boost versions
...
fix #543
2017-07-20 08:15:29 -07:00
Vinnie Falco
43f8bb841a
bad_target replaces bad_path (API Change):
...
Actions Required:
* Replace references to http::error::bad_path with http::error::bad_target
2017-07-20 08:15:29 -07:00
Vinnie Falco
90b51c5f79
Small speed up in fields comparisons
2017-07-20 08:15:29 -07:00