Jiwoo Park
f44ab9b3da
Fix range parser when parsing too many ranges ( #1812 )
...
* Implement range parser without std::regex
* Add test cases for invalid ranges
2024-04-07 10:06:16 -04:00
Andrea Pappacoda
a61f2b89be
build(meson): generate new test PEMs ( #1813 )
...
Follow-up to commits 548dfff0aef25e36e971af96b49ce7fbb72d840e and
b8bafbc29129a9f12e58032e608b51996219d6f5
2024-04-07 10:05:07 -04:00
Jiwoo Park
b8bafbc291
Generate missing PEMs for CTest ( #1811 )
...
* Generate missing PEMs
* Fix typo
* Copy files using simpler command
2024-04-05 13:50:21 -04:00
yhirose
548dfff0ae
Fix #1793
2024-03-09 22:26:17 -05:00
yhirose
9d6f5372a3
Fix #1772
2024-02-05 22:11:53 -05:00
Ikko Eltociear Ashimine
f06fd934f6
Fix typo in gtest-all.cc ( #1770 )
...
synthetic -> synthetic
2024-02-05 15:35:33 -05:00
yhirose
762024b890
Fix #1768
2024-02-02 23:17:32 -05:00
yhirose
e323374d2a
Fix #1766
2024-01-28 17:43:51 -05:00
yhirose
fceada9ef4
Changed to return 416 for a request with an invalid range
2024-01-28 08:13:19 -05:00
yhirose
420c9759c6
Fix #1694
2024-01-27 16:13:54 -05:00
Wander Nauta
4ef9ed80cd
Treat paths with embedded NUL bytes as invalid ( #1765 )
...
Fixes #1763 .
2024-01-27 08:22:00 -05:00
yhirose
eba980846b
Fix #1628 (OpenSSL 1.1.1 End of Life on September 11, 2023) ( #1745 )
2023-12-24 08:20:58 -05:00
vmaffione
374d058de7
ThreadPool: optional limit for jobs queue ( #1741 )
...
For very busy servers, the internal jobs queue where accepted
sockets are enqueued can grow without limit.
This is a problem for two reasons:
- queueing too much work causes the server to respond with huge latency,
resulting in repetead timeouts on the clients; it is definitely
better to reject the connection early, so that the client
receives the backpressure signal as soon as the queue is
becoming too large
- the jobs list can eventually cause an out of memory condition
2023-12-24 08:20:22 -05:00
Ilya Andreev
5b943d9bb8
Use StatusCode in tests and examples ( #1743 )
...
* Use StatusCode in tests and examples
* Use StatusCode in README
2023-12-20 17:28:57 -05:00
yhirose
f1dec77f46
Code format
2023-12-17 22:00:33 -05:00
yhirose
cddaedaff8
Fix #1736
2023-12-15 19:29:54 -05:00
davidalo
e426a38c3e
Fix: Query parameter including query delimiter ('?') not being parsed properly ( #1713 )
...
* Fix: Query parameter including query delimiter ('?') not being parsed properly
* Add details::split function with and without m argument to allow split parameters with/without counter
* Revert changes in SplitTest.ParseQueryString
2023-12-07 14:28:41 -05:00
yhirose
c5c704cb3b
Fix #1724
2023-12-04 21:34:55 -05:00
Jiwoo Park
f1431311a4
Minor fixes on test cases ( #1709 )
...
* Fix data race
* Replace sleep_for() to wait_until_ready()
2023-11-11 21:28:50 -05:00
Jiwoo Park
97ae6733ed
Run fuzz test in CTest ( #1707 )
2023-11-09 19:35:15 -05:00
Jiwoo Park
d0e4cb3f07
Include missing stdint.h on fuzz test ( #1700 )
...
* Include missing stdint.h
* Remove std:: from uint8_t
2023-10-29 19:26:06 -04:00
Andrea Pappacoda
20a7f088ce
build(meson): copy 1MB.txt test file ( #1695 )
...
Since tests are run in the build directory, the 1MB.txt file has to be
copied there.
2023-10-20 17:58:06 -04:00
yhirose
f63ba7d013
Fix #1685
2023-10-03 09:59:27 -04:00
PabloMK7
a609330e4c
Add optional user defined header writer ( #1683 )
...
* Add optional user defined header writer
* Fix errors and add test
2023-09-30 22:13:14 -04:00
Jiwoo Park
c029597a5a
Update the remote address of www.httpwatch.com ( #1664 )
2023-09-13 10:33:33 -04:00
yhirose
6650632e7f
Fix #1638
2023-08-22 19:36:10 -04:00
yhirose
6bb580cda8
Fix #1559
2023-07-31 00:27:26 -04:00
yhirose
2e34a39673
Added StaticFileRanges test
2023-07-31 00:22:22 -04:00
yhirose
01b90829bc
Removed unnecessary CRLF at the end of multipart ranges data
2023-07-31 00:22:22 -04:00
yhirose
ec87b04aff
Fix #1619
2023-07-29 00:53:57 -04:00
yhirose
aabf752a51
Fix #1519
2023-07-28 23:37:45 -04:00
bdenhollander
ee625232a4
Fix successful decompress reported as Error::Read ( #1612 )
...
* Fix successful decompress reported as Error::Read
Streams less than 4096 bytes are sometimes reported as failed reads because stream_.avail_in is not reduced to 0. The next iteration of the loop finds `prev_avail_in == strm_.avail_in` and return false. `ret = inflate(...)` returns Z_STREAM_END on the first iteration of the loop indicating that inflate is finished. This fix prevents the second iteration of the loop from failing.
* Fix successful decompress reported as Error::Read
- Add unit tests for raw deflate that illustrates the decompression failure when there are extra trailing bytes
2023-07-11 18:35:27 -04:00
Andrea Pappacoda
52d8dd41f1
build(meson): use C++14 with GTest >= 1.13.0 ( #1618 )
...
GoogleTest, starting with vesion 1.13.0, requires C++14 to build. This
patch enables C++14 if GoogleTest 1.13.0 or newer is detected when
compiling the tests with Meson, making it possible to use new GTest
versions.
You can find GoogleTest's release notes at
<https://github.com/google/googletest/releases/tag/v1.13.0 >.
2023-07-11 18:32:41 -04:00
bgs99
17fc522b75
Add named path parameters parsing (Implements #1587 ) ( #1608 )
...
* Add named path parameters parsing
* Select match mode based on pattern
* Add examples and comments to README
* Add documentation to matchers
2023-07-05 07:44:19 -04:00
yhirose
f1daa5b88b
Fix #1607
2023-07-04 20:27:11 -04:00
Jiwoo Park
4a61f68fa4
Don't overwrite the last redirected location ( #1589 )
...
* Don't overwrite the last redirected location
* Check the last redirected location
2023-06-16 14:56:16 -04:00
Jiwoo Park
067890133c
Use nghttp2-hosted httpbin.org ( #1586 )
...
* Use nghttp2-hosted httpbin.org
* Add CPPHTTPLIB_DEFAULT_HTTPBIN macro to choose the default httpbin.org
2023-06-15 11:12:41 -04:00
Jiwoo Park
eab5ea01d7
Load in-memory CA certificates ( #1579 )
...
* Load in-memory CA certs
* Add test cases for in-memory cert loading
* Don't use the IIFE style
2023-06-09 16:34:51 +09:00
yhirose
3409c00e6f
Fixed warnings
2023-05-27 01:10:21 +09:00
yhirose
5b397d455d
Fix more CRLF injection problems.
2023-05-22 22:56:16 +09:00
yhirose
7aba2938d3
Fix #1548
2023-04-08 15:36:13 -04:00
yhirose
d587548250
Fix #1545
2023-04-08 14:53:55 -04:00
Sergey Kazmin
e62a4b02e5
fix ( #1525 )
...
Co-authored-by: Sergey Kazmin <sergey.kazmin@kaspersky.com>
2023-04-04 07:12:15 -07:00
Jiwoo Park
3956a2b790
Fix ServerTest.ClientStop test case ( #1542 )
2023-03-30 09:50:51 -04:00
Jiwoo Park
b33aa52dc2
Fix lifetime issues in test using detail::scope_exit() ( #1535 )
...
* Fix lifetime issues in test using detail::scope_exit()
* Remove checking joinable threads
2023-03-28 00:01:34 -04:00
yhirose
76230db97f
Simplified scope_exit
2023-03-25 21:52:39 -04:00
yhirose
5f18642271
Close #1531
2023-03-20 11:47:06 -04:00
yhirose
88a9278872
Fix #1486
2023-03-11 17:04:08 -05:00
yhirose
9bb3ca8169
Fix #1459 ( #1523 )
2023-03-10 22:21:42 -05:00
Mathieu Gaillard
df74526f91
Fix multipart Content-Type headers with both boundary and charset parameters ( #1516 )
...
* Fix multipart Content-Type headers with both boundary and charset parameters
* Improve code readability
* Add missing forward declaration
---------
Co-authored-by: Mathieu Gaillard <gaillard@adobe.com>
2023-03-08 23:57:17 -05:00