diff options
author | Glenn Strauss <gstrauss@gluelogic.com> | 2023-02-26 05:17:41 -0500 |
---|---|---|
committer | Glenn Strauss <gstrauss@gluelogic.com> | 2023-02-28 00:12:48 -0500 |
commit | 3a8fc4bc9c1d3c36fba75abf499103f028ebea13 (patch) | |
tree | 90252342463d34bbd396a88f23c94004211abd75 /src/request.h | |
parent | 02dce5e254ba44b70e1be819f3305255535333be (diff) | |
download | lighttpd-git-3a8fc4bc9c1d3c36fba75abf499103f028ebea13.tar.gz |
[multiple] store ptrs to remote addr in request_st (#3192)
adds two pointers to (request_st *) (cost: 16 bytes in 64-bit builds)
prepares for upcoming changes to mod_extforward to manage remote addr
per request for HTTP/2 requests, rather than remote addr per connection.
Modern load balancers often provide options to reuse connections for
*different* clients, and therefore mod_extforward might change the
remote addr per request.
x-ref:
"RFE: mod_extforward and multiplexed requests via HTTP/2"
https://redmine.lighttpd.net/issues/3192
"Evaluation of remote_addr for mod_maxminddb for multiplexed connections"
https://redmine.lighttpd.net/issues/3191
Diffstat (limited to 'src/request.h')
-rw-r--r-- | src/request.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/request.h b/src/request.h index e1098b46..c382553c 100644 --- a/src/request.h +++ b/src/request.h @@ -166,6 +166,9 @@ struct request_st { buffer pathinfo; buffer server_name_buf; + void *dst_addr; + buffer *dst_addr_buf; + /* response */ uint32_t resp_header_len; uint64_t resp_htags; /*bitfield of flagged headers present in response*/ |