[nginx] HTTP/2: skip data frames in case of internal errors.
Valentin Bartenev
vbart at nginx.com
Tue Apr 19 14:39:58 UTC 2016
details: http://hg.nginx.org/nginx/rev/9ac934dd5dd8
branches:
changeset: 6519:9ac934dd5dd8
user: Valentin Bartenev <vbart at nginx.com>
date: Tue Apr 19 17:38:49 2016 +0300
description:
HTTP/2: skip data frames in case of internal errors.
This prevents possible processing of such frames and triggering
rb->post_handler if an error occurred during r->request_body
initialization.
diffstat:
src/http/v2/ngx_http_v2.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diffs (19 lines):
diff -r 7760b54d5458 -r 9ac934dd5dd8 src/http/v2/ngx_http_v2.c
--- a/src/http/v2/ngx_http_v2.c Tue Apr 19 17:38:49 2016 +0300
+++ b/src/http/v2/ngx_http_v2.c Tue Apr 19 17:38:49 2016 +0300
@@ -3473,6 +3473,7 @@ ngx_http_v2_read_request_body(ngx_http_r
}
if (rb->buf == NULL) {
+ stream->skip_data = 1;
return NGX_HTTP_INTERNAL_SERVER_ERROR;
}
@@ -3494,6 +3495,7 @@ ngx_http_v2_read_request_body(ngx_http_r
stream->recv_window)
== NGX_ERROR)
{
+ stream->skip_data = 1;
return NGX_HTTP_INTERNAL_SERVER_ERROR;
}
}
More information about the nginx-devel
mailing list