]> git.kaiwu.me - nginx.git/commitdiff
HTTP/3: trigger 400 (Bad Request) on stream error while blocked.
authorRoman Arutyunyan <arut@nginx.com>
Thu, 5 Jan 2023 14:15:46 +0000 (18:15 +0400)
committerRoman Arutyunyan <arut@nginx.com>
Thu, 5 Jan 2023 14:15:46 +0000 (18:15 +0400)
Previously, stream was closed with NGX_HTTP_CLOSE.  However, in a similar case
when recv() returns eof or error, status 400 is triggered.

src/http/v3/ngx_http_v3_request.c

index 8a5aeeb142a62e58a150089aaa19a307dd85235c..e8b84eabd7a909d5d90df90df338eddfdc326de4 100644 (file)
@@ -551,7 +551,7 @@ ngx_http_v3_process_request(ngx_event_t *rev)
 
         if (rc == NGX_BUSY) {
             if (rev->error) {
-                ngx_http_close_request(r, NGX_HTTP_CLOSE);
+                ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST);
                 break;
             }