diff options
| author | Sergey Kandaurov <pluknet@nginx.com> | 2025-05-14 23:33:00 +0400 |
|---|---|---|
| committer | Roman Arutyunyan <arutyunyan.roman@gmail.com> | 2025-05-23 15:00:47 +0400 |
| commit | 5d7fd4a7e3025e8600bb029742a0a28bf4ca9eec (patch) | |
| tree | 52d172c1e0574b86b66a55263f49220bc287d7d6 /src/event/quic/ngx_event_quic_ssl.c | |
| parent | 7468a10b62276be4adee0fcd6aaf6244270984ab (diff) | |
| download | nginx-5d7fd4a7e3025e8600bb029742a0a28bf4ca9eec.tar.gz nginx-5d7fd4a7e3025e8600bb029742a0a28bf4ca9eec.tar.bz2 | |
QUIC: reset qc->error to zero again.
Following the previous change that removed posting a close event
in OpenSSL compat layer, now ngx_quic_close_connection() is always
called on error path with either NGX_ERROR or qc->error set.
This allows to remove a special value -1 served as a missing error,
which simplifies the code. Partially reverts d3fb12d77.
Also, this improves handling of the draining connection state, which
consists of posting a close event with NGX_OK and no qc->error set,
where it was previously converted to NGX_QUIC_ERR_INTERNAL_ERROR.
Notably, this is rather a cosmetic fix, because drained connections
do not send any packets including CONNECTION_CLOSE, and qc->error
is not otherwise used.
Diffstat (limited to '')
| -rw-r--r-- | src/event/quic/ngx_event_quic_ssl.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/event/quic/ngx_event_quic_ssl.c b/src/event/quic/ngx_event_quic_ssl.c index dd7ee3702..5b897bdb6 100644 --- a/src/event/quic/ngx_event_quic_ssl.c +++ b/src/event/quic/ngx_event_quic_ssl.c @@ -415,7 +415,7 @@ ngx_quic_crypto_input(ngx_connection_t *c, ngx_chain_t *data, ngx_log_debug1(NGX_LOG_DEBUG_EVENT, c->log, 0, "SSL_do_handshake: %d", n); - if (qc->error != (ngx_uint_t) -1) { + if (qc->error) { return NGX_ERROR; } |
