3 * Copyright (C) Igor Sysoev
7 #ifndef _NGX_HTTP_SSI_FILTER_H_INCLUDED_
8 #define _NGX_HTTP_SSI_FILTER_H_INCLUDED_
11 #include <ngx_config.h>
16 #define NGX_HTTP_SSI_MAX_PARAMS 16
18 #define NGX_HTTP_SSI_COMMAND_LEN 32
19 #define NGX_HTTP_SSI_PARAM_LEN 32
20 #define NGX_HTTP_SSI_PARAMS_N 4
23 #define NGX_HTTP_SSI_COND_IF 1
24 #define NGX_HTTP_SSI_COND_ELSE 2
27 #define NGX_HTTP_SSI_NO_ENCODING 0
28 #define NGX_HTTP_SSI_URL_ENCODING 1
29 #define NGX_HTTP_SSI_ENTITY_ENCODING 2
34 ngx_hash_keys_arrays_t commands;
35 } ngx_http_ssi_main_conf_t;
48 ngx_table_elt_t *param;
49 ngx_table_elt_t params_array[NGX_HTTP_SSI_PARAMS_N];
53 ngx_chain_t **last_out;
58 ngx_uint_t saved_state;
64 ngx_list_t *variables;
67 unsigned conditional:2;
71 unsigned output_chosen:1;
73 ngx_http_request_t *wait;
80 typedef ngx_int_t (*ngx_http_ssi_command_pt) (ngx_http_request_t *r,
81 ngx_http_ssi_ctx_t *ctx, ngx_str_t **);
90 } ngx_http_ssi_param_t;
95 ngx_http_ssi_command_pt handler;
96 ngx_http_ssi_param_t *params;
98 unsigned conditional:2;
101 } ngx_http_ssi_command_t;
104 extern ngx_module_t ngx_http_ssi_filter_module;
107 #endif /* _NGX_HTTP_SSI_FILTER_H_INCLUDED_ */