Seungwoo Kang
ac757ff0c9
Fix websocket crash from connection pointer dangling ( #530 )
...
* websocket: Add dangling-prevent anchor pointer
* websocket: Fix deadlock from incorrect expiration expectation
* webscoket: Fix unsafe write access to anchor_
* websocket: Fix build error from use of 'nullptr_t'
* websocket: Remove latent dereferencing on dangling 'this' pointer
* websocket: Resolve conflict with master branch
Co-authored-by: Vladislav <vladislav.oleshko@gmail.com>
2022-10-09 19:03:52 +03:00
Ryan Russell
f5adec7803
refactor(websocket): readability improvements ( #541 )
...
Signed-off-by: Ryan Russell <git@ryanrussell.org>
Co-authored-by: Vladislav <vladislav.oleshko@gmail.com>
2022-09-19 00:34:43 +03:00
Seungwoo Kang
1e47bc67ba
websocket: Reduce number of re-allocation of string parameters ( #535 )
...
Co-authored-by: Vladislav <vladislav.oleshko@gmail.com>
2022-09-18 23:57:37 +03:00
Ryan Russell
33becfb353
docs(middlewares): readability improvements ( #540 )
...
Signed-off-by: Ryan Russell <git@ryanrussell.org>
2022-09-18 23:24:29 +03:00
Jake Arkinstall
0b90bb486c
Address #534 - handling missing mime types gracefully ( #536 )
...
* Added tests for content-type to mime-type detection.
Added a custom_content_types test case that verifies that a user can
specify the mime-type through the contentType parameter upon creation
of a response. If their contentType does not appear in the mime_types
map, but looks like a valid mime type already, it should be used as the
mime type.
Validating against the full list of valid mime types
(https://www.iana.org/assignments/media-types/media-types.xhtml )
would be too intensive, so we merely verify that the parent type
(application, audio, font, text, image, etc) is a valid RFC6838
type, and that the subtype is at least one character. Thus we can
verify that custom/type fails, and incomplete strings such as
image/ and /json fail.
2022-09-12 14:16:16 +03:00
Farook Al-Sammarraie
c0bfaa7709
Merge pull request #523 from CrowCpp/fix-stack-data-disclosure
...
Fix stack data disclosure when returning static files smaller than 16KiB
2022-08-23 00:22:33 +03:00
Farook Al-Sammarraie
27439944b0
Merge branch 'master' into fix-stack-data-disclosure
2022-08-23 00:22:17 +03:00
Farook Al-Sammarraie
6227114191
Merge pull request #524 from CrowCpp/prevent_pipeline
...
Prevent HTTP pipelining
2022-08-23 00:21:59 +03:00
The-EDev
1e0efb0b8b
Added unittest for Host header
2022-08-22 22:32:22 +03:00
Igor Mróz
d17a88af69
Fix stack data disclosure when returning static files smaller than
...
16KiB. It could also cause to return partially incorrect file ending in
case of file not being rounded up to 16KiB.
Thanks to Gynvael Coldwind and hebi for discovering and preparing
report.
2022-08-22 20:15:03 +02:00
The-EDev
0aa3ab94be
fixed unit-tests and warnings
2022-08-22 00:38:03 +03:00
The-EDev
fba01dc76d
Prevent HTTP pipelining which Crow doesn't support.
2022-08-21 21:33:04 +03:00
Farook Al-Sammarraie
fde74c4d2e
Merge pull request #522 from ryanrussell/vcpkg-reference-fix
...
docs(compression): Fix `vcpkg.json` reference
2022-08-20 17:17:59 +03:00
Ryan Russell
66f1a9e948
docs(compression): Fix vcpkg.json
reference
...
Signed-off-by: Ryan Russell <git@ryanrussell.org>
2022-08-20 09:15:59 -05:00
Vladislav
df0b50ba79
Merge pull request #518 from deroskarmodulo/master
...
Fix merge_all.py to use encoding='UTF-8' in open() calls
2022-08-15 20:36:46 +03:00
Oskar Schmölz
5642509eae
add utf-8 encoding for file opening
2022-08-12 13:58:21 +02:00
Farook Al-Sammarraie
87cf68f0eb
Merge pull request #514 from erikaldsund/cpp17_filesystem_usage_fixes
...
Cpp17 filesystem usage fixes
2022-08-07 19:01:47 +03:00
erik
b12767133a
Don't use std::filesystem when compiling in C++17 mode on gcc < 8
...
On gcc < 8, filesystem had to be included as <experimental/filesystem>, it
was also living in the std::experimental namespace, and also required the user
to link against -lstdc++fs.
2022-08-06 00:59:57 +03:00
erik
99c4569408
Fix compilation error using std::filesystem::path
...
A std::filesystem::path is not implicitly convertible to a std::string.
2022-08-06 00:59:57 +03:00
Farook Al-Sammarraie
6e7f0fb8e6
Merge pull request #513 from erikaldsund/cpp11_ambiguity_fix
...
Fix compilation error: ambiguous overload
2022-08-05 18:41:01 +03:00
erik
e3f5c5924c
Fix compilation error: ambiguous overload
...
On gcc 5.3.0, you get a compilation error when assigning a lambda
function to a json::wvalue. The compilation error is due to a lambda
function being implicitly convertible to a function pointer, which again
can be implicitly converted to both a bool and a std::function. Avoid
the ambiguity by explicitly casting the lambda to a std::function.
2022-08-05 15:52:52 +02:00
Farook Al-Sammarraie
c4e810f645
Merge pull request #507 from CrowCpp/optional_static_dir_slash
...
static directory slash fix
2022-07-25 14:29:46 +03:00
Farook Al-Sammarraie
4e4dbec120
formatting
2022-07-25 13:56:54 +03:00
The-EDev
5f22a6562a
made CROW_STATIC_DIRECTORY and BP static directory more versatile (on
...
win and linux)
2022-07-25 13:56:54 +03:00
Farook Al-Sammarraie
04808b8557
Merge pull request #508 from dranikpg/middleware-macro-fix
...
Add template/typename keywords to crow macros
2022-07-24 15:45:05 +03:00
Vladislav Oleshko
34d8bd34bc
Add template keyword to CROW_MIDDLEWARES
2022-07-24 00:31:34 +03:00
Farook Al-Sammarraie
ac7fb15e7e
Merge pull request #499 from CrowCpp/early_routing
...
Find the route as soon as the URL is parsed
2022-07-22 18:13:45 +03:00
The-EDev
25eefa1711
Addressed code reviews + small tweaks (unit test and paser.done())
2022-07-22 17:17:38 +03:00
The-EDev
b986d1e38a
Find the route as soon as the URL is parsed
2022-07-22 17:17:38 +03:00
Farook Al-Sammarraie
5f49f9add8
Merge pull request #505 from dranikpg/session-fixes
...
Session fixes
2022-07-22 01:08:44 +03:00
Vladislav Oleshko
c105a86a7a
Fix struct/class divergence
2022-07-22 00:45:40 +03:00
Farook Al-Sammarraie
5f77b2bd3b
Merge pull request #503 from Phoenix-flame/patch-1
...
Fix build warnings
2022-07-21 22:14:38 +03:00
Alireza Mohammadi
8ee2a0f93d
Fix build warnings
2022-07-20 14:59:56 +04:30
Farook Al-Sammarraie
777b2dba1f
Merge pull request #501 from Iuliean/get_part_by_name_fix
...
get_part_by_name doesn't crash on nonexistent keys
2022-07-18 23:58:00 +03:00
Iulian Radu
31160579ea
Update multipart.h
...
format
2022-07-18 22:08:44 +03:00
Radu Iulian
b89d13ac3b
fixed formatting
2022-07-18 21:42:14 +03:00
Radu Iulian
a4bab45fcd
get_part_by_name doesn't crash on nonexistent keys
2022-07-18 21:03:42 +03:00
Farook Al-Sammarraie
e662a903a1
Merge pull request #448 from dranikpg/sessions
...
Sessions Middleware
2022-07-14 22:13:43 +03:00
Luca Schlecker
6128a0df11
Merge branch 'master' into sessions
2022-07-14 19:42:55 +02:00
Vladislav Oleshko
cee7f78ec8
Small fixes
2022-07-14 20:20:34 +03:00
Vladislav Oleshko
fb327f4a88
formatting
2022-07-10 14:52:31 +03:00
Vladislav Oleshko
c6255750e6
Reuse cookie parser constructor
2022-07-10 14:45:40 +03:00
Farook Al-Sammarraie
bf12e8fb58
Merge pull request #496 from CrowCpp/improve-doc
...
Added missing information and improved stylesheets for dark mode
2022-07-09 14:17:33 +03:00
The-EDev
4336df67b2
added missing information and improved stylesheets for dark mode
2022-07-09 04:31:42 +03:00
Farook Al-Sammarraie
db7f9d974e
Merge pull request #495 from aloussase/master
...
Add response constructor overload
2022-07-09 03:42:09 +03:00
Alexander Goussas
1bdcd317b7
add response constructor overload
2022-07-05 17:14:50 -05:00
Vladislav Oleshko
c9eda03a7a
Update docs
2022-07-04 12:59:33 +03:00
Vladislav
36e59f07ec
Merge branch 'master' into sessions
2022-07-04 12:54:15 +03:00
Vladislav Oleshko
dbfc425916
Add locking test
2022-07-04 12:38:28 +03:00
Vladislav Oleshko
f505c152e1
Remove custom keys
2022-07-04 12:27:25 +03:00