Vinnie Falco
37110f2d04
Add span_body
2017-07-20 08:15:30 -07:00
Vinnie Falco
c9908eada0
Tidy up includes and javadocs
2017-07-20 08:15:30 -07:00
Vinnie Falco
80eb5af584
Add span
2017-07-20 08:15:30 -07:00
Vinnie Falco
e1de01ad13
Add vector_body
...
fix #580
2017-07-20 08:15:30 -07:00
Vinnie Falco
c6d7fa185b
Tidy up basic_string_body
...
fix #580
2017-07-20 08:15:30 -07:00
Vinnie Falco
222eca839a
Set version to 77
2017-07-20 08:15:30 -07:00
Vinnie Falco
eb4a4d41f0
file_posix works without large file support
...
fix #632
2017-07-20 08:15:30 -07:00
Vinnie Falco
8f43bcc197
Set version to 76
2017-07-20 08:15:30 -07:00
Vinnie Falco
152720efaf
Disable SSE4.2 optimizations
2017-07-20 08:15:30 -07:00
Vinnie Falco
a00ce1209b
Fix parse illegal characters in obs-fold
2017-07-20 08:15:30 -07:00
Vinnie Falco
f657057c49
Add file_body_win32:
...
basic_file_body is specialized for file_win32:
When serializing file bodies to stream sockets on Windows,
the native platform function ::TransmitFile is used, improving
performance.
2017-07-20 08:15:30 -07:00
Vinnie Falco
cc198db10e
serializing file_body is not const
2017-07-20 08:15:30 -07:00
Vinnie Falco
e06a055503
BodyReader, BodyWriter use two-phase init (API Change):
...
These types now perform error-based initialization in
a separate init() functions instead of in the constructor.
Actions Required:
* Modify instances of user-defined BodyReader and BodyWriter
types to perfrom two-phase initialization, as per the
updated documented type requirements.
2017-07-20 08:15:30 -07:00
Vinnie Falco
8a3df73ffc
Serializer members are not const
2017-07-20 08:15:30 -07:00
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
b1a8cf8a13
file_body tests
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
Christopher Kohlhoff
8179019590
Use file_body for valid requests, string_body otherwise.
2017-07-20 08:15:30 -07:00
Vinnie Falco
783c52b025
Set version to 74
2017-07-20 08:15:30 -07:00
Andrzej Krzemieński
d6bac17bff
remove redundant flush() from example:
...
`<<std::endl` already flushes the stream; no need for a separate call.
2017-07-20 08:15:30 -07:00
Keith Bennett
1c9c87f93c
Fix Beast include directories for cmake targets
2017-07-20 08:15:30 -07:00
Vinnie Falco
eec5f1d8b6
Add file_posix
2017-07-20 08:15:30 -07:00
Vinnie Falco
e81026614a
Remove common/file_body.hpp
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
37461a1c4c
Fixes for gcc-4.8
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
48c0fcae50
Adjust benchmarks
2017-07-20 08:15:30 -07:00
Vinnie Falco
c01dddc4ac
Verify certificates in SSL clients
2017-07-20 08:15:30 -07:00
Vinnie Falco
4b9acaaa6d
Jamroot tweak
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
2ee088de5f
Add basic_parser tests
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
chriskohlhoff
7e61a48607
Various improvements to http_server_fast.cpp:
...
fix #578
- Receive request in a single read
- Use fields_alloc for response
- Fix command line usage information
- Add command line option to spin the io_service
2017-07-20 08:15:29 -07:00