mirror of
https://gitea.invidious.io/iv-org/litespeed-quic.git
synced 2024-08-15 00:53:43 +00:00
Release 2.22.0
- [FEATURE] Extensible HTTP Priorities (HTTP/3 only). - [FEATURE] Add conn context to packet-out memory interface (PR #175). - [BUGFIX] gQUIC proof generation: allocate buffer big enough for signature (issue #173). - [BUGFIX] Make library thread-safe: drop use of global variables (issue #133, issue #167). - [BUGFIX] Deactivate only *recent* HQ frame, not any HQ frame. - [BUGFIX] gQUIC server: associate compressed cert with SSL_CTX, instead of keeping them in a separate hash, potentially leading to mismatches. - [BUGFIX] Stream data discard infinite loop: break on FIN. - cmake: add install target via -DCMAKE_INSTALL_PREFIX (PR #171). - Support randomized packet number to begin a connection. - Mini and full IETF connection size optimization. - http_client: specify HTTP priorities based on stream conditions.
This commit is contained in:
parent
cb1e8c1022
commit
fbc6cc0413
55 changed files with 6557 additions and 391 deletions
|
@ -1151,6 +1151,17 @@ fuzz_guided_pwritev_testing (const char *input)
|
|||
}
|
||||
|
||||
|
||||
static unsigned
|
||||
count_hq_frames (const struct lsquic_stream *stream)
|
||||
{
|
||||
const struct stream_hq_frame *shf;
|
||||
unsigned n_frames = 0;
|
||||
STAILQ_FOREACH(shf, &stream->sm_hq_frames, shf_next)
|
||||
++n_frames;
|
||||
return n_frames;
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
test_frame_header_split (unsigned n_packets, unsigned extra_sz,
|
||||
int add_one_more)
|
||||
|
@ -1162,6 +1173,7 @@ test_frame_header_split (unsigned n_packets, unsigned extra_sz,
|
|||
unsigned char *buf_in, *buf_out;
|
||||
const unsigned wsize = 70;
|
||||
const size_t buf_in_sz = wsize, buf_out_sz = 0x500000;
|
||||
unsigned n_frames;
|
||||
|
||||
struct lsxpack_header header = { XHDR(":method", "GET") };
|
||||
struct lsquic_http_headers headers = { 1, &header, };
|
||||
|
@ -1210,7 +1222,12 @@ test_frame_header_split (unsigned n_packets, unsigned extra_sz,
|
|||
|
||||
const ssize_t w = lsquic_stream_write(stream, buf_in, buf_in_sz);
|
||||
assert(w >= 0 && (size_t) w == buf_in_sz);
|
||||
n_frames = count_hq_frames(stream);
|
||||
assert(n_frames == 1 + (w > 0));
|
||||
|
||||
lsquic_stream_flush(stream);
|
||||
n_frames = count_hq_frames(stream);
|
||||
assert(n_frames == !!stream->sm_n_buffered);
|
||||
|
||||
if (add_one_more)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue