Latest update - GitHub e3a9b6a
This commit is contained in:
+1
-2
@@ -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
|
||||
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user