summaryrefslogtreecommitdiff
path: root/src/response.h
diff options
context:
space:
mode:
authorGlenn Strauss <gstrauss@gluelogic.com>2017-07-14 01:29:18 -0400
committerGlenn Strauss <gstrauss@gluelogic.com>2017-07-23 19:02:00 -0400
commit45b970e69b144c7eaa5508fbb55728cb7c731caf (patch)
treeea5f83a2c4f56910402a2e54fd1a62f721af0fb7 /src/response.h
parent81b8fffd311355cb65ab335c760d2e63471eb782 (diff)
downloadlighttpd-git-45b970e69b144c7eaa5508fbb55728cb7c731caf.tar.gz
[core] shared code for socket backends
common codebase for socket backends, based off mod_fastcgi with some features added for mod_proxy (mostly intended to reduce code duplication and enhance code isolation) mod_fastcgi and mod_scgi can now use fastcgi.balance and scgi.balance for similar behavior as proxy.balance, but the balancing is per-host and not per-proc. proxy.balance is also per-host and not per-proc. mod_proxy and mod_scgi can now use proxy.map-extensions and scgi.map-extensions, similar to fastcgi.map-extensions. mod_fastcgi behavior change (affects only mod_status): - statistics tags have been renamed from "fastcgi.*" to "gw.*" "fastcgi.backend.*" -> "gw.backend.*" "fastcgi.active-requests" -> "gw.active-requests" ("fastcgi.requests" remains "fastcgi.requests") ("proxy.requests" is new) ("scgi.requests" is new) mod_scgi behavior change (likely minor): - removed scgi_proclist_sort_down() and scgi_proclist_sort_up(). procs now chosen based on load as measured by num socket connnections Note: modules using gw_backend.[ch] are currently still independent modules. If it had been written as a single module with fastcgi, scgi, proxy implementations, then there would have been a chance of breaking some existing user configurations where module ordering made a difference for which module handled a given request, though for most people, this would have made no difference. Details about mod_fastcgi code transformations: unsigned int debug -> int debug fastcgi_env member removed from plugin_config renamed "fcgi" and "fastcgi" to "gw", and "FCGI" to "GW" reorganize routines for high-level and lower-level interfaces some lower-level internal interfaces changed to use host,proc,debug args rather than knowing about higher-level (app) hctx and plugin_data tabs->spaces and reformatting
Diffstat (limited to 'src/response.h')
-rw-r--r--src/response.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/response.h b/src/response.h
index d0ddc90b..cd268394 100644
--- a/src/response.h
+++ b/src/response.h
@@ -35,8 +35,9 @@ typedef struct http_response_opts_t {
unsigned short local_redir;
unsigned short xsendfile_allow;
array *xsendfile_docroot;
- handler_t(*parse)(server *, connection *, struct http_response_opts_t *, buffer *, size_t);
void *pdata;
+ handler_t(*parse)(server *, connection *, struct http_response_opts_t *, buffer *, size_t);
+ handler_t(*headers)(server *, connection *, struct http_response_opts_t *);
} http_response_opts;
typedef int (*http_cgi_header_append_cb)(void *vdata, const char *k, size_t klen, const char *v, size_t vlen);