lighttpd 1.4.x
https://www.lighttpd.net/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.9 KiB
53 lines
1.9 KiB
#ifndef _RESPONSE_H_ |
|
#define _RESPONSE_H_ |
|
#include "first.h" |
|
|
|
#include "server.h" |
|
|
|
#include <time.h> |
|
|
|
int http_response_parse(server *srv, connection *con); |
|
int http_response_write_header(server *srv, connection *con); |
|
|
|
int response_header_insert(server *srv, connection *con, const char *key, size_t keylen, const char *value, size_t vallen); |
|
int response_header_overwrite(server *srv, connection *con, const char *key, size_t keylen, const char *value, size_t vallen); |
|
int response_header_append(server *srv, connection *con, const char *key, size_t keylen, const char *value, size_t vallen); |
|
|
|
typedef struct http_cgi_opts_t { |
|
int authorizer; |
|
int break_scriptfilename_for_php; |
|
buffer *docroot; |
|
buffer *strip_request_uri; |
|
} http_cgi_opts; |
|
|
|
enum { |
|
BACKEND_UNSET = 0, |
|
BACKEND_PROXY, |
|
BACKEND_CGI, |
|
BACKEND_FASTCGI, |
|
BACKEND_SCGI |
|
}; |
|
|
|
typedef struct http_response_opts_t { |
|
int fdfmt; |
|
int backend; |
|
int authorizer; |
|
unsigned short local_redir; |
|
unsigned short xsendfile_allow; |
|
array *xsendfile_docroot; |
|
} http_response_opts; |
|
|
|
typedef int (*http_cgi_header_append_cb)(void *vdata, const char *k, size_t klen, const char *v, size_t vlen); |
|
int http_cgi_headers(server *srv, connection *con, http_cgi_opts *opts, http_cgi_header_append_cb cb, void *vdata); |
|
|
|
handler_t http_response_parse_headers(server *srv, connection *con, http_response_opts *opts, buffer *hdrs); |
|
handler_t http_response_read(server *srv, connection *con, http_response_opts *opts, buffer *b, int fd, int *fde_ndx); |
|
handler_t http_response_prepare(server *srv, connection *con); |
|
int http_response_redirect_to_directory(server *srv, connection *con); |
|
int http_response_handle_cachable(server *srv, connection *con, buffer * mtime); |
|
void http_response_send_file (server *srv, connection *con, buffer *path); |
|
void http_response_backend_done (server *srv, connection *con); |
|
void http_response_backend_error (server *srv, connection *con); |
|
|
|
buffer * strftime_cache_get(server *srv, time_t last_mod); |
|
#endif
|
|
|