1 #ifndef _MOD_SSI_H_
2 #define _MOD_SSI_H_
3 
4 #include "base.h"
5 #include "buffer.h"
6 #include "array.h"
7 
8 #include "plugin.h"
9 
10 #ifdef HAVE_PCRE_H
11 #include <pcre.h>
12 #endif
13 
14 /* plugin config for all request/connections */
15 
16 typedef struct {
17 	array *ssi_extension;
18 	buffer *content_type;
19 } plugin_config;
20 
21 typedef struct {
22 	PLUGIN_DATA;
23 
24 #ifdef HAVE_PCRE_H
25 	pcre *ssi_regex;
26 #endif
27 	buffer *timefmt;
28 	int sizefmt;
29 
30 	buffer *stat_fn;
31 
32 	array *ssi_vars;
33 	array *ssi_cgi_env;
34 
35 	int if_level, if_is_false_level, if_is_false, if_is_false_endif;
36 
37 	plugin_config **config_storage;
38 
39 	plugin_config conf;
40 } plugin_data;
41 
42 int ssi_eval_expr(server *srv, connection *con, plugin_data *p, const char *expr);
43 
44 #endif
45