Vinnie Falco
8fa756aee6
Documentation work
2017-07-20 08:12:20 -07:00
Vinnie Falco
61a83ba769
Fix message.hpp javadocs
2017-07-20 08:12:20 -07:00
Vinnie Falco
ca109693fb
Reset error codes
...
fix #478
2017-07-20 08:12:20 -07:00
Vinnie Falco
5058217c35
HTTP/1 is the default version
...
fix #482
2017-07-20 08:12:20 -07:00
Vinnie Falco
0eb3a6b77e
Call on_chunk when the extension is empty
...
fix #435
2017-07-20 08:12:20 -07:00
Vinnie Falco
7712ca09b2
Add string_view_body
2017-07-20 08:12:20 -07:00
Vinnie Falco
0f54bc72a4
Add provisional IANA header field names
...
fix #473
2017-07-20 08:12:20 -07:00
Vinnie Falco
a49c096042
read_size replaces read_size_helper:
...
* detail::read_size_helper is removed
* public function read_size helps determine the optimum
size for calls to a DynamicBuffer's prepare function.
* special case for Asio types which don't conform to
the concept but have their own helper function.
2017-07-20 08:12:20 -07:00
Vinnie Falco
ff8be0e931
Avoid a parser allocation using non-flat buffer:
...
When the parser is presented with an input buffer
sequence with length greater than one, the input is
flattened using stack space instead of dynamic
allocation if the buffer size is no greater than 8192.
2017-07-20 08:12:19 -07:00
Vinnie Falco
87c6e69d9f
Don't allocate memory to handle obs-fold
2017-07-20 08:12:19 -07:00
Vinnie Falco
857fc22667
Fix incorrect use of [[fallthrough]]
...
fix #468
2017-07-20 08:12:19 -07:00
Vinnie Falco
f44380159a
Retain ownership when reading using a message
...
fix #469
2017-07-20 08:12:19 -07:00
Vinnie Falco
8c4136bb73
basic_fields refactor (API Change):
...
* Container interface more closely matches std::vector
* While preserving the invariant that duplicate fields
with the same case-insensitive name have their order
preserved.
2017-07-20 08:12:19 -07:00
Vinnie Falco
49a2b33b82
basic_fields members and coverage
2017-07-20 08:12:19 -07:00
Vinnie Falco
78f4858e98
Fix read_size_helper usage:
...
read_size_helper can return zero if the buffer reaches
its maximum size, causing infinite loops in HTTP. The
function maybe_read_size_helper is provided to throw
an exception instead of returning a value for this case.
2017-07-20 08:12:19 -07:00
Vinnie Falco
e4fdeecc3b
Fix basic_parser::maybe_flatten ( #462 )
2017-07-20 08:12:19 -07:00
Vinnie Falco
44995bf071
Documentation work
2017-07-20 08:12:19 -07:00
Vinnie Falco
b49b23ee83
finish(error_code&) is a BodyReader requirement (API Change)
2017-07-20 08:12:19 -07:00
Vinnie Falco
669b1feae1
Documentation work
2017-07-20 08:12:19 -07:00
Vinnie Falco
04522398e0
Fix infinite loop in basic_parser
...
fix #452
2017-07-20 08:12:19 -07:00
Vinnie Falco
55358835c6
Use BOOST_FALLTHROUGH
...
fix #437
2017-07-20 08:12:19 -07:00
Vinnie Falco
cff5be3837
Documentation work
2017-07-20 08:12:19 -07:00
Vinnie Falco
0a5fec1e9d
Fix operator<< for header
2017-07-20 08:12:19 -07:00
Vinnie Falco
38ac1b8364
http read_some, async_read_some don't return bytes (API Change):
...
fix #431 , fix #430
The read_some and async_read_some HTTP operations no longer
return the number of bytes that the caller should consume.
Instead, the bytes are automatically removed from the dynamic
buffer as indicated by the parser.
2017-07-20 08:12:19 -07:00
Vinnie Falco
6203074c92
Fix chunk header parsing
...
fix #431 , fix #430
2017-07-20 08:12:18 -07:00
Vinnie Falco
60a3221f0b
Fix chunk delimiter parsing
2017-07-20 08:12:18 -07:00
Vinnie Falco
1ae344f80b
Tidy up message javadoc
2017-07-20 08:12:18 -07:00
Vinnie Falco
7d89fdc46f
Remove obsolete serializer allocator (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
aa752e4dce
Remove message free functions (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
3340666ad3
Remove message connection settings (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
943830f6ed
Fields concept work
2017-07-20 08:12:18 -07:00
Vinnie Falco
f363654300
Tidy up basic_fields, header, and concepts
2017-07-20 08:12:18 -07:00
Vinnie Falco
fb2f777b4d
Use field in basic_parser
2017-07-20 08:12:18 -07:00
Vinnie Falco
ca25eee0dd
Use field in basic_fields and call sites
2017-07-20 08:12:18 -07:00
Vinnie Falco
ace99bd6c0
Protect basic_fields special members (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
3eb1d1025b
Fix basic_fields allocator awareness
2017-07-20 08:12:18 -07:00
Vinnie Falco
2df6783468
Refactor prepare (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
2af19481a9
Derive header from Fields (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
5f2e7560b6
Use allocator more in basic_fields
...
Fix #392
2017-07-20 08:12:18 -07:00
Vinnie Falco
ff216a89a8
Add verb to on_request for parsers (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
1c063f5bf6
Add field enumeration
2017-07-20 08:12:18 -07:00
Vinnie Falco
f3bec70e65
Documentation fixes
2017-07-20 08:12:18 -07:00
Vinnie Falco
9f7abcbe2d
Remove header_parser (API Change)
2017-07-20 08:12:18 -07:00
Vinnie Falco
fa28cba515
parser is constructible from other body types
2017-07-20 08:12:18 -07:00
Vinnie Falco
17eaae9ce0
Documentation work (buffer_body)
2017-07-20 08:12:18 -07:00
Vinnie Falco
4b866cea36
Documentation work
2017-07-20 08:12:18 -07:00
Vinnie Falco
12c7c24e5a
Use <iosfwd> instead of <ostream>
2017-07-20 08:12:18 -07:00
Vinnie Falco
3803c38dbd
Refactor header status, reason, and target (API Change):
...
* header::result is a family of functions to replace header::status
* header interface now uses status enum and also ints
* reason-phrase is no longer stored unless the user explicitly
requests it.
* When serializing, the standard reason is used for the
corresponding status code unless the user has changed it.
2017-07-20 08:12:18 -07:00
Vinnie Falco
4f91e632bc
Tidy up empty_body writer error
2017-07-20 08:12:18 -07:00
Vinnie Falco
aa2c915c96
Canonicalize string_view parameter types
2017-07-20 08:12:18 -07:00