1 #ifndef _CONFIG_PARSER_H_ 2 #define _CONFIG_PARSER_H_ 3 4 #include "array.h" 5 #include "buffer.h" 6 #include "server.h" 7 8 typedef struct { 9 server *srv; 10 int ok; 11 array *all_configs; 12 array *configs_stack; /* to parse nested block */ 13 data_config *current; /* current started with { */ 14 buffer *basedir; 15 } config_t; 16 17 void *configparserAlloc(void *(*mallocProc)(size_t)); 18 void configparserFree(void *p, void (*freeProc)(void*)); 19 void configparser(void *yyp, int yymajor, buffer *yyminor, config_t *ctx); 20 int config_parse_file(server *srv, config_t *context, const char *fn); 21 int config_parse_cmd(server *srv, config_t *context, const char *cmd); 22 data_unset *configparser_merge_data(data_unset *op1, const data_unset *op2); 23 24 void config_cond_cache_reset(server *srv, connection *con); 25 void config_cond_cache_reset_item(server *srv, connection *con, comp_key_t item); 26 27 #define config_cond_cache_reset_all_items(srv, con) \ 28 config_cond_cache_reset_item(srv, con, COMP_LAST_ELEMENT); 29 30 #endif 31