diff options
author | Glenn Strauss <gstrauss@gluelogic.com> | 2022-03-03 20:46:33 -0500 |
---|---|---|
committer | Glenn Strauss <gstrauss@gluelogic.com> | 2022-03-03 20:46:33 -0500 |
commit | 0e404df2fb8340283bc3ec3d115bc9fa91f9b35d (patch) | |
tree | e4e911be9479e03745430e832d6900ae0d5dcee8 /src/network.c | |
parent | 1b56d7cf5bfe549bbc8683aac8dec5c751798d7d (diff) | |
download | lighttpd-git-0e404df2fb8340283bc3ec3d115bc9fa91f9b35d.tar.gz |
[core] fill in un.sun_path after accept() (fixes #3147)
(thx fstelzer)
x-ref:
"mod_proxy breaks X-Forwarded-For on requests via unix sockets"
https://redmine.lighttpd.net/issues/3147
Diffstat (limited to 'src/network.c')
-rw-r--r-- | src/network.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/network.c b/src/network.c index 6af5acf0..bb1ed2ed 100644 --- a/src/network.c +++ b/src/network.c @@ -74,6 +74,8 @@ static handler_t network_server_handle_fdevent(void *context, int revents) { if (nagle_disable) network_accept_tcp_nagle_disable(fd); + else if (addrlen <= 2) /*(AF_UNIX if !nagle_disable)*/ + memcpy(addr.un.sun_path, BUF_PTR_LEN(srv_socket->srv_token)+1); connection *con = connection_accepted(srv, srv_socket, &addr, fd); if (__builtin_expect( (!con), 0)) return HANDLER_GO_ON; |