Browse Source

[core] do not reparse request if async cb

do not reparse request if async callback, e.g. for mod_auth
personal/stbuehler/fix-fdevent
Glenn Strauss 4 years ago
parent
commit
e8226c11cb
  1. 1
      src/base.h
  2. 1
      src/connections.c
  3. 9
      src/response.c

1
src/base.h

@ -377,6 +377,7 @@ struct connection {
array *environment; /* used to pass lighttpd internal stuff to the FastCGI/CGI apps, setenv does that */
connection_type mode;
int async_callback;
void **plugin_ctx; /* plugin connection specific config */

1
src/connections.c

@ -699,6 +699,7 @@ int connection_reset(server *srv, connection *con) {
/* config_cond_cache_reset(srv, con); */
con->header_len = 0;
con->async_callback = 0;
con->error_handler_saved_status = 0;
/*con->error_handler_saved_method = HTTP_METHOD_UNSET;*/
/*(error_handler_saved_method value is not valid unless error_handler_saved_status is set)*/

9
src/response.c

@ -144,6 +144,11 @@ handler_t http_response_prepare(server *srv, connection *con) {
/* no decision yet, build conf->filename */
if (con->mode == DIRECT && buffer_is_empty(con->physical.path)) {
if (!con->async_callback) {
char *qstr;
/* we only come here when we have the parse the full request again
@ -264,6 +269,10 @@ handler_t http_response_prepare(server *srv, connection *con) {
}
}
con->async_callback = 0; /* reset */
/**
*
* call plugins

Loading…
Cancel
Save