Chocobo1
47439a7efd
Use reference when parsing URL query
...
PR #19659 .
2023-09-30 11:42:35 +08:00
Chocobo1
529e49aea7
Fix performance regression
...
Follow up #19417 .
PR #19652 .
2023-09-28 01:26:57 +08:00
Vladimir Golovnev
46c1c9de65
Fix memory leaks
...
* Fixes a couple of memory leaks (although not dangerous in practice, since we are talking about objects with a lifetime up to the end of the application)
* Fixes heap use after free
PR #19650 .
Closes #19632 .
2023-09-27 08:00:20 +03:00
Victor Chernyakin
65930ddf94
Use std::pair
instead of QPair
...
PR #19548 .
2023-09-03 09:39:34 +03:00
Vladimir Golovnev
33d767b765
Disable using Qt functions deprecated up to Qt 6.5
...
* Disable using Qt functions deprecated up to Qt 6.5
* Utilize QSet::removeIf()
PR #19419 .
2023-08-08 08:52:13 +03:00
Vladimir Golovnev
06581636a1
Utilize QByteArrayView
...
PR #19417 .
2023-08-07 11:21:32 +03:00
Chocobo1
e31c3376bd
Use library provided erase_if()
...
`Algorithm::removeIf()` is still valuable as `QHash::removeIf()` predicate require an
iterator or a `std::pair`, which both require more code to unpack the variable and therefore
cumbersome to use.
PR #19353 .
2023-07-24 20:29:02 +08:00
Vladimir Golovnev
10ee1ab7a2
Switch to C++20
...
PR #19336 .
2023-07-21 15:38:49 +03:00
Chocobo1
543745b3f2
Avoid stuffing the log via junk requests
2023-07-09 21:23:09 +08:00
Chocobo1
cb0c09769f
Response proper error status for invalid request methods
2023-07-09 21:23:09 +08:00
Chocobo1
e8f5a3b44e
Fix response for HTTP HEAD method
...
Closes #19288 .
2023-07-09 21:23:08 +08:00
Chocobo1
b3d2ba7d07
Initialize regex only once
...
This code path is commonly used so let it initialize only once.
2023-06-23 14:49:22 +08:00
Chocobo1
03d3552ee0
Avoid unnecessary memory allocation/relocation
2023-06-23 14:49:22 +08:00
Chocobo1
e6d85a468b
Rename literal operator
...
Qt 6.4 introduced `QString operator""_s()` and the previous `""_qs` is
deprecated since Qt 6.8.
2023-06-18 03:32:44 +08:00
Chocobo1
f6b58f36e2
WebUI: set Cross Origin Opener Policy to same-origin
...
This separates browsing context for different origin sites and prevents
leaking data from it.
This header is only present when using built-in WebUI. Alternative WebUI
is not affected.
https://web.dev/why-coop-coep/#coop
PR #19157 .
2023-06-14 13:38:48 +08:00
Chocobo1
73134d5f4d
Initialize member variables
2023-05-07 16:30:56 +08:00
Chocobo1
8219b1f695
Use default constructor, destructor
2023-05-06 16:35:12 +08:00
sledgehammer999
b2213ded6d
Support TLS 1.2+ only in the server
...
Closes #18122
2023-02-06 10:32:01 +02:00
sledgehammer999
1ea2fe5b8d
Blacklist bad ciphers for TLS in the server
...
Prevents the ROBOT attack.
Closes #18483
2023-02-06 10:32:01 +02:00
Chocobo1
dba711d099
Use helper function for logging messages
2022-07-07 12:17:52 +08:00
Chocobo1
02d906d3ae
Initialize pointer to a default value
2022-06-23 21:31:16 +08:00
Chocobo1
6de72ecc77
Make use of chrono literals from std library
2022-06-23 21:31:16 +08:00
Chocobo1
4ca6de2b54
Revise string literal usage
...
PR #16703 .
2022-03-26 11:53:50 +08:00
Chocobo1
802ec5a14e
Use QString literals
...
This patch covers src/gui and some leftovers from previous commit.
2022-03-18 12:46:01 +08:00
Chocobo1
8de966ea88
Merge pull request #16585 from Chocobo1/qstring
...
Use QString literals
2022-03-12 12:49:08 +08:00
Aleksandr Cupacenko
1b53c590f2
Allow blank lines in multipart form-data input
...
Fixes #11298 .
PR #16579 .
2022-03-11 13:40:22 +08:00
Chocobo1
f0dd7b7dae
Use QString literals
...
This patch covers src/app and src/base folders.
Follow up of ab64ee872bd76b9fe27a1814550cab386e20a0d5.
2022-03-11 00:11:30 +08:00
Chocobo1
ab64ee872b
Use QString literals
...
The plan is to define `QT_NO_CAST_FROM_ASCII` eventually.
PR #16561 .
2022-03-04 13:25:22 +08:00
Chocobo1
aedd997604
Don't expire connection when there are data in buffer
...
For writing, this ensures expire handler won't be executed in a small
time window, that is after `m_socket->write()` and before
`QIODevice::bytesWritten()` signal.
For reading, this let the socket to have the chance to process the
received data instead of dropping it.
PR #15849 .
2021-12-18 12:28:30 +08:00
Chocobo1
ad9d0608d4
Avoid needless string-bytes conversion
...
This saves a few microseconds.
2021-12-14 13:52:34 +08:00
Chocobo1
3c5688c6f6
Reserve enough buffer space according to response content size
2021-12-14 13:52:34 +08:00
Chocobo1
ece92a886a
Restart idle timer on sending network response
2021-12-14 13:52:33 +08:00
Chocobo1
d78b2a569f
Fix handling when Content-Length field is absent
...
Closes #15754 .
PR #15757 .
2021-11-21 11:48:49 +08:00
Vladimir Golovnev (Glassez)
399d3ad85a
Replace QStringRef with QStringView
2021-07-15 10:56:49 +03:00
Chocobo1
70d1cb86fd
Disable move constructor where it is sensible
2021-06-29 14:49:45 +08:00
HiFiPhile
f5315d9ba7
Add WebUI reverse proxy source IP resolution ( #15047 )
...
Co-authored-by: qix67
Co-authored-by: HiFiPhile <admin@hifiphile.com>
2021-06-23 09:01:36 +03:00
Vladimir Golovnev (Glassez)
97c7f3bc67
Raise minimum Qt version to 5.14
2021-06-03 08:56:41 +03:00
Chocobo1
e21f46d824
Avoid data duplication
2021-05-21 14:38:06 +08:00
FranciscoPombal
6152b83405
Use #pragma once instead of include guards
2020-12-12 19:41:32 +00:00
Vladimir Golovnev (Glassez)
c41df9ffbd
Improve coding style
2020-11-17 21:02:37 +03:00
FranciscoPombal
4bdf9eda41
Fix extra/missing trailing new lines in files
2020-10-28 14:20:18 +00:00
Andrei Stepanov
04306a544f
Fix typo in connection.cpp
...
limiation -> limitation
2020-10-20 11:10:51 +04:00
Chocobo1
2f1016494b
Specify UTF-8 charset when forming data from plain text
...
This suppresses a browser warning about unspecified character encoding
of an HTTP response.
2020-09-08 14:30:55 +08:00
FranciscoPombal
0fa7fca31e
Fix truncation when parsing HTTP request query
...
Closes #13029 .
Fixes an issue with truncation of a QByteArray at the first '\0' byte
when parsing HTTP request query strings.
Previously, the operands of the ternary expression were of
different types. Most likely this was leading to a conversion
of the result to some kind of '\0'-terminated string type somewhere
along the way, in turn causing its truncation at the first '\0' byte
once converted back to QByteArray.
For some reason this bug was only present on Windows (MSVC).
2020-06-23 11:45:30 +01:00
Chocobo1
be152f45c9
Define and use Http::HeaderMap type
2020-05-11 00:34:28 +08:00
Chocobo1
d57b9be706
Rename function
2020-05-10 02:53:32 +08:00
Chocobo1
74a2168bc1
Define and use a proper HTTP header structure
2020-05-10 02:53:11 +08:00
Chocobo1
6d167e9a28
Remove const from class variables
...
It prohibits copy construction, copy assignment and move semantics.
2020-04-29 21:32:34 +08:00
Chocobo1
d3d3f7dbb3
Add final specifier to classes
...
This allow compilers to generate more efficient code.
2020-04-17 13:18:40 +08:00
Chocobo1
7de8a4d6e0
Construct QString more efficiently
2020-03-25 12:00:11 +08:00