comparison src/event/quic/ngx_event_quic_frames.c @ 9010:a5aebd51e4c7 quic

QUIC: stream lingering. Now ngx_quic_stream_t is decoupled from ngx_connection_t in a way that it can persist after connection is closed by application. During this period, server is expecting stream final size from client for correct flow control. Also, buffered output is sent to client as more flow control credit is granted.
author Roman Arutyunyan <arut@nginx.com>
date Sat, 05 Feb 2022 12:54:54 +0300
parents 740e8b99519d
children f9c788f3f5cc
comparison
equal deleted inserted replaced
9009:e5f16d886c97 9010:a5aebd51e4c7
389 f->data = ngx_quic_read_chain(c, &nf->data, of->length); 389 f->data = ngx_quic_read_chain(c, &nf->data, of->length);
390 if (f->data == NGX_CHAIN_ERROR) { 390 if (f->data == NGX_CHAIN_ERROR) {
391 return NGX_ERROR; 391 return NGX_ERROR;
392 } 392 }
393 393
394 if (f->type == NGX_QUIC_FT_STREAM) {
395 f->u.stream.fin = 0;
396 }
397
394 ngx_queue_insert_after(&f->queue, &nf->queue); 398 ngx_queue_insert_after(&f->queue, &nf->queue);
395 399
396 return NGX_OK; 400 return NGX_OK;
397 } 401 }
398 402