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
|
@ -22,6 +22,8 @@
|
|||
#include "lsquic_conn.h"
|
||||
#include "lsquic_stream.h"
|
||||
#include "lsquic_types.h"
|
||||
#include "lsquic_rtt.h"
|
||||
#include "lsquic_conn_public.h"
|
||||
#include "lsquic_spi.h"
|
||||
#include "lsquic_logger.h"
|
||||
|
||||
|
@ -33,6 +35,8 @@ static struct stream_prio_iter spi;
|
|||
|
||||
static struct lsquic_conn lconn = LSCONN_INITIALIZER_CIDLEN(lconn, 0);
|
||||
|
||||
static struct lsquic_conn_public conn_pub = { .lconn = &lconn, };
|
||||
|
||||
|
||||
static lsquic_stream_t *
|
||||
new_stream (unsigned priority)
|
||||
|
@ -73,7 +77,7 @@ test_same_priority (unsigned priority)
|
|||
lsquic_spi_init(&spi, TAILQ_FIRST(&streams),
|
||||
TAILQ_LAST(&streams, lsquic_streams_tailq),
|
||||
(uintptr_t) &TAILQ_NEXT((lsquic_stream_t *) NULL, next_write_stream),
|
||||
&lconn, __func__, NULL, NULL);
|
||||
&conn_pub, __func__, NULL, NULL);
|
||||
|
||||
stream = lsquic_spi_first(&spi);
|
||||
assert(stream == stream_arr[0]);
|
||||
|
@ -89,7 +93,7 @@ test_same_priority (unsigned priority)
|
|||
/* Test reinitialization: */
|
||||
lsquic_spi_init(&spi, stream_arr[0], stream_arr[1],
|
||||
(uintptr_t) &TAILQ_NEXT((lsquic_stream_t *) NULL, next_write_stream),
|
||||
&lconn, __func__, NULL, NULL);
|
||||
&conn_pub, __func__, NULL, NULL);
|
||||
stream = lsquic_spi_first(&spi);
|
||||
assert(stream == stream_arr[0]);
|
||||
stream = lsquic_spi_next(&spi);
|
||||
|
@ -121,7 +125,7 @@ test_different_priorities (int *priority)
|
|||
lsquic_spi_init(&spi, TAILQ_FIRST(&streams),
|
||||
TAILQ_LAST(&streams, lsquic_streams_tailq),
|
||||
(uintptr_t) &TAILQ_NEXT((lsquic_stream_t *) NULL, next_send_stream),
|
||||
&lconn, __func__, NULL, NULL);
|
||||
&conn_pub, __func__, NULL, NULL);
|
||||
for (prev_prio = -1, count = 0, stream = lsquic_spi_first(&spi); stream;
|
||||
stream = lsquic_spi_next(&spi), ++count)
|
||||
{
|
||||
|
@ -214,7 +218,7 @@ test_drop (const struct drop_test *test)
|
|||
lsquic_spi_init(&spi, TAILQ_FIRST(&streams),
|
||||
TAILQ_LAST(&streams, lsquic_streams_tailq),
|
||||
(uintptr_t) &TAILQ_NEXT((lsquic_stream_t *) NULL, next_write_stream),
|
||||
&lconn, __func__, NULL, NULL);
|
||||
&conn_pub, __func__, NULL, NULL);
|
||||
|
||||
if (drop_high)
|
||||
lsquic_spi_drop_high(&spi);
|
||||
|
@ -275,7 +279,7 @@ test_different_priorities_filter_odd (int *priority)
|
|||
lsquic_spi_init(&spi, TAILQ_FIRST(&streams),
|
||||
TAILQ_LAST(&streams, lsquic_streams_tailq),
|
||||
(uintptr_t) &TAILQ_NEXT((lsquic_stream_t *) NULL, next_send_stream),
|
||||
&lconn, __func__, filter_out_odd_priorities, &my_filter_ctx);
|
||||
&conn_pub, __func__, filter_out_odd_priorities, &my_filter_ctx);
|
||||
|
||||
for (prev_prio = -1, count = 0, stream = lsquic_spi_first(&spi); stream;
|
||||
stream = lsquic_spi_next(&spi), ++count)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue