Latest update - GitHub e3a9b6a

This commit is contained in:
2024-12-28 21:49:18 +09:00
parent 86951937fd
commit aea1e5e5d6
4 changed files with 20 additions and 8 deletions
+1 -2
View File
@@ -69,8 +69,7 @@ limiting, or buffer size configurations, or applying changes is impractical.
Availability issues excluded from the security release process:
- Local file content or upstream response content resulting only in worker
process termination.
- Issues with experimental features which result only in worker process
termination.
- Issues with experimental features which result only in availability impact.
## Trusted Configurations and Misconfigurations
+1 -1
View File
@@ -1029,7 +1029,7 @@ ngx_quic_handle_payload(ngx_connection_t *c, ngx_quic_header_t *pkt)
* After receiving a 1-RTT packet, servers MUST discard
* 0-RTT keys within a short time
*/
ngx_quic_discard_ctx(c, ssl_encryption_early_data);
ngx_quic_keys_discard(qc->keys, ssl_encryption_early_data);
}
if (qc->closing) {
+13 -5
View File
@@ -174,7 +174,7 @@ ngx_int_t
ngx_quic_close_streams(ngx_connection_t *c, ngx_quic_connection_t *qc)
{
ngx_pool_t *pool;
ngx_queue_t *q;
ngx_queue_t *q, posted_events;
ngx_rbtree_t *tree;
ngx_connection_t *sc;
ngx_rbtree_node_t *node;
@@ -197,6 +197,8 @@ ngx_quic_close_streams(ngx_connection_t *c, ngx_quic_connection_t *qc)
return NGX_OK;
}
ngx_queue_init(&posted_events);
node = ngx_rbtree_min(tree->root, tree->sentinel);
while (node) {
@@ -213,15 +215,21 @@ ngx_quic_close_streams(ngx_connection_t *c, ngx_quic_connection_t *qc)
}
sc->read->error = 1;
sc->read->ready = 1;
sc->write->error = 1;
ngx_quic_set_event(sc->read);
ngx_quic_set_event(sc->write);
sc->write->ready = 1;
sc->close = 1;
sc->read->handler(sc->read);
if (sc->read->posted) {
ngx_delete_posted_event(sc->read);
}
ngx_post_event(sc->read, &posted_events);
}
ngx_event_process_posted((ngx_cycle_t *) ngx_cycle, &posted_events);
if (tree->root == tree->sentinel) {
return NGX_OK;
}
@@ -295,6 +295,11 @@ ngx_quic_parse_packet(ngx_quic_header_t *pkt)
return NGX_ERROR;
}
if (pkt->version == 0) {
/* version negotiation */
return NGX_ERROR;
}
if (!ngx_quic_supported_version(pkt->version)) {
return NGX_ABORT;
}