Mercurial > hg > nginx-quic
view src/http/modules/ngx_http_quic_module.h @ 8021:b66a2a041d7e quic
QUIC: fixed ngx_http_test_reading() for QUIC streams.
Previously this function generated an error trying to figure out if client shut
down the write end of the connection. The reason for this error was that a
QUIC stream has no socket descriptor. However checking for eof is not the
right thing to do for an HTTP/3 QUIC stream since HTTP/3 clients are expected
to shut down the write end of the stream after sending the request.
Now the function handles QUIC streams separately. It checks if c->read->error
is set. The error flags for c->read and c->write are now set for all streams
when closing the QUIC connection instead of setting the pending_eof flag.
author | Roman Arutyunyan <arut@nginx.com> |
---|---|
date | Tue, 11 Aug 2020 10:41:39 +0300 |
parents | 0d2b2664b41c |
children | e0947c952d43 |
line wrap: on
line source
/* * Copyright (C) Nginx, Inc. * Copyright (C) Roman Arutyunyan */ #ifndef _NGX_HTTP_QUIC_H_INCLUDED_ #define _NGX_HTTP_QUIC_H_INCLUDED_ #include <ngx_config.h> #include <ngx_core.h> #include <ngx_http.h> #define NGX_HTTP_QUIC_ALPN(s) NGX_HTTP_QUIC_ALPN_DRAFT(s) #define NGX_HTTP_QUIC_ALPN_DRAFT(s) "\x05hq-" #s #define NGX_HTTP_QUIC_ALPN_ADVERTISE NGX_HTTP_QUIC_ALPN(NGX_QUIC_DRAFT_VERSION) extern ngx_module_t ngx_http_quic_module; #endif /* _NGX_HTTP_QUIC_H_INCLUDED_ */