diff options
Diffstat (limited to 'src/http/v2/ngx_http_v2.h')
| -rw-r--r-- | src/http/v2/ngx_http_v2.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/http/v2/ngx_http_v2.h b/src/http/v2/ngx_http_v2.h index 3926e653b..d4a64a724 100644 --- a/src/http/v2/ngx_http_v2.h +++ b/src/http/v2/ngx_http_v2.h @@ -24,6 +24,8 @@ #define NGX_HTTP_V2_MAX_FIELD \ (127 + (1 << (NGX_HTTP_V2_INT_OCTETS - 1) * 7) - 1) +#define NGX_HTTP_V2_STREAM_ID_SIZE 4 + #define NGX_HTTP_V2_FRAME_HEADER_SIZE 9 /* frame types */ @@ -118,6 +120,9 @@ struct ngx_http_v2_connection_s { ngx_uint_t processing; + ngx_uint_t pushing; + ngx_uint_t concurrent_pushes; + size_t send_window; size_t recv_window; size_t init_window; @@ -143,12 +148,14 @@ struct ngx_http_v2_connection_s { ngx_queue_t closed; ngx_uint_t last_sid; + ngx_uint_t last_push; unsigned closed_nodes:8; unsigned settings_ack:1; unsigned table_update:1; unsigned blocked:1; unsigned goaway:1; + unsigned push_disabled:1; }; @@ -276,6 +283,10 @@ void ngx_http_v2_init(ngx_event_t *rev); ngx_int_t ngx_http_v2_read_request_body(ngx_http_request_t *r); ngx_int_t ngx_http_v2_read_unbuffered_request_body(ngx_http_request_t *r); +ngx_int_t ngx_http_v2_push_stream(ngx_http_v2_connection_t *h2c, + ngx_uint_t depend, size_t request_length, ngx_str_t *path, + ngx_str_t *authority); + void ngx_http_v2_close_stream(ngx_http_v2_stream_t *stream, ngx_int_t rc); ngx_int_t ngx_http_v2_send_output_queue(ngx_http_v2_connection_t *h2c); |
