summaryrefslogtreecommitdiff
path: root/recipes-core/lighttpd/lighttpd/0004_fastcgi_env_with_unixsocket.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/lighttpd/lighttpd/0004_fastcgi_env_with_unixsocket.patch')
-rw-r--r--recipes-core/lighttpd/lighttpd/0004_fastcgi_env_with_unixsocket.patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/recipes-core/lighttpd/lighttpd/0004_fastcgi_env_with_unixsocket.patch b/recipes-core/lighttpd/lighttpd/0004_fastcgi_env_with_unixsocket.patch
new file mode 100644
index 0000000..c265066
--- /dev/null
+++ b/recipes-core/lighttpd/lighttpd/0004_fastcgi_env_with_unixsocket.patch
@@ -0,0 +1,57 @@
+From bdfb7f9c6ab29d2de3576f8bd845fa871bb44ead Mon Sep 17 00:00:00 2001
+From: Serhii Voloshynov <serhii.voloshynov@globallogic.com>
+Date: Tue, 6 Nov 2018 13:50:04 +0200
+Subject: [PATCH] patch
+
+---
+ src/http-header-glue.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+diff --git a/src/http-header-glue.c b/src/http-header-glue.c
+index 1916ca6..d4f42ad 100644
+--- a/src/http-header-glue.c
++++ b/src/http-header-glue.c
+@@ -1457,6 +1457,8 @@ int http_cgi_headers (server *srv, connection *con, http_cgi_opts *opts, http_cg
+ rc |= cb(vdata, CONST_STR_LEN("HTTPS"), CONST_STR_LEN("on"));
+ }
+
++ if (srv_sock->addr.plain.sa_family != AF_UNIX) {
++
+ addr = &srv_sock->addr;
+ li_utostrn(buf, sizeof(buf), sock_addr_get_port(addr));
+ rc |= cb(vdata, CONST_STR_LEN("SERVER_PORT"), buf, strlen(buf));
+@@ -1482,6 +1484,7 @@ int http_cgi_headers (server *srv, connection *con, http_cgi_opts *opts, http_cg
+ }
+ force_assert(s);
+ rc |= cb(vdata, CONST_STR_LEN("SERVER_ADDR"), s, strlen(s));
++ }
+
+ if (!buffer_string_is_empty(con->server_name)) {
+ size_t len = buffer_string_length(con->server_name);
+@@ -1497,15 +1500,23 @@ int http_cgi_headers (server *srv, connection *con, http_cgi_opts *opts, http_cg
+ rc |= cb(vdata, CONST_STR_LEN("SERVER_NAME"),
+ con->server_name->ptr, len);
+ } else {
++ if (srv_sock->addr.plain.sa_family != AF_UNIX) {
+ /* set to be same as SERVER_ADDR (above) */
+ rc |= cb(vdata, CONST_STR_LEN("SERVER_NAME"), s, strlen(s));
+ }
++ }
++ if (srv_sock->addr.plain.sa_family == AF_UNIX) {
++ rc |= cb(vdata, CONST_STR_LEN("SERVER_IPC"), CONST_STR_LEN("yes"));
++ }
++
++ if (srv_sock->addr.plain.sa_family != AF_UNIX) {
+
+ rc |= cb(vdata, CONST_STR_LEN("REMOTE_ADDR"),
+ CONST_BUF_LEN(con->dst_addr_buf));
+
+ li_utostrn(buf, sizeof(buf), sock_addr_get_port(&con->dst_addr));
+ rc |= cb(vdata, CONST_STR_LEN("REMOTE_PORT"), buf, strlen(buf));
++ }
+
+ for (n = 0; n < con->request.headers->used; n++) {
+ data_string *ds = (data_string *)con->request.headers->data[n];
+--
+2.7.4
+