Mercurial > hg > nginx
diff src/http/ngx_http_variables.h @ 499:64d9afb209da release-0.1.24
nginx-0.1.24-RELEASE import
*) Feature: the ngx_http_ssi_filter_module supports the QUERY_STRING
and DOCUMENT_URI variables.
*) Bugfix: the ngx_http_autoindex_module may some times return the 404
response for existent directory, if this directory was used in
"alias" directive.
*) Bugfix: the ngx_http_ssi_filter_module ran incorrectly for large
responses.
*) Bugfix: the lack of the "Referer" header line was always accounted
as valid referrer.
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Fri, 04 Mar 2005 14:06:57 +0000 |
parents | |
children | d4ea69372b94 |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/src/http/ngx_http_variables.h @@ -0,0 +1,61 @@ + +/* + * Copyright (C) Igor Sysoev + */ + + +#ifndef _NGX_HTTP_VARIABLES_H_INCLUDED_ +#define _NGX_HTTP_VARIABLES_H_INCLUDED_ + + +#include <ngx_config.h> +#include <ngx_core.h> +#include <ngx_event.h> +#include <ngx_http.h> + + +#define NGX_HTTP_VARIABLE_NOT_FOUND (ngx_http_variable_value_t *) -1 + + +typedef struct { + ngx_uint_t value; + ngx_str_t text; +} ngx_http_variable_value_t; + + +typedef struct ngx_http_variable_s ngx_http_variable_t; + +typedef ngx_http_variable_value_t * + (*ngx_http_get_variable_pt) (ngx_http_request_t *r, void *var); + + +struct ngx_http_variable_s { + ngx_str_t name; + ngx_uint_t index; + ngx_http_get_variable_pt handler; + void *data; + ngx_uint_t uses; +}; + + +typedef ngx_http_variable_value_t * + (*ngx_http_get_core_variable_pt) (ngx_http_request_t *r, uintptr_t data); + +typedef struct { + ngx_str_t name; + ngx_http_get_core_variable_pt handler; + uintptr_t data; +} ngx_http_core_variable_t; + + +ngx_http_variable_t *ngx_http_add_variable(ngx_conf_t *cf); +ngx_int_t ngx_http_get_variable_index(ngx_http_core_main_conf_t *cmcf, + ngx_str_t *name); +ngx_http_variable_value_t *ngx_http_get_indexed_variable(ngx_http_request_t *r, + ngx_uint_t index); +ngx_http_variable_value_t *ngx_http_get_variable(ngx_http_request_t *r, + ngx_str_t *name); +ngx_int_t ngx_http_core_variables_init(ngx_cycle_t *cycle); + + +#endif /* _NGX_HTTP_VARIABLES_H_INCLUDED_ */