diff options
author | Maxim Dounin <mdounin@mdounin.ru> | 2018-03-17 23:04:25 +0300 |
---|---|---|
committer | Maxim Dounin <mdounin@mdounin.ru> | 2018-03-17 23:04:25 +0300 |
commit | 6a0d9e5b2d9274e5ac5059a674763f19c2731b11 (patch) | |
tree | 0ac81283fdacc0546598b4f47eae3bd99adfe82c /src/http/ngx_http_request.h | |
parent | 56ad960e7a3d4cf16c03ff231616a76c4834e548 (diff) | |
download | nginx-6a0d9e5b2d9274e5ac5059a674763f19c2731b11.tar.gz nginx-6a0d9e5b2d9274e5ac5059a674763f19c2731b11.zip |
gRPC: special handling of the TE request header.
According to the gRPC protocol specification, the "TE" header is used
to detect incompatible proxies, and at least grpc-c server rejects
requests without "TE: trailers".
To preserve the logic, we have to pass "TE: trailers" to the backend if
and only if the original request contains "trailers" in the "TE" header.
Note that no other TE values are allowed in HTTP/2, so we have to remove
anything else.
Diffstat (limited to 'src/http/ngx_http_request.h')
-rw-r--r-- | src/http/ngx_http_request.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/http/ngx_http_request.h b/src/http/ngx_http_request.h index 5d44c06ef..39baa0f0c 100644 --- a/src/http/ngx_http_request.h +++ b/src/http/ngx_http_request.h @@ -197,6 +197,7 @@ typedef struct { ngx_table_elt_t *if_range; ngx_table_elt_t *transfer_encoding; + ngx_table_elt_t *te; ngx_table_elt_t *expect; ngx_table_elt_t *upgrade; |