Vinnie Falco
df8d306909
Tidy up documentation:
...
fix #135
* Fix broken references
* Move doc debug headers to extras/
* Add rfc7230 utility classes to quick reference
2016-10-20 17:22:37 -04:00
Vinnie Falco
47105f8454
Tidy up basic_headers for documentation
2016-10-20 17:22:36 -04:00
Vinnie Falco
ada1f60e3e
Refine message class hierarchy:
...
Two new objects, request_headers and response_headers,
represent the portion of HTTP messages excluding the body.
2016-10-20 17:22:36 -04:00
Vinnie Falco
cf43f516d2
Rework HTTP concepts (API Change):
...
fix #139 , fix #140
* Writer uses write instead of operator()
* Refactor traits to use void_t
* Remove is_ReadableBody, is_WritableBody
* Add has_reader, has_writer, is_Reader, is_Writer
* More friendly compile errors on failed concept checks
2016-10-17 11:11:57 -04:00
Vinnie Falco
8a261ca923
HTTP Reader (API Change):
...
fix #114 , fix #117 , fix #136
* Added init() to Reader requirements
* Reader must be nothrow constructible
* Reader is now constructed right before reading the body
- The message passed on construction is filled in
2016-10-17 11:11:57 -04:00
Vinnie Falco
183055a74c
Parser callbacks may not throw (API Change)
2016-10-17 11:11:56 -04:00
Vinnie Falco
ebebe52612
Add basic_streambuf::alloc_size
...
fix #133
2016-10-17 11:11:56 -04:00
Vinnie Falco
c9cd171c19
Fix basic_streambuf::capacity
2016-10-17 11:11:56 -04:00
Vinnie Falco
0eb0e485c3
Tidying:
...
fix #85
* Remove unnecessary boost/system includes
* Remove unused headers_type from write_preparation
* Use braced-init style construction
* handler_alloc doc update
2016-10-17 11:11:51 -04:00
Evgeniy
c5c436d5a3
Change implicit_value to default_value
2016-10-17 11:11:33 -04:00
Vinnie Falco
206d0a9b65
Fix websocket failure tests
2016-10-14 16:13:59 -04:00
Vinnie Falco
4224a3a2db
Relax ForwardIterator requirements in FieldSequence
2016-10-14 15:03:58 -04:00
Vinnie Falco
14d7f8d362
Refactor base_parser_v1 callback traits:
...
When the derived class provides a member function with the
corresponding callback name, but the signature is different,
a compile error will be generated instead of silently ignoring
the member function.
2016-10-14 14:12:43 -04:00
Vinnie Falco
d81234435f
Add pause option to on_headers interface:
...
* on_headers returns enum body_what
* body_what::pause lets caller receive headers during the parse
2016-10-14 14:12:42 -04:00
Vinnie Falco
c59bd53f48
Improve first line serialization
2016-10-14 14:12:42 -04:00
Vinnie Falco
78ff20b005
Constrain parser_v1 constructor
2016-10-14 14:12:42 -04:00
Vinnie Falco
2765a67594
Refine Parser concept:
...
* Parser is not HTTP-specific
* parse algorithms are in their own header
* Update documentation
2016-10-14 14:12:41 -04:00
Vinnie Falco
c329d33c4b
Fix on_headers called twice from basic_parser_v1
2016-10-14 14:08:58 -04:00
Vinnie Falco
90cec54524
Make auto_fragment a boolean option
2016-10-14 14:08:57 -04:00
Vinnie Falco
03642fb585
Rename to write_buffer_size
2016-10-14 14:08:57 -04:00
Vinnie Falco
0ca8964fe0
Frame processing routines are member functions
2016-10-14 14:08:57 -04:00
Vinnie Falco
d99dfb38de
Make value optional in param-list
2016-10-14 14:08:56 -04:00
Radoslaw Zarzynski
c54762ae1a
Fix handling empty HTTP headers in parser_v1.hpp
...
This patch rectifies flush() of beast::http::parser_v1
to properly handle the case when an HTTP header has
empty value.
Without the fix an empty-valued HTTP header is being
concatenated with the header directly following it.
This situation can be replicated using eg. curl:
curl <url> -H "X-First;" -H "X-Second: bla"
What Beast's client would see is a single header named
as "X-FirstX-Second".
2016-10-08 01:30:10 -04:00
Vinnie Falco
60e637bd69
Tidy up error types:
...
* Restructure header material
* Clean up namespace type injections
* Remove extraneous 'success' constants
2016-10-08 01:30:10 -04:00
Vinnie Falco
d54d597f76
Tidy up DynamicBuffer requirements
2016-10-08 01:30:10 -04:00
Vinnie Falco
38af0f73d8
Fix message_v1 constructor
2016-10-08 01:30:10 -04:00
Vinnie Falco
027c4e8812
Add Secure WebSocket example
2016-10-08 01:30:10 -04:00
Vinnie Falco
5baaa49aee
Add HTTPS example
2016-10-08 01:30:10 -04:00
Vinnie Falco
076456bdcc
rfc7230 section 3.3.2 compliance
2016-10-08 01:30:10 -04:00
Vinnie Falco
b4a8342795
Update and tidy documentation
2016-09-29 13:03:36 -04:00
Vinnie Falco
4abb43edc0
Use BOOST_ASSERT
2016-09-29 13:03:35 -04:00
Vinnie Falco
8ee7a21a88
Better WebSocket decorator:
...
* Caller provided type can omit one or both overloads
* Omitted overloads yield default behavior
* Documentation no longer refers to a detail type
2016-09-29 13:03:34 -04:00
Evgeniy
38f0d950b0
Update build scripts for MSVC, MinGW
2016-09-29 13:03:34 -04:00
Vinnie Falco
4c7065a80a
Add missing rebind to handler_alloc
2016-09-29 13:03:32 -04:00
Vinnie Falco
2f9a8440c2
Set version to 1.0.0-b13
2016-09-02 16:56:33 -04:00
Vinnie Falco
e499743cdd
Remove bin and bin64 directories:
...
These directories are removed, to make it easier for developers
to delete the entire directory contents when rebuilding CMake targets
after a configuration change.
2016-09-02 10:01:32 -04:00
Vinnie Falco
411b2534ed
Use -p to print suites from unit test main
2016-08-29 15:07:15 -04:00
Vinnie Falco
253f138aff
Add BEAST_EXPECTS test failure macro:
...
New overloads of suite::expect take the file and line number
as individual parameters, cleaning up the file name output
by showing only the filename part (to not leak the full path,
which might contain sensitive information).
A new macro BEAST_EXPECTS allows an additional reason
string as well as reporting the file and line. Typical usage:
```
error_code ec;
...
if(! BEAST_EXPECTS(! ec, ec.message()))
return;
```
2016-08-29 13:46:31 -04:00
Vinnie Falco
dadbab4c0f
Fix unit test runner to output all case names:
...
Also fixes a bug where suite::log was incorrectly flushed.
2016-08-29 11:48:45 -04:00
Vinnie Falco
aedfaab93d
Update README, rename CHANGELOG
2016-08-29 10:29:07 -04:00