[PATCH] HTTP/2: make http2 server support http1
Valentin V. Bartenev
vbart at nginx.com
Fri Mar 2 17:29:47 UTC 2018
On Friday 02 March 2018 15:53:07 Haitao Lv wrote:
> # HG changeset patch
> # User 吕海涛 <i at lvht.net>
> # Date 1519976498 -28800
> # Fri Mar 02 15:41:38 2018 +0800
> # Node ID 200955343460c4726015180f20c03e31c0b35ff6
> # Parent 81fae70d6cb81c67607931ec3ecc585a609c97e0
> make http2 server support http1
>
[..]
It doesn't look like a useful feature.
Could you please explain the use cases?
> diff -r 81fae70d6cb8 -r 200955343460 src/http/ngx_http.c
> --- a/src/http/ngx_http.c Thu Mar 01 20:25:50 2018 +0300
> +++ b/src/http/ngx_http.c Fri Mar 02 15:41:38 2018 +0800
[..]
> +void
> +ngx_http_v2_init_after_preface(ngx_event_t *rev, ngx_buf_t *buf)
> +{
> ngx_connection_t *c;
> ngx_pool_cleanup_t *cln;
> ngx_http_connection_t *hc;
> @@ -316,6 +323,12 @@
> h2c->state.handler = hc->proxy_protocol ? ngx_http_v2_state_proxy_protocol
> : ngx_http_v2_state_preface;
>
> + if (buf != NULL) {
> + ngx_memcpy(h2mcf->recv_buffer, buf->pos, buf->last - buf->pos);
> + h2c->state.buffer_used = buf->last - buf->pos;
> + h2c->state.handler = ngx_http_v2_state_head;
> + }
[..]
What if the received data is bigger than h2mcf->recv_buffer?
wbr, Valentin V. Bartenev
More information about the nginx-devel
mailing list