StefanoPetrilli
a62956b61a
split the different responsibilities of validate into different functions
2024-03-10 13:11:56 +01:00
Gulliver
976df9586a
utility.h fixes
2023-06-14 08:46:40 +02: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
Vladislav Oleshko
cee7f78ec8
Small fixes
2022-07-14 20:20:34 +03:00
Vladislav Oleshko
6b6eb5eb0b
Merge branch 'master' into sessions
2022-06-22 15:21:34 +03:00
Vladislav Oleshko
29c657df8f
Add session id preset, remove boost filesystem, small fixes
2022-06-21 15:38:22 +03: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
9f98a66cd1
utility: improve string_equals function.
...
Return early if inequality is found.
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
982e62eabf
utility: add string trimming function.
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
f3dba60efd
utility: add string_equals function.
...
It serves as a replacement for boost::iequals.
2022-06-18 17:21:37 +03: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
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
Vladislav
4d4d0094fe
Merge branch 'master' into blueprint-middleware
2022-05-07 23:03:35 +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
3b9e522523
Blueprint middleware prototype
2022-04-11 16:01:27 +03:00
The-EDev
a3c1af4b29
updated documentation in mkdocs and doxygen
2022-03-24 01:55:46 +03:00
Farook Al-Sammarraie
9db0e3b8fe
Merge branch 'master' into parser_optimization
2022-02-15 15:56:48 +03:00
Farook Al-Sammarraie
1c98bbb860
Merge branch 'master' into local-middleware
2022-02-14 22:17:19 +03:00
Vladislav Oleshko
b9dded57e8
Remove is_callable impl
2022-02-13 14:35:11 +03:00
The-EDev
4e2074dcb5
ran clang-format
2022-02-11 01:04:32 +03:00
The-EDev
9a7677bf1a
Applied changes from review
...
Also moved builtin_expect to utility.h (for use in sanitizer function)
2022-02-11 00:56:30 +03:00
The-EDev
dcd2b0c318
format
2022-02-08 19:22:09 +03:00
The-EDev
155cf759eb
fixed issue where absolute unix paths were not sanitized
2022-02-08 19:11:46 +03:00
Vladislav Oleshko
69e9ad9c1e
Run clang format
2022-02-01 23:21:07 +03:00
Vladislav Oleshko
e60714c0b2
Separate middleware for handlers
2022-02-01 22:49:41 +03:00
Thomas Neumann
74e5fa8c87
improve sanitize_filename
...
The old implementation allocated a new string for every invocation, and
repeatedly scanned the string for occurences of the various Windows device
names. This commits resizes the original string instead if needed, and
detects all devices with a single pass.
2022-01-24 08:08:20 +01:00
Thomas Neumann
15085a9f95
avoid memory allocation in base64decode
...
Every single call to base64decode allocates a mapping table for all
base64 characters. This is quite wasteful, as the map is in fact static.
We could use a static variable here, but that would have unpleasant consequences
if we ever encounter input with non-valid base64 characters (which
implicitly modifies the map).
The number of character ranges for base64 is quite low (3, plus 4 exceptions),
thus we can simply check that explicitly in code instead of using a dynamic hash table.
2022-01-24 07:24:34 +01:00
The-EDev
e688cbd18e
Fixed another vulnerability in mustache file loading
...
and made the file sanitizer a copy-less function
2022-01-11 21:48:51 +03:00
The-EDev
0a16021442
Fix vulnrabilities in mustache and static
2022-01-11 20:27:41 +03:00
The-EDev
03e59aa446
improved bracing rules, commented out clang-format 14 rule
2021-11-27 15:28:50 +03:00
The-EDev
7f4b7c8ff9
created new rules, used bot to enforce rules in PRs
2021-11-25 14:45:38 +03:00
The-EDev
576f90a0e4
Added Base64 decoder function and Base 64 unit tests
2021-10-31 02:50:19 +03:00
Sfinktah Bungholio
6597feb3a8
converted all (int) to static_cast
2021-02-21 11:14:30 +11:00
The-EDev
2422f55855
documented as much as possible relating to the API reference
2020-11-19 01:13:57 +03:00
ipknHama
3081e4e1a8
Cleanup include folder into crow subfolder
...
- only crow.h is exposed now
2016-09-21 23:11:06 +09:00