summaryrefslogtreecommitdiffhomepage
path: root/src/http/v2/ngx_http_v2.h
diff options
context:
space:
mode:
authorValentin Bartenev <vbart@nginx.com>2016-04-14 15:14:15 +0300
committerValentin Bartenev <vbart@nginx.com>2016-04-14 15:14:15 +0300
commit536b5510d1051281bd9411723102333e6d1dbdf2 (patch)
treea3292229ad04618bdb63780f6960b25b580e3eb4 /src/http/v2/ngx_http_v2.h
parent60f0960ab6cb35a6fffc57f32c311c93c28181af (diff)
downloadnginx-536b5510d1051281bd9411723102333e6d1dbdf2.tar.gz
nginx-536b5510d1051281bd9411723102333e6d1dbdf2.tar.bz2
HTTP/2: refuse streams with data until SETTINGS is acknowledged.
A client is allowed to send requests before receiving and acknowledging the SETTINGS frame. Such a client having a wrong idea about the stream's could send the request body that nginx isn't ready to process. The previous behavior was to send RST_STREAM with FLOW_CONTROL_ERROR in such case, but it didn't allow retrying requests that have been rejected.
Diffstat (limited to 'src/http/v2/ngx_http_v2.h')
-rw-r--r--src/http/v2/ngx_http_v2.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/http/v2/ngx_http_v2.h b/src/http/v2/ngx_http_v2.h
index 7a77c27b3..1adf8deb9 100644
--- a/src/http/v2/ngx_http_v2.h
+++ b/src/http/v2/ngx_http_v2.h
@@ -141,6 +141,7 @@ struct ngx_http_v2_connection_s {
ngx_uint_t last_sid;
unsigned closed_nodes:8;
+ unsigned settings_ack:1;
unsigned blocked:1;
};