Lines Matching refs:srv
123 UNUSED(srv); in FREE_FUNC()
127 for (i = 0; i < srv->config_context->used; i++) { in FREE_FUNC()
160 p->config_storage = calloc(1, srv->config_context->used * sizeof(specific_config *)); in SETDEFAULTS_FUNC()
162 for (i = 0; i < srv->config_context->used; i++) { in SETDEFAULTS_FUNC()
176 …if (0 != config_insert_values_global(srv, ((data_config *)srv->config_context->data[i])->value, cv… in SETDEFAULTS_FUNC()
185 static int cgi_pid_add(server *srv, plugin_data *p, pid_t pid) { in cgi_pid_add() argument
190 UNUSED(srv); in cgi_pid_add()
209 static int cgi_pid_del(server *srv, plugin_data *p, pid_t pid) { in cgi_pid_del() argument
213 UNUSED(srv); in cgi_pid_del()
231 static int cgi_response_parse(server *srv, connection *con, plugin_data *p, buffer *in) { in cgi_response_parse() argument
236 UNUSED(srv); in cgi_response_parse()
338 static int cgi_demux_response(server *srv, handler_ctx *hctx) { in cgi_demux_response() argument
363 log_error_write(srv, __FILE__, __LINE__, "sdd", strerror(errno), con->fd, hctx->fd); in cgi_demux_response()
373 http_chunk_append_mem(srv, con, NULL, 0); in cgi_demux_response()
374 joblist_append(srv, con); in cgi_demux_response()
461 http_chunk_append_mem(srv, con, hctx->response_header->ptr, hctx->response_header->used); in cgi_demux_response()
462 joblist_append(srv, con); in cgi_demux_response()
487 cgi_response_parse(srv, con, p, hctx->response_header); in cgi_demux_response()
496 http_chunk_append_mem(srv, con, bstart, blen + 1); in cgi_demux_response()
497 joblist_append(srv, con); in cgi_demux_response()
504 http_chunk_append_mem(srv, con, hctx->response->ptr, hctx->response->used); in cgi_demux_response()
505 joblist_append(srv, con); in cgi_demux_response()
509 …log_error_write(srv, __FILE__, __LINE__, "ddss", con->fd, hctx->fd, connection_get_state(con->stat… in cgi_demux_response()
516 static handler_t cgi_connection_close(server *srv, handler_ctx *hctx) { in cgi_connection_close() argument
539 fdevent_event_del(srv->ev, &(hctx->fde_ndx), hctx->fd); in cgi_connection_close()
540 fdevent_unregister(srv->ev, hctx->fd); in cgi_connection_close()
543 log_error_write(srv, __FILE__, __LINE__, "sds", "cgi close failed ", hctx->fd, strerror(errno)); in cgi_connection_close()
564 log_error_write(srv, __FILE__, __LINE__, "sd", "(debug) child isn't done yet, pid:", pid); in cgi_connection_close()
583 log_error_write(srv, __FILE__, __LINE__, "ss", "waitpid failed: ", strerror(errno)); in cgi_connection_close()
588 connection_set_state(srv, con, CON_STATE_HANDLE_REQUEST); in cgi_connection_close()
597 log_error_write(srv, __FILE__, __LINE__, "sd", "(debug) cgi exited fine, pid:", pid); in cgi_connection_close()
601 log_error_write(srv, __FILE__, __LINE__, "sd", "cgi died, pid:", pid); in cgi_connection_close()
610 cgi_pid_add(srv, p, pid); in cgi_connection_close()
616 static handler_t cgi_connection_close_callback(server *srv, connection *con, void *p_d) { in cgi_connection_close_callback() argument
619 return cgi_connection_close(srv, con->plugin_ctx[p->id]); in cgi_connection_close_callback()
623 static handler_t cgi_handle_fdevent(server *srv, void *ctx, int revents) { in cgi_handle_fdevent() argument
627 joblist_append(srv, con); in cgi_handle_fdevent()
630 …log_error_write(srv, __FILE__, __LINE__, "ddss", con->fd, hctx->fd, connection_get_state(con->stat… in cgi_handle_fdevent()
636 switch (cgi_demux_response(srv, hctx)) { in cgi_handle_fdevent()
643 …log_error_write(srv, __FILE__, __LINE__, "ddss", con->fd, hctx->fd, connection_get_state(con->stat… in cgi_handle_fdevent()
645 cgi_connection_close(srv, hctx); in cgi_handle_fdevent()
652 connection_set_state(srv, con, CON_STATE_HANDLE_REQUEST); in cgi_handle_fdevent()
659 log_error_write(srv, __FILE__, __LINE__, "s", "demuxer failed: "); in cgi_handle_fdevent()
674 http_chunk_append_mem(srv, con, hctx->response_header->ptr, hctx->response_header->used); in cgi_handle_fdevent()
675 joblist_append(srv, con); in cgi_handle_fdevent()
679 http_chunk_append_mem(srv, con, NULL, 0); in cgi_handle_fdevent()
680 joblist_append(srv, con); in cgi_handle_fdevent()
687 connection_set_state(srv, con, CON_STATE_RESPONSE_END); in cgi_handle_fdevent()
694 log_error_write(srv, __FILE__, __LINE__, "sddd", "got HUP from cgi", con->fd, hctx->fd, revents); in cgi_handle_fdevent()
698 cgi_connection_close(srv, hctx); in cgi_handle_fdevent()
703 cgi_connection_close(srv, hctx); in cgi_handle_fdevent()
705 log_error_write(srv, __FILE__, __LINE__, "s", "cgi-FDEVENT_ERR"); in cgi_handle_fdevent()
738 static int cgi_create_env(server *srv, connection *con, plugin_data *p, buffer *cgi_handler) { in cgi_create_env() argument
754 log_error_write(srv, __FILE__, __LINE__, "sbss", in cgi_create_env()
762 log_error_write(srv, __FILE__, __LINE__, "ss", "pipe failed:", strerror(errno)); in cgi_create_env()
769 log_error_write(srv, __FILE__, __LINE__, "ss", "pipe failed:", strerror(errno)); in cgi_create_env()
1041 …log_error_write(srv, __FILE__, __LINE__, "ssb", "chdir failed:", strerror(errno), con->physical.pa… in cgi_create_env()
1048 if (i != srv->errorlog_fd) close(i); in cgi_create_env()
1062 log_error_write(srv, __FILE__, __LINE__, "ss", "fork failed:", strerror(errno)); in cgi_create_env()
1093 log_error_write(srv, __FILE__, __LINE__, "ss", "open failed: ", strerror(errno)); in cgi_create_env()
1103 log_error_write(srv, __FILE__, __LINE__, "ssbd", "mmap failed: ", in cgi_create_env()
1152 log_error_write(srv, __FILE__, __LINE__, "ss", "write() failed due to: ", strerror(errno)); in cgi_create_env()
1176 fdevent_register(srv->ev, hctx->fd, cgi_handle_fdevent, hctx); in cgi_create_env()
1177 fdevent_event_set(srv->ev, &(hctx->fde_ndx), hctx->fd, FDEVENT_IN); in cgi_create_env()
1179 if (-1 == fdevent_fcntl_set(srv->ev, hctx->fd)) { in cgi_create_env()
1180 log_error_write(srv, __FILE__, __LINE__, "ss", "fcntl failed: ", strerror(errno)); in cgi_create_env()
1182 fdevent_event_del(srv->ev, &(hctx->fde_ndx), hctx->fd); in cgi_create_env()
1183 fdevent_unregister(srv->ev, hctx->fd); in cgi_create_env()
1185 log_error_write(srv, __FILE__, __LINE__, "sd", "cgi close:", hctx->fd); in cgi_create_env()
1208 static int mod_cgi_patch_connection(server *srv, connection *con, plugin_data *p) { in mod_cgi_patch_connection() argument
1216 for (i = 1; i < srv->config_context->used; i++) { in mod_cgi_patch_connection()
1217 data_config *dc = (data_config *)srv->config_context->data[i]; in mod_cgi_patch_connection()
1221 if (!config_check_cond(srv, con, dc)) continue; in mod_cgi_patch_connection()
1249 mod_cgi_patch_connection(srv, con, p); in URIHANDLER_FUNC()
1251 …if (HANDLER_ERROR == stat_cache_get_entry(srv, con, con->physical.path, &sce)) return HANDLER_GO_O… in URIHANDLER_FUNC()
1265 if (cgi_create_env(srv, con, p, ds->value)) { in URIHANDLER_FUNC()
1293 …log_error_write(srv, __FILE__, __LINE__, "sd", "(debug) child isn't done yet, pid:", p->cgi_pid.pt… in TRIGGER_FUNC()
1299 …log_error_write(srv, __FILE__, __LINE__, "s", "cgi child vanished, probably someone else called wa… in TRIGGER_FUNC()
1301 cgi_pid_del(srv, p, p->cgi_pid.ptr[ndx]); in TRIGGER_FUNC()
1306 log_error_write(srv, __FILE__, __LINE__, "ss", "waitpid failed: ", strerror(errno)); in TRIGGER_FUNC()
1313 …log_error_write(srv, __FILE__, __LINE__, "sd", "(debug) cgi exited fine, pid:", p->cgi_pid.ptr[ndx… in TRIGGER_FUNC()
1319 …log_error_write(srv, __FILE__, __LINE__, "sd", "cleaning up CGI: process died with signal", WTERMS… in TRIGGER_FUNC()
1322 log_error_write(srv, __FILE__, __LINE__, "s", "cleaning up CGI: ended unexpectedly"); in TRIGGER_FUNC()
1325 cgi_pid_del(srv, p, p->cgi_pid.ptr[ndx]); in TRIGGER_FUNC()
1351 log_error_write(srv, __FILE__, __LINE__, "sdd", "subrequest, pid =", hctx, hctx->pid); in SUBREQUEST_FUNC()
1378 log_error_write(srv, __FILE__, __LINE__, "ss", "waitpid failed: ", strerror(errno)); in SUBREQUEST_FUNC()
1384 fdevent_event_del(srv->ev, &(hctx->fde_ndx), hctx->fd); in SUBREQUEST_FUNC()
1385 fdevent_unregister(srv->ev, hctx->fd); in SUBREQUEST_FUNC()
1388 log_error_write(srv, __FILE__, __LINE__, "sds", "cgi close failed ", hctx->fd, strerror(errno)); in SUBREQUEST_FUNC()
1411 log_error_write(srv, __FILE__, __LINE__, "s", "cgi died ?"); in SUBREQUEST_FUNC()
1416 fdevent_event_del(srv->ev, &(hctx->fde_ndx), hctx->fd); in SUBREQUEST_FUNC()
1417 fdevent_unregister(srv->ev, hctx->fd); in SUBREQUEST_FUNC()
1420 log_error_write(srv, __FILE__, __LINE__, "sds", "cgi close failed ", hctx->fd, strerror(errno)); in SUBREQUEST_FUNC()