Commit Graph

310 Commits

Author SHA1 Message Date
Vinnie Falco
a98895bc24
Set version to 144 2017-11-18 18:07:10 -08:00
Vinnie Falco
5e2514f44a
Set version to 143 2017-11-13 12:18:47 -08:00
Vinnie Falco
fe39a7c22a
Set version to 142 2017-11-11 09:41:13 -08:00
Vinnie Falco
082767adfc
Set version to 141 2017-11-10 16:41:53 -08:00
Vinnie Falco
e2d9b0dffd
Set version to 140 2017-11-08 20:13:12 -08:00
Vinnie Falco
6eba0e8f9e
Set version to 139 2017-11-05 13:03:32 -08:00
Vinnie Falco
babb6bd59f
Set version to 138 2017-11-05 09:29:56 -08:00
Vinnie Falco
e8e340d098
Set version to 137 2017-11-03 19:41:45 -07:00
Vinnie Falco
56f0b63e4d
Set version to 136 2017-11-02 15:53:14 -07:00
Vinnie Falco
8ce96d23f8
Set version to 135 2017-11-01 11:31:20 -07:00
Vinnie Falco
1e8c31913d
Set version to 134 2017-11-01 10:39:29 -07:00
Vinnie Falco
d45edddd04
Set version to 133 2017-10-31 14:44:21 -07:00
Vinnie Falco
e89814ff4a
Set version to 132 2017-10-30 18:51:20 -07:00
Vinnie Falco
e39e4c73bf Rename Cmake variables for clarity 2017-10-30 12:35:56 -07:00
Vinnie Falco
c9e291385c
Set version to 131 2017-10-30 08:25:38 -07:00
Vinnie Falco
caf1443887
Set version to 130 2017-10-27 17:04:06 -07:00
Vinnie Falco
79bb602a20
Set version to 129 2017-10-27 11:16:15 -07:00
Vinnie Falco
ffbe65f4c9
Set version to 128 2017-10-26 08:13:43 -07:00
Vinnie Falco
80af45ecfb
Set version to 127 2017-10-25 11:45:43 -07:00
Vinnie Falco
1e9fcbad61
Set version to 126 2017-10-24 14:26:08 -07:00
Vinnie Falco
860b764ba4
Set version to 125 2017-10-23 17:37:18 -07:00
Vinnie Falco
3a28e999af Update for Net-TS Asio (API Change):
fix #769

The following classes are removed:

* handler_type
* async_result
* async_completion
* is_dynamic_buffer
* is_const_buffer_sequence
* is_mutable_buffer_sequence
* handler_alloc

Actions Required:

* Use BOOST_ASIO_HANDLER_TYPE instead of handler_type
* Use BOOST_ASIO_INITFN_RESULT_TYPE instead of async_result
* Use boost::asio::async_completion
* Use boost::asio::is_dynamic_buffer
* Use boost::asio::is_const_buffer_sequence
* Use boost::asio::is_mutable_buffer_sequence
* boost::asio::associated_allocator_t replaces handler_alloc
2017-10-23 17:11:27 -07:00
Vinnie Falco
9dc9ca13b9
Set version to 124 2017-10-22 10:03:44 -07:00
Vinnie Falco
885b9dfe0b
Set version to 123 2017-10-16 12:09:43 -07:00
Vinnie Falco
f09b2d3e1c
Set version to 122 2017-10-10 08:17:28 -07:00
Vinnie Falco
7594c88f8f CMake 3.5.1 is required 2017-10-09 14:35:56 -07:00
Vinnie Falco
0bc2a41404
Set version to 121 2017-10-03 06:13:13 -07:00
Vinnie Falco
7fe74b1bf5
Set version to 120 2017-10-01 17:54:00 -07:00
Vinnie Falco
b3564c86ae
Set version to 119 2017-09-30 07:29:38 -07:00
Vinnie Falco
e35ae82dd6
Set version to 118 2017-09-26 10:03:51 -07:00
Vinnie Falco
0f5ea371c1
Set version to 117 2017-09-20 08:31:42 -07:00
Vinnie Falco
dca65932a8
Set version to 116 2017-09-12 17:16:07 -07:00
Vinnie Falco
0d4d239d05
Set version to 115 2017-09-10 16:11:10 -07:00
Vinnie Falco
60a33019d4
Set version to 114 2017-09-10 14:35:52 -07:00
Vinnie Falco
c388a92227
Set version to 113 2017-09-09 06:49:43 -07:00
Vinnie Falco
d6fce5a00f
Set version to 112 2017-09-03 21:44:08 -07:00
Vinnie Falco
942bca0cc3
Set version to 111 2017-08-31 17:52:39 -07:00
Vinnie Falco
c8a42bba0a
Set version to 110 2017-08-29 08:22:16 -07:00
Vinnie Falco
526ecc5246
Set version to 109 2017-08-26 07:15:31 -07:00
Vinnie Falco
359cbb1ce4
Set version to 108 2017-08-18 07:55:40 -07:00
Vinnie Falco
b397718fbd
Set version to 107 2017-08-16 18:27:06 -07:00
Vinnie Falco
aabd33a677
Set version to 106 2017-08-15 07:01:01 -07:00
Vinnie Falco
d337339c02
Set version to 105 2017-08-10 18:32:24 -07:00
Vinnie Falco
126bea987c
Set version to 104 2017-08-09 18:50:09 -07:00
Vinnie Falco
9fd7e4adee tools/ renamed from build/ 2017-08-09 18:50:04 -07:00
Vinnie Falco
d6aca02ef8
Set version to 103 2017-08-08 19:25:39 -07:00
Vinnie Falco
1366302a29
Set version to 102 2017-08-08 06:22:37 -07:00
Vinnie Falco
ca0b59894b
Set version to 101 2017-08-07 20:53:18 -07:00
Vinnie Falco
20a8f7d75b
Set version to 100 2017-08-04 19:02:21 -07:00
Vinnie Falco
34c982b0e7 vcxproj workaround for include symlinks 2017-08-04 19:02:13 -07:00
Vinnie Falco
6c0fef7e7e
Version 99 2017-08-03 04:22:35 -07:00
Vinnie Falco
f50f439976
Set version to 98 2017-08-01 11:56:43 -07:00
Vinnie Falco
6081d6e4cc
Set version to 97 2017-07-31 19:50:51 -07:00
Vinnie Falco
817a452f96
Set version to 96 2017-07-31 19:02:49 -07:00
Vinnie Falco
b0d7bc2e86 Add bench-zlib 2017-07-31 19:02:47 -07:00
Vinnie Falco
030f5eef87 Move extras/ to test/ 2017-07-31 19:02:46 -07:00
Vinnie Falco
df9ec6c7f3 Move bench/ to test/ 2017-07-31 19:02:46 -07:00
Vinnie Falco
e3c79edebd
Set version to 95 2017-07-31 12:37:36 -07:00
Vinnie Falco
009d4f38ab Tidy up Travis build scripts 2017-07-31 09:07:20 -07:00
Vinnie Falco
e0f0dc5bca
Set version to 94 2017-07-30 12:10:08 -07:00
Vinnie Falco
9e29a52fcb
Set version to 93 2017-07-29 17:07:09 -07:00
Vinnie Falco
5c1c841333
Set version to 92 2017-07-29 12:45:33 -07:00
Vinnie Falco
1497b4efa4
Set version to 91 2017-07-29 00:26:15 -07:00
Vinnie Falco
809e822789 Refactor test build scripts 2017-07-29 00:26:05 -07:00
Vinnie Falco
698884d8bb Move benchmarks to bench/ 2017-07-28 18:55:32 -07:00
Vinnie Falco
467547fd9c Set BOOST_ASIO_NO_DEPRECATED 2017-07-28 17:07:24 -07:00
Vinnie Falco
fd1b236159 Tidy up MSVC CMakeLists.txt
fix #650
2017-07-28 17:07:23 -07:00
Vinnie Falco
7bcfd2ed26
Set version to 90 2017-07-28 16:29:08 -07:00
Vinnie Falco
c7b830f37f
Set version to 89 2017-07-27 10:14:27 -07:00
Vinnie Falco
a61578634b
Set version to 88 2017-07-26 18:45:22 -07:00
Vinnie Falco
c2d5829f0e
Set version to 87 2017-07-25 17:47:03 -07:00
Vinnie Falco
9003cf5f0b
Set version to 86 2017-07-25 10:37:48 -07:00
Vinnie Falco
8578f3cf76 Update copyrights 2017-07-24 09:42:51 -07:00
Vinnie Falco
198846d7bd Update CMakeLists.txt for boost 2017-07-23 20:04:07 -07:00
Vinnie Falco
7139dd639a Boost prep 2017-07-23 17:34:13 -07:00
Sacha
c2ecb34404 Fix test failure 2017-07-22 20:09:21 -07:00
Vinnie Falco
71ea5ebb75 Set version to 84 2017-07-20 08:15:32 -07:00
Vinnie Falco
271922e752 Set version to 83 2017-07-20 08:15:32 -07:00
Vinnie Falco
cda710bda0 Set version to 82 2017-07-20 08:15:32 -07:00
Vinnie Falco
c341e8415f Set version to 81 2017-07-20 08:15:31 -07:00
Vinnie Falco
ec37172ee6 Set version to 80 2017-07-20 08:15:31 -07:00
Vinnie Falco
ca297a3980 Set version to 79 2017-07-20 08:15:30 -07:00
Vinnie Falco
15cc4c458b Set version to 78
Signed-off-by: Vinnie Falco <vinnie.falco@gmail.com>
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
8f43bcc197 Set version to 76 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
783c52b025 Set version to 74 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
aff5f392e2 Set version to 73 2017-07-20 08:15:30 -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
b518c487ed Set version to 71 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
Sacha
7f05f67464 Add options for building examples and tests.
Move zlib test sources to test/zlib
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
c65074205b Add /permissive- to msvc toolchain 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
40f0649252 Link statically on cmake MSVC 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
2b2e99d69b Set version to 67 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
2daf3bf35b Set version to 66 2017-07-20 08:15:28 -07:00
Vinnie Falco
90a88a9361 Set version to 65 2017-07-20 08:15:28 -07:00
Vinnie Falco
58c976ea73 Enable unused variable warning on msvc cmake 2017-07-20 08:15:28 -07:00
Vinnie Falco
246f55321c Enable narrowing warning on msvc cmake 2017-07-20 08:15:28 -07:00
Vinnie Falco
cbf4182dd1 Set version to 64 2017-07-20 08:15:28 -07:00
Vinnie Falco
67f595eea8 Add link_directories to cmake 2017-07-20 08:15:28 -07:00
Vinnie Falco
9ca2ca7db0 Set version to 63 2017-07-20 08:15:28 -07:00
Vinnie Falco
26b5e91725 Tidy up CMakeLists.txt 2017-07-20 08:15:28 -07:00
Vinnie Falco
3ff585d36e Only run the tests under ubasan 2017-07-20 08:15:28 -07:00
Vinnie Falco
9c4b3ed2a7 Only build and run tests in variant=coverage 2017-07-20 08:15:27 -07:00
Vinnie Falco
1aede9a81e Set version to 62 2017-07-20 08:15:27 -07:00
Vinnie Falco
3efe8cc9dd Put slow tests back for coverage builds 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
abed397bc0 Don't run slow tests on certain targets 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
9be141a1e0 Reorganize SSL examples 2017-07-20 08:15:27 -07:00
Vinnie Falco
a83b1a0108 Set version to 60 2017-07-20 08:15:27 -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
Sacha
0a2a03acfa Integrated Beast interface. 2017-07-20 08:15:26 -07:00
Vinnie Falco
104ec6be18 Set version to 58 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
1cb4601005 Set version to 57 2017-07-20 08:15:26 -07:00
Vinnie Falco
82d76e4882 Convert buffer in range loops
fix #485
2017-07-20 08:12:20 -07:00
Sacha
1037c5bfba Add Beast INTERFACE CMake target 2017-07-20 08:12:20 -07:00
Vinnie Falco
b9acbb537f Try harder to find Boost (cmake)
fix #480
2017-07-20 08:12:20 -07:00
Vinnie Falco
4d21f8d2cf Revert "Add a Beast CMake interface target:"
This reverts commit 906db45bec35ce9bb4ba0448aaa4c8955f3c62e2.
2017-07-20 08:12:20 -07:00
Sacha
3c453209fe Add a Beast CMake interface target:
fix #461

This target allows other CMake projects to acquire
the Beast headers and link libraries easily.
2017-07-20 08:12:19 -07:00
Vinnie Falco
74c26a8869 DynamicBuffer benchmarks
fix #441
2017-07-20 08:12:19 -07:00
Vinnie Falco
4b866cea36 Documentation work 2017-07-20 08:12:18 -07:00
Vinnie Falco
5d3fc8fbbd Tidy up .travis.yml:
* Combine address and undefined sanitizers
* Additional targets for older gcc and 32 bit
2017-07-20 08:12:16 -07:00
Vinnie Falco
415f94b150 Add websocket async echo ssl server test:
This adds a new asynchronous websocket echo server
which supports TLS/SSL connections.
2017-07-20 08:12:16 -07:00
Vinnie Falco
434d4d0a55 Add -funsigned-char to asan build target 2017-07-20 08:12:16 -07:00
Vinnie Falco
7d7a360666 Add ub sanitizer blacklist 2017-07-20 08:12:15 -07:00
Vinnie Falco
8ba166a221 CMake hide command lines in .vcxproj Output windows 2017-07-20 08:12:15 -07:00
Vinnie Falco
bd4ad15856 Tidy up MSVC CMake configuration 2017-07-20 08:12:15 -07:00
Vinnie Falco
63ee5048c7 Fix and tidy up CMake build scripts:
This cleans up the Boost CMake configuration and
also fixes a bug in MSVC builds with mismatched
static versus dynamic runtime linkage.
2017-07-20 08:12:15 -07:00
Sergey Lyubimov
3641521af7 Update CMake scripts for finding packages:
These changes require CMake version 3.7.2 or later.
2017-07-20 08:12:15 -07:00
Vinnie Falco
71db14bad4 Tidy up build settings 2017-07-20 08:12:15 -07:00
Vinnie Falco
911617c43f Add permessage-deflate WebSocket extension:
This implements the permessage-deflate WebSocket
extension as described in HyBi Working Group
draft-ietf-hybi-permessage-compression-28:
https://tools.ietf.org/html/draft-ietf-hybi-permessage-compression-28

This extension allows messages to be compressed using
the raw "deflate" algorithm described in RFC 1951,
"DEFLATE Compressed Data Format Specification version 1.3":
https://www.ietf.org/rfc/rfc1951.txt
2017-07-20 08:12:14 -07:00
Vinnie Falco
606ad187ba Disable Boost.Coroutine deprecation warning 2017-07-20 08:12:14 -07:00
Vinnie Falco
5089cf59ee Add zlib module:
The zlib module is a port of ZLib's raw deflate
algorithm to header-only C++11.
2017-07-20 08:12:14 -07:00
Mike Ellery
38b89d7cab Override incremental link flags:
fix #160

Disable incremental linking for RelWithDebInfo builds on MSVC.
2017-07-20 08:12:13 -07:00
Vinnie Falco
c75992a4af Higher optimization settings for MSVC builds 2017-07-20 08:12:13 -07:00
Andrew Whatson
ed23fd5811 Fix unused parameter warnings and missing includes:
fix #127

* Added beast::detail::ignore_unused based on boost::ignore_unused
* Added -Wextra compilation flag when building with gcc
* Fixed all unused parameter warnings with ignore_unused
* Fixed all missing includes when building each .hpp separately
2017-07-20 08:12:13 -07:00
Vinnie Falco
2ad5223d80 Add HTTPS example 2017-07-20 08:12:12 -07:00
Evgeniy
42073a925a Update build scripts for MSVC, MinGW 2017-07-20 08:12:09 -07:00
Vinnie Falco
af46a1162a Tidy up CMakeLists 2017-07-20 08:12:09 -07:00
Vinnie Falco
f3f4e2b425 Tidy up 32 and 64 bit build support (fix #49):
This fixes up support for building both 32 and 64 bit targets, especially on Windows.
2017-07-20 08:12:07 -07:00
wilsonianb
3ec83b31d9 Handle undefined VARIANT in cmake 2017-07-20 08:12:07 -07:00
wilsonianb
a2fb4b099b Build coverage and usan Travis CI targets with CMake 2017-07-20 08:12:07 -07:00
seelabs
da78f3cec4 Tidying and fix warnings 2017-07-20 08:12:07 -07:00
seelabs
bbfe44cc10 Update CMakeLists for non-Windows platforms 2017-07-20 08:12:06 -07:00
Vinnie Falco
3484996048 Tidy up core sources:
The core headers are moved to their own directory (but remain in
the same namespace).
2017-07-20 08:12:06 -07:00
Vinnie Falco
00d8ed71fd Tidy up test sources:
Test support classes are moved to beast/extras/test.
2017-07-20 08:12:06 -07:00
Vinnie Falco
b14434456c Refactor extras:
A new directory extras/ is added, and code not part of the official
public Beast interface is moved there.
2017-07-20 08:12:06 -07:00
Vinnie Falco
4104eca1f1 WebSocket refactoring and tests:
websocket:

* Move echo server to test/
* Fix warnings
* Fix maskgen being uncopyable
* Simplify utf8_checker special member declarations
* Fix stream move assignable when owning the next layer
* Add javadocs for stream special members
* Add stream unit tests
* Move throwing member definitions to the .ipp file
* Use get_lowest_layer in stream declaration
* Perform type checks at each call site instead of constructor
* Demote close_code to a non-class enum:
    Otherwise, application specific close codes
    cannot be assigned without using static_cast.

core:

* Add streambuf_readstream special members tests
* Add move assignment operator to streambuf_readstream
* Add detail/get_lowest_layer trait
* Add static_string tests
* Move static_string from websocket to core
2017-07-20 08:12:05 -07:00
Vinnie Falco
a0b04bdff2 Refactor beast core, http, tests, and examples:
* Fix warnings
* Port cmake scripts to linux
* Add command line options for running test suites
* Add examples to CMakeLists
* Return std::uint64_t from writer::content_length
* basic_parser::write takes asio::const_buffer instead of pointer and size
* Turn message test back on now that it passes
* Rename to http::headers, use std::allocator, remove http_headers
* http::message::method is now a string
* Refactor to_string for ConstBufferSequence
* Remove chunk_encode from the public interface
* Initialize members for default constructed iterators
* Disallow default construction for dependent buffer sequences

Refactor http::message serialization:

* Serialization no longer creates a copy of the
  headers and modifies them
* New function prepare(), sets Connection, Transfer-Encoding,
  Content-Length based on the body attributes and caller options.
  Callers can use prepare() to have the fields set automatically,
  or they can set the fields manually.
* Use write for operator<<
* Tests for serialization
2017-07-20 08:12:05 -07:00
Vinnie Falco
9a3a42a644 Truncate history, version 1.0.0-b2 2017-07-20 08:01:46 -07:00