The-EDev
6f832f82fa
added message string to websocket error handler
2022-06-21 02:23:51 +03:00
MichaelSB
a3307170cf
Merge branch 'master' into response_check_file_type
2022-06-20 08:00:44 +02:00
Alexander Goussas
29d50e8df2
overload template_t::render to accept context as an r-value
2022-06-20 06:25:13 +03:00
The-EDev
c2d1bfac38
Fix wvalue::Operator = (wvalue && r);
2022-06-20 05:52:30 +03:00
MichaelSB
719929b930
Merge branch 'master' into response_check_file_type
2022-06-18 19:27:10 +02:00
Luca Schlecker
02bbbde8b7
add comment to trim
function, use it correctly and remove redundant whitespace checks in CookieParser
.
2022-06-18 17:21:37 +03:00
Luca Schlecker
e7a04859fe
r_string: combine equality operation algorithm.
...
A private templated function containing the algorithm is used to prevent repetition.
2022-06-18 17:21:37 +03:00
Luca Schlecker
126d79dc38
cookie_parser & query_string: use std::unique_ptr instead of raw pointers.
2022-06-18 17:21:37 +03:00
Luca Schlecker
9f98a66cd1
utility: improve string_equals function.
...
Return early if inequality is found.
2022-06-18 17:21:37 +03:00
Luca Schlecker
2fbf93e211
replace std::error_code with asio::error_code.
...
This makes the code more consistent and also reflects the intention a little better.
2022-06-18 17:21:37 +03:00
Luca Schlecker
9cffc3f268
json: add missing r_string comparison operator.
2022-06-18 17:21:37 +03:00
Luca Schlecker
6c4ad07a62
utility: trim and lexical_cast were missing inline static
leading to compilation errors.
2022-06-18 17:21:37 +03:00
Luca Schlecker
4aa9b3e89b
json: replace std::equal to maintain C++11 compatibility.
2022-06-18 17:21:37 +03:00
Luca Schlecker
5336d0fff7
json: replace remaining boost functions with their std equivalent.
2022-06-18 17:21:37 +03:00
Luca Schlecker
60ca594b91
cookie_parser: use utility::trim instead of boost::trim.
2022-06-18 17:21:37 +03:00
Luca Schlecker
982e62eabf
utility: add string trimming function.
2022-06-18 17:21:37 +03:00
Luca Schlecker
8d0d4c80ee
Remove usage of boost::optional.
...
Move to pointers instead.
This implementation relies on the safe deletion of `nullptr`.
2022-06-18 17:21:37 +03:00
Luca Schlecker
5b1c5a9e9e
removing some boost includes, fixing version checks and further phase out boost.
2022-06-18 17:21:37 +03:00
Luca Schlecker
df92d6d639
replace boost::lexical_cast with an equivalent based on std::stringstream.
2022-06-18 17:21:37 +03:00
Luca Schlecker
61d27e3b82
ci_map: replace boost::hash_combine with member function.
2022-06-18 17:21:37 +03:00
Luca Schlecker
f3d00bbecf
replace boost::asio with standalone asio.
2022-06-18 17:21:37 +03:00
Luca Schlecker
c780642dd8
http_server: replace boost::asio::deadline_timer with a standalone asio equivalent.
2022-06-18 17:21:37 +03:00
Luca Schlecker
2f87414769
replace usage of boost::iequals with utility::string_equals.
2022-06-18 17:21:37 +03:00
Luca Schlecker
f3dba60efd
utility: add string_equals function.
...
It serves as a replacement for boost::iequals.
2022-06-18 17:21:37 +03:00
Luca Schlecker
58583bf1a5
deboostify task_timer.
2022-06-18 17:21:37 +03:00
Luca Schlecker
78f764791e
remove 'using namespace boost' declarations.
2022-06-18 17:21:37 +03:00
Michael Schreckenbauer
c593fbb3b4
only allow regular files in set_static_file_info, return 404 in all other cases
2022-06-15 09:20:11 +02:00
erik
3782044249
Fixed race condition: calling stop() immediately after async_run() and wait_for_server_start() could lead to deadlock
...
This is the case in some short, simple unit tests, such as "get_port".
2022-06-13 10:53:27 +02:00
Alexander Goussas
6bac5d948b
fix qs_parse eating first character in form keys
2022-06-11 21:44:53 -05:00
Michael Schreckenbauer
efee71745b
do not try to read from websocket after sending and receiving the close frame
2022-06-04 12:14:46 +02:00
Michael Schreckenbauer
5ef370c519
erase websocket::connection from vector in App::remove_websocket()
2022-06-03 07:44:57 +02:00
Vladislav Oleshko
b939dd4f1d
Small fixes
2022-05-28 17:59:33 +03:00
Vladislav Oleshko
f46bdc1a24
First iteration of sessions
2022-05-28 16:42:25 +03:00
Michael Schreckenbauer
65fcdea968
allow setting userdata in onaccept of websocket-connection
2022-05-27 14:06:12 +02:00
Vladislav Oleshko
946292747e
Small fixes
2022-05-23 20:17:49 +03:00
Vladislav
94fa9f77f6
Merge branch 'master' into app-constructor
2022-05-23 20:12:55 +03:00
Farook Al-Sammarraie
a6bf90fa8b
Merge branch 'master' into blueprint-middleware
2022-05-23 09:43:17 +03:00
The-EDev
cd67331fad
formatting
2022-05-21 14:51:48 +03:00
The-EDev
94a05b854a
changed functionality to avoid circular include
2022-05-21 12:32:32 +03:00
The-EDev
387c222ea2
added creating qs from request body functionality + updated doc
2022-05-20 22:36:32 +03:00
The-EDev
f2b63f23f5
Fix for issue where app.stop() blocks when a websocket is open
2022-05-20 14:14:55 +03:00
Farook Al-Sammarraie
3e6c097733
Merge branch 'master' into #421-Websockets-should-support-a-maximum-payload
2022-05-18 20:04:38 +03:00
konrad
7e4f57486c
Add extra log when status code is not defined.
...
Just to document behaviour when returning status that is
not well-known.
2022-05-18 15:57:46 +03:00
The-EDev
5fcaa19163
should_close_ -> shutting_down_
2022-05-18 14:08:40 +03:00
The-EDev
cfc4281e3b
Prevent acceptor from taking new connections while websockets close
2022-05-18 13:49:50 +03:00
Farook Al-Sammarraie
e7007cfbce
Merge branch 'master' into blueprint-middleware
2022-05-18 13:30:13 +03:00
The-EDev
4128e5c27d
further formatting
2022-05-18 12:40:11 +03:00
The-EDev
333b49bf04
Replaced do_not_destroy_
with adaptor_.shutdown_readwrite()
+
...
formatting
2022-05-18 12:28:51 +03:00
The-EDev
57c3b43ac0
Fixed small bugs in code
2022-05-16 19:14:51 +03:00
oscar.chen
487c4e6c08
removing unneeded variable
2022-05-15 01:34:29 -07:00
oscar.chen
f0ea634c01
fix copy paste error
2022-05-15 01:21:34 -07:00
oscar.chen
a0a1925630
Pass the max payload in Connection constructor
2022-05-15 01:01:24 -07:00
oscar.chen
cdba76739f
fix clang format
2022-05-14 19:35:45 -07:00
oscar.chen
7164517622
use arrow not .
2022-05-14 19:10:05 -07:00
oscar.chen
89d99f6ae9
add missing commas
2022-05-14 18:46:49 -07:00
oscar.chen
a30f0f6e4f
fix wrong intializer syntax
2022-05-14 18:20:46 -07:00
oscar.chen
aa75fc108d
fix wrong comment
2022-05-14 17:58:53 -07:00
oscar.chen
aaeaf9922e
fix clang format
2022-05-14 17:54:21 -07:00
oscar.chen
4daf126df0
Add websocket payload size for both app and WebsocketRule
2022-05-14 17:51:51 -07:00
The-EDev
e5fe4e6e26
Used App reference to get websocket count and signals.
...
Also fixed issue where enabling SSL prevented compilation.
2022-05-15 01:15:39 +03:00
Farook Al-Sammarraie
9f99be55e1
Merge branch 'master' into ws_close
2022-05-14 18:56:39 +03:00
oscar.chen
dc988ce27b
fix clang format
2022-05-14 14:07:51 +03:00
oscar.chen
182b1ba915
#421 add rudimentary support for websocket max payload
2022-05-14 14:07:51 +03:00
The-EDev
78c7186897
Allowed Crow class to be passed to Websocket connection object
2022-05-14 12:05:06 +03:00
Vladislav
4d4d0094fe
Merge branch 'master' into blueprint-middleware
2022-05-07 23:03:35 +03:00
Vladislav Oleshko
81ae1c9de2
Replace optional with empty string
2022-05-07 12:09:22 +03:00
Vladislav Oleshko
51bb6062ef
Rename format, refactor dump
2022-05-07 12:09:22 +03:00
Vladislav Oleshko
a01e39cf5d
Use std::tm instead of boost
2022-05-07 12:09:22 +03:00
Vladislav Oleshko
988926660e
Support zero max-age for instant expiration
2022-05-07 12:09:22 +03:00
Vladislav Oleshko
76d7ae3dac
Add attribute support to cookie parser
2022-05-07 12:09:22 +03:00
The-EDev
82e894dc88
formatting
2022-04-27 06:11:49 +03:00
The-EDev
84289dbe71
fix typos
2022-04-27 05:58:53 +03:00
The-EDev
2619f3a358
fixed issue where OPTIONS responses would report content-length
2022-04-27 05:55:31 +03:00
The-EDev
372212a3af
Added method for assigning an SSL certificate chain file
2022-04-27 05:54:33 +03:00
Joel Guittet
c14acad044
app: static can be an absolute path
2022-04-26 06:02:45 +03:00
Kinshuk Bairagi
de16aab1a9
Fix for cpp/comparison-with-wider-type
2022-04-26 05:30:31 +03:00
Farook Al-Sammarraie
b6a04058a1
Merge branch 'master' into gcc48
2022-04-25 09:34:52 +03:00
Dan Keenan
869a0abb04
Fix header name.
2022-04-21 19:51:22 -04:00
Dan Keenan
885ac41d99
Formatting fixes.
2022-04-20 16:26:09 -04:00
Dan Keenan
89226687ea
Avoid exception handling.
2022-04-20 16:18:50 -04:00
Dan Keenan
33df7fc35b
Handle extensions without mime types assigned to them.
2022-04-16 17:35:44 -04:00
Farook Al-Sammarraie
60b1d82999
Merge branch 'master' into gcc48
2022-04-16 16:07:05 +03:00
The-EDev
0f3721f5eb
removed mentions of is_callable in middleware.h
2022-04-16 16:05:41 +03:00
The-EDev
9f7ed83c45
Removed is_callable in favor of CallHelper + formatting
2022-04-16 16:04:49 +03:00
Vladislav Oleshko
74d94888d1
Generic app constructor
2022-04-13 20:49:22 +03:00
Vladislav Oleshko
d86b2d36f1
Add test, small fixes
2022-04-13 12:16:06 +03:00
Vladislav Oleshko
d9ba5787f1
Fix blueprint bug
2022-04-12 12:19:16 +03:00
Vladislav
cca8578556
Merge branch 'master' into blueprint-middleware
2022-04-12 10:52:45 +03:00
Dao-hui Chen
c2b8a60eb3
Concatenate log into one string and sending to std::cerr instead of multiple << operator
2022-04-12 09:18:38 +08:00
Vladislav Oleshko
eb2c0a58b2
Optimize dynamic call criteria, small fixes
2022-04-11 23:03:11 +03:00
Vladislav Oleshko
3b9e522523
Blueprint middleware prototype
2022-04-11 16:01:27 +03:00
The-EDev
facae48aa1
Allowed compiling on GCC 4.8 by using CallHelper instead of is_callable
...
Also fixed issue with ssl test string comparison (which caused random incorrect failures)
2022-04-11 06:24:43 +03:00
The-EDev
6a5c18a54f
Fixed issue where Crow wouldn't compile when using CROW_MIDDLEWARES with a pass-by-reference app
2022-04-09 04:45:32 +03:00
Farook Al-Sammarraie
57bf896ffd
Merge branch 'master' into cors-middleware-fix
2022-04-08 14:30:26 +03:00
Vladislav Oleshko
bccc03c141
Add inline decl to CORSRules helpers
2022-04-08 14:00:17 +03:00
The-EDev
0a739b35c6
fixed issue where SSL websockets wouldn't run due to HTTP upgrade
2022-04-07 15:54:50 +03:00
Farook Al-Sammarraie
6ffaf23375
Merge branch 'master' into crow-features
2022-04-04 21:44:11 +03:00
Luca Schlecker
44f51f4750
Crow's current features (ssl and compression) can now be enabled through 'CROW_FEATURES' instead of their own CMake variables.
...
The default features are the ones Crow was installed with but can be overridden by setting 'CROW_FEATURES' before the 'find_package' call.
Signed-off-by: Luca Schlecker <luca.schlecker@hotmail.com>
2022-04-04 20:36:57 +02:00
Farook Al-Sammarraie
912330322b
Merge branch 'master' into master
2022-04-04 21:19:18 +03:00
Darrell Wright
dcbb8a15fd
Update common.h
...
Fixed extra {
2022-04-04 13:04:26 -04:00