Commit Graph

199 Commits

Author SHA1 Message Date
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
Zach Laine
48929c4b3c std::pair "last" -> "first" in http_message.qbk
fix #563
2017-07-20 08:15:29 -07:00
Zach Laine
4f5f6a46fa Fix can/cannot thinko in FAQ.
fix #562
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
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
octopus-prime
b5b1295d0c Add const_body, mutable_body to examples 2017-07-20 08:15:29 -07:00
Vinnie Falco
723ac8392c Doc erratum 2017-07-20 08:15:29 -07:00
Vinnie Falco
edeb44617b Remove BodyReader::is_deferred (API Change):
The is_deferred nested type is removed from the BodyReader
requirements.

Performance for sending messages with `file_body` was cut
almost in half with is_deferred as `std::true_type` since
it caused double the number of socket writes. If the
deferred behavior is absolutely necessary, callers can get
the same effect by manually sending the headers first.

Actions Required:

* Callers who need the behavior of is_deferred as `std::true_type`
  should manually construct a serializer and serialize the header
  first, followed by the body.
2017-07-20 08:15:29 -07:00
Vinnie Falco
bf59634bc2 Change BodyReader, BodyWriter requirements (API Change):
Actions Required:

* Change user defined instances of BodyReader and BodyWriter
  to meet the new requirements.
2017-07-20 08:15:29 -07:00
Vinnie Falco
bb1dd72638 Group common example headers 2017-07-20 08:15:29 -07:00
Vinnie Falco
84d7601bdf Rename to http-server-fast 2017-07-20 08:15:29 -07:00
Vinnie Falco
e7b01dc5c4 control_callback replaces ping_callback (API Change):
fix #322

The new callback is informed of all frame types including close.

Actions Required:

* Change calls to websocket::stream::ping_callback to use
  websocket::stream::control_callback

* Change user defined ping callbacks to have the new
  signature and adjust the callback definition appropriately.
2017-07-20 08:15:28 -07:00
Vinnie Falco
fc15f5e0b2 Add http-server-small example 2017-07-20 08:15:28 -07:00
Vinnie Falco
3570895391 Fix doc example link 2017-07-20 08:15:28 -07:00
Vinnie Falco
e389b853c5 Documentation work 2017-07-20 08:15:28 -07:00
Vinnie Falco
e5f1d4d010 Add http-server example 2017-07-20 08:15:28 -07:00
Vinnie Falco
9f7f36a3e9 Add header aliases 2017-07-20 08:15:28 -07:00
Vinnie Falco
86244c8dcf Add serializer request/response aliases 2017-07-20 08:15:28 -07:00
Vinnie Falco
e477574681 Remove make_serializer (API Change):
Actions Required:

* Replace calls to make_serializer with variable declarations
2017-07-20 08:15:28 -07:00
Vinnie Falco
b2ab40f09c Doc tidying
fix #521, fix #524
2017-07-20 08:15:28 -07:00
Vinnie Falco
67e3e801cb Exemplars are compiled code
fix #455
2017-07-20 08:15:28 -07:00
Vinnie Falco
0a674b1b52 Doc tidy 2017-07-20 08:15:27 -07:00
Vinnie Falco
5613ce7e97 Add http::is_fields trait
fix #515
2017-07-20 08:15:27 -07:00
Vinnie Falco
56a561da9a message::prepare_payload replaces message::prepare (API Change):
Actions Required:

* Change calls to msg.prepare to msg.prepare_payload. For messages
  with a user-defined Fields, provide the function prepare_payload_impl
  in the fields type according to the Fields requirements.
2017-07-20 08:15:27 -07:00
Vinnie Falco
f9f6e1e0cc Refine FieldsReader concept (API Change)
* FieldsReader now requires chunked() and keep_alive()

* serializer logic calls into the reader to calculate
  the message metadata

* Removed some of the previous requirements of FieldsReader

Actions Required:

* Implement chunked() and keep_alive() for user defined FieldsReader types.
2017-07-20 08:15:27 -07:00
Vinnie Falco
c3e2de29ef Doc fixes and tidy 2017-07-20 08:15:27 -07:00
Vinnie Falco
d5f15976e7 Tidy up test build scripts and projects 2017-07-20 08:15:27 -07:00
Vinnie Falco
ccf7412eaf Remove libssl-dev from a Travis matrix item
fix #508
2017-07-20 08:15:27 -07:00
Vinnie Falco
a4a4121444 Add multi_port to server-framework 2017-07-20 08:15:27 -07:00
Vinnie Falco
8b5f5c6feb Reorganize SSL examples 2017-07-20 08:15:27 -07:00
Vinnie Falco
65932ee343 Add server-framework SSL HTTP and WebSocket ports 2017-07-20 08:15:27 -07:00
Vinnie Falco
798ff25795 header::version is unsigned (API Change) 2017-07-20 08:15:27 -07:00
Vinnie Falco
9be141a1e0 Reorganize SSL examples 2017-07-20 08:15:27 -07:00
Vinnie Falco
a26017d695 Use generic_cateogry for errno 2017-07-20 08:15:27 -07:00
Vinnie Falco
8b732f94f4 Documentation work 2017-07-20 08:15:26 -07:00
Vinnie Falco
fd9a13b11f New server-framework, full featured server example:
A new server framework is introduced, allowing users to
quickly get off the ground. Example servers are refactored
to use the common framework.
2017-07-20 08:15:26 -07:00
Vinnie Falco
b5306a5712 String comparisons are public interfaces 2017-07-20 08:15:26 -07:00
Vinnie Falco
79d599c9d1 Remove obsolete doc/README.md 2017-07-20 08:15:26 -07:00
Vinnie Falco
611e610c0c Change Body::size signature (API Change):
fix #497

This changes the function signature to accept the `value_type`
instead of the entire message.

Actions Required:

* For any user-defined models of Body, change the function signature
  to accept `value_type const&` and modify the function definition
  accordingly.
2017-07-20 08:15:26 -07:00
Vinnie Falco
b5be1e0d0d Documentation work 2017-07-20 08:15:26 -07:00
Vinnie Falco
2bbb8ab8a2 Documentation tidy 2017-07-20 08:15:26 -07:00
Vinnie Falco
510092d34b Reorganize examples:
* The examples/ directory is renamed to example/

* Each program is in its own directory with its own build scripts
2017-07-20 08:15:26 -07:00
Vinnie Falco
164569157a Update doc/ for docca 2017-07-20 08:15:26 -07:00
Vinnie Falco
9920d4526a Merge commit '6a9a9064c493e4e9db7af16acd6bebf1ec938743' as 'doc/docca' 2017-07-20 08:15:03 -07:00
Vinnie Falco
8fa756aee6 Documentation work 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
7712ca09b2 Add string_view_body 2017-07-20 08:12:20 -07:00
Vinnie Falco
7bde07a850 Documentation work 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
d529d6a16f Documentation work 2017-07-20 08:12:19 -07:00